pi-harness-runtime 1.1.407 → 1.1.410

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.
Files changed (207) hide show
  1. package/harness/key-file-audit.ts +2 -2
  2. package/index.ts +78 -0
  3. package/package.json +1 -1
  4. package/packages/a2a-adapter/package.json +1 -1
  5. package/packages/agent-policy/package.json +1 -1
  6. package/packages/architecture-generator/package.json +1 -1
  7. package/packages/auth/package.json +1 -1
  8. package/packages/autonomous-refactor/package.json +1 -1
  9. package/packages/autonomous-runtime/package.json +1 -1
  10. package/packages/cache-strategy/package.json +1 -1
  11. package/packages/capability-registry/package.json +1 -1
  12. package/packages/checkpoint/package.json +1 -1
  13. package/packages/cli-plugin-sdk/package.json +1 -1
  14. package/packages/clipboard/package.json +1 -1
  15. package/packages/clipboard-plugin/package.json +1 -1
  16. package/packages/code-generation/package.json +1 -1
  17. package/packages/code-review/package.json +1 -1
  18. package/packages/codex-adapter/package.json +1 -1
  19. package/packages/codex-watcher/package.json +1 -1
  20. package/packages/config-capture/package.json +1 -1
  21. package/packages/connection-runtime/package.json +1 -1
  22. package/packages/context-compiler/package.json +1 -1
  23. package/packages/context-discovery/package.json +1 -1
  24. package/packages/context-manager/package.json +1 -1
  25. package/packages/contracts/package.json +1 -1
  26. package/packages/cookie-sanitizer/package.json +1 -1
  27. package/packages/cost-optimizer/package.json +1 -1
  28. package/packages/dependency-analyzer/package.json +1 -1
  29. package/packages/django-plugin/package.json +1 -1
  30. package/packages/doc-generator/package.json +1 -1
  31. package/packages/durable-review/package.json +1 -1
  32. package/packages/e2e-tester/package.json +1 -1
  33. package/packages/evaluation-engine/package.json +1 -1
  34. package/packages/evaluation-runner/package.json +1 -1
  35. package/packages/event-bus/package.json +1 -1
  36. package/packages/event-sink/package.json +1 -1
  37. package/packages/event-store/package.json +1 -1
  38. package/packages/experience-replay/package.json +1 -1
  39. package/packages/feedback-collector/package.json +1 -1
  40. package/packages/file-copy-helper/package.json +1 -1
  41. package/packages/framework-detector/package.json +1 -1
  42. package/packages/framework-plugin-sdk/package.json +1 -1
  43. package/packages/frappe-plugin/package.json +1 -1
  44. package/packages/generic-web-plugin/package.json +1 -1
  45. package/packages/health-monitor/package.json +1 -1
  46. package/packages/intent-analyzer/package.json +1 -1
  47. package/packages/jev-judge/package.json +1 -1
  48. package/packages/knowledge-graph/package.json +1 -1
  49. package/packages/knowledge-retrieval/package.json +1 -1
  50. package/packages/laravel-plugin/package.json +1 -1
  51. package/packages/learning-engine/package.json +1 -1
  52. package/packages/logging/package.json +1 -1
  53. package/packages/mcp-adapter/package.json +1 -1
  54. package/packages/memory-engine/package.json +1 -1
  55. package/packages/milestone-manager/package.json +1 -1
  56. package/packages/model-registry/package.json +1 -1
  57. package/packages/nextjs-plugin/package.json +1 -1
  58. package/packages/notification/package.json +1 -1
  59. package/packages/observability/package.json +1 -1
  60. package/packages/okf-indexer/package.json +1 -1
  61. package/packages/paperclip-integration/package.json +1 -1
  62. package/packages/performance-optimizer/package.json +1 -1
  63. package/packages/permission-mode/package.json +1 -1
  64. package/packages/privilege-broker/package.json +1 -1
  65. package/packages/project-analyzer/package.json +1 -1
  66. package/packages/project-bootstrap/package.json +1 -1
  67. package/packages/projection-engine/package.json +1 -1
  68. package/packages/prompt-compiler/package.json +1 -1
  69. package/packages/prompt-versioning/package.json +1 -1
  70. package/packages/provider-adapter-sdk/package.json +1 -1
  71. package/packages/provider-router/package.json +1 -1
  72. package/packages/provider-selector/package.json +1 -1
  73. package/packages/providers/dist/adapters.d.ts +1 -1
  74. package/packages/providers/dist/adapters.d.ts.map +1 -1
  75. package/packages/providers/dist/deepagents-adapter.d.ts +22 -1
  76. package/packages/providers/dist/deepagents-adapter.d.ts.map +1 -1
  77. package/packages/providers/dist/deepagents-adapter.js +3 -8
  78. package/packages/providers/dist/deepagents-adapter.js.map +1 -1
  79. package/packages/providers/package.json +1 -1
  80. package/packages/providers/src/adapters.ts +1 -1
  81. package/packages/providers/src/deepagents-adapter.ts +28 -31
  82. package/packages/qdrant-skills/dist/embedder.d.ts +5 -1
  83. package/packages/qdrant-skills/dist/embedder.d.ts.map +1 -1
  84. package/packages/qdrant-skills/dist/embedder.js +52 -37
  85. package/packages/qdrant-skills/dist/embedder.js.map +1 -1
  86. package/packages/qdrant-skills/package.json +1 -1
  87. package/packages/qdrant-skills/src/embedder.ts +56 -40
  88. package/packages/qdrant-skills/test/embedder.test.ts +97 -0
  89. package/packages/quota-manager/dist/quota-manager.d.ts +1 -1
  90. package/packages/quota-manager/dist/quota-manager.d.ts.map +1 -1
  91. package/packages/quota-manager/dist/quota-manager.js +10 -8
  92. package/packages/quota-manager/dist/quota-manager.js.map +1 -1
  93. package/packages/quota-manager/dist/tui-usage-monitor.d.ts +5 -3
  94. package/packages/quota-manager/dist/tui-usage-monitor.d.ts.map +1 -1
  95. package/packages/quota-manager/dist/tui-usage-monitor.js +30 -10
  96. package/packages/quota-manager/dist/tui-usage-monitor.js.map +1 -1
  97. package/packages/quota-manager/package.json +1 -1
  98. package/packages/quota-manager/src/quota-manager.ts +10 -9
  99. package/packages/quota-manager/src/tui-usage-monitor.ts +40 -17
  100. package/packages/rate-limiter/package.json +1 -1
  101. package/packages/react-vite-plugin/package.json +1 -1
  102. package/packages/relay/package.json +1 -1
  103. package/packages/release-manager/package.json +1 -1
  104. package/packages/requirement-compiler/package.json +1 -1
  105. package/packages/runtime/package.json +1 -1
  106. package/packages/scheduler/package.json +1 -1
  107. package/packages/scheduler-adapter/package.json +1 -1
  108. package/packages/session/package.json +1 -1
  109. package/packages/session-api/package.json +1 -1
  110. package/packages/session-export/package.json +1 -1
  111. package/packages/shared-context/package.json +1 -1
  112. package/packages/skill-mcp-client/package.json +1 -1
  113. package/packages/skill-registry/package.json +1 -1
  114. package/packages/skills/dist/loader.d.ts.map +1 -1
  115. package/packages/skills/dist/loader.js +9 -6
  116. package/packages/skills/dist/loader.js.map +1 -1
  117. package/packages/skills/package.json +1 -1
  118. package/packages/skills/src/loader.ts +13 -6
  119. package/packages/sprint-planner/package.json +1 -1
  120. package/packages/subscription-engine/package.json +1 -1
  121. package/packages/task-compiler/package.json +1 -1
  122. package/packages/telegram/package.json +1 -1
  123. package/packages/tencentdb-memory/package.json +1 -1
  124. package/packages/tencentdb-sync/package.json +1 -1
  125. package/packages/test-data-generator/package.json +1 -1
  126. package/packages/test-generator/package.json +1 -1
  127. package/packages/todo-bd-sync/package.json +1 -1
  128. package/packages/token-estimation/package.json +1 -1
  129. package/packages/token-optimizer/package.json +1 -1
  130. package/packages/tooling-preference/package.json +1 -1
  131. package/packages/trajectory/package.json +1 -1
  132. package/packages/tui/package.json +1 -1
  133. package/packages/two-phase-review/dist/classify.d.ts +56 -0
  134. package/packages/two-phase-review/dist/classify.d.ts.map +1 -0
  135. package/packages/two-phase-review/dist/classify.js +108 -0
  136. package/packages/two-phase-review/dist/classify.js.map +1 -0
  137. package/packages/two-phase-review/dist/index.d.ts +20 -0
  138. package/packages/two-phase-review/dist/index.d.ts.map +1 -0
  139. package/packages/two-phase-review/dist/index.js +14 -0
  140. package/packages/two-phase-review/dist/index.js.map +1 -0
  141. package/packages/two-phase-review/dist/rules.d.ts +81 -0
  142. package/packages/two-phase-review/dist/rules.d.ts.map +1 -0
  143. package/packages/two-phase-review/dist/rules.js +195 -0
  144. package/packages/two-phase-review/dist/rules.js.map +1 -0
  145. package/packages/two-phase-review/dist/runtime.d.ts +70 -0
  146. package/packages/two-phase-review/dist/runtime.d.ts.map +1 -0
  147. package/packages/two-phase-review/dist/runtime.js +298 -0
  148. package/packages/two-phase-review/dist/runtime.js.map +1 -0
  149. package/packages/two-phase-review/dist/scope.d.ts +68 -0
  150. package/packages/two-phase-review/dist/scope.d.ts.map +1 -0
  151. package/packages/two-phase-review/dist/scope.js +205 -0
  152. package/packages/two-phase-review/dist/scope.js.map +1 -0
  153. package/packages/two-phase-review/dist/signals.d.ts +74 -0
  154. package/packages/two-phase-review/dist/signals.d.ts.map +1 -0
  155. package/packages/two-phase-review/dist/signals.js +297 -0
  156. package/packages/two-phase-review/dist/signals.js.map +1 -0
  157. package/packages/two-phase-review/dist/state.d.ts +72 -0
  158. package/packages/two-phase-review/dist/state.d.ts.map +1 -0
  159. package/packages/two-phase-review/dist/state.js +238 -0
  160. package/packages/two-phase-review/dist/state.js.map +1 -0
  161. package/packages/two-phase-review/dist/types.d.ts +62 -0
  162. package/packages/two-phase-review/dist/types.d.ts.map +1 -0
  163. package/packages/two-phase-review/dist/types.js +9 -0
  164. package/packages/two-phase-review/dist/types.js.map +1 -0
  165. package/packages/two-phase-review/package.json +21 -0
  166. package/packages/two-phase-review/src/classify.ts +129 -0
  167. package/packages/two-phase-review/src/index.ts +110 -0
  168. package/packages/two-phase-review/src/rules.ts +236 -0
  169. package/packages/two-phase-review/src/runtime.ts +392 -0
  170. package/packages/two-phase-review/src/scope.ts +247 -0
  171. package/packages/two-phase-review/src/signals.ts +340 -0
  172. package/packages/two-phase-review/src/state.ts +280 -0
  173. package/packages/two-phase-review/src/types.ts +72 -0
  174. package/packages/two-phase-review/test/classify.test.ts +102 -0
  175. package/packages/two-phase-review/test/helpers.ts +72 -0
  176. package/packages/two-phase-review/test/rules.test.ts +150 -0
  177. package/packages/two-phase-review/test/runtime.test.ts +362 -0
  178. package/packages/two-phase-review/test/scope.test.ts +186 -0
  179. package/packages/two-phase-review/test/signals.test.ts +183 -0
  180. package/packages/two-phase-review/test/state.test.ts +201 -0
  181. package/packages/types/package.json +1 -1
  182. package/packages/voice-api/package.json +1 -1
  183. package/packages/webmcp-tester/package.json +1 -1
  184. package/packages/wiki/package.json +1 -1
  185. package/packages/workflow-events/package.json +1 -1
  186. package/packages/workspace-scanner/package.json +1 -1
  187. package/packages/worktree/dist/worktree.d.ts +32 -1
  188. package/packages/worktree/dist/worktree.d.ts.map +1 -1
  189. package/packages/worktree/dist/worktree.js +21 -8
  190. package/packages/worktree/dist/worktree.js.map +1 -1
  191. package/packages/worktree/package.json +1 -1
  192. package/packages/worktree/src/worktree.ts +50 -9
  193. package/packages/worktree/test/worktree.test.ts +27 -27
  194. package/packages/write-review/package.json +1 -1
  195. package/scripts/typecheck-packages.mjs +3 -3
  196. package/packages/providers/adapters.ts +0 -362
  197. package/packages/providers/deepagents-adapter.ts +0 -458
  198. package/packages/providers/glm-usage.ts +0 -248
  199. package/packages/providers/index.ts +0 -85
  200. package/packages/providers/openai-usage.ts +0 -263
  201. package/packages/trajectory/dist/test/store.test.d.ts +0 -2
  202. package/packages/trajectory/dist/test/store.test.d.ts.map +0 -1
  203. package/packages/trajectory/dist/test/store.test.js +0 -228
  204. package/packages/trajectory/dist/test/store.test.js.map +0 -1
  205. package/packages/types/src/agent-worker-types.d.ts +0 -206
  206. package/packages/types/src/agent-worker-types.js +0 -41
  207. package/packages/worktree/worktree.ts +0 -293
