pi-harness-runtime 1.1.209 → 1.1.211
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/index.ts +62 -22
- package/package.json +1 -1
- package/packages/a2a-adapter/package.json +1 -1
- package/packages/agent-policy/package.json +1 -1
- package/packages/architecture-generator/package.json +1 -1
- package/packages/auth/package.json +1 -1
- package/packages/autonomous-refactor/package.json +1 -1
- package/packages/autonomous-runtime/package.json +1 -1
- package/packages/cache-strategy/package.json +1 -1
- package/packages/capability-registry/package.json +1 -1
- package/packages/checkpoint/package.json +1 -1
- package/packages/cli-plugin-sdk/package.json +1 -1
- package/packages/clipboard/package.json +1 -1
- package/packages/clipboard-plugin/package.json +1 -1
- package/packages/code-generation/package.json +1 -1
- package/packages/code-review/package.json +1 -1
- package/packages/codex-adapter/package.json +1 -1
- package/packages/codex-watcher/package.json +1 -1
- package/packages/config-capture/package.json +1 -1
- package/packages/context-compiler/package.json +1 -1
- package/packages/context-discovery/package.json +1 -1
- package/packages/context-manager/package.json +1 -1
- package/packages/cookie-sanitizer/package.json +1 -1
- package/packages/cost-optimizer/package.json +1 -1
- package/packages/dependency-analyzer/package.json +1 -1
- package/packages/django-plugin/package.json +1 -1
- package/packages/doc-generator/package.json +1 -1
- package/packages/e2e-tester/package.json +1 -1
- package/packages/evaluation-engine/package.json +1 -1
- package/packages/evaluation-runner/package.json +1 -1
- package/packages/event-bus/package.json +1 -1
- package/packages/event-store/package.json +1 -1
- package/packages/experience-replay/package.json +1 -1
- package/packages/feedback-collector/package.json +1 -1
- package/packages/file-copy-helper/package.json +1 -1
- package/packages/framework-detector/package.json +1 -1
- package/packages/framework-plugin-sdk/package.json +1 -1
- package/packages/frappe-plugin/package.json +1 -1
- package/packages/generic-web-plugin/package.json +1 -1
- package/packages/health-monitor/package.json +1 -1
- package/packages/intent-analyzer/package.json +1 -1
- package/packages/jev-judge/package.json +1 -1
- package/packages/knowledge-graph/package.json +1 -1
- package/packages/knowledge-retrieval/package.json +1 -1
- package/packages/laravel-plugin/package.json +1 -1
- package/packages/learning-engine/package.json +1 -1
- package/packages/mcp-adapter/package.json +1 -1
- package/packages/memory-engine/package.json +1 -1
- package/packages/milestone-manager/package.json +1 -1
- package/packages/model-registry/package.json +1 -1
- package/packages/nextjs-plugin/package.json +1 -1
- package/packages/notification/package.json +1 -1
- package/packages/observability/package.json +1 -1
- package/packages/okf-indexer/package.json +1 -1
- package/packages/paperclip-integration/package.json +1 -1
- package/packages/performance-optimizer/package.json +1 -1
- package/packages/privilege-broker/package.json +1 -1
- package/packages/project-analyzer/package.json +1 -1
- package/packages/project-bootstrap/package.json +1 -1
- package/packages/projection-engine/package.json +1 -1
- package/packages/prompt-compiler/package.json +1 -1
- package/packages/prompt-versioning/package.json +1 -1
- package/packages/provider-adapter-sdk/package.json +1 -1
- package/packages/provider-router/package.json +1 -1
- package/packages/provider-selector/package.json +1 -1
- package/packages/providers/package.json +1 -1
- package/packages/qdrant-skills/package.json +1 -1
- package/packages/quota-manager/package.json +1 -1
- package/packages/rate-limiter/package.json +1 -1
- package/packages/react-vite-plugin/package.json +1 -1
- package/packages/release-manager/package.json +1 -1
- package/packages/requirement-compiler/package.json +1 -1
- package/packages/runtime/package.json +1 -1
- package/packages/scheduler/package.json +1 -1
- package/packages/scheduler-adapter/package.json +1 -1
- package/packages/session/package.json +1 -1
- package/packages/session-api/package.json +1 -1
- package/packages/session-export/package.json +1 -1
- package/packages/shared-context/package.json +1 -1
- package/packages/skill-mcp-client/package.json +1 -1
- package/packages/skill-registry/package.json +1 -1
- package/packages/skills/package.json +1 -1
- package/packages/sprint-planner/package.json +1 -1
- package/packages/subscription-engine/package.json +1 -1
- package/packages/task-compiler/package.json +1 -1
- package/packages/telegram/package.json +1 -1
- package/packages/tencentdb-memory/package.json +1 -1
- package/packages/tencentdb-sync/package.json +1 -1
- package/packages/test-data-generator/package.json +1 -1
- package/packages/test-generator/package.json +1 -1
- package/packages/todo-bd-sync/package.json +1 -1
- package/packages/token-estimation/package.json +1 -1
- package/packages/token-optimizer/package.json +1 -1
- package/packages/trajectory/package.json +1 -1
- package/packages/tui/package.json +1 -1
- package/packages/types/package.json +1 -1
- package/packages/webmcp-tester/package.json +1 -1
- package/packages/workflow-events/package.json +1 -1
- package/packages/workspace-scanner/package.json +1 -1
- package/packages/worktree/package.json +1 -1
- package/packages/write-review/package.json +1 -1
package/index.ts
CHANGED
|
@@ -3016,10 +3016,42 @@ Run \`bd ready\` to see current bd issues.
|
|
|
3016
3016
|
},
|
|
3017
3017
|
});
|
|
3018
3018
|
|
|
3019
|
-
// ---
|
|
3020
|
-
|
|
3021
|
-
|
|
3019
|
+
// --- Harness footer state (separate from quota) -----------------------
|
|
3020
|
+
// Store harness messages separately - NOT in status keys used by quota
|
|
3021
|
+
interface HarnessMessage {
|
|
3022
|
+
id: string;
|
|
3023
|
+
label: string;
|
|
3024
|
+
text: string;
|
|
3025
|
+
status: "wait" | "ok" | "err";
|
|
3026
|
+
}
|
|
3027
|
+
const harnessMessages: HarnessMessage[] = [];
|
|
3028
|
+
|
|
3029
|
+
function addHarnessMessage(label: string, text: string, status: "wait" | "ok" | "err" = "wait") {
|
|
3030
|
+
const id = `${label}-${Date.now()}`;
|
|
3031
|
+
harnessMessages.push({ id, label, text, status });
|
|
3032
|
+
}
|
|
3033
|
+
|
|
3034
|
+
function clearHarnessMessages() {
|
|
3035
|
+
harnessMessages.length = 0;
|
|
3036
|
+
}
|
|
3037
|
+
|
|
3038
|
+
function getHarnessLines(width: number): string[] {
|
|
3039
|
+
const lines: string[] = [];
|
|
3040
|
+
if (harnessMessages.length === 0) return lines;
|
|
3041
|
+
|
|
3042
|
+
lines.push("[Pi-harness]");
|
|
3043
|
+
for (const msg of harnessMessages) {
|
|
3044
|
+
const marker = msg.status === "ok" ? "[OK]" : msg.status === "err" ? "[ERR]" : "[WAIT]";
|
|
3045
|
+
let text = ` ${marker} ${msg.label}: ${msg.text}`;
|
|
3046
|
+
if (text.length > width) {
|
|
3047
|
+
text = text.substring(0, width - 1) + "…";
|
|
3048
|
+
}
|
|
3049
|
+
lines.push(text);
|
|
3050
|
+
}
|
|
3051
|
+
return lines;
|
|
3052
|
+
}
|
|
3022
3053
|
|
|
3054
|
+
// --- Footer status (persistent badge) --------------------------------
|
|
3023
3055
|
pi.on("session_start", async (_event, ctx) => {
|
|
3024
3056
|
|
|
3025
3057
|
// Capture only the setStatus function, not the ctx
|
|
@@ -3032,10 +3064,17 @@ Run \`bd ready\` to see current bd issues.
|
|
|
3032
3064
|
() => lastActiveProvider,
|
|
3033
3065
|
);
|
|
3034
3066
|
|
|
3035
|
-
// ---
|
|
3036
|
-
// Use
|
|
3037
|
-
|
|
3038
|
-
|
|
3067
|
+
// --- Install harness footer renderer (multi-row BELOW quota) ---------
|
|
3068
|
+
// Use setFooter to create custom footer with harness messages on separate rows
|
|
3069
|
+
ctx.ui.setFooter((_tui, _theme, _footerData) => ({
|
|
3070
|
+
render(width: number): string[] {
|
|
3071
|
+
return getHarnessLines(width);
|
|
3072
|
+
},
|
|
3073
|
+
invalidate: () => {},
|
|
3074
|
+
}));
|
|
3075
|
+
|
|
3076
|
+
// Add initial harness message
|
|
3077
|
+
addHarnessMessage("Runtime", "initializing", "wait");
|
|
3039
3078
|
|
|
3040
3079
|
// Wait for async inits to complete, then update status
|
|
3041
3080
|
const startupTimeout = new Promise<void>((resolve) => {
|
|
@@ -3045,38 +3084,39 @@ Run \`bd ready\` to see current bd issues.
|
|
|
3045
3084
|
Promise.allSettled(asyncInitPromises),
|
|
3046
3085
|
startupTimeout,
|
|
3047
3086
|
]).then(() => {
|
|
3048
|
-
//
|
|
3049
|
-
const
|
|
3087
|
+
// Update Runtime status
|
|
3088
|
+
const runtimeMsg = harnessMessages.find((m) => m.label === "Runtime");
|
|
3089
|
+
if (runtimeMsg) {
|
|
3090
|
+
runtimeMsg.status = "ok";
|
|
3091
|
+
runtimeMsg.text = "initialized";
|
|
3092
|
+
}
|
|
3050
3093
|
|
|
3094
|
+
// Add service messages from startup
|
|
3051
3095
|
for (const msg of startupMessages) {
|
|
3052
3096
|
if (msg.includes("Qdrant") && msg.includes("ready")) {
|
|
3053
|
-
|
|
3097
|
+
addHarnessMessage("Qdrant", "connected", "ok");
|
|
3054
3098
|
}
|
|
3055
3099
|
if (msg.includes("Telegram") && msg.includes("ready")) {
|
|
3056
|
-
|
|
3100
|
+
addHarnessMessage("Telegram", "verified", "ok");
|
|
3057
3101
|
}
|
|
3058
3102
|
if (msg.includes("Honcho")) {
|
|
3059
|
-
|
|
3103
|
+
addHarnessMessage("Honcho", "registered", "ok");
|
|
3060
3104
|
}
|
|
3061
3105
|
if (msg.includes("Scanned") && msg.includes("skills")) {
|
|
3062
3106
|
const match = msg.match(/Scanned (\d+)/);
|
|
3063
|
-
|
|
3064
|
-
|
|
3065
|
-
|
|
3107
|
+
if (match) {
|
|
3108
|
+
addHarnessMessage("Skills", `${match[1]} discovered`, "ok");
|
|
3109
|
+
}
|
|
3066
3110
|
}
|
|
3067
3111
|
}
|
|
3068
|
-
|
|
3069
|
-
// Set all harness info with newlines
|
|
3070
|
-
ctx.ui.setStatus(HARNESS_STATUS_KEY, lines.join("\n"));
|
|
3071
3112
|
});
|
|
3072
3113
|
});
|
|
3073
3114
|
|
|
3074
|
-
// Clear harness
|
|
3115
|
+
// Clear harness messages on first user input (like [Prompts]/[Extensions] disappear)
|
|
3075
3116
|
pi.on("message_start", (event) => {
|
|
3076
3117
|
const msg = event.message as { role?: string };
|
|
3077
|
-
if (msg?.role === "user"
|
|
3078
|
-
|
|
3079
|
-
footerSetStatus?.(HARNESS_STATUS_KEY, "");
|
|
3118
|
+
if (msg?.role === "user") {
|
|
3119
|
+
clearHarnessMessages();
|
|
3080
3120
|
}
|
|
3081
3121
|
});
|
|
3082
3122
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pi-harness/capability-registry",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.211",
|
|
4
4
|
"description": "Capability Registry for pi-harness-runtime — tracks model capabilities and enables capability-based routing",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pi-harness/provider-router",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.211",
|
|
4
4
|
"description": "Enhanced Provider Router for pi-harness-runtime — intelligent routing with capabilities, costs, and quotas",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/provider-router.js",
|