mirror of
https://github.com/openclaw/openclaw.git
synced 2026-05-06 06:20:43 +00:00
ci: use org-owned Kova benchmark
This commit is contained in:
5
.github/workflows/openclaw-performance.yml
vendored
5
.github/workflows/openclaw-performance.yml
vendored
@@ -36,7 +36,7 @@ on:
|
||||
default: false
|
||||
type: boolean
|
||||
kova_ref:
|
||||
description: Kova Git ref to install
|
||||
description: openclaw/Kova Git ref to install
|
||||
required: false
|
||||
default: 51947110f5cacb6ab2c0947594ea9628031c9fcf
|
||||
type: string
|
||||
@@ -51,6 +51,7 @@ concurrency:
|
||||
env:
|
||||
FORCE_JAVASCRIPT_ACTIONS_TO_NODE24: "true"
|
||||
OCM_VERSION: v0.2.15
|
||||
KOVA_REPOSITORY: openclaw/Kova
|
||||
PERFORMANCE_MODEL_ID: gpt-5.4
|
||||
|
||||
jobs:
|
||||
@@ -157,7 +158,7 @@ jobs:
|
||||
mkdir -p "$HOME/.local/bin" "$(dirname "$KOVA_SRC")"
|
||||
curl -fsSL https://raw.githubusercontent.com/shakkernerd/ocm/main/install.sh \
|
||||
| bash -s -- --version "$OCM_VERSION" --prefix "$HOME/.local" --force
|
||||
git clone --filter=blob:none https://github.com/shakkernerd/Kova.git "$KOVA_SRC"
|
||||
git clone --filter=blob:none "https://github.com/${KOVA_REPOSITORY}.git" "$KOVA_SRC"
|
||||
git -C "$KOVA_SRC" checkout "$KOVA_REF"
|
||||
cat > "$HOME/.local/bin/kova" <<EOF
|
||||
#!/usr/bin/env bash
|
||||
|
||||
@@ -137,7 +137,7 @@ gh workflow run openclaw-performance.yml --ref main -f profile=diagnostic -f rep
|
||||
gh workflow run openclaw-performance.yml --ref main -f profile=smoke -f repeat=1 -f deep_profile=true -f live_gpt54=true
|
||||
```
|
||||
|
||||
The workflow installs OCM from a pinned release and Kova from the pinned `kova_ref` input, then runs three lanes:
|
||||
The workflow installs OCM from a pinned release and Kova from `openclaw/Kova` at the pinned `kova_ref` input, then runs three lanes:
|
||||
|
||||
- `mock-provider`: Kova diagnostic scenarios against a local-build runtime with deterministic fake OpenAI-compatible auth.
|
||||
- `mock-deep-profile`: CPU/heap/trace profiling for startup, gateway, and agent-turn hotspots.
|
||||
|
||||
@@ -4,6 +4,7 @@ import fs from "node:fs";
|
||||
import os from "node:os";
|
||||
import path from "node:path";
|
||||
import { fileURLToPath, pathToFileURL } from "node:url";
|
||||
import { collectRootPackageExcludedExtensionDirs } from "./lib/bundled-plugin-build-entries.mjs";
|
||||
import { parsePackageRootArg } from "./lib/package-root-args.mjs";
|
||||
import { installProcessWarningFilter } from "./process-warning-filter.mjs";
|
||||
|
||||
@@ -16,6 +17,7 @@ const { packageRoot } = parsePackageRootArg(
|
||||
"OPENCLAW_BUNDLED_CHANNEL_SMOKE_ROOT",
|
||||
);
|
||||
const distExtensionsRoot = path.join(packageRoot, "dist", "extensions");
|
||||
const excludedPackageExtensionDirs = collectRootPackageExcludedExtensionDirs({ cwd: packageRoot });
|
||||
const installedLayoutEnv = "OPENCLAW_BUNDLED_CHANNEL_SMOKE_INSTALLED_LAYOUT";
|
||||
|
||||
function packageRootLooksInstalled(root) {
|
||||
@@ -82,6 +84,9 @@ function collectBundledChannelEntryFiles() {
|
||||
if (!packageJson.openclaw?.channel) {
|
||||
continue;
|
||||
}
|
||||
if (excludedPackageExtensionDirs.has(dirent.name)) {
|
||||
continue;
|
||||
}
|
||||
|
||||
const extensionEntries =
|
||||
Array.isArray(packageJson.openclaw.extensions) && packageJson.openclaw.extensions.length > 0
|
||||
|
||||
Reference in New Issue
Block a user