pi-harness-runtime 1.1.140 → 1.1.141
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 +0 -52
- package/package.json +1 -1
- package/packages/a2a-adapter/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/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/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/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/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
|
@@ -2353,58 +2353,6 @@ Run \`bd ready\` to see current bd issues.
|
|
|
2353
2353
|
|
|
2354
2354
|
// --- Footer status (persistent badge) --------------------------------
|
|
2355
2355
|
pi.on("session_start", async (_event, ctx) => {
|
|
2356
|
-
// ── Auto-start LangChain loop daemon ───────────────────────────────────
|
|
2357
|
-
// Spawns `bun harness/langchain/run.ts --daemon` as a detached background
|
|
2358
|
-
// process if no daemon is currently running. The daemon watches:
|
|
2359
|
-
// inbox/ → manual task files dropped by the user
|
|
2360
|
-
// bus/ → task.proposed events (herdr event bus)
|
|
2361
|
-
// codex/ → Codex CLI session plans (PING-PONG Planner)
|
|
2362
|
-
// Detached pattern: spawn with detached:true + stdio:ignore + unref() so
|
|
2363
|
-
// the extension process can exit without killing the daemon.
|
|
2364
|
-
// PID file at ~/.pi-harness-runtime/daemon.pid prevents double-start.
|
|
2365
|
-
//
|
|
2366
|
-
// SAFETY: fire-and-forget IIFE with try/catch. Throwing from this handler
|
|
2367
|
-
// crashes pi.dev and kicks the user out. NEVER let exceptions escape.
|
|
2368
|
-
void (async () => {
|
|
2369
|
-
try {
|
|
2370
|
-
const { readFileSync: dfs, writeFileSync: wfs, unlinkSync: ufs } = await import("node:fs");
|
|
2371
|
-
const { spawn: spwn } = await import("node:child_process");
|
|
2372
|
-
const { dirname } = await import("node:path");
|
|
2373
|
-
const { fileURLToPath } = await import("node:url");
|
|
2374
|
-
const { freemem } = await import("node:os");
|
|
2375
|
-
const runtimeRoot = dirname(fileURLToPath(import.meta.url));
|
|
2376
|
-
const DAEMON_PID_FILE = `${process.env.HOME}/.pi-harness-runtime/daemon.pid`;
|
|
2377
|
-
const DAEMON_SCRIPT = `${runtimeRoot}/harness/langchain/run.ts`;
|
|
2378
|
-
|
|
2379
|
-
// Memory guard: skip if system has < 1 GB free (daemon can spike to 500 MB+)
|
|
2380
|
-
const FREE_RAM_MB = freemem() / (1024 * 1024);
|
|
2381
|
-
const MIN_FREE_MB = 1024;
|
|
2382
|
-
if (FREE_RAM_MB < MIN_FREE_MB) {
|
|
2383
|
-
console.error(`[pi-harness] Daemon skipped: only ${FREE_RAM_MB.toFixed(0)} MB RAM free (need ${MIN_FREE_MB} MB). Run /langchain manually.`);
|
|
2384
|
-
return;
|
|
2385
|
-
}
|
|
2386
|
-
|
|
2387
|
-
let daemonPid = 0;
|
|
2388
|
-
try { daemonPid = parseInt(dfs(DAEMON_PID_FILE, "utf8").trim(), 10); } catch { /* no PID file */ }
|
|
2389
|
-
if (daemonPid > 0) {
|
|
2390
|
-
try { process.kill(daemonPid, 0); /* alive? */ } catch {
|
|
2391
|
-
try { ufs(DAEMON_PID_FILE); } catch { /* ignore */ }
|
|
2392
|
-
daemonPid = 0;
|
|
2393
|
-
}
|
|
2394
|
-
}
|
|
2395
|
-
if (daemonPid > 0) {
|
|
2396
|
-
console.error(`[pi-harness] LangChain daemon already running (pid=${daemonPid})`);
|
|
2397
|
-
return;
|
|
2398
|
-
}
|
|
2399
|
-
const daemonProc = spwn("bun", ["run", DAEMON_SCRIPT, "--daemon"], { detached: true, stdio: "ignore" });
|
|
2400
|
-
daemonProc.unref();
|
|
2401
|
-
try { wfs(DAEMON_PID_FILE, String(daemonProc.pid), "utf8"); } catch { /* ignore */ }
|
|
2402
|
-
console.error(`[pi-harness] LangChain daemon started (pid=${daemonProc.pid})`);
|
|
2403
|
-
} catch (err) {
|
|
2404
|
-
// MUST NOT throw — throwing here crashes pi.dev and kicks the user out
|
|
2405
|
-
console.error("[pi-harness] Daemon spawn failed (non-fatal):", err instanceof Error ? err.message : String(err));
|
|
2406
|
-
}
|
|
2407
|
-
})();
|
|
2408
2356
|
|
|
2409
2357
|
// Capture only the setStatus function, not the ctx
|
|
2410
2358
|
footerSetStatus = ctx.ui.setStatus.bind(ctx.ui);
|
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.141",
|
|
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.141",
|
|
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",
|