@@ -235,8 +235,8 @@ export const KEY_REQUIREMENTS: KeyRequirement[] = [
235
235
  fixFile: "openai-api-key.txt",
236
236
  placeholder: "<API_KEY>",
237
237
  hint: "OpenAI key used to embed the skills",
238
- // The embedder accepts a TypeSafe or an OpenRouter key as well.
239
- altEnv: ["TYPESAFE_API_KEY", "OPENROUTER_API_KEY"],
238
+ // The embeddings endpoint of OpenAI accepts only an OpenAI key: a
239
+ // TypeSafe or an OpenRouter key is a different credential.
240
240
  minLength: 6,
241
241
  },
242
242
  {
package/index.ts CHANGED
@@ -373,6 +373,78 @@ let _extensionApi: ExtensionAPI | null = null;
373
373
  /** How long an unanswered proposal stays quiet before it is offered again. */
374
374
  const TOOLING_PROPOSAL_COOLDOWN_MS = 30 * 24 * 60 * 60 * 1000;
375
375
 
376
+ // --- two-phase-review: implementation first, review as a second phase -----
377
+
378
+ /** The package of the two-phase workflow. */
379
+ type TwoPhaseModule = typeof import("./packages/two-phase-review/dist/index.js");
380
+
381
+ /** The todo shape the workflow needs. */
382
+ type TwoPhaseTodoLike = import("./packages/two-phase-review/dist/index.js").TodoLike;
383
+
384
+ /**
385
+ * Load the two-phase review package.
386
+ */
387
+ async function loadTwoPhaseModule(): Promise<TwoPhaseModule | null> {
388
+ try {
389
+ return await import("./packages/two-phase-review/dist/index.js");
390
+ } catch (error) {
391
+ logToFile("[TwoPhase]", `package unavailable: ${oneLineError(error)}`);
392
+ return null;
393
+ }
394
+ }
395
+
396
+ /**
397
+ * Register the two-phase workflow in the session.
398
+ *
399
+ * The wiring itself lives in the package (it is tested there). The session
400
+ * only provides the todo list of the session and the workspace.
401
+ */
402
+ async function initTwoPhaseReview(pi: ExtensionAPI): Promise<void> {
403
+ const mod = await loadTwoPhaseModule();
404
+ if (!mod) return;
405
+
406
+ /** Read the todo list of the session (the local one, never bd). */
407
+ const readTodos = async (ctx: unknown): Promise<{
408
+ available: boolean;
409
+ todos: TwoPhaseTodoLike[];
410
+ reason?: string;
411
+ }> => {
412
+ try {
413
+ const jev = await import("./packages/jev-judge/dist/index.js");
414
+ const provider = jev.createTodoProvider(ctx as never);
415
+ const availability = await provider.availability();
416
+ if (!availability.available) {
417
+ return {
418
+ available: false,
419
+ todos: [],
420
+ reason: availability.error ?? "the todo provider is not available",
421
+ };
422
+ }
423
+ const snapshot = await provider.getSnapshot();
424
+ return { available: true, todos: (snapshot.items ?? []) as TwoPhaseTodoLike[] };
425
+ } catch (error) {
426
+ return { available: false, todos: [], reason: oneLineError(error) };
427
+ }
428
+ };
429
+
430
+ try {
431
+ await mod.initTwoPhaseReview({
432
+ pi,
433
+ readTodos,
434
+ workspaceRoot: () => {
435
+ try {
436
+ return realpathSync(process.cwd());
437
+ } catch {
438
+ return process.cwd();
439
+ }
440
+ },
441
+ log: (message: string) => logToFile("[TwoPhase]", message),
442
+ });
443
+ } catch (error) {
444
+ logToFile("[TwoPhase]", `runtime not registered: ${oneLineError(error)}`);
445
+ }
446
+ }
447
+
376
448
  /**
377
449
  * Load the tooling preference package and watch for the session start.
378
450
  *
@@ -4013,6 +4085,12 @@ export default async function (pi: ExtensionAPI) {
4013
4085
  // The proposal is a decision of its own: it never pauses the work.
4014
4086
  void initToolingPreference(pi);
4015
4087
 
4088
+ // --- two-phase-review: implementation first, review as a second phase ----
4089
+ // A review signal during the implementation is queued, never executed.
4090
+ // The handlers are registered before the extension is ready, so a session
4091
+ // that starts right away is already covered.
4092
+ await initTwoPhaseReview(pi);
4093
+
4016
4094
  // --- telegram-notifications: Telegram bot for harness event notifications ----
4017
4095
  // Collect promise so we can wait for initialization before showing startup notification
4018
4096
  asyncInitPromises.push(
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pi-harness-runtime",
3
- "version": "1.1.407",
3
+ "version": "1.1.410",
4
4
  "description": "[BETA] Codex-style /usage status + autonomous coding harness for pi. Not production ready — expect breaking changes.",
5
5
  "type": "module",
6
6
  "scripts": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pi/a2a-adapter",
3
- "version": "1.1.407",
3
+ "version": "1.1.410",
4
4
  "type": "module",
5
5
  "description": "Google Agent-to-Agent (A2A) protocol adapter for pi-harness",
6
6
  "main": "dist/index.js",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pi/agent-policy",
3
- "version": "1.1.407",
3
+ "version": "1.1.410",
4
4
  "description": "Agent policy runtime for pi-harness - enforces mandatory rule delivery and mutation gating",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pi-harness/architecture-generator",
3
- "version": "1.1.407",
3
+ "version": "1.1.410",
4
4
  "description": "Generate ADR and Mermaid diagrams from project analysis",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pi-harness/auth",
3
- "version": "1.1.407",
3
+ "version": "1.1.410",
4
4
  "description": "pi-harness-runtime — auth",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pi/autonomous-refactor",
3
- "version": "1.1.407",
3
+ "version": "1.1.410",
4
4
  "type": "module",
5
5
  "description": "Autonomous refactoring engine",
6
6
  "main": "dist/index.js",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pi/autonomous-runtime",
3
- "version": "1.1.407",
3
+ "version": "1.1.410",
4
4
  "description": "Autonomous Operations Runtime — task inbox, lease management, and worker lifecycle (RFC-0101)",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pi/cache-strategy",
3
- "version": "1.1.407",
3
+ "version": "1.1.410",
4
4
  "type": "module",
5
5
  "description": "Smart caching with TTL and invalidation strategies (RFC-0022)",
6
6
  "main": "dist/index.js",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pi-harness/capability-registry",
3
- "version": "1.1.407",
3
+ "version": "1.1.410",
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/checkpoint",
3
- "version": "1.1.407",
3
+ "version": "1.1.410",
4
4
  "description": "Enhanced checkpoint system with incremental snapshots, diff-based storage, and recovery strategies",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pi/cli-plugin-sdk",
3
- "version": "1.1.407",
3
+ "version": "1.1.410",
4
4
  "type": "module",
5
5
  "description": "CLI Plugin SDK for pi-harness — install, list, remove, update, invoke plugins",
6
6
  "main": "dist/index.js",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pi/clipboard",
3
- "version": "1.1.407",
3
+ "version": "1.1.410",
4
4
  "type": "module",
5
5
  "main": "src/index.ts",
6
6
  "exports": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pi/clipboard-plugin",
3
- "version": "1.1.407",
3
+ "version": "1.1.410",
4
4
  "type": "module",
5
5
  "main": "src/index.ts",
6
6
  "exports": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pi/code-generation",
3
- "version": "1.1.407",
3
+ "version": "1.1.410",
4
4
  "description": "Code generation pipeline for pi-harness-runtime",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pi/code-review",
3
- "version": "1.1.407",
3
+ "version": "1.1.410",
4
4
  "description": "Automated code review engine for pi-harness-runtime",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pi/codex-adapter",
3
- "version": "1.1.407",
3
+ "version": "1.1.410",
4
4
  "type": "module",
5
5
  "description": "OpenAI Codex provider adapter for pi-harness",
6
6
  "main": "dist/index.js",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pi-harness/codex-watcher",
3
- "version": "1.1.407",
3
+ "version": "1.1.410",
4
4
  "description": "Watches Codex CLI sessions and emits visible messages for PING-PONG monitoring",
5
5
  "type": "module",
6
6
  "main": "./dist/src/index.js",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@moocoding/config-capture",
3
- "version": "1.1.407",
3
+ "version": "1.1.410",
4
4
  "description": "Auto-capture API-fetched configuration values to AGENTS.md",
5
5
  "type": "module",
6
6
  "main": "src/index.ts",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pi-harness/connection-runtime",
3
- "version": "1.1.407",
3
+ "version": "1.1.410",
4
4
  "type": "module",
5
5
  "description": "Connection management with jittered exponential backoff for pi-harness",
6
6
  "main": "./dist/index.js",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pi/context-compiler",
3
- "version": "1.1.407",
3
+ "version": "1.1.410",
4
4
  "description": "Bounded context selection engine for pi-harness-runtime",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pi/context-discovery",
3
- "version": "1.1.407",
3
+ "version": "1.1.410",
4
4
  "type": "module",
5
5
  "main": "src/index.ts",
6
6
  "exports": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pi-harness/context-manager",
3
- "version": "1.1.407",
3
+ "version": "1.1.410",
4
4
  "description": "Context Window Manager — prevents model context overflow via compaction and resume prompts (RFC-0010)",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pi-harness/contracts",
3
- "version": "1.1.407",
3
+ "version": "1.1.410",
4
4
  "type": "module",
5
5
  "description": "RPC schema definitions for pi-harness runtime",
6
6
  "main": "./dist/index.js",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pi-harness/cookie-sanitizer",
3
- "version": "1.1.407",
3
+ "version": "1.1.410",
4
4
  "description": "pi-harness-runtime — cookie sanitizer (provider-quota cookie file normaliser)",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pi-harness/cost-optimizer",
3
- "version": "1.1.407",
3
+ "version": "1.1.410",
4
4
  "description": "Cost Optimizer for pi-harness-runtime — budget tracking, forecasting, and model selection optimization",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pi/dependency-analyzer",
3
- "version": "1.1.407",
3
+ "version": "1.1.410",
4
4
  "type": "module",
5
5
  "main": "src/index.ts",
6
6
  "exports": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pi/django-plugin",
3
- "version": "1.1.407",
3
+ "version": "1.1.410",
4
4
  "description": "Django framework analysis — models, management commands, settings",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pi-harness/doc-generator",
3
- "version": "1.1.407",
3
+ "version": "1.1.410",
4
4
  "description": "Auto-Doc Generator — generate documentation from source code (RFC-0014)",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@moocoding/durable-review",
3
- "version": "1.1.407",
3
+ "version": "1.1.410",
4
4
  "description": "SQLite-backed durable reviewer using @earendil-works/pi-durable",
5
5
  "type": "module",
6
6
  "main": "src/index.ts",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pi-harness/e2e-tester",
3
- "version": "1.1.407",
3
+ "version": "1.1.410",
4
4
  "description": "WebMCP-powered E2E testing for pi-harness - natural language test scenarios",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pi-harness/evaluation-engine",
3
- "version": "1.1.407",
3
+ "version": "1.1.410",
4
4
  "description": "Evaluation engine for pi-harness runtime (RFC-0057)",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pi/evaluation-runner",
3
- "version": "1.1.407",
3
+ "version": "1.1.410",
4
4
  "type": "module",
5
5
  "description": "Framework-agnostic evaluation framework for AI outputs (RFC-0020)",
6
6
  "main": "dist/index.js",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pi/event-bus",
3
- "version": "1.1.407",
3
+ "version": "1.1.410",
4
4
  "type": "module",
5
5
  "main": "src/index.ts",
6
6
  "exports": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pi-harness/event-sink",
3
- "version": "1.1.407",
3
+ "version": "1.1.410",
4
4
  "type": "module",
5
5
  "description": "Atomic event sourcing with SQLite transactions for pi-harness",
6
6
  "main": "./dist/index.js",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pi/event-store",
3
- "version": "1.1.407",
3
+ "version": "1.1.410",
4
4
  "type": "module",
5
5
  "main": "src/index.ts",
6
6
  "exports": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pi-harness/experience-replay",
3
- "version": "1.1.407",
3
+ "version": "1.1.410",
4
4
  "description": "Experience replay for debugging and reproducibility (RFC-0059)",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pi/feedback-collector",
3
- "version": "1.1.407",
3
+ "version": "1.1.410",
4
4
  "type": "module",
5
5
  "description": "Collect and aggregate human/automated feedback (RFC-0021)",
6
6
  "main": "dist/index.js",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@moocoding/file-copy-helper",
3
- "version": "1.1.407",
3
+ "version": "1.1.410",
4
4
  "description": "Injects cp/sudo cp rule when user asks to mimic/copy files",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pi/framework-detector",
3
- "version": "1.1.407",
3
+ "version": "1.1.410",
4
4
  "description": "Framework detection system for pi-harness-runtime",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pi/framework-plugin-sdk",
3
- "version": "1.1.407",
3
+ "version": "1.1.410",
4
4
  "description": "Framework plugin SDK for pi-harness-runtime",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pi/frappe-plugin",
3
- "version": "1.1.407",
3
+ "version": "1.1.410",
4
4
  "description": "Frappe/ERPNext framework analysis — DocTypes, hooks, bench sites, site config",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pi/generic-web-plugin",
3
- "version": "1.1.407",
3
+ "version": "1.1.410",
4
4
  "description": "Generic web framework analysis — REST/GraphQL endpoints, OpenAPI, auth",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pi/health-monitor",
3
- "version": "1.1.407",
3
+ "version": "1.1.410",
4
4
  "type": "module",
5
5
  "description": "Health monitoring and auto-healing",
6
6
  "main": "dist/index.js",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pi/intent-analyzer",
3
- "version": "1.1.407",
3
+ "version": "1.1.410",
4
4
  "type": "module",
5
5
  "main": "src/index.ts",
6
6
  "exports": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pi-harness/jev-judge",
3
- "version": "1.1.407",
3
+ "version": "1.1.410",
4
4
  "description": "Jev Judge - Structured decision model for agent routing, E2E testing, and automated decisions",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pi-harness/knowledge-graph",
3
- "version": "1.1.407",
3
+ "version": "1.1.410",
4
4
  "description": "Knowledge Graph extraction and provenance linking for SKILL.md files",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pi-harness/knowledge-retrieval",
3
- "version": "1.1.407",
3
+ "version": "1.1.410",
4
4
  "description": "Knowledge retrieval via TencentDB-Agent-Memory MCP (RFC-0105)",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pi/laravel-plugin",
3
- "version": "1.1.407",
3
+ "version": "1.1.410",
4
4
  "description": "Laravel framework analysis — artisan commands, Eloquent models, Blade",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pi-harness/learning-engine",
3
- "version": "1.1.407",
3
+ "version": "1.1.410",
4
4
  "description": "Learning engine for extracting lessons from runtime execution (RFC-0058)",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pi-harness/logging",
3
- "version": "1.1.407",
3
+ "version": "1.1.410",
4
4
  "type": "module",
5
5
  "description": "Centralized structured application logging with buffered Cloudflare R2 and webhook transports",
6
6
  "main": "./dist/index.js",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pi/mcp-adapter",
3
- "version": "1.1.407",
3
+ "version": "1.1.410",
4
4
  "type": "module",
5
5
  "description": "MCP server adapter for pi-harness — exposes harness capabilities as MCP tools/resources/prompts (RFC-0068)",
6
6
  "main": "dist/index.js",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pi-harness/memory-engine",
3
- "version": "1.1.407",
3
+ "version": "1.1.410",
4
4
  "description": "Memory engine with OKF integration for durable knowledge management (RFC-0060)",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pi-harness/milestone-manager",
3
- "version": "1.1.407",
3
+ "version": "1.1.410",
4
4
  "description": "Track milestones and alerts when items are at risk",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pi-harness/model-registry",
3
- "version": "1.1.407",
3
+ "version": "1.1.410",
4
4
  "description": "Model Registry for pi-harness-runtime — centralized model metadata with pricing",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pi-harness/nextjs-plugin",
3
- "version": "1.1.407",
3
+ "version": "1.1.410",
4
4
  "description": "Next.js framework detection and analysis for pi-harness-runtime (RFC-0062)",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pi-harness/notification",
3
- "version": "1.1.407",
3
+ "version": "1.1.410",
4
4
  "description": "pi-harness-runtime — notification",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pi/observability",
3
- "version": "1.1.407",
3
+ "version": "1.1.410",
4
4
  "description": "Comprehensive observability system with structured logging, tracing, metrics, and alerting",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",