pi-session-mcp 0.8.3 → 0.12.0
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/.pi-session-mcp-cli/client-adapters/command.js +33 -0
- package/.pi-session-mcp-cli/client-adapters/mcp-verifier.js +198 -0
- package/.pi-session-mcp-cli/client-adapters/types.js +1 -0
- package/.pi-session-mcp-cli/config.js +29 -3
- package/.pi-session-mcp-cli/container-runtime.js +18 -0
- package/.pi-session-mcp-cli/doctor.js +370 -4
- package/.pi-session-mcp-cli/execution-modes.js +83 -0
- package/.pi-session-mcp-cli/execution-profile.js +1 -0
- package/.pi-session-mcp-cli/override-lock.js +4 -4
- package/.pi-session-mcp-cli/session-tools.js +45 -0
- package/.pi-session-mcp-cli/setup-platform.js +64 -36
- package/.pi-session-mcp-cli/setup-process.js +455 -0
- package/.pi-session-mcp-cli/skill-library.js +8 -4
- package/.pi-session-mcp-cli/turn-events.js +97 -0
- package/.pi-session-mcp-cli/writer-boundary.js +321 -0
- package/.pi-session-mcp-cli/writer-fence.js +50 -0
- package/.pi-session-mcp-cli/writer-lease.js +140 -0
- package/.pi-session-mcp-cli/writer-lifecycle.js +567 -0
- package/.pi-session-mcp-cli/writer-state.js +199 -0
- package/.pi-session-mcp-cli/writer-wrapper.js +14 -0
- package/CHANGELOG.md +527 -0
- package/README.md +8 -2
- package/dist/capabilities.d.ts +9 -1
- package/dist/capabilities.js +8 -3
- package/dist/child-stdio-transport.d.ts +21 -0
- package/dist/child-stdio-transport.js +88 -0
- package/dist/client-adapters/claude-code.js +3 -2
- package/dist/client-adapters/command.d.ts +8 -0
- package/dist/client-adapters/command.js +9 -1
- package/dist/client-adapters/mcp-verifier.d.ts +7 -0
- package/dist/client-adapters/mcp-verifier.js +21 -4
- package/dist/client-adapters/types.d.ts +5 -1
- package/dist/client-adapters/writer-registration.d.ts +16 -0
- package/dist/client-adapters/writer-registration.js +156 -0
- package/dist/config.d.ts +12 -1
- package/dist/config.js +29 -3
- package/dist/container-runtime.d.ts +2 -0
- package/dist/container-runtime.js +18 -0
- package/dist/doctor.d.ts +36 -2
- package/dist/doctor.js +370 -4
- package/dist/event-spool.d.ts +70 -0
- package/dist/event-spool.js +180 -0
- package/dist/execution-modes.d.ts +60 -0
- package/dist/execution-modes.js +83 -0
- package/dist/execution-profile.d.ts +2 -0
- package/dist/execution-profile.js +1 -0
- package/dist/main.js +63 -8
- package/dist/override-lock.d.ts +2 -0
- package/dist/override-lock.js +4 -4
- package/dist/pi-adapter.d.ts +31 -1
- package/dist/pi-adapter.js +12 -0
- package/dist/process-diagnostics.d.ts +1 -1
- package/dist/process-diagnostics.js +2 -1
- package/dist/refusal-server.d.ts +6 -0
- package/dist/refusal-server.js +46 -0
- package/dist/sdk-pi-adapter.js +16 -9
- package/dist/server.d.ts +3 -2
- package/dist/server.js +27 -53
- package/dist/session-registry.d.ts +32 -2
- package/dist/session-registry.js +61 -11
- package/dist/session-tools.d.ts +14 -5
- package/dist/session-tools.js +13 -9
- package/dist/setup-cli.d.ts +14 -0
- package/dist/setup-cli.js +132 -0
- package/dist/setup-command-guardian.js +9 -3
- package/dist/setup-hooks.d.ts +158 -0
- package/dist/setup-hooks.js +657 -0
- package/dist/setup-main.d.ts +1 -1
- package/dist/setup-main.js +18 -2
- package/dist/setup-modes.d.ts +18 -0
- package/dist/setup-modes.js +131 -0
- package/dist/setup-ownership.d.ts +1 -0
- package/dist/setup-ownership.js +11 -3
- package/dist/setup-platform.d.ts +9 -1
- package/dist/setup-platform.js +64 -36
- package/dist/setup-process.d.ts +23 -1
- package/dist/setup-process.js +88 -10
- package/dist/setup-writers.d.ts +42 -0
- package/dist/setup-writers.js +510 -0
- package/dist/setup.d.ts +4 -1
- package/dist/setup.js +23 -10
- package/dist/skill-library.d.ts +2 -0
- package/dist/skill-library.js +8 -4
- package/dist/tool-schemas.d.ts +339 -0
- package/dist/tool-schemas.js +49 -0
- package/dist/turn-events.d.ts +45 -0
- package/dist/turn-events.js +97 -0
- package/dist/wake-hook.d.ts +180 -0
- package/dist/wake-hook.js +638 -0
- package/dist/wake-main.d.ts +8 -0
- package/dist/wake-main.js +111 -0
- package/dist/writer-acceptance.d.ts +10 -0
- package/dist/writer-acceptance.js +192 -0
- package/dist/writer-boundary.d.ts +52 -0
- package/dist/writer-boundary.js +321 -0
- package/dist/writer-credentials.d.ts +29 -0
- package/dist/writer-credentials.js +85 -0
- package/dist/writer-fence.d.ts +12 -0
- package/dist/writer-fence.js +50 -0
- package/dist/writer-guard.d.ts +13 -0
- package/dist/writer-guard.js +54 -0
- package/dist/writer-launch.d.ts +29 -0
- package/dist/writer-launch.js +232 -0
- package/dist/writer-lease.d.ts +28 -0
- package/dist/writer-lease.js +140 -0
- package/dist/writer-lifecycle.d.ts +96 -0
- package/dist/writer-lifecycle.js +567 -0
- package/dist/writer-relay.d.ts +33 -0
- package/dist/writer-relay.js +359 -0
- package/dist/writer-state.d.ts +111 -0
- package/dist/writer-state.js +199 -0
- package/dist/writer-wrapper.d.ts +3 -0
- package/dist/writer-wrapper.js +14 -0
- package/docs/acceptance.md +1694 -1
- package/docs/adr/0003-post-mvp-maintenance.md +2 -2
- package/docs/adr/0006-pi-extension-allowlist.md +3 -1
- package/docs/adr/0008-coding-profile-isolation.md +295 -0
- package/docs/adr/0009-execution-modes.md +131 -0
- package/docs/adr/0010-read-only-extension-tools.md +68 -0
- package/docs/adr/0011-turn-events-and-controller-wake.md +173 -0
- package/docs/adr/0012-leased-writer-pool.md +357 -0
- package/docs/architecture.md +96 -8
- package/docs/client-setup-design.md +12 -8
- package/docs/client-setup.md +84 -2
- package/docs/doctor-design.md +48 -0
- package/docs/evaluation/2026-10-17-live-screening.md +121 -0
- package/docs/evaluation/2026-10-17-node-runtime-followup.md +33 -0
- package/docs/evaluation/2026-10-17-profile-evaluation-evidence.md +155 -0
- package/docs/evaluation/2026-10-17-test-coverage.md +127 -0
- package/docs/evaluation/README.md +123 -0
- package/docs/evaluation/client-reconnect-2026-10-17/README.md +41 -0
- package/docs/evaluation/client-reconnect-2026-10-17/checks.json +38 -0
- package/docs/evaluation/client-reconnect-2026-10-17/integrity.json +30 -0
- package/docs/evaluation/client-reconnect-2026-10-17/reconnect.json +57 -0
- package/docs/evaluation/client-reconnect-2026-10-17/registration-verification.json +389 -0
- package/docs/evaluation/client-reconnect-2026-10-17/review.json +10 -0
- package/docs/evaluation/controller-ledger-hooks-2026-10-26/README.md +115 -0
- package/docs/evaluation/evidence-2026-10-17/budget.proposed.json +13 -0
- package/docs/evaluation/evidence-2026-10-17/changed-files.txt +82 -0
- package/docs/evaluation/evidence-2026-10-17/checks.json +103 -0
- package/docs/evaluation/evidence-2026-10-17/comparison.json +247 -0
- package/docs/evaluation/evidence-2026-10-17/development-collection-failure.json +15 -0
- package/docs/evaluation/evidence-2026-10-17/full-attempt-default.json +19 -0
- package/docs/evaluation/evidence-2026-10-17/full-tests.json +17 -0
- package/docs/evaluation/evidence-2026-10-17/inventory.json +239 -0
- package/docs/evaluation/evidence-2026-10-17/manifest.json +359 -0
- package/docs/evaluation/evidence-2026-10-17/offline.json +1020 -0
- package/docs/evaluation/evidence-2026-10-17/ui-reference/T3-1280.png +0 -0
- package/docs/evaluation/evidence-2026-10-17/ui-reference/T3-375.png +0 -0
- package/docs/evaluation/evidence-2026-10-17/ui-reference/result.json +141 -0
- package/docs/evaluation/extension-ablation-2026-10-20/README.md +414 -0
- package/docs/evaluation/extension-ablation-2026-10-20/setup.md +140 -0
- package/docs/evaluation/extension-ablation-repeat-2026-10-21/README.md +142 -0
- package/docs/evaluation/extension-ablation-repeat-2026-10-21/setup.md +69 -0
- package/docs/evaluation/extension-audit-2026-10-17/README.md +149 -0
- package/docs/evaluation/extension-audit-2026-10-17/checks.json +38 -0
- package/docs/evaluation/extension-audit-2026-10-17/cursor-static-evidence.json +93 -0
- package/docs/evaluation/extension-audit-2026-10-17/installed-artifact-comparison.json +85 -0
- package/docs/evaluation/extension-audit-2026-10-17/installed-packages.json +100 -0
- package/docs/evaluation/extension-audit-2026-10-17/integrity.json +108 -0
- package/docs/evaluation/extension-audit-2026-10-17/navigation-cursor-registry.json +290 -0
- package/docs/evaluation/extension-audit-2026-10-17/navigation-static-evidence.json +185 -0
- package/docs/evaluation/extension-audit-2026-10-17/openwiki-headless-bindings.json +25 -0
- package/docs/evaluation/extension-audit-2026-10-17/openwiki-headless-cleanup.json +12 -0
- package/docs/evaluation/extension-audit-2026-10-17/openwiki-headless-probe.mjs +63 -0
- package/docs/evaluation/extension-audit-2026-10-17/openwiki-headless-reproduction.json +91 -0
- package/docs/evaluation/extension-audit-2026-10-17/openwiki-headless-result.json +83 -0
- package/docs/evaluation/extension-audit-2026-10-17/permission-cache-artifact-verification.json +24 -0
- package/docs/evaluation/extension-audit-2026-10-17/permission-cache-evidence.json +133 -0
- package/docs/evaluation/extension-audit-2026-10-17/permission-cache-report.md +64 -0
- package/docs/evaluation/extension-audit-2026-10-17/publication-export.json +10 -0
- package/docs/evaluation/extension-audit-2026-10-17/resolver-gates.json +51 -0
- package/docs/evaluation/extension-audit-2026-10-17/review.json +28 -0
- package/docs/evaluation/extension-audit-2026-10-17/run-openwiki-headless-probe.mjs +29 -0
- package/docs/evaluation/extension-audit-2026-10-17/summary.json +123 -0
- package/docs/evaluation/extension-audit-2026-10-17/web-openwiki-artifacts.json +29 -0
- package/docs/evaluation/extension-audit-2026-10-17/web-openwiki-evidence.json +116 -0
- package/docs/evaluation/extension-audit-2026-10-17/web-openwiki-report.md +113 -0
- package/docs/evaluation/extension-functions-2026-10-17/README.md +33 -0
- package/docs/evaluation/extension-functions-2026-10-17/bridges/README.md +39 -0
- package/docs/evaluation/extension-functions-2026-10-17/bridges/attempts/extension-functions-bridges-03dc1dad-9959-40df-b51c-7820991bf7e3.json +79 -0
- package/docs/evaluation/extension-functions-2026-10-17/bridges/attempts/extension-functions-bridges-0c43651e-8c7d-4c7c-aa9b-5b5761141e3b.json +54 -0
- package/docs/evaluation/extension-functions-2026-10-17/bridges/attempts/extension-functions-bridges-51247b13-87c1-4ec6-886b-82d922b0585a.json +89 -0
- package/docs/evaluation/extension-functions-2026-10-17/bridges/attempts/extension-functions-bridges-5337f6bf-503f-4c45-aac0-43b142385a87.json +47 -0
- package/docs/evaluation/extension-functions-2026-10-17/bridges/attempts/extension-functions-bridges-60285194-b1d1-4335-b616-6614941585df.json +46 -0
- package/docs/evaluation/extension-functions-2026-10-17/bridges/attempts/extension-functions-bridges-6d2fbaa9-a720-4582-9be1-a95f4764786d.json +69 -0
- package/docs/evaluation/extension-functions-2026-10-17/bridges/attempts/extension-functions-bridges-6fbb576c-d87d-478d-9c05-4b5ef3563598.json +125 -0
- package/docs/evaluation/extension-functions-2026-10-17/bridges/attempts/extension-functions-bridges-730926d1-ef20-4b2d-ab74-7e542f1065e9.json +48 -0
- package/docs/evaluation/extension-functions-2026-10-17/bridges/attempts/extension-functions-bridges-a1baa47a-5bbe-4a16-ade8-a350599eb911.json +48 -0
- package/docs/evaluation/extension-functions-2026-10-17/bridges/attempts/extension-functions-bridges-bc1d69c7-784f-4ddb-9335-0d905330d568.json +91 -0
- package/docs/evaluation/extension-functions-2026-10-17/bridges/attempts/extension-functions-bridges-d582757d-2859-4683-8310-ec158bf6d551.json +99 -0
- package/docs/evaluation/extension-functions-2026-10-17/bridges/attempts/extension-functions-bridges-e6533a23-4933-4d6e-a250-b1b27f010d18.json +60 -0
- package/docs/evaluation/extension-functions-2026-10-17/bridges/attempts.json +138 -0
- package/docs/evaluation/extension-functions-2026-10-17/bridges/guard.mjs +74 -0
- package/docs/evaluation/extension-functions-2026-10-17/bridges/integrity.json +86 -0
- package/docs/evaluation/extension-functions-2026-10-17/bridges/openwiki-final.json +125 -0
- package/docs/evaluation/extension-functions-2026-10-17/bridges/run.mjs +36 -0
- package/docs/evaluation/extension-functions-2026-10-17/bridges/web-final.json +99 -0
- package/docs/evaluation/extension-functions-2026-10-17/bridges/worker.mjs +102 -0
- package/docs/evaluation/extension-functions-2026-10-17/cache/README.md +21 -0
- package/docs/evaluation/extension-functions-2026-10-17/cache/cache-function-evidence-2026-10-17T13-30-31-440Z-b1a47f88-8d86-4238-9ef8-af890d9ba74b.json +129 -0
- package/docs/evaluation/extension-functions-2026-10-17/cache/cache-function-evidence-2026-10-17T13-31-04-505Z-a3736add-73b8-4d77-8ea6-084ce8aa4599.json +129 -0
- package/docs/evaluation/extension-functions-2026-10-17/cache/cache-function-evidence-2026-10-17T13-31-15-654Z-b0197bff-8363-4d46-b84b-46d9ed67fc39.json +248 -0
- package/docs/evaluation/extension-functions-2026-10-17/cache/cache-function-evidence-2026-10-17T13-31-39-137Z-e373f24d-8a8c-46b0-86aa-9f687cfadb9b.json +278 -0
- package/docs/evaluation/extension-functions-2026-10-17/cache/cache-function-evidence-2026-10-17T13-32-05-324Z-f63095f1-755e-43fc-9d28-3cd1a9ff4f4d.json +251 -0
- package/docs/evaluation/extension-functions-2026-10-17/cache/cache-function-evidence-2026-10-17T13-32-25-191Z-fc9a83af-ceae-40d7-a737-8ef861ba7946.json +282 -0
- package/docs/evaluation/extension-functions-2026-10-17/cache/cache-function-evidence-2026-10-17T13-33-14-993Z-5e7eae34-09f0-4c80-9210-b8cc4d1acb5f.json +282 -0
- package/docs/evaluation/extension-functions-2026-10-17/cache/cache-function-evidence-2026-10-17T13-38-39-010Z-57cf6a26-f091-45de-8849-b616b303a46c.json +283 -0
- package/docs/evaluation/extension-functions-2026-10-17/cache/cache-function-evidence-2026-10-17T13-40-32-118Z-54528e43-ac07-4f9c-8f12-10c041130983.json +283 -0
- package/docs/evaluation/extension-functions-2026-10-17/cache/cache-function-evidence-2026-10-17T13-41-49-525Z-48195b6e-f20d-49a5-bd53-a732a0af10c1.json +324 -0
- package/docs/evaluation/extension-functions-2026-10-17/cache/cache-function-evidence-2026-10-17T13-42-18-175Z-215330e7-06a6-4666-af9c-2ecb214d8d71.json +324 -0
- package/docs/evaluation/extension-functions-2026-10-17/cache/integrity.json +165 -0
- package/docs/evaluation/extension-functions-2026-10-17/cache/probe.mjs +161 -0
- package/docs/evaluation/extension-functions-2026-10-17/cache/receipt-archive.json +150 -0
- package/docs/evaluation/extension-functions-2026-10-17/cache/receipts/commands-headless-3feeffc5-97bf-4079-8505-8119fab7956a.json +54 -0
- package/docs/evaluation/extension-functions-2026-10-17/cache/receipts/commands-headless-42e5eace-ad87-480a-94d9-448c1dd167b8.json +49 -0
- package/docs/evaluation/extension-functions-2026-10-17/cache/receipts/commands-headless-50f39f1c-8b48-442b-8d15-1f9c8f63bd81.json +49 -0
- package/docs/evaluation/extension-functions-2026-10-17/cache/receipts/commands-headless-8482b2b0-f600-488b-9f36-905e0125177a.json +54 -0
- package/docs/evaluation/extension-functions-2026-10-17/cache/receipts/payload-codex-bypass-128ffdce-6fd5-431b-8019-32b40ba4174d.json +42 -0
- package/docs/evaluation/extension-functions-2026-10-17/cache/receipts/payload-codex-bypass-3b572182-a737-471f-b9cb-b01d5da1752a.json +42 -0
- package/docs/evaluation/extension-functions-2026-10-17/cache/receipts/payload-codex-bypass-6c225370-2f47-4a0a-80d5-87d12f6c6fdc.json +37 -0
- package/docs/evaluation/extension-functions-2026-10-17/cache/receipts/payload-codex-bypass-b48399db-cbed-43de-9071-ac27c34e3757.json +37 -0
- package/docs/evaluation/extension-functions-2026-10-17/cache/receipts/payload-openai-3a8f52b6-c8d6-4d1c-844c-782a6624a29e.json +45 -0
- package/docs/evaluation/extension-functions-2026-10-17/cache/receipts/payload-openai-6fcdbc20-b14b-4b80-a4da-bf24078da8d2.json +50 -0
- package/docs/evaluation/extension-functions-2026-10-17/cache/receipts/payload-openai-a8d6f628-40e1-437e-b192-f7232a051a44.json +50 -0
- package/docs/evaluation/extension-functions-2026-10-17/cache/receipts/payload-openai-c3c39463-a2d6-4ff8-b985-8f6d1fb1aa02.json +45 -0
- package/docs/evaluation/extension-functions-2026-10-17/cache/receipts/stats-synthetic-a23c264f-151d-4ff0-aab4-bdbb2f6560d8.json +53 -0
- package/docs/evaluation/extension-functions-2026-10-17/cache/receipts/stats-synthetic-d8178bd3-6530-4915-9cf1-056a975bfbcd.json +53 -0
- package/docs/evaluation/extension-functions-2026-10-17/cache/receipts/stats-synthetic-e3985119-e101-459e-91cd-21a0905287ba.json +48 -0
- package/docs/evaluation/extension-functions-2026-10-17/cache/receipts/stats-synthetic-e7a40382-2d27-4db5-a133-dbe346a5dc60.json +48 -0
- package/docs/evaluation/extension-functions-2026-10-17/cache/receipts/warming-disabled-unknown-223d7adc-2dbc-4017-b1ec-0c38294320e2.json +41 -0
- package/docs/evaluation/extension-functions-2026-10-17/cache/receipts/warming-disabled-unknown-347a8548-d2e0-4846-a08e-b0399f8fd3b4.json +41 -0
- package/docs/evaluation/extension-functions-2026-10-17/cache/receipts/warming-disabled-unknown-49b45e2b-e2d2-456f-b73f-e6bc938b6378.json +46 -0
- package/docs/evaluation/extension-functions-2026-10-17/cache/receipts/warming-disabled-unknown-aaf432f2-bb91-41a7-b951-2d4316389632.json +46 -0
- package/docs/evaluation/extension-functions-2026-10-17/cache/receipts/warming-disabled-zero-204ab3e8-f1fe-4894-8fb0-08299deb4c21.json +41 -0
- package/docs/evaluation/extension-functions-2026-10-17/cache/receipts/warming-disabled-zero-9388d2df-fa15-479c-a4ef-2a774c366c0f.json +46 -0
- package/docs/evaluation/extension-functions-2026-10-17/cache/receipts/warming-disabled-zero-e0bb4742-214a-4b3f-88d2-44de54394e2f.json +46 -0
- package/docs/evaluation/extension-functions-2026-10-17/cache/receipts/warming-disabled-zero-f77e1e2d-742a-490f-9955-1dfb19f59c9c.json +41 -0
- package/docs/evaluation/extension-functions-2026-10-17/cache/runner.mjs +36 -0
- package/docs/evaluation/extension-functions-2026-10-17/cursor/README.md +20 -0
- package/docs/evaluation/extension-functions-2026-10-17/cursor/evidence-2026-10-17T13-36-10-753Z-2bb4fff5-48cc-4f6b-ae1b-5cc1a07f610b.json +54 -0
- package/docs/evaluation/extension-functions-2026-10-17/cursor/evidence-2026-10-17T13-36-26-537Z-5adc4fb1-0008-4ef9-a106-aa372dabf061.json +56 -0
- package/docs/evaluation/extension-functions-2026-10-17/cursor/evidence-2026-10-17T13-36-32-362Z-30949c31-73a3-4dae-af81-68deded51543.json +56 -0
- package/docs/evaluation/extension-functions-2026-10-17/cursor/evidence-2026-10-17T13-36-38-494Z-8eec81b8-5576-48cb-b2fa-c279269db058.json +56 -0
- package/docs/evaluation/extension-functions-2026-10-17/cursor/evidence-2026-10-17T13-36-45-546Z-991647e5-7ea4-43c4-a90d-868e4ac38d83.json +56 -0
- package/docs/evaluation/extension-functions-2026-10-17/cursor/evidence-2026-10-17T13-37-02-277Z-2296fb35-e5cb-4bf1-9e83-7370bcb46bfe.json +56 -0
- package/docs/evaluation/extension-functions-2026-10-17/cursor/evidence-2026-10-17T13-37-28-390Z-e9c3d106-b4c9-4146-ae83-a2799c907fe5.json +56 -0
- package/docs/evaluation/extension-functions-2026-10-17/cursor/evidence-2026-10-17T13-37-37-371Z-8545c893-a8e3-4dc6-973b-81dfd97d798b.json +56 -0
- package/docs/evaluation/extension-functions-2026-10-17/cursor/evidence-2026-10-17T13-38-41-612Z-c57c4778-261d-4397-8a36-df9cc23ca629.json +58 -0
- package/docs/evaluation/extension-functions-2026-10-17/cursor/evidence-2026-10-17T13-38-51-661Z-0eb898de-7471-4f17-a308-5ef5d86421ff.json +58 -0
- package/docs/evaluation/extension-functions-2026-10-17/cursor/evidence-2026-10-17T13-38-55-412Z-8169d843-a9e7-48f4-88b1-3a90e1592df1.json +58 -0
- package/docs/evaluation/extension-functions-2026-10-17/cursor/evidence-2026-10-17T13-39-15-274Z-a5610333-e428-4cc6-9f5a-9206748ee512.json +58 -0
- package/docs/evaluation/extension-functions-2026-10-17/cursor/evidence-2026-10-17T13-39-39-506Z-d4c80a7b-76b4-4d11-bf0f-552d11b131b2.json +136 -0
- package/docs/evaluation/extension-functions-2026-10-17/cursor/evidence-2026-10-17T13-39-53-515Z-db409f47-8ee5-4354-b7f9-a258eb7e17d0.json +136 -0
- package/docs/evaluation/extension-functions-2026-10-17/cursor/evidence-2026-10-17T13-42-04-909Z-01d70cb3-6897-46ca-b8aa-1c69d5b5c7fc.json +148 -0
- package/docs/evaluation/extension-functions-2026-10-17/cursor/integrity.json +205 -0
- package/docs/evaluation/extension-functions-2026-10-17/cursor/probe.mjs +151 -0
- package/docs/evaluation/extension-functions-2026-10-17/cursor/receipt-archive.json +186 -0
- package/docs/evaluation/extension-functions-2026-10-17/cursor/receipts/activation-and-resources-104e378f-8f82-4ae9-bffc-7f1d52e00e74.json +15 -0
- package/docs/evaluation/extension-functions-2026-10-17/cursor/receipts/activation-and-resources-182a8009-c52a-4760-9768-9cba15fceb9c.json +14 -0
- package/docs/evaluation/extension-functions-2026-10-17/cursor/receipts/activation-and-resources-1f07360d-046f-4f0c-b40f-6b57a027220c.json +65 -0
- package/docs/evaluation/extension-functions-2026-10-17/cursor/receipts/activation-and-resources-256cb86e-40ae-4fec-a2d2-9b7f66cc4be8.json +14 -0
- package/docs/evaluation/extension-functions-2026-10-17/cursor/receipts/activation-and-resources-2667d991-3133-44c3-b883-c401b3c14cb1.json +14 -0
- package/docs/evaluation/extension-functions-2026-10-17/cursor/receipts/activation-and-resources-394fc425-ed51-408f-ab09-6d26aee0d48f.json +14 -0
- package/docs/evaluation/extension-functions-2026-10-17/cursor/receipts/activation-and-resources-531d3f1d-c326-4914-b768-3d32103513b9.json +14 -0
- package/docs/evaluation/extension-functions-2026-10-17/cursor/receipts/activation-and-resources-5c7d0d62-8290-494f-8729-5d60bc626ad7.json +14 -0
- package/docs/evaluation/extension-functions-2026-10-17/cursor/receipts/activation-and-resources-64af1d94-ea73-481f-b827-dbf6755d8591.json +66 -0
- package/docs/evaluation/extension-functions-2026-10-17/cursor/receipts/activation-and-resources-65fce696-864c-4247-960e-59f6d671cbf9.json +15 -0
- package/docs/evaluation/extension-functions-2026-10-17/cursor/receipts/activation-and-resources-66acde31-19c7-4d3e-9814-ddeb2cffd373.json +14 -0
- package/docs/evaluation/extension-functions-2026-10-17/cursor/receipts/activation-and-resources-79d220d0-fc0b-4cad-85cc-40b9e904fb97.json +14 -0
- package/docs/evaluation/extension-functions-2026-10-17/cursor/receipts/activation-and-resources-a58f0281-71bc-4757-9d6f-e281f813135e.json +65 -0
- package/docs/evaluation/extension-functions-2026-10-17/cursor/receipts/activation-and-resources-c2b61e4b-fd33-4969-ab29-118957ca5fbb.json +15 -0
- package/docs/evaluation/extension-functions-2026-10-17/cursor/receipts/activation-and-resources-f61b5020-2c05-40ad-9cb8-590b22790186.json +15 -0
- package/docs/evaluation/extension-functions-2026-10-17/cursor/receipts/bridge-disabled-0ee0df5a-299f-451c-96e3-5abcf8bfa999.json +45 -0
- package/docs/evaluation/extension-functions-2026-10-17/cursor/receipts/bridge-disabled-169e5146-09a2-4231-8017-ebd8d4b75f0a.json +14 -0
- package/docs/evaluation/extension-functions-2026-10-17/cursor/receipts/bridge-disabled-19d479f2-7162-463e-90de-2d89a13e59a3.json +15 -0
- package/docs/evaluation/extension-functions-2026-10-17/cursor/receipts/bridge-disabled-1bd882bb-2403-4269-8335-90f9803f57b7.json +14 -0
- package/docs/evaluation/extension-functions-2026-10-17/cursor/receipts/bridge-disabled-2ab9d418-68b2-4679-bf42-f31b6945ea5a.json +15 -0
- package/docs/evaluation/extension-functions-2026-10-17/cursor/receipts/bridge-disabled-3a6aa7d7-b956-4fe5-9555-a2c63408c067.json +45 -0
- package/docs/evaluation/extension-functions-2026-10-17/cursor/receipts/bridge-disabled-6333425f-0b46-4ced-a272-3d48895ee853.json +15 -0
- package/docs/evaluation/extension-functions-2026-10-17/cursor/receipts/bridge-disabled-6eccb170-ff45-40e2-afc5-dfc0f77c229f.json +14 -0
- package/docs/evaluation/extension-functions-2026-10-17/cursor/receipts/bridge-disabled-7f330c57-9c3f-4879-a1d0-67c4c5c36050.json +14 -0
- package/docs/evaluation/extension-functions-2026-10-17/cursor/receipts/bridge-disabled-8d9de272-165c-4bb8-a147-d1b306388472.json +14 -0
- package/docs/evaluation/extension-functions-2026-10-17/cursor/receipts/bridge-disabled-c1ffa69f-25fa-4f45-a691-af3bc422c089.json +14 -0
- package/docs/evaluation/extension-functions-2026-10-17/cursor/receipts/bridge-disabled-c24ad0c8-5e7e-4d71-9b22-3e2708ce1626.json +14 -0
- package/docs/evaluation/extension-functions-2026-10-17/cursor/receipts/bridge-disabled-c5a3140e-a28e-4264-9ee6-51b1310b3123.json +14 -0
- package/docs/evaluation/extension-functions-2026-10-17/cursor/receipts/bridge-disabled-cdbb3dde-2441-46ae-9111-f2a299d45807.json +46 -0
- package/docs/evaluation/extension-functions-2026-10-17/cursor/receipts/bridge-disabled-d68f774c-d1f0-4620-b334-301a20edffc3.json +15 -0
- package/docs/evaluation/extension-functions-2026-10-17/cursor/runner.mjs +147 -0
- package/docs/evaluation/extension-functions-2026-10-17/integrity.json +618 -0
- package/docs/evaluation/extension-functions-2026-10-17/navigation/README.md +22 -0
- package/docs/evaluation/extension-functions-2026-10-17/navigation/SHA256SUMS.txt +8 -0
- package/docs/evaluation/extension-functions-2026-10-17/navigation/attempt.json +13 -0
- package/docs/evaluation/extension-functions-2026-10-17/navigation/attempts/isolated-extensions-results-2026-10-17T13-30-37-626Z-7ba0ce60-b805-4bf1-813f-80f0673c519d.json +50 -0
- package/docs/evaluation/extension-functions-2026-10-17/navigation/attempts/isolated-extensions-results-2026-10-17T13-31-06-997Z-0df6e689-b7f6-4daf-a730-724638c7e9bb.json +52 -0
- package/docs/evaluation/extension-functions-2026-10-17/navigation/attempts/isolated-extensions-results-2026-10-17T13-31-22-489Z-dfa50911-d117-400d-9ea3-76b224693c10.json +59 -0
- package/docs/evaluation/extension-functions-2026-10-17/navigation/attempts/isolated-extensions-results-2026-10-17T13-31-39-899Z-6792c0ef-c795-4136-98e2-b9a9b00489bd.json +59 -0
- package/docs/evaluation/extension-functions-2026-10-17/navigation/attempts/isolated-extensions-results-2026-10-17T13-31-58-555Z-e23d44fb-d2cb-42b6-b76b-f2ac53645401.json +59 -0
- package/docs/evaluation/extension-functions-2026-10-17/navigation/attempts/isolated-extensions-results-2026-10-17T13-32-18-734Z-3708117d-bca6-44a6-9f61-4339a67535ae.json +60 -0
- package/docs/evaluation/extension-functions-2026-10-17/navigation/attempts/isolated-extensions-results-2026-10-17T13-32-34-897Z-abbfb675-7120-46fc-8638-2dde943a3c51.json +114 -0
- package/docs/evaluation/extension-functions-2026-10-17/navigation/attempts/isolated-extensions-results-2026-10-17T13-33-30-753Z-f1965485-aa41-4a9a-b62e-267fc9d7686c.json +72 -0
- package/docs/evaluation/extension-functions-2026-10-17/navigation/attempts/isolated-extensions-results-2026-10-17T13-33-46-589Z-e3b46364-e0dd-4a95-91ce-c11f5192d83f.json +72 -0
- package/docs/evaluation/extension-functions-2026-10-17/navigation/attempts/isolated-extensions-results-2026-10-17T13-33-57-569Z-d296148e-2f64-4921-bad7-391d0f3cc61d.json +74 -0
- package/docs/evaluation/extension-functions-2026-10-17/navigation/attempts/isolated-extensions-results-2026-10-17T13-34-30-540Z-51791e8c-b2a7-4f93-bff6-9b0467aeba51.json +109 -0
- package/docs/evaluation/extension-functions-2026-10-17/navigation/attempts/isolated-extensions-results-2026-10-17T13-34-57-906Z-2c3e469c-6d89-4707-8bc6-e62dcfacdc7c.json +114 -0
- package/docs/evaluation/extension-functions-2026-10-17/navigation/attempts/isolated-extensions-results-2026-10-17T13-35-16-679Z-035260fc-f3d1-4c1c-9619-81f2aa2ced55.json +115 -0
- package/docs/evaluation/extension-functions-2026-10-17/navigation/attempts/isolated-extensions-results-2026-10-17T13-36-05-641Z-24ceb58d-441b-4ffe-9853-ef4d15eb8c81.json +73 -0
- package/docs/evaluation/extension-functions-2026-10-17/navigation/attempts/isolated-extensions-results-2026-10-17T13-37-00-445Z-1ca606b7-306f-41e9-8745-b53879c620bb.json +72 -0
- package/docs/evaluation/extension-functions-2026-10-17/navigation/attempts/isolated-extensions-results-2026-10-17T13-37-23-659Z-c958d5fc-5c17-46b9-abc0-87913f14fd4b.json +73 -0
- package/docs/evaluation/extension-functions-2026-10-17/navigation/attempts/isolated-extensions-results-2026-10-17T13-38-49-639Z-9e74ee3c-7cea-4d9e-832f-0b5068d161ec.json +112 -0
- package/docs/evaluation/extension-functions-2026-10-17/navigation/attempts/isolated-extensions-results-2026-10-17T13-39-53-463Z-5d834e9f-e247-4887-8200-dee41070567f.json +32 -0
- package/docs/evaluation/extension-functions-2026-10-17/navigation/attempts/isolated-extensions-results-2026-10-17T13-40-16-811Z-0be9d64c-a0d7-405c-b81a-12f8c6cfebac.json +33 -0
- package/docs/evaluation/extension-functions-2026-10-17/navigation/attempts/isolated-extensions-results-2026-10-17T13-40-36-020Z-412777d5-f352-4fa0-9a07-f017b5f04cbb.json +124 -0
- package/docs/evaluation/extension-functions-2026-10-17/navigation/attempts/isolated-extensions-results-2026-10-17T13-42-03-506Z-a0cca711-1300-4431-bfff-5814a409d0af.json +120 -0
- package/docs/evaluation/extension-functions-2026-10-17/navigation/attempts/isolated-extensions-results-2026-10-17T13-42-28-426Z-fb70da7e-4888-469a-b5cd-b74da52afa9f.json +112 -0
- package/docs/evaluation/extension-functions-2026-10-17/navigation/attempts/isolated-extensions-results-2026-10-17T13-42-41-596Z-c8e99863-70e2-40f1-a516-e9f41156ef44.json +71 -0
- package/docs/evaluation/extension-functions-2026-10-17/navigation/attempts/isolated-extensions-results-2026-10-17T13-44-06-279Z-39516e45-daf6-409b-b216-64179608cc2e.json +97 -0
- package/docs/evaluation/extension-functions-2026-10-17/navigation/attempts/isolated-extensions-results-2026-10-17T13-45-34-538Z-87ddef90-2fda-4211-a513-0516dec235f4.json +112 -0
- package/docs/evaluation/extension-functions-2026-10-17/navigation/attempts/isolated-extensions-results-2026-10-17T13-45-48-020Z-06f478f2-43c4-48a7-ac02-7e53d4df8aaf.json +112 -0
- package/docs/evaluation/extension-functions-2026-10-17/navigation/attempts/isolated-extensions-results-2026-10-17T13-46-00-807Z-a98cc49d-6cf6-4109-aa95-f2d36e8d35c3.json +97 -0
- package/docs/evaluation/extension-functions-2026-10-17/navigation/attempts/isolated-extensions-results-2026-10-17T13-46-34-183Z-77f75abc-9ec3-41b2-896f-b6f4a180dca8.json +160 -0
- package/docs/evaluation/extension-functions-2026-10-17/navigation/attempts/isolated-extensions-results-2026-10-17T13-46-56-605Z-f46134c2-8523-4892-ab76-e88195d79ed2.json +163 -0
- package/docs/evaluation/extension-functions-2026-10-17/navigation/child-guard.mjs +30 -0
- package/docs/evaluation/extension-functions-2026-10-17/navigation/final-result.json +42 -0
- package/docs/evaluation/extension-functions-2026-10-17/navigation/function-probe.mjs +521 -0
- package/docs/evaluation/extension-functions-2026-10-17/navigation/function-runner.mjs +201 -0
- package/docs/evaluation/extension-functions-2026-10-17/navigation/integrity.json +153 -0
- package/docs/evaluation/extension-functions-2026-10-17/navigation/receipt-archive.json +160 -0
- package/docs/evaluation/extension-functions-2026-10-17/review.json +27 -0
- package/docs/evaluation/extension-functions-2026-10-17/summary.json +102 -0
- package/docs/evaluation/extension-functions-2026-10-17/verification.json +103 -0
- package/docs/evaluation/isolation-acceptance-2026-10-18/README.md +106 -0
- package/docs/evaluation/isolation-acceptance-2026-10-18/auth-warmup.mjs +33 -0
- package/docs/evaluation/isolation-acceptance-2026-10-18/contained-agent-ro.json +433 -0
- package/docs/evaluation/isolation-acceptance-2026-10-18/contained.json +439 -0
- package/docs/evaluation/isolation-acceptance-2026-10-18/control.json +403 -0
- package/docs/evaluation/isolation-acceptance-2026-10-18/live.json +75 -0
- package/docs/evaluation/isolation-acceptance-2026-10-18/wrapper.sh +37 -0
- package/docs/evaluation/ledger-event-bridge-2026-10-21/README.md +360 -0
- package/docs/evaluation/ledger-event-bridge-2026-10-21/design.md +150 -0
- package/docs/evaluation/ledger-event-bridge-2026-10-21/inventory.md +113 -0
- package/docs/evaluation/ledger-event-bridge-2026-10-21/live/README.md +117 -0
- package/docs/evaluation/ledger-event-bridge-2026-10-21/live/dry-run/dry-01-L1-A.json +202 -0
- package/docs/evaluation/ledger-event-bridge-2026-10-21/live/dry-run/dry-02-L1-C.json +259 -0
- package/docs/evaluation/ledger-event-bridge-2026-10-21/live/run/01-L1-A.json +169 -0
- package/docs/evaluation/ledger-event-bridge-2026-10-21/live/run/02-L1-A.json +202 -0
- package/docs/evaluation/ledger-event-bridge-2026-10-21/live/run/03-L1-C.json +256 -0
- package/docs/evaluation/ledger-event-bridge-2026-10-21/live/run/approval.json +31 -0
- package/docs/evaluation/ledger-event-bridge-2026-10-21/live/run-2/01-L1-C.json +256 -0
- package/docs/evaluation/ledger-event-bridge-2026-10-21/live/run-2/02-L1-A.json +201 -0
- package/docs/evaluation/ledger-event-bridge-2026-10-21/live/run-2/approval.json +16 -0
- package/docs/evaluation/ledger-event-bridge-2026-10-21/live-plan.md +87 -0
- package/docs/evaluation/ledger-event-bridge-2026-10-21/pre-registration.md +117 -0
- package/docs/evaluation/ledger-event-bridge-2026-10-21/probe/attempt-1/S1.json +361 -0
- package/docs/evaluation/ledger-event-bridge-2026-10-21/probe/attempt-1/S2.json +544 -0
- package/docs/evaluation/ledger-event-bridge-2026-10-21/probe/attempt-1/S3.json +470 -0
- package/docs/evaluation/ledger-event-bridge-2026-10-21/probe/attempt-1/S4.json +271 -0
- package/docs/evaluation/ledger-event-bridge-2026-10-21/probe/attempt-1/S5.json +271 -0
- package/docs/evaluation/ledger-event-bridge-2026-10-21/probe/attempt-1/S6.json +266 -0
- package/docs/evaluation/ledger-event-bridge-2026-10-21/probe/attempt-1/X6.json +29 -0
- package/docs/evaluation/ledger-event-bridge-2026-10-21/probe/attempt-1/summary.json +269 -0
- package/docs/evaluation/ledger-event-bridge-2026-10-21/probe/attempt-2/S1.json +391 -0
- package/docs/evaluation/ledger-event-bridge-2026-10-21/probe/attempt-2/S2.json +600 -0
- package/docs/evaluation/ledger-event-bridge-2026-10-21/probe/attempt-2/S3.json +519 -0
- package/docs/evaluation/ledger-event-bridge-2026-10-21/probe/attempt-2/S4.json +281 -0
- package/docs/evaluation/ledger-event-bridge-2026-10-21/probe/attempt-2/S5.json +294 -0
- package/docs/evaluation/ledger-event-bridge-2026-10-21/probe/attempt-2/S6.json +280 -0
- package/docs/evaluation/ledger-event-bridge-2026-10-21/probe/attempt-2/S8.json +280 -0
- package/docs/evaluation/ledger-event-bridge-2026-10-21/probe/attempt-2/X6.json +32 -0
- package/docs/evaluation/ledger-event-bridge-2026-10-21/probe/attempt-2/summary.json +307 -0
- package/docs/evaluation/ledger-event-bridge-2026-10-21/probe/attempt-3/S1.json +391 -0
- package/docs/evaluation/ledger-event-bridge-2026-10-21/probe/attempt-3/S2.json +600 -0
- package/docs/evaluation/ledger-event-bridge-2026-10-21/probe/attempt-3/S3.json +519 -0
- package/docs/evaluation/ledger-event-bridge-2026-10-21/probe/attempt-3/S4.json +281 -0
- package/docs/evaluation/ledger-event-bridge-2026-10-21/probe/attempt-3/S5.json +294 -0
- package/docs/evaluation/ledger-event-bridge-2026-10-21/probe/attempt-3/S6.json +280 -0
- package/docs/evaluation/ledger-event-bridge-2026-10-21/probe/attempt-3/S8.json +280 -0
- package/docs/evaluation/ledger-event-bridge-2026-10-21/probe/attempt-3/X6.json +32 -0
- package/docs/evaluation/ledger-event-bridge-2026-10-21/probe/attempt-3/summary.json +307 -0
- package/docs/evaluation/ledger-event-bridge-2026-10-21/probe/attempt-4/S1.json +409 -0
- package/docs/evaluation/ledger-event-bridge-2026-10-21/probe/attempt-4/S2.json +634 -0
- package/docs/evaluation/ledger-event-bridge-2026-10-21/probe/attempt-4/S3.json +537 -0
- package/docs/evaluation/ledger-event-bridge-2026-10-21/probe/attempt-4/S4.json +281 -0
- package/docs/evaluation/ledger-event-bridge-2026-10-21/probe/attempt-4/S5.json +294 -0
- package/docs/evaluation/ledger-event-bridge-2026-10-21/probe/attempt-4/S6.json +280 -0
- package/docs/evaluation/ledger-event-bridge-2026-10-21/probe/attempt-4/S8.json +280 -0
- package/docs/evaluation/ledger-event-bridge-2026-10-21/probe/attempt-4/X6.json +32 -0
- package/docs/evaluation/ledger-event-bridge-2026-10-21/probe/attempt-4/summary.json +307 -0
- package/docs/evaluation/ledger-event-bridge-2026-10-21/probe/attempt-5/S1.json +409 -0
- package/docs/evaluation/ledger-event-bridge-2026-10-21/probe/attempt-5/S2.json +634 -0
- package/docs/evaluation/ledger-event-bridge-2026-10-21/probe/attempt-5/S3.json +537 -0
- package/docs/evaluation/ledger-event-bridge-2026-10-21/probe/attempt-5/S4.json +281 -0
- package/docs/evaluation/ledger-event-bridge-2026-10-21/probe/attempt-5/S5.json +294 -0
- package/docs/evaluation/ledger-event-bridge-2026-10-21/probe/attempt-5/S6.json +280 -0
- package/docs/evaluation/ledger-event-bridge-2026-10-21/probe/attempt-5/S8.json +280 -0
- package/docs/evaluation/ledger-event-bridge-2026-10-21/probe/attempt-5/X6.json +32 -0
- package/docs/evaluation/ledger-event-bridge-2026-10-21/probe/attempt-5/summary.json +307 -0
- package/docs/evaluation/live-rescreen-2026-10-17/README.md +114 -0
- package/docs/evaluation/live-rescreen-2026-10-17/approval.json +18 -0
- package/docs/evaluation/live-rescreen-2026-10-17/approved-budget.json +13 -0
- package/docs/evaluation/live-rescreen-2026-10-17/approved-manifest.json +315 -0
- package/docs/evaluation/live-rescreen-2026-10-17/audit-rescreen.mjs +78 -0
- package/docs/evaluation/live-rescreen-2026-10-17/audit.json +152 -0
- package/docs/evaluation/live-rescreen-2026-10-17/backend-independent-checks.json +38 -0
- package/docs/evaluation/live-rescreen-2026-10-17/checks.json +54 -0
- package/docs/evaluation/live-rescreen-2026-10-17/execution.json +19 -0
- package/docs/evaluation/live-rescreen-2026-10-17/integrity.json +138 -0
- package/docs/evaluation/live-rescreen-2026-10-17/planning-ledger.json +26 -0
- package/docs/evaluation/live-rescreen-2026-10-17/review.json +16 -0
- package/docs/evaluation/live-rescreen-2026-10-17/runs/comparison.json +177 -0
- package/docs/evaluation/live-rescreen-2026-10-17/runs/rescreen-1.claim +1 -0
- package/docs/evaluation/live-rescreen-2026-10-17/runs/rescreen-1.diagnostic.json +1 -0
- package/docs/evaluation/live-rescreen-2026-10-17/runs/rescreen-1.json +97 -0
- package/docs/evaluation/live-rescreen-2026-10-17/runs/rescreen-2.claim +1 -0
- package/docs/evaluation/live-rescreen-2026-10-17/runs/rescreen-2.json +104 -0
- package/docs/evaluation/live-rescreen-2026-10-17/runs/rescreen-2.patch +11 -0
- package/docs/evaluation/live-rescreen-2026-10-17/runs/rescreen-2.snapshot/contract.mjs +4 -0
- package/docs/evaluation/live-rescreen-2026-10-17/runs/rescreen-2.snapshot/package.json +1 -0
- package/docs/evaluation/live-rescreen-2026-10-17/runs/rescreen-3.claim +1 -0
- package/docs/evaluation/live-rescreen-2026-10-17/runs/rescreen-3.json +89 -0
- package/docs/evaluation/live-rescreen-2026-10-17/runs/rescreen-4.claim +1 -0
- package/docs/evaluation/live-rescreen-2026-10-17/runs/rescreen-4.json +104 -0
- package/docs/evaluation/live-rescreen-2026-10-17/runs/rescreen-4.patch +11 -0
- package/docs/evaluation/live-rescreen-2026-10-17/runs/rescreen-4.snapshot/contract.mjs +4 -0
- package/docs/evaluation/live-rescreen-2026-10-17/runs/rescreen-4.snapshot/package.json +1 -0
- package/docs/evaluation/live-rescreen-2026-10-17/runs/rescreen-5.claim +1 -0
- package/docs/evaluation/live-rescreen-2026-10-17/runs/rescreen-5.diagnostic.json +1 -0
- package/docs/evaluation/live-rescreen-2026-10-17/runs/rescreen-5.json +117 -0
- package/docs/evaluation/live-rescreen-2026-10-17/runs/rescreen-6.json +53 -0
- package/docs/evaluation/live-rescreen-2026-10-17/runtime-observation.json +11 -0
- package/docs/evaluation/live-screening-2026-10-17/approval.json +13 -0
- package/docs/evaluation/live-screening-2026-10-17/approved-budget.json +13 -0
- package/docs/evaluation/live-screening-2026-10-17/approved-manifest.json +359 -0
- package/docs/evaluation/live-screening-2026-10-17/audit.json +143 -0
- package/docs/evaluation/live-screening-2026-10-17/integrity.json +148 -0
- package/docs/evaluation/live-screening-2026-10-17/inventory.json +239 -0
- package/docs/evaluation/live-screening-2026-10-17/runs/comparison.json +247 -0
- package/docs/evaluation/live-screening-2026-10-17/runs/screen-1.claim +1 -0
- package/docs/evaluation/live-screening-2026-10-17/runs/screen-1.diagnostic.json +1 -0
- package/docs/evaluation/live-screening-2026-10-17/runs/screen-1.json +98 -0
- package/docs/evaluation/live-screening-2026-10-17/runs/screen-2.claim +1 -0
- package/docs/evaluation/live-screening-2026-10-17/runs/screen-2.json +104 -0
- package/docs/evaluation/live-screening-2026-10-17/runs/screen-2.patch +11 -0
- package/docs/evaluation/live-screening-2026-10-17/runs/screen-2.snapshot/contract.mjs +4 -0
- package/docs/evaluation/live-screening-2026-10-17/runs/screen-2.snapshot/package.json +1 -0
- package/docs/evaluation/live-screening-2026-10-17/runs/screen-3.claim +1 -0
- package/docs/evaluation/live-screening-2026-10-17/runs/screen-3.diagnostic.json +1 -0
- package/docs/evaluation/live-screening-2026-10-17/runs/screen-3.json +97 -0
- package/docs/evaluation/live-screening-2026-10-17/runs/screen-4.claim +1 -0
- package/docs/evaluation/live-screening-2026-10-17/runs/screen-4.json +104 -0
- package/docs/evaluation/live-screening-2026-10-17/runs/screen-4.patch +11 -0
- package/docs/evaluation/live-screening-2026-10-17/runs/screen-4.snapshot/contract.mjs +4 -0
- package/docs/evaluation/live-screening-2026-10-17/runs/screen-4.snapshot/package.json +1 -0
- package/docs/evaluation/live-screening-2026-10-17/runs/screen-5.claim +1 -0
- package/docs/evaluation/live-screening-2026-10-17/runs/screen-5.diagnostic.json +1 -0
- package/docs/evaluation/live-screening-2026-10-17/runs/screen-5.json +97 -0
- package/docs/evaluation/live-screening-2026-10-17/runs/screen-6.claim +1 -0
- package/docs/evaluation/live-screening-2026-10-17/runs/screen-6.json +104 -0
- package/docs/evaluation/live-screening-2026-10-17/runs/screen-6.patch +11 -0
- package/docs/evaluation/live-screening-2026-10-17/runs/screen-6.snapshot/contract.mjs +4 -0
- package/docs/evaluation/live-screening-2026-10-17/runs/screen-6.snapshot/package.json +1 -0
- package/docs/evaluation/live-screening-2026-10-17/runs/screen-7.claim +1 -0
- package/docs/evaluation/live-screening-2026-10-17/runs/screen-7.json +108 -0
- package/docs/evaluation/live-screening-2026-10-17/runs/screen-8.claim +1 -0
- package/docs/evaluation/live-screening-2026-10-17/runs/screen-8.diagnostic.json +1 -0
- package/docs/evaluation/live-screening-2026-10-17/runs/screen-8.json +116 -0
- package/docs/evaluation/m1-ab-proposal-2026-10-18/README.md +124 -0
- package/docs/evaluation/m1-ab-proposal-2026-10-18/ab-proposal.json +135 -0
- package/docs/evaluation/m1-ab-proposal-2026-10-18/probe/attempt-1/README.md +25 -0
- package/docs/evaluation/m1-ab-proposal-2026-10-18/probe/attempt-1/approved-budget.json +13 -0
- package/docs/evaluation/m1-ab-proposal-2026-10-18/probe/attempt-1/approved-decision.json +79 -0
- package/docs/evaluation/m1-ab-proposal-2026-10-18/probe/attempt-1/approved-manifest.json +271 -0
- package/docs/evaluation/m1-ab-proposal-2026-10-18/probe/attempt-1/token-live-result.json +546 -0
- package/docs/evaluation/m1-ab-proposal-2026-10-18/probe/attempt-2/README.md +22 -0
- package/docs/evaluation/m1-ab-proposal-2026-10-18/probe/attempt-2/approved-budget.json +13 -0
- package/docs/evaluation/m1-ab-proposal-2026-10-18/probe/attempt-2/approved-decision.json +80 -0
- package/docs/evaluation/m1-ab-proposal-2026-10-18/probe/attempt-2/approved-manifest.json +271 -0
- package/docs/evaluation/m1-ab-proposal-2026-10-18/probe/attempt-2/token-live-result.json +1663 -0
- package/docs/evaluation/m1-ab-proposal-2026-10-18/probe/attempt-3/README.md +23 -0
- package/docs/evaluation/m1-ab-proposal-2026-10-18/probe/attempt-3/approved-budget.json +13 -0
- package/docs/evaluation/m1-ab-proposal-2026-10-18/probe/attempt-3/approved-decision.json +71 -0
- package/docs/evaluation/m1-ab-proposal-2026-10-18/probe/attempt-3/approved-manifest.json +271 -0
- package/docs/evaluation/m1-ab-proposal-2026-10-18/probe/attempt-3/token-live-result.json +1748 -0
- package/docs/evaluation/m1-ab-proposal-2026-10-18/probe/attempt-4/README.md +25 -0
- package/docs/evaluation/m1-ab-proposal-2026-10-18/probe/attempt-4/arm-A/approved-budget.json +13 -0
- package/docs/evaluation/m1-ab-proposal-2026-10-18/probe/attempt-4/arm-A/approved-decision.json +71 -0
- package/docs/evaluation/m1-ab-proposal-2026-10-18/probe/attempt-4/arm-A/approved-manifest.json +271 -0
- package/docs/evaluation/m1-ab-proposal-2026-10-18/probe/attempt-4/arm-A/token-live-result.json +3019 -0
- package/docs/evaluation/m1-ab-proposal-2026-10-18/probe/attempt-4/arm-B/approved-budget.json +13 -0
- package/docs/evaluation/m1-ab-proposal-2026-10-18/probe/attempt-4/arm-B/approved-decision.json +71 -0
- package/docs/evaluation/m1-ab-proposal-2026-10-18/probe/attempt-4/arm-B/approved-manifest.json +271 -0
- package/docs/evaluation/m1-ab-proposal-2026-10-18/probe/attempt-4/arm-B/token-live-result.json +2859 -0
- package/docs/evaluation/m1-ab-proposal-2026-10-18/results/README.md +67 -0
- package/docs/evaluation/m1-ab-proposal-2026-10-18/results/r1-pair1-A/approved-budget.json +13 -0
- package/docs/evaluation/m1-ab-proposal-2026-10-18/results/r1-pair1-A/approved-decision.json +71 -0
- package/docs/evaluation/m1-ab-proposal-2026-10-18/results/r1-pair1-A/approved-manifest.json +271 -0
- package/docs/evaluation/m1-ab-proposal-2026-10-18/results/r1-pair1-A/token-live-result.json +3019 -0
- package/docs/evaluation/m1-ab-proposal-2026-10-18/results/r2-pair1-B/approved-budget.json +13 -0
- package/docs/evaluation/m1-ab-proposal-2026-10-18/results/r2-pair1-B/approved-decision.json +71 -0
- package/docs/evaluation/m1-ab-proposal-2026-10-18/results/r2-pair1-B/approved-manifest.json +271 -0
- package/docs/evaluation/m1-ab-proposal-2026-10-18/results/r2-pair1-B/token-live-result.json +2981 -0
- package/docs/evaluation/m1-ab-proposal-2026-10-18/results/r3-pair2-B/approved-budget.json +13 -0
- package/docs/evaluation/m1-ab-proposal-2026-10-18/results/r3-pair2-B/approved-decision.json +71 -0
- package/docs/evaluation/m1-ab-proposal-2026-10-18/results/r3-pair2-B/approved-manifest.json +271 -0
- package/docs/evaluation/m1-ab-proposal-2026-10-18/results/r3-pair2-B/token-live-result.json +2887 -0
- package/docs/evaluation/m1-ab-proposal-2026-10-18/results/r4-pair2-A/approved-budget.json +13 -0
- package/docs/evaluation/m1-ab-proposal-2026-10-18/results/r4-pair2-A/approved-decision.json +71 -0
- package/docs/evaluation/m1-ab-proposal-2026-10-18/results/r4-pair2-A/approved-manifest.json +271 -0
- package/docs/evaluation/m1-ab-proposal-2026-10-18/results/r4-pair2-A/token-live-result.json +3189 -0
- package/docs/evaluation/m1-ab-proposal-2026-10-18/results/r5-pair3-B/approved-budget.json +13 -0
- package/docs/evaluation/m1-ab-proposal-2026-10-18/results/r5-pair3-B/approved-decision.json +71 -0
- package/docs/evaluation/m1-ab-proposal-2026-10-18/results/r5-pair3-B/approved-manifest.json +271 -0
- package/docs/evaluation/m1-ab-proposal-2026-10-18/results/r5-pair3-B/token-live-result.json +2929 -0
- package/docs/evaluation/m1-ab-proposal-2026-10-18/results/r6-pair3-A/approved-budget.json +13 -0
- package/docs/evaluation/m1-ab-proposal-2026-10-18/results/r6-pair3-A/approved-decision.json +71 -0
- package/docs/evaluation/m1-ab-proposal-2026-10-18/results/r6-pair3-A/approved-manifest.json +271 -0
- package/docs/evaluation/m1-ab-proposal-2026-10-18/results/r6-pair3-A/token-live-result.json +3085 -0
- package/docs/evaluation/m1-ab-proposal-2026-10-18/results/r7-pair4-A/approved-budget.json +13 -0
- package/docs/evaluation/m1-ab-proposal-2026-10-18/results/r7-pair4-A/approved-decision.json +71 -0
- package/docs/evaluation/m1-ab-proposal-2026-10-18/results/r7-pair4-A/approved-manifest.json +271 -0
- package/docs/evaluation/m1-ab-proposal-2026-10-18/results/r7-pair4-A/token-live-result.json +3019 -0
- package/docs/evaluation/m1-ab-proposal-2026-10-18/results/r8-pair4-B/approved-budget.json +13 -0
- package/docs/evaluation/m1-ab-proposal-2026-10-18/results/r8-pair4-B/approved-decision.json +71 -0
- package/docs/evaluation/m1-ab-proposal-2026-10-18/results/r8-pair4-B/approved-manifest.json +271 -0
- package/docs/evaluation/m1-ab-proposal-2026-10-18/results/r8-pair4-B/token-live-result.json +2925 -0
- package/docs/evaluation/m1-ab-proposal-2026-10-18/results/summary-rows.json +338 -0
- package/docs/evaluation/node24-followup-2026-10-17/README.md +55 -0
- package/docs/evaluation/node24-followup-2026-10-17/client-migration-review.json +20 -0
- package/docs/evaluation/node24-followup-2026-10-17/client-registration-migration.json +31 -0
- package/docs/evaluation/node24-followup-2026-10-17/client-registration-verification.json +389 -0
- package/docs/evaluation/node24-followup-2026-10-17/closure-checks.json +33 -0
- package/docs/evaluation/node24-followup-2026-10-17/cursor-headless-probe.mjs +259 -0
- package/docs/evaluation/node24-followup-2026-10-17/cursor-headless-report.md +39 -0
- package/docs/evaluation/node24-followup-2026-10-17/cursor-headless-result-attempt-2.json +49 -0
- package/docs/evaluation/node24-followup-2026-10-17/cursor-headless-result-attempt-3.json +76 -0
- package/docs/evaluation/node24-followup-2026-10-17/cursor-headless-result-attempt-4.json +108 -0
- package/docs/evaluation/node24-followup-2026-10-17/cursor-headless-result.json +12 -0
- package/docs/evaluation/node24-followup-2026-10-17/cursor-headless-run.mjs +96 -0
- package/docs/evaluation/node24-followup-2026-10-17/download.json +16 -0
- package/docs/evaluation/node24-followup-2026-10-17/extension-summary.json +97 -0
- package/docs/evaluation/node24-followup-2026-10-17/final-review.json +15 -0
- package/docs/evaluation/node24-followup-2026-10-17/install.json +10 -0
- package/docs/evaluation/node24-followup-2026-10-17/integrity.json +204 -0
- package/docs/evaluation/node24-followup-2026-10-17/isolated-extensions-evidence.json +39 -0
- package/docs/evaluation/node24-followup-2026-10-17/isolated-extensions-probe.mjs +277 -0
- package/docs/evaluation/node24-followup-2026-10-17/isolated-extensions-report.md +35 -0
- package/docs/evaluation/node24-followup-2026-10-17/isolated-extensions-results-2026-10-17T09-19-48-378Z-b378dc9f-9ab8-4349-8892-78af8184f78f.json +151 -0
- package/docs/evaluation/node24-followup-2026-10-17/isolated-extensions-results-2026-10-17T09-20-22-821Z-85cfcba4-c05e-4c5a-9658-d8d70f5c8d1a.json +223 -0
- package/docs/evaluation/node24-followup-2026-10-17/isolated-extensions-results-2026-10-17T09-20-54-825Z-fd5d8373-6e29-4197-84bd-2e65251b4db8.json +207 -0
- package/docs/evaluation/node24-followup-2026-10-17/isolated-extensions-results-2026-10-17T09-21-44-636Z-488698ad-f8bf-4d7e-b85a-615275c32e5d.json +82 -0
- package/docs/evaluation/node24-followup-2026-10-17/isolated-extensions-results-2026-10-17T09-22-05-375Z-16f5d77c-32a2-4d0a-905a-e080b392316f.json +94 -0
- package/docs/evaluation/node24-followup-2026-10-17/isolated-extensions-results-2026-10-17T09-22-07-471Z-fcbe7c98-fed3-4120-a860-b2e3f9572836.json +63 -0
- package/docs/evaluation/node24-followup-2026-10-17/isolated-extensions-results-2026-10-17T09-22-17-638Z-45ec386d-3429-4a7c-a10e-8673c03861f0.json +63 -0
- package/docs/evaluation/node24-followup-2026-10-17/isolated-extensions-results-2026-10-17T09-22-22-485Z-1b08e134-667c-4416-8372-cb233939c48b.json +125 -0
- package/docs/evaluation/node24-followup-2026-10-17/isolated-extensions-results-2026-10-17T09-22-25-490Z-223fd05e-52f9-4996-88d7-3ec43a6ecdd9.json +125 -0
- package/docs/evaluation/node24-followup-2026-10-17/isolated-extensions-results-2026-10-17T09-23-42-291Z-f4af1e12-844e-4b2d-a090-9068e7626dd5.json +82 -0
- package/docs/evaluation/node24-followup-2026-10-17/isolated-extensions-results-2026-10-17T09-24-36-866Z-30770d13-c7ae-4309-921b-5c1b43050adb.json +52 -0
- package/docs/evaluation/node24-followup-2026-10-17/isolated-extensions-results-2026-10-17T09-25-05-378Z-2a5dffc1-3f3a-433a-823f-6e77964dcaee.json +53 -0
- package/docs/evaluation/node24-followup-2026-10-17/isolated-extensions-results-2026-10-17T09-25-15-842Z-798946f5-b9a5-4810-8a0c-35be6f40abb3.json +83 -0
- package/docs/evaluation/node24-followup-2026-10-17/isolated-extensions-results-2026-10-17T09-25-19-099Z-89bd000d-bb51-4e3a-b713-51ff1ff4e38b.json +87 -0
- package/docs/evaluation/node24-followup-2026-10-17/isolated-extensions-runner.mjs +172 -0
- package/docs/evaluation/node24-followup-2026-10-17/isolated-install.json +121 -0
- package/docs/evaluation/node24-followup-2026-10-17/isolated-package-lock.json +2321 -0
- package/docs/evaluation/node24-followup-2026-10-17/isolated-package.json +12 -0
- package/docs/evaluation/node24-followup-2026-10-17/launcher-review.json +17 -0
- package/docs/evaluation/node24-followup-2026-10-17/launcher-switch.json +28 -0
- package/docs/evaluation/node24-followup-2026-10-17/mcp-launcher-test.json +24 -0
- package/docs/evaluation/node24-followup-2026-10-17/migrate-client-node.mjs +129 -0
- package/docs/evaluation/node24-followup-2026-10-17/node-runtime-report.md +127 -0
- package/docs/evaluation/node24-followup-2026-10-17/node24-checks.json +44 -0
- package/docs/evaluation/node24-followup-2026-10-17/pi-launcher-test.json +13 -0
- package/docs/evaluation/node24-followup-2026-10-17/publication-export.json +11 -0
- package/docs/evaluation/node24-followup-2026-10-17/restore-launchers.mjs +26 -0
- package/docs/evaluation/node24-followup-2026-10-17/verify-client-node.mjs +36 -0
- package/docs/evaluation/permission-gates-2026-10-17/README.md +23 -0
- package/docs/evaluation/permission-gates-2026-10-17/attempts.json +53 -0
- package/docs/evaluation/permission-gates-2026-10-17/integrity.json +46 -0
- package/docs/evaluation/permission-gates-2026-10-17/permission-gate-probe.mjs +132 -0
- package/docs/evaluation/permission-gates-2026-10-17/permission-gate-worker.mjs +209 -0
- package/docs/evaluation/permission-gates-2026-10-17/permission-gates-result-final.json +53 -0
- package/docs/evaluation/permission-gates-2026-10-17/permission-gates-result-verified.json +54 -0
- package/docs/evaluation/permission-gates-2026-10-17/permission-gates-result.json +53 -0
- package/docs/evaluation/permission-gates-2026-10-17/review.json +19 -0
- package/docs/evaluation/permission-gates-2026-10-17/superseded-initial-receipt.json +40 -0
- package/docs/evaluation/pi-lens-registration-2026-10-19/README.md +90 -0
- package/docs/evaluation/pi-lens-registration-2026-10-19/probe.mjs +126 -0
- package/docs/evaluation/pi-lens-registration-2026-10-19/result.json +1 -0
- package/docs/evaluation/plan-continuation-2026-10-17/README.md +107 -0
- package/docs/evaluation/plan-continuation-2026-10-17/budget.proposed.json +13 -0
- package/docs/evaluation/plan-continuation-2026-10-17/checks.json +1048 -0
- package/docs/evaluation/plan-continuation-2026-10-17/integrity.json +58 -0
- package/docs/evaluation/plan-continuation-2026-10-17/inventory.json +239 -0
- package/docs/evaluation/plan-continuation-2026-10-17/manifest.proposed.json +315 -0
- package/docs/evaluation/plan-continuation-2026-10-17/next-stage-ledger.json +19 -0
- package/docs/evaluation/plan-continuation-2026-10-17/prepare-rescreen.mjs +30 -0
- package/docs/evaluation/plan-continuation-2026-10-17/prior-integrity.json +25 -0
- package/docs/evaluation/plan-continuation-2026-10-17/proposal-validation.json +14 -0
- package/docs/evaluation/plan-continuation-2026-10-17/receipt-contract-update.patch +40 -0
- package/docs/evaluation/plan-continuation-2026-10-17/review.json +8 -0
- package/docs/evaluation/plan-continuation-2026-10-17/source-delta.json +14 -0
- package/docs/evaluation/profile-evaluation.md +297 -0
- package/docs/evaluation/publication-2026-10-17/README.md +88 -0
- package/docs/evaluation/publication-2026-10-17/checks.json +117 -0
- package/docs/evaluation/publication-2026-10-17/integrity.json +21 -0
- package/docs/evaluation/publication-2026-10-17/publication-scan.json +63 -0
- package/docs/evaluation/publication-2026-10-17/review.json +21 -0
- package/docs/evaluation/s5-decision-inputs-2026-10-18/README.md +16 -0
- package/docs/evaluation/s5-decision-inputs-2026-10-18/bounded-wait.md +78 -0
- package/docs/evaluation/s5-decision-inputs-2026-10-18/claude-projection/README.md +151 -0
- package/docs/evaluation/s5-decision-inputs-2026-10-18/claude-projection/attempt-1/claude-projection.json +126 -0
- package/docs/evaluation/s5-decision-inputs-2026-10-18/claude-projection/attempt-2/claude-projection.json +1895 -0
- package/docs/evaluation/s5-decision-inputs-2026-10-18/claude-projection/attempt-3/claude-projection.json +1895 -0
- package/docs/evaluation/s5-decision-inputs-2026-10-18/claude-projection/attempt-4/claude-projection.json +1797 -0
- package/docs/evaluation/s5-decision-inputs-2026-10-18/claude-projection/attempt-5/claude-projection.json +1797 -0
- package/docs/evaluation/s5-decision-inputs-2026-10-18/worker-usage.md +63 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/README.md +212 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/binding.json +20 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/config-ev-off.json +43 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/config-ev-spool.json +43 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/config-l3.json +39 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/config-pre.json +31 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/e-teardown-setup-remove.json +1 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/e1-clean-10s.json +15 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/e1-clean.json +15 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/e1-digest-ev-e1.json +8 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/e1-leaks.json +131 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/e1-oracle.json +74 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/e1-run.json +33 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/e1-setup-1-dryrun.json +1 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/e1-setup-2-apply.json +1 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/e1-setup-3-verify.json +1 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/e2-clean-10s.json +15 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/e2-clean.json +15 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/e2-digest-ev-e2l.json +8 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/e2-digest-ev-e2s.json +8 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/e2-leaks.json +205 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/e2-oracle.json +110 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/e2-run.json +33 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/e3b-clean-10s.json +15 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/e3b-clean.json +15 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/e3b-digest-ev-e3.json +8 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/e3b-leaks.json +215 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/e3b-oracle.json +79 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/e3b-run.json +33 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/e4-clean-10s.json +15 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/e4-clean.json +15 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/e4-digest-ev-e4a.json +8 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/e4-digest-ev-e4b.json +8 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/e4-late-a.json +16 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/e4-late-b.json +16 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/e4-leaks.json +167 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/e4-oracle.json +70 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/e4-run.json +37 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/e5-clean-10s.json +15 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/e5-clean.json +15 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/e5-digest-ev-e5.json +8 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/e5-leaks.json +82 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/e5-oracle.json +60 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/e5-run.json +33 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/e5-server-env-names.txt +14 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/e6b-clean-10s.json +15 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/e6b-clean.json +15 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/e6b-digest-ev-e1.json +8 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/e6b-leaks.json +156 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/e6b-run.json +37 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/e6b-setup-apply.json +1 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/e6b-teardown-remove.json +1 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/final-e-clean.json +15 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/kit.sha256 +23 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/l2-packed-off.json +1185 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/l2-packed-spool.json +1334 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/l2-wt-off.json +1185 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/l2-wt-spool.json +1334 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/l3-cc-inv1-clean-10s.json +15 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/l3-cc-inv1-clean.json +15 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/l3-cc-inv1-digest-cc-analysis.json +8 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/l3-cc-inv1-leaks.json +80 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/l3-cc-inv1-oracle.json +61 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/l3-cc-inv1-run.json +33 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/l3-cc-inv2-clean-10s.json +15 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/l3-cc-inv2-clean.json +15 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/l3-cc-inv2-leaks.json +80 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/l3-cc-inv2-oracle-stage1.json +34 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/l3-cc-inv2-oracle-stage2.json +35 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/l3-cc-inv2-run.json +33 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/l3-cc-inv2-snapshot-stage1.txt +4 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/l3-cc-inv2-snapshot-stage2.txt +5 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/l3-cc-inv3-clean-10s.json +15 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/l3-cc-inv3-clean.json +15 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/l3-cc-inv3-digest-cc-abort.json +8 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/l3-cc-inv3-leaks.json +82 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/l3-cc-inv3-oracle-flow.json +61 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/l3-cc-inv3-oracle-late.json +16 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/l3-cc-inv3-run.json +33 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/l3-controller-skill-remove.json +1 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/l3-controller-skill-setup.json +1 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/l3-cx-inv1-clean-10s.json +15 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/l3-cx-inv1-clean.json +15 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/l3-cx-inv1-digest-cx-analysis.json +8 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/l3-cx-inv1-leaks.json +93 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/l3-cx-inv1-oracle.json +61 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/l3-cx-inv1-run.json +33 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/l3-cx-inv2-clean-10s.json +15 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/l3-cx-inv2-clean.json +15 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/l3-cx-inv2-leaks.json +93 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/l3-cx-inv2-oracle-stage1.json +34 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/l3-cx-inv2-oracle-stage2.json +35 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/l3-cx-inv2-run.json +33 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/l3-cx-inv2-snapshot-stage1.txt +4 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/l3-cx-inv2-snapshot-stage2.txt +5 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/l3-cx-inv3-clean-10s.json +15 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/l3-cx-inv3-clean.json +15 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/l3-cx-inv3-digest-cx-abort.json +8 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/l3-cx-inv3-leaks.json +95 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/l3-cx-inv3-oracle-flow.json +61 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/l3-cx-inv3-oracle-late.json +16 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/l3-cx-inv3-run.json +33 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/p0-clean-10s.json +15 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/p0-clean.json +15 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/p0-digest-pre-analysis.json +8 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/p0-digest-pre-code.json +8 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/p0-leaks.json +86 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/p0-oracle.json +39 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/p0-run.json +33 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/p0a-harness-fail-clean-10s.json +15 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/p0a-harness-fail-clean.json +15 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/p0a-harness-fail-digest-pre-analysis.json +8 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/p0a-harness-fail-digest-pre-code.json +8 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/p0a-harness-fail-leaks.json +47 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/p0a-harness-fail-oracle.json +39 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/p0a-harness-fail-run.json +33 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/regdigest-after-cc.json +6 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/regdigest-after-cx.json +6 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/regdigest-after-e.json +6 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/regdigest-before.json +6 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/w1-control-apply.json +1 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/w1-control-dryrun.json +1 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/w1-provision-apply-attempt1.json +1 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/w1-provision-apply-attempt2.json +1 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/w1-provision-dryrun.json +1 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/w1-writer-verify.json +1 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/w2-leaks.json +130 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/w2-oracle.txt +14 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/w2-run.json +33 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/w2b-oracle.txt +16 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/w2c-oracle.txt +8 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/w2d-oracle.txt +6 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/w2r-leaks.json +130 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/w2r-oracle.txt +3 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/w2r-run.json +33 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/w3-collect.json +1 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/w3-finish.json +1 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/w3r-collect.json +1 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/w3r-finish.json +1 -0
- package/docs/evaluation/s7-live-acceptance-2026-10-24/evidence/w4-remove.json +1 -0
- package/docs/evaluation/subagent-probe-2026-10-26/README.md +132 -0
- package/docs/evaluation/subagent-probe-2026-10-26/results/K7.json +463 -0
- package/docs/evaluation/subagent-probe-2026-10-26/results/summary.json +50 -0
- package/docs/evaluation/test-coverage-2026-10-17.json +483 -0
- package/docs/evaluation/test-coverage-review-2026-10-17.json +22 -0
- package/docs/evaluation/test-coverage-verification-2026-10-17.json +31 -0
- package/docs/evaluation/token-footprint-2026-10-17/README.md +297 -0
- package/docs/evaluation/token-footprint-2026-10-17/baseline.json +25871 -0
- package/docs/evaluation/token-footprint-2026-10-17/calibration-2/README.md +24 -0
- package/docs/evaluation/token-footprint-2026-10-17/calibration-2/baseline.json +30346 -0
- package/docs/evaluation/token-footprint-2026-10-17/calibration-2/client-projection.json +2538 -0
- package/docs/evaluation/token-footprint-2026-10-17/calibration-2/live-approval/budget.json +13 -0
- package/docs/evaluation/token-footprint-2026-10-17/calibration-2/live-approval/decision.json +69 -0
- package/docs/evaluation/token-footprint-2026-10-17/calibration-2/live-approval/manifest.json +271 -0
- package/docs/evaluation/token-footprint-2026-10-17/calibration-2/live-package.json +785 -0
- package/docs/evaluation/token-footprint-2026-10-17/calibration-2/measurement.json +37956 -0
- package/docs/evaluation/token-footprint-2026-10-17/calibration-2/summary.json +119 -0
- package/docs/evaluation/token-footprint-2026-10-17/checks-final.json +273 -0
- package/docs/evaluation/token-footprint-2026-10-17/checks.json +190 -0
- package/docs/evaluation/token-footprint-2026-10-17/client-attempts/README.md +25 -0
- package/docs/evaluation/token-footprint-2026-10-17/client-attempts/attempt-4.json +2274 -0
- package/docs/evaluation/token-footprint-2026-10-17/client-attempts/pilot-1.json +77 -0
- package/docs/evaluation/token-footprint-2026-10-17/client-attempts/pilot-2.json +81 -0
- package/docs/evaluation/token-footprint-2026-10-17/client-attempts/pilot-3.json +121 -0
- package/docs/evaluation/token-footprint-2026-10-17/current-calibration/baseline.json +30346 -0
- package/docs/evaluation/token-footprint-2026-10-17/current-calibration/measurement.json +37956 -0
- package/docs/evaluation/token-footprint-2026-10-17/current-calibration/summary.json +119 -0
- package/docs/evaluation/token-footprint-2026-10-17/current-client-projection.json +2538 -0
- package/docs/evaluation/token-footprint-2026-10-17/follow-up.md +76 -0
- package/docs/evaluation/token-footprint-2026-10-17/integrity.json +171 -0
- package/docs/evaluation/token-footprint-2026-10-17/live-approval/README.md +36 -0
- package/docs/evaluation/token-footprint-2026-10-17/live-approval/budget.json +13 -0
- package/docs/evaluation/token-footprint-2026-10-17/live-approval/decision.json +69 -0
- package/docs/evaluation/token-footprint-2026-10-17/live-approval/manifest.json +271 -0
- package/docs/evaluation/token-footprint-2026-10-17/live-package.json +795 -0
- package/docs/evaluation/token-footprint-2026-10-17/live-proposal.json +427 -0
- package/docs/evaluation/token-footprint-2026-10-17/m1-pilot/README.md +75 -0
- package/docs/evaluation/token-footprint-2026-10-17/m1-pilot/attempt-1/approved-budget.json +13 -0
- package/docs/evaluation/token-footprint-2026-10-17/m1-pilot/attempt-1/approved-decision.json +69 -0
- package/docs/evaluation/token-footprint-2026-10-17/m1-pilot/attempt-1/approved-manifest.json +271 -0
- package/docs/evaluation/token-footprint-2026-10-17/m1-pilot/attempt-1/token-live-result.json +837 -0
- package/docs/evaluation/token-footprint-2026-10-17/m1-pilot/attempt-2/approved-budget.json +13 -0
- package/docs/evaluation/token-footprint-2026-10-17/m1-pilot/attempt-2/approved-decision.json +69 -0
- package/docs/evaluation/token-footprint-2026-10-17/m1-pilot/attempt-2/approved-manifest.json +271 -0
- package/docs/evaluation/token-footprint-2026-10-17/m1-pilot/attempt-2/token-live-result.json +985 -0
- package/docs/evaluation/token-footprint-2026-10-17/m1-pilot/attempt-3/approved-budget.json +13 -0
- package/docs/evaluation/token-footprint-2026-10-17/m1-pilot/attempt-3/approved-decision.json +69 -0
- package/docs/evaluation/token-footprint-2026-10-17/m1-pilot/attempt-3/approved-manifest.json +271 -0
- package/docs/evaluation/token-footprint-2026-10-17/m1-pilot/attempt-3/token-live-result.json +3055 -0
- package/docs/evaluation/token-footprint-2026-10-17/measurement.json +32476 -0
- package/docs/evaluation/token-footprint-2026-10-17/prior-calibration/README.md +20 -0
- package/docs/evaluation/token-footprint-2026-10-17/prior-calibration/integrity.json +40 -0
- package/docs/evaluation/token-footprint-2026-10-17/summary.json +119 -0
- package/docs/evaluation/tool-definitions-2026-10-18/README.md +204 -0
- package/docs/evaluation/tool-definitions-2026-10-18/codex-projection/after/client-projection.json +2853 -0
- package/docs/evaluation/tool-definitions-2026-10-18/codex-projection/before/client-projection.json +2853 -0
- package/docs/evaluation/tool-definitions-2026-10-18/compare-validation.mjs +64 -0
- package/docs/evaluation/tool-definitions-2026-10-18/diff-validation.mjs +13 -0
- package/docs/evaluation/tool-definitions-2026-10-18/measure-wire.mjs +31 -0
- package/docs/evaluation/worker-system-prompt-2026-10-26/README.md +95 -0
- package/docs/evaluation/worker-system-prompt-2026-10-26/probe.mjs +155 -0
- package/docs/execution-modes.md +388 -0
- package/docs/installation.md +246 -12
- package/docs/isolation-setup.md +258 -0
- package/docs/macos-setup-design.md +2 -2
- package/docs/pi-extensions-design.md +71 -16
- package/docs/releasing.md +12 -6
- package/docs/reviews/2026-10-18-adr-0008-decision-brief.md +53 -0
- package/docs/roadmap.md +320 -9
- package/docs/session-mcp.md +5 -1
- package/docs/skills.md +23 -0
- package/docs/sprints/2026-10-15-s4-decision.md +73 -4
- package/docs/sprints/2026-10-17-token-footprint.md +130 -0
- package/docs/sprints/2026-10-18-s5-maintenance-orchestration.md +202 -0
- package/docs/sprints/2026-10-21-s6-ledger-event-bridge.md +120 -0
- package/docs/sprints/2026-10-24-s7-stabilization-live-acceptance.md +173 -0
- package/docs/sprints/2026-10-24-s8-writer-migration.md +235 -0
- package/docs/sprints/2026-10-26-s10-orchestration-reliability.md +250 -0
- package/docs/sprints/2026-10-26-s11-orchestration-gaps.md +173 -0
- package/docs/threat-model.md +37 -6
- package/docs/tool-contracts.md +91 -9
- package/package.json +17 -11
- package/scripts/isolation-acceptance.mjs +709 -0
- package/scripts/isolation-probe.cjs +213 -0
- package/skills/pi-session-implementation/SKILL.md +13 -3
- package/skills/pi-session-orchestration/SKILL.md +50 -13
- package/skills/pi-session-orchestration/references/start-errors.md +12 -0
- package/skills/pi-session-review/SKILL.md +13 -5
|
@@ -39,7 +39,34 @@ Success means:
|
|
|
39
39
|
- Installing or updating extensions. Pi owns that (`pi update --extensions`).
|
|
40
40
|
- Version ranges or "latest". A version is pinned exactly.
|
|
41
41
|
- Pi's built-in extensions (`mcp`, `codemode`, `tool-search`, `llama.cpp`).
|
|
42
|
-
pi-session-mcp keeps its own `mcpServers` bridge.
|
|
42
|
+
pi-session-mcp keeps its own `mcpServers` bridge. Re-checked against Pi SDK
|
|
43
|
+
1.4.0 for [#115](https://github.com/plagor44-ux/pi-session-mcp/issues/115):
|
|
44
|
+
- **Not loaded.** Only the Pi CLI passes its `builtInExtensions` to the
|
|
45
|
+
resource loader. `createAgentSession` and `createAgentSessionServices` add
|
|
46
|
+
them only when `extensionFactories` names them, which this server never
|
|
47
|
+
does. Both resource loaders also set `noExtensions`.
|
|
48
|
+
- **Regression guard.** `test/sdk-extension-contract.test.ts` places a
|
|
49
|
+
`mcp.json` in the global agent directory (`PI_CODING_AGENT_DIR`), in the
|
|
50
|
+
workspace and in `.pi/`. It checks that a session, including its
|
|
51
|
+
`session_start`, starts none of these servers. With the built-ins
|
|
52
|
+
injected, the test fails.
|
|
53
|
+
- **Why the own bridge stays.**
|
|
54
|
+
- Pi's client discovers servers from files: `<agent dir>/mcp.json`, which
|
|
55
|
+
`pi mcp add` writes, and, for trusted projects, `.pi/mcp.json`.
|
|
56
|
+
Config values may run commands (`!cmd`). HTTP servers can carry OAuth or
|
|
57
|
+
a provider token (`auth.provider`).
|
|
58
|
+
- Its `exposure` and `toolExposure` settings control visibility to the
|
|
59
|
+
model, not authorization. A `--tools` allowlist without an `mcp__` entry
|
|
60
|
+
keeps MCP tools outside the allowlist.
|
|
61
|
+
- The bridge, in contrast, connects only operator-configured local stdio
|
|
62
|
+
servers with absolute commands and an `envFrom` allowlist. It grants
|
|
63
|
+
named tools per profile, and in `read-only` profiles only those the
|
|
64
|
+
operator marked `readOnly`. Startup, calls and shutdown are bounded.
|
|
65
|
+
- **Grants for `mcp__` names** are not planned. They would require loading
|
|
66
|
+
the built-in client and the codemode or tool-search machinery around it.
|
|
67
|
+
The rejection of extension tool names that start with `mcp__` stays.
|
|
68
|
+
- **Revisit** if the SDK offers, as a root export, a per-session MCP
|
|
69
|
+
configuration without file discovery and with an exact tool allowlist.
|
|
43
70
|
- Extension CLI flags (for example `--cursor-runtime`) and extension UI. Flags
|
|
44
71
|
keep their defaults; UI calls go to the SDK's no-op UI.
|
|
45
72
|
- Extension slash commands triggered by client prompt text.
|
|
@@ -52,7 +79,7 @@ Success means:
|
|
|
52
79
|
| Capability scope | Full: providers, tools, hooks, system-prompt changes. |
|
|
53
80
|
| Naming and pinning | `npm:<name>@<exact version>`, resolved from Pi's user install; any other installed version fails closed. |
|
|
54
81
|
| Granularity | Per execution profile. |
|
|
55
|
-
| `read-only` profiles | Extensions allowed;
|
|
82
|
+
| `read-only` profiles | Extensions allowed; read/grep/find/ls plus granted MCP tools and individually granted extension tools (ADR 0010). |
|
|
56
83
|
| Integration approach | Pi SDK session lifecycle API (`createAgentSessionServices`, `createAgentSessionFromServices`, `AgentSessionRuntime`). |
|
|
57
84
|
|
|
58
85
|
## Current behavior and constraints
|
|
@@ -200,8 +227,10 @@ For a profile with `extensions`, `SdkPiSessionAdapter.create` runs:
|
|
|
200
227
|
failure is `extension_load_failed`.
|
|
201
228
|
8. **Postchecks.** Model, thinking level and active tools. For extension
|
|
202
229
|
sessions no active tool may be outside the composed allowlist, but fewer
|
|
203
|
-
active tools are allowed
|
|
204
|
-
|
|
230
|
+
active tools are allowed except for explicitly granted extension tools in
|
|
231
|
+
read-only profiles: each must be active and declared to the model at admission
|
|
232
|
+
(ADR 0010). An extension may otherwise deactivate tools, as `pi-cursor-sdk`
|
|
233
|
+
does with its own tool in `session_start`. Sessions without
|
|
205
234
|
extensions keep the exact-equality check as today.
|
|
206
235
|
|
|
207
236
|
Step 3, step 6 and step 7 are each bounded by the existing session-creation
|
|
@@ -213,11 +242,26 @@ and step 6 leaves no session to dispose.
|
|
|
213
242
|
|
|
214
243
|
### Tools, hooks and prompts
|
|
215
244
|
|
|
216
|
-
- **`read-only`.**
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
245
|
+
- **`read-only`.** Under [ADR 0010](adr/0010-read-only-extension-tools.md),
|
|
246
|
+
the active tools are `read`, `grep`, `find`, `ls`, the granted MCP tools and
|
|
247
|
+
exactly the extension tools named in `grantedExtensionTools`. Without grants,
|
|
248
|
+
extension tools remain inactive. An extension's `setActiveTools` cannot add
|
|
249
|
+
others. The field is allowed only on read-only profiles with at least one
|
|
250
|
+
extension: at most 32 unique names satisfying the extension name rule below,
|
|
251
|
+
with no built-in names. A violation prevents startup with
|
|
252
|
+
`invalid_execution_profile_config`.
|
|
253
|
+
Each grant must be registered at extension load, before bind; after bind the
|
|
254
|
+
existing re-check applies. Each granted tool must also be active and declared
|
|
255
|
+
to the model at admission, or start fails with `extension_tool_missing`,
|
|
256
|
+
message `Granted Pi extension tool is not available`, class `needs_operator`.
|
|
257
|
+
Resolution errors (`extension_not_installed`, `extension_version_mismatch`)
|
|
258
|
+
take precedence; conflicts are checked first as `extension_tool_conflict`.
|
|
259
|
+
The SDK activates only declarable tools, so registration alone is insufficient.
|
|
260
|
+
Several registered `pi-lens` tools were never active in the
|
|
261
|
+
[evaluation](evaluation/pi-lens-registration-2026-10-19/); granting one fails
|
|
262
|
+
closed. Lazy registration in `session_start` or later is unsupported.
|
|
263
|
+
A grant is the operator's trust decision: third-party tools may write, and
|
|
264
|
+
workspace modes `container` and `read-only` do not restrict them.
|
|
221
265
|
- **`coding`.** The tool list is the built-in coding tools, the granted MCP
|
|
222
266
|
tools, and every tool registered by the profile's extensions. The adapter
|
|
223
267
|
reads the registered tool names from the services' resource loader after
|
|
@@ -239,9 +283,12 @@ and step 6 leaves no session to dispose.
|
|
|
239
283
|
This server's own MCP bridge tools use a single underscore (`mcp_<server>_<tool>`)
|
|
240
284
|
and never collide.
|
|
241
285
|
The check runs after load and again after binding, because a `session_start`
|
|
242
|
-
handler can register a tool during `bindExtensions`.
|
|
243
|
-
|
|
244
|
-
|
|
286
|
+
handler can register a tool during `bindExtensions`. In read-only profiles,
|
|
287
|
+
the re-check fails on a name conflict (`extension_tool_conflict`) or a missing
|
|
288
|
+
grant (`extension_tool_missing`); an extra, non-colliding registration stays
|
|
289
|
+
inactive outside the allowlist. In coding profiles the composed list includes
|
|
290
|
+
all registered extension tools, so a changed registered set fails with
|
|
291
|
+
`extension_tool_conflict`. Tools an extension registers later, during a
|
|
245
292
|
turn, are not re-checked; allowlisted extensions are trusted code.
|
|
246
293
|
- **Hook errors while binding.** A hook error reported while binding fails the
|
|
247
294
|
start with `extension_load_failed`. Failure cleanup disposes the session
|
|
@@ -319,19 +366,26 @@ cannot be intercepted in Node.js; this is a documented residual risk.
|
|
|
319
366
|
|
|
320
367
|
`pi_capabilities_get` adds `extensions` to every execution profile: an array of
|
|
321
368
|
the configured spec strings, empty for profiles without extensions. The field
|
|
322
|
-
is path-free and secret-free. `
|
|
369
|
+
is path-free and secret-free. Each profile also has `grantedExtensionTools`
|
|
370
|
+
directly after `extensions`, in configured order, or `[]` when absent. It is
|
|
371
|
+
configuration intent only, not proof of runtime availability; setup verify
|
|
372
|
+
validates it. `capabilitiesSchema` and
|
|
323
373
|
`docs/tool-contracts.md` change accordingly.
|
|
324
374
|
|
|
325
375
|
### Doctor
|
|
326
376
|
|
|
327
|
-
Doctor
|
|
377
|
+
Doctor includes these checks after the workspace checks, one per profile and
|
|
328
378
|
extension, with the subject `<profile>:<package name>`:
|
|
329
379
|
|
|
330
380
|
- `extension_missing` (error) when the resolver finds no installed package;
|
|
331
381
|
- `extension_version_mismatch` (error) when the installed manifest version
|
|
332
|
-
differs, or the manifest is unreadable
|
|
382
|
+
differs, or the manifest is unreadable;
|
|
383
|
+
- `extension_unpinned` (warning) when Pi's agent `settings.json` lists the
|
|
384
|
+
configured extension as `npm:<name>` (a string or an object's `source`). Pin
|
|
385
|
+
it with `pi install npm:<name>@<version>`. Missing, unreadable, or invalid
|
|
386
|
+
settings are ignored by this advisory check.
|
|
333
387
|
|
|
334
|
-
Doctor reads manifests only; it never imports extension code. It stays
|
|
388
|
+
Doctor reads manifests and settings only; it never imports extension code. It stays
|
|
335
389
|
offline. `setup --verify` includes Doctor and therefore these checks.
|
|
336
390
|
|
|
337
391
|
### Diagnostics
|
|
@@ -352,6 +406,7 @@ admitted:
|
|
|
352
406
|
| `extension_version_mismatch` | Configured Pi extension version is not installed | The installed version differs from the pinned version. |
|
|
353
407
|
| `extension_load_failed` | Configured Pi extension could not be loaded | Invalid manifest, entry outside the package, load or bind error, services diagnostic of type `error`. |
|
|
354
408
|
| `extension_tool_conflict` | Configured Pi extension tools conflict | An extension tool name collides with a built-in, MCP or other extension tool, or is unsafe (see *Name conflicts*). |
|
|
409
|
+
| `extension_tool_missing` | Granted Pi extension tool is not available | A read-only grant is not registered at load, or is not active and declared to the model at admission; class `needs_operator`. |
|
|
355
410
|
|
|
356
411
|
Existing codes keep their meaning. An extension provider that is unknown after
|
|
357
412
|
loading is `unknown_provider`.
|
package/docs/releasing.md
CHANGED
|
@@ -37,13 +37,15 @@ SDK's own packages are pinned directly (see [Update the Pi SDK](#update-the-pi-s
|
|
|
37
37
|
The Pi SDK is pinned exactly, together with the SDK's internal
|
|
38
38
|
`@earendil-works` packages: `pi-ai`, `pi-mcp`, `pi-tui`, `pi-codemode` and
|
|
39
39
|
`pi-agent-core`, which the SDK declares, and `pi-telemetry`, which `pi-ai`
|
|
40
|
-
declares.
|
|
41
|
-
lockfile inside the package, so a consumer install
|
|
42
|
-
A newer family member
|
|
40
|
+
declares. Up to `1.2.0` they were declared with caret ranges, and npm does not
|
|
41
|
+
ship our lockfile inside the package, so a consumer install resolved those
|
|
42
|
+
ranges fresh. A newer family member could then break the pinned SDK, as in
|
|
43
43
|
[#78](https://github.com/plagor44-ux/pi-session-mcp/issues/78), where
|
|
44
|
-
`pi-codemode` 1.2.0 removed an export that `pi-coding-agent` 1.1.0 imports.
|
|
45
|
-
|
|
46
|
-
|
|
44
|
+
`pi-codemode` 1.2.0 removed an export that `pi-coding-agent` 1.1.0 imports.
|
|
45
|
+
Since `1.3.0` the SDK pins its family exactly. We do not import the family
|
|
46
|
+
members; they stay direct, exactly pinned dependencies as a guard, so that a
|
|
47
|
+
fresh install resolves to the tested versions even if upstream returns to
|
|
48
|
+
ranges.
|
|
47
49
|
The SDK and the six packages therefore always move together, each to the
|
|
48
50
|
version the canary resolves from the declared ranges.
|
|
49
51
|
|
|
@@ -198,6 +200,8 @@ Steps:
|
|
|
198
200
|
5. Run the working-tree
|
|
199
201
|
[Level 2 acceptance](acceptance.md#tooling) on the release candidate with
|
|
200
202
|
`scripts/setup-acceptance.mjs`, unless the release notes state its absence.
|
|
203
|
+
Run it twice: once as is, with delivery off, and once with
|
|
204
|
+
`--events spool`, with turn-event delivery enabled (#113).
|
|
201
205
|
6. Run the packed-tarball Level 2 acceptance on the same candidate. Pack the
|
|
202
206
|
built package, install the tarball into a fresh prefix and point the harness
|
|
203
207
|
at the installed package:
|
|
@@ -213,6 +217,8 @@ Steps:
|
|
|
213
217
|
rm -rf "$PREFIX" ./pi-session-mcp-<x.y.z>.tgz
|
|
214
218
|
```
|
|
215
219
|
|
|
220
|
+
Repeat the harness run with `--events spool` against the same prefix.
|
|
221
|
+
|
|
216
222
|
This is the only acceptance-level pre-release check that resolves
|
|
217
223
|
dependencies like a consumer: the working tree and the CI build use our
|
|
218
224
|
lockfile, which a published package does not carry (#78). The CI install
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
# Decision brief: ADR 0008 (#79), state on 2026-10-18
|
|
2
|
+
|
|
3
|
+
For the maintainer. ADR 0008 stays **Proposed**; this brief prepares the decision
|
|
4
|
+
and changes nothing at runtime. Base main `612fbcb`. First draft by a read-only
|
|
5
|
+
agy/Gemini pass over the repository; every statement below was rechecked against
|
|
6
|
+
the cited files by the integrator.
|
|
7
|
+
|
|
8
|
+
## What changed since the ADR was written
|
|
9
|
+
|
|
10
|
+
- **Stale, corrected in this sprint:** the ADR said macOS live acceptance (R10,
|
|
11
|
+
R11) was open. It passed for Claude Code on 2026-10-16 with release 0.8.3 on a
|
|
12
|
+
real Mac: Level 1, R10 setup (117/117 checks), R11 smoke and a one-client live
|
|
13
|
+
check ([Acceptance](../acceptance.md#macos-acceptance-on-real-hardware-2026-10-16)).
|
|
14
|
+
Not established there: Codex on macOS, the two-client Level 3 cycle, lock
|
|
15
|
+
contention and interruption.
|
|
16
|
+
- **Still not proven anywhere:** containment on macOS. No VM or container setup
|
|
17
|
+
was tried or accepted; the R10/R11 evidence covers setup and smoke, not
|
|
18
|
+
isolation. The live check's diff restriction was model compliance, not an OS
|
|
19
|
+
boundary.
|
|
20
|
+
- **#81 delivered as advice:** Doctor now warns (`workspace_gitfile`) when a
|
|
21
|
+
workspace has a `.git` gitfile and a coding profile exists. This is
|
|
22
|
+
implemented and unreleased; it detects a *possible* linked worktree
|
|
23
|
+
conservatively and enforces nothing.
|
|
24
|
+
- Unchanged and current: the threats T1–T6, the coding tool grant, the
|
|
25
|
+
one-process-per-client union boundary and the shared-hook risk of linked
|
|
26
|
+
worktrees.
|
|
27
|
+
|
|
28
|
+
## Recommendation as a decision template (option 1, wrapped registration)
|
|
29
|
+
|
|
30
|
+
| Element | Proposed rule |
|
|
31
|
+
| --- | --- |
|
|
32
|
+
| Boundary | One rootless Podman container (Linux) or separate OS user per **writer**; the host registration stays read-only |
|
|
33
|
+
| Repository | A full clone per writer inside the boundary, never a linked worktree |
|
|
34
|
+
| Git metadata | Hooks and config not writable from inside, or the host never runs Git in the writer's clone |
|
|
35
|
+
| Review | Fetch the writer's branch into the host repository and review it there before anything leaves |
|
|
36
|
+
| Authentication | Only that boundary's credentials; whether Pi's auth refresh needs a writable agent directory is an open question |
|
|
37
|
+
| External MCP / `envFrom` | Explicit allowlist per coding registration; no ambient host secrets (`SSH_AUTH_SOCK`, tokens) |
|
|
38
|
+
| Cursor-backed coding | Off non-disposable repositories until accepted inside the boundary |
|
|
39
|
+
| macOS | Keeps the Sprint 4 interim rules until a VM-based setup (Lima or Podman machine) is accepted |
|
|
40
|
+
|
|
41
|
+
## Decisions and evidence needed to accept the ADR
|
|
42
|
+
|
|
43
|
+
1. **Accept option 1 as the direction** (or choose another option). Maintainer decision; no evidence beyond the ADR's comparison.
|
|
44
|
+
2. **Auth refresh policy.** Evidence: a provider-free or approved test inside the boundary showing whether refresh writes Pi's agent directory, and that only the boundary's credentials are present.
|
|
45
|
+
3. **External MCP and `envFrom` allowlist** for coding registrations. Evidence: process inspection showing only allowlisted variables reach children.
|
|
46
|
+
4. **Linux acceptance run** of the synthetic isolated-write test defined in the ADR (`edit`, `write`, `bash`, writes outside the workspace and through symlinks, credential absence, process cleanup). Evidence: a sanitized acceptance record.
|
|
47
|
+
5. **macOS policy.** Decide whether macOS keeps the interim rules open-ended or gets a VM runbook; record the decision in the roadmap.
|
|
48
|
+
6. **A decision date or review point**, because the interim period is open-ended today.
|
|
49
|
+
|
|
50
|
+
## Out of scope now
|
|
51
|
+
|
|
52
|
+
No Podman, VM or sandbox build; no move away from the embedded SDK (ADR 0002);
|
|
53
|
+
no runtime or MCP contract change; no session refusal on gitfile workspaces.
|
package/docs/roadmap.md
CHANGED
|
@@ -12,8 +12,26 @@ mean they are implemented or that their gates passed.
|
|
|
12
12
|
|
|
13
13
|
## Current state
|
|
14
14
|
|
|
15
|
-
|
|
16
|
-
|
|
15
|
+
- 2026-10-28: [ADR 0012](adr/0012-leased-writer-pool.md) was accepted and
|
|
16
|
+
implemented in #157: one host registration with a leased container writer
|
|
17
|
+
pool, base-aware allocation and host-spool events. Prepared as minor release
|
|
18
|
+
0.12.0 together with #151 and #154; no new live acceptance is claimed.
|
|
19
|
+
|
|
20
|
+
The explicit 2026-10-17 user request adds a bounded development-only
|
|
21
|
+
[token-footprint measurement](sprints/2026-10-17-token-footprint.md), following
|
|
22
|
+
PR #84. It does not change maintenance mode or the isolation priority below.
|
|
23
|
+
Live measurement requires its own current source-bound matrix/route/budget
|
|
24
|
+
approval; historical evaluation approvals do not apply.
|
|
25
|
+
Its [offline results](evaluation/token-footprint-2026-10-17/README.md) record
|
|
26
|
+
80 transport cases, 50 filter cases and ten adverse-report controls. The
|
|
27
|
+
operator-approved [M1 pilot](evaluation/token-footprint-2026-10-17/m1-pilot/README.md)
|
|
28
|
+
passed on 2026-10-18 on its third attempt (attempts 1 and 2 failed on harness
|
|
29
|
+
defects and are preserved); it measured Codex **controller** usage on one route.
|
|
30
|
+
Worker usage and money cost remain unknown. An A/B is proposed, not approved.
|
|
31
|
+
|
|
32
|
+
Updated 2026-10-18. Base main `612fbcb976d4563ea597e87be56123055b782c1a`
|
|
33
|
+
(the merge of PR #85). Sprint 5 is the
|
|
34
|
+
[maintenance and orchestration sprint](sprints/2026-10-18-s5-maintenance-orchestration.md).
|
|
17
35
|
|
|
18
36
|
- R21 (this roadmap) was delivered as documentation by
|
|
19
37
|
[#58](https://github.com/plagor44-ux/pi-session-mcp/pull/58), which closed
|
|
@@ -55,7 +73,293 @@ Updated 2026-10-15. Base main `bdfb95de9a46defa64d2eb382d58d454f97fc8fb`
|
|
|
55
73
|
Proposed), with interim operating rules until it is accepted. R12, R15 and
|
|
56
74
|
R17 stay deferred (not met), R18 stays deferred (not determinable), and
|
|
57
75
|
[#74](https://github.com/plagor44-ux/pi-session-mcp/issues/74) is closed as
|
|
58
|
-
not planned. R10, R11 and R22
|
|
76
|
+
not planned. R10, R11 and R22 stayed open at that point; R10 and R11 were verified on 2026-10-16 (see the table below).
|
|
77
|
+
- Release 0.8.3 was merged in [#80](https://github.com/plagor44-ux/pi-session-mcp/pull/80)
|
|
78
|
+
and published on 2026-10-15. It fixes #78 with Pi SDK 1.2.0 and exact pins
|
|
79
|
+
of the SDK's internal packages, and adds the install smoke and the
|
|
80
|
+
packed-tarball pre-release check. Its published-release acceptance passed on
|
|
81
|
+
2026-10-16 for the tag and the npm package, and the workstation and server
|
|
82
|
+
installations were upgraded (see
|
|
83
|
+
[Acceptance](acceptance.md#v083-post-release-evidence)). Fresh installs of
|
|
84
|
+
0.6.1 to 0.8.2 do not start.
|
|
85
|
+
- [ADR 0008](adr/0008-coding-profile-isolation.md) for
|
|
86
|
+
[#79](https://github.com/plagor44-ux/pi-session-mcp/issues/79) was accepted for
|
|
87
|
+
Linux on 2026-10-18: option 1, wrapped registration in rootless Podman, one
|
|
88
|
+
boundary per writer. The Linux acceptance passed on 2026-10-18 for one writer
|
|
89
|
+
([evidence](evaluation/isolation-acceptance-2026-10-18/README.md)); review point
|
|
90
|
+
2026-11-15. macOS keeps the interim rules.
|
|
91
|
+
- [ADR 0009](adr/0009-execution-modes.md), accepted 2026-10-18, records
|
|
92
|
+
[per-repository execution modes](execution-modes.md). Both plans ship as
|
|
93
|
+
minor release 0.9.0 (Plan A in #98, Plan B in #99). Plan A: separate modes
|
|
94
|
+
file, host-server enforcement, setup selection and offline Doctor checks.
|
|
95
|
+
Plan B: automated Linux
|
|
96
|
+
rootless-Podman provisioning, explicit host control and contained acceptance,
|
|
97
|
+
collect/reset/recreate/finish, wrappers, refusal server, registration and
|
|
98
|
+
periodic credential checks with near-expiry host warmup. The
|
|
99
|
+
[operator runbook](isolation-setup.md) covers migration of the manual writers,
|
|
100
|
+
including operator-supplied Go images and the `--cache go` selection. New live acceptance and
|
|
101
|
+
rollout are not claimed; each writer must pass its readiness gates.
|
|
102
|
+
|
|
103
|
+
### Sprint 8 migration, steps 3 and 4 (2026-10-27)
|
|
104
|
+
|
|
105
|
+
On the published 0.11.8, without a product change
|
|
106
|
+
([progress](sprints/2026-10-24-s8-writer-migration.md#progress-2026-10-27)):
|
|
107
|
+
|
|
108
|
+
- Step 3: operator images `node-go` (Go 1.27.3) and `node-python-uv`
|
|
109
|
+
(Python 3.12.16, uv 0.13.6), built outside this repository, checked under the writer's
|
|
110
|
+
run flags against real builds of the target repositories.
|
|
111
|
+
- Step 4: go-app runs on four container writers with `--cache go`; the manual
|
|
112
|
+
writer `go-app-alpha` and the host aliases `go-app-w1`–`go-app-w7` are retired,
|
|
113
|
+
`go-app-rev` is `read-only`.
|
|
114
|
+
- The server the second machine was upgraded to 0.11.8.
|
|
115
|
+
- New: [#151](https://github.com/plagor44-ux/pi-session-mcp/issues/151), a
|
|
116
|
+
persistent uv cache for Python writers. Step 5 must also decide on
|
|
117
|
+
pynode-app's tests that need a local Postgres.
|
|
118
|
+
|
|
119
|
+
### Sprint 11: orchestration gaps (2026-10-26)
|
|
120
|
+
|
|
121
|
+
Base main `d93a6d6`, published 0.11.6
|
|
122
|
+
([Sprint 11](sprints/2026-10-26-s11-orchestration-gaps.md)). One branch and
|
|
123
|
+
one pull request, no release:
|
|
124
|
+
|
|
125
|
+
- [#141](https://github.com/plagor44-ux/pi-session-mcp/issues/141): Doctor
|
|
126
|
+
reports coding profiles a container writer would refuse (from #139).
|
|
127
|
+
- [#142](https://github.com/plagor44-ux/pi-session-mcp/issues/142): writers
|
|
128
|
+
refresh the host's OAuth credential ten minutes before expiry, before the
|
|
129
|
+
SDK's own five-minute window, which failed writer turns.
|
|
130
|
+
- K3 and K9 as evaluation hooks outside the package (D1), K5 in the controller
|
|
131
|
+
skill, K7 answered by a provider-free probe, K8 closed without a product
|
|
132
|
+
change.
|
|
133
|
+
- Recorded: the v0.11.6 post-release acceptance and migration step 2
|
|
134
|
+
(`node-app`, four writers).
|
|
135
|
+
- Decided: D3 no ADR yet; #120 waits for an SDK release.
|
|
136
|
+
- Released afterwards: 0.11.7 (#141, #142, the review stage) on 2026-10-26.
|
|
137
|
+
Its upgrade on the workstation failed: with two container repositories the
|
|
138
|
+
repository step's Doctor gate blocked on the other repository's unready
|
|
139
|
+
writers ([#148](https://github.com/plagor44-ux/pi-session-mcp/issues/148)),
|
|
140
|
+
and the workstation was rolled back to 0.11.6. 0.11.8 fixed #148 the same
|
|
141
|
+
day; the workstation was upgraded from 0.11.6 to 0.11.8 and all six writers
|
|
142
|
+
were accepted again.
|
|
143
|
+
|
|
144
|
+
### Sprints 9 close-out and 10: orchestration reliability (2026-10-26, shipped in 0.11.6)
|
|
145
|
+
|
|
146
|
+
Base main `e6fc87c`, published 0.11.5. The operator's orchestration concept of
|
|
147
|
+
2026-10-25 (candidates K1–K11) is assessed against the repository and planned
|
|
148
|
+
in the [Sprint 10 file](sprints/2026-10-26-s10-orchestration-reliability.md).
|
|
149
|
+
Items 1 and 2 are implemented on the consolidated branch and its pull request (status in the Sprint 10 file's progress log); items 3 and 4 are planned:
|
|
150
|
+
|
|
151
|
+
1. Sprint 9 close-out: #136, #137 and the #135 record.
|
|
152
|
+
2. Sprint 10, controller reliability: a provider-free probe of the worker
|
|
153
|
+
system prompt (`phase-0-system-prompt-disabled` in `src/sdk-pi-adapter.ts`),
|
|
154
|
+
a `claude plugin eval` suite for the controller skill (K1), then one skill
|
|
155
|
+
change for the report contract, the early-stop rule and routing defaults
|
|
156
|
+
(K2, K4, K6), measured before and after.
|
|
157
|
+
Items 1 and 2 travel on one branch and one pull request with one patch
|
|
158
|
+
release, 0.11.6.
|
|
159
|
+
3. Sprint 11: file ledger with a compaction hook and a verification `Stop`
|
|
160
|
+
gate (K3, K9) after maintainer decision D1, the wake gaps (K8) and a
|
|
161
|
+
provider-free subagent probe (K7).
|
|
162
|
+
4. In parallel: Sprint 8 migration steps 2–7, one repository at a time.
|
|
163
|
+
|
|
164
|
+
A review stage with a capped fix loop (K5) runs as process from Sprint 10 on.
|
|
165
|
+
The guided profile setup (K10, #139) and a worker report extension (K11) stay
|
|
166
|
+
proposals; K11 needs an ADR.
|
|
167
|
+
|
|
168
|
+
### Sprint 9: writer settings drift and override skills (2026-10-25)
|
|
169
|
+
|
|
170
|
+
Base main `a8f6397`, published 0.11.5. Fixes that make `--repo ... --apply` the
|
|
171
|
+
reliable way to tell whether a writer still matches its configuration before
|
|
172
|
+
more repositories move to container writers:
|
|
173
|
+
|
|
174
|
+
- [#134](https://github.com/plagor44-ux/pi-session-mcp/issues/134): reconcile
|
|
175
|
+
and its dry run report `writer_settings_changed` for a kept writer whose
|
|
176
|
+
settings or coding profiles changed, instead of keeping it silently.
|
|
177
|
+
- [#135](https://github.com/plagor44-ux/pi-session-mcp/issues/135): a container
|
|
178
|
+
coding profile may select only shipped `builtin:` skills without an operator
|
|
179
|
+
override, because overrides do not reach the writer.
|
|
180
|
+
- Open for this sprint: [#136](https://github.com/plagor44-ux/pi-session-mcp/issues/136)
|
|
181
|
+
(reset or finish under a running writer server) and
|
|
182
|
+
[#137](https://github.com/plagor44-ux/pi-session-mcp/issues/137) (unpinned Pi
|
|
183
|
+
extensions and the repository step's Doctor gate).
|
|
184
|
+
- #135 stays open after PR #138 although its fail-closed part shipped; the
|
|
185
|
+
close-out records that and asks decision D4.
|
|
186
|
+
- Proposals, not in this sprint: a guided, interactive setup in the agent
|
|
187
|
+
harness that works out the execution profiles together with the operator;
|
|
188
|
+
copying operator overrides into a writer; adopting a changed image while
|
|
189
|
+
keeping the writer's clone.
|
|
190
|
+
|
|
191
|
+
### Sprint 8: migration to container writers (2026-10-25)
|
|
192
|
+
|
|
193
|
+
Base main `19d0d4f`
|
|
194
|
+
([Sprint 8](sprints/2026-10-24-s8-writer-migration.md), tracking
|
|
195
|
+
[#79](https://github.com/plagor44-ux/pi-session-mcp/issues/79)):
|
|
196
|
+
|
|
197
|
+
- Decided on 2026-10-25: productive coding moves to container writers, repository
|
|
198
|
+
by repository, with the pilot on pi-session-mcp.
|
|
199
|
+
- Done: [#121](https://github.com/plagor44-ux/pi-session-mcp/issues/121), a
|
|
200
|
+
failed writer acceptance now names its cause
|
|
201
|
+
([#123](https://github.com/plagor44-ux/pi-session-mcp/pull/123)).
|
|
202
|
+
- Prepared as 0.11.3: the #118 and #121 fixes and the `zod` patch. The
|
|
203
|
+
maintainer decided on 2026-10-25 to release with the open `undici` finding
|
|
204
|
+
([#120](https://github.com/plagor44-ux/pi-session-mcp/issues/120)) stated in
|
|
205
|
+
the release record, so that the writers run on a published version.
|
|
206
|
+
- Released 0.11.3 on 2026-10-25.
|
|
207
|
+
- Pilot started on 2026-10-25 on the workstation: host alias
|
|
208
|
+
`pi-session-mcp-w1` retired, isolation control passed, mode `container` with
|
|
209
|
+
two writers. The first `--apply` failed the acceptance of both writers
|
|
210
|
+
([#126](https://github.com/plagor44-ux/pi-session-mcp/issues/126), the cause
|
|
211
|
+
behind #121), the repeated one accepted them. Claude Code 2.1.310 blocked the
|
|
212
|
+
second writer's Claude Code registration
|
|
213
|
+
([#127](https://github.com/plagor44-ux/pi-session-mcp/issues/127)).
|
|
214
|
+
- Prepared as 0.11.4: the #125, #126 and #127 fixes
|
|
215
|
+
([#128](https://github.com/plagor44-ux/pi-session-mcp/pull/128)), again with
|
|
216
|
+
the open `undici` finding by maintainer decision.
|
|
217
|
+
- Released 0.11.4 on 2026-10-25. The upgrade from 0.11.3 exposed two defects:
|
|
218
|
+
`--repo ... --apply` did not accept the ready writers again
|
|
219
|
+
([#130](https://github.com/plagor44-ux/pi-session-mcp/issues/130)), so both
|
|
220
|
+
were removed and provisioned again, and one acceptance failed because the
|
|
221
|
+
writer launch refreshed an expired host token inside the harness
|
|
222
|
+
([#131](https://github.com/plagor44-ux/pi-session-mcp/issues/131)); a
|
|
223
|
+
repeated `--apply` accepted it.
|
|
224
|
+
- Prepared as 0.11.5: the #130 and #131 fixes
|
|
225
|
+
([#132](https://github.com/plagor44-ux/pi-session-mcp/pull/132)).
|
|
226
|
+
- Released 0.11.5 on 2026-10-25
|
|
227
|
+
([#133](https://github.com/plagor44-ux/pi-session-mcp/pull/133)), again with
|
|
228
|
+
the open `undici` finding by maintainer decision. The workstation upgrade
|
|
229
|
+
accepted both ready pilot writers in one `--repo ... --apply` without
|
|
230
|
+
removal. An unpinned Pi package update blocked that step first
|
|
231
|
+
([#137](https://github.com/plagor44-ux/pi-session-mcp/issues/137)).
|
|
232
|
+
- Pilot delegation on 2026-10-25: one coding task per writer with
|
|
233
|
+
`code-deepseek`, each a failing test for a newly found defect
|
|
234
|
+
([#134](https://github.com/plagor44-ux/pi-session-mcp/issues/134),
|
|
235
|
+
[#135](https://github.com/plagor44-ux/pi-session-mcp/issues/135)), verified
|
|
236
|
+
by the controller, collected and finished. A reset of a writer with a running
|
|
237
|
+
server cleared that server's credentials
|
|
238
|
+
([#136](https://github.com/plagor44-ux/pi-session-mcp/issues/136)).
|
|
239
|
+
- Next: the remaining repositories, after Sprint 9.
|
|
240
|
+
|
|
241
|
+
### Sprint 7: stabilization and live acceptance (2026-10-24)
|
|
242
|
+
|
|
243
|
+
Base main `f69c40f`, published 0.11.2
|
|
244
|
+
([Sprint 7](sprints/2026-10-24-s7-stabilization-live-acceptance.md)). A
|
|
245
|
+
maintenance sprint without a contract change or a version bump:
|
|
246
|
+
|
|
247
|
+
- [#118](https://github.com/plagor44-ux/pi-session-mcp/issues/118): the Linux
|
|
248
|
+
process table counted a zombie thread-group leader with live threads as gone,
|
|
249
|
+
so the setup fence could end while those threads still held the lock. Fixed
|
|
250
|
+
in this sprint's pull request; the issue closes on merge.
|
|
251
|
+
- Planning documents reconciled with the delivered 0.11.x releases.
|
|
252
|
+
- Live acceptance of the candidate `6651a47`
|
|
253
|
+
([evidence](evaluation/s7-live-acceptance-2026-10-24/README.md)); a candidate
|
|
254
|
+
result is not a result for the published 0.11.2:
|
|
255
|
+
- Level 2 passed.
|
|
256
|
+
- Level 3: 10 of 10 tasks passed. The gate is not met because `npm audit`
|
|
257
|
+
fails on `undici`, which Pi SDK 1.4.0 pins
|
|
258
|
+
([#120](https://github.com/plagor44-ux/pi-session-mcp/issues/120)).
|
|
259
|
+
- Wake: setup path, parallel turns, budget wake, abort and close, and the
|
|
260
|
+
Codex fallback passed. A running CLI session picked up a newly installed
|
|
261
|
+
hook.
|
|
262
|
+
- A container writer with delivery passed its delegation, boundary and
|
|
263
|
+
crafted-event checks; one first-time acceptance failure was not
|
|
264
|
+
diagnosable ([#121](https://github.com/plagor44-ux/pi-session-mcp/issues/121)).
|
|
265
|
+
- Still open after Sprint 7:
|
|
266
|
+
- VS Code wake on a candidate build, and hook pickup by a running VS Code
|
|
267
|
+
session; both need the operator, and the procedure is in the evidence.
|
|
268
|
+
- A forged event during a real controller turn on a writer.
|
|
269
|
+
- #120, #121 and #79.
|
|
270
|
+
- Next priority, in this order:
|
|
271
|
+
1. Decide #120, because without it no release can pass Level 1.
|
|
272
|
+
2. Merge this fix as a patch candidate.
|
|
273
|
+
3. Then #121.
|
|
274
|
+
4. Then the #79 migration decision at the 2026-11-15 review.
|
|
275
|
+
|
|
276
|
+
### Sprint 6: ledger and event-bridge evaluation (2026-10-21)
|
|
277
|
+
|
|
278
|
+
Added at the operator's explicit request of 2026-10-21 as a bounded,
|
|
279
|
+
development-only evaluation
|
|
280
|
+
([#104](https://github.com/plagor44-ux/pi-session-mcp/issues/104),
|
|
281
|
+
[Sprint 6](sprints/2026-10-21-s6-ledger-event-bridge.md),
|
|
282
|
+
[report](evaluation/ledger-event-bridge-2026-10-21/README.md)). It does not
|
|
283
|
+
replace the isolation priority under #79. The evaluation itself changed no
|
|
284
|
+
product code; the bridge implementation that followed shipped in 0.11.0 (below).
|
|
285
|
+
|
|
286
|
+
- Done: inventory of controller ledger, SDK completion semantics, client wake
|
|
287
|
+
paths and OMO Boulder; a provider-free prototype under `eval/bridge/` (ledger,
|
|
288
|
+
completion bridge, question broker, Claude Code `asyncRewake` adapter) with 91
|
|
289
|
+
tests; a client-level probe on Claude Code 2.1.303 with a scripted model
|
|
290
|
+
(idle stream-json session woken once per event, question round trip,
|
|
291
|
+
controls; four attempts kept); two independent reviews, findings fixed.
|
|
292
|
+
- Verdict: a lean completion bridge with Claude Code rewake is technically
|
|
293
|
+
viable. A file ledger and a polling supervisor are not recommended as product
|
|
294
|
+
features.
|
|
295
|
+
- Done on 2026-10-21 with operator approval: two real-model pairs (L4, case L1)
|
|
296
|
+
([live results](evaluation/ledger-event-bridge-2026-10-21/live/README.md)).
|
|
297
|
+
- The woken controller read once, without polls or sleeps, and acted on a
|
|
298
|
+
finished turn after about 2 s instead of 10–21 s.
|
|
299
|
+
- The decision rule was not met: requests 7/8 and 8/8, mixed uncached input
|
|
300
|
+
and cost. The evaluation recommended deferring ADR 0011.
|
|
301
|
+
- Decided on 2026-10-21: the maintainer accepted
|
|
302
|
+
[ADR 0011](adr/0011-turn-events-and-controller-wake.md) items 1–3 for
|
|
303
|
+
controller reaction time, knowingly against that recommendation. It covers
|
|
304
|
+
opt-in spool delivery, one spool mount per container writer (ADR 0008
|
|
305
|
+
amendment), a setup-installed Claude Code hook, a capabilities field and a
|
|
306
|
+
skill section, shipped as minor release 0.11.0.
|
|
307
|
+
- Implemented: [#108](https://github.com/plagor44-ux/pi-session-mcp/issues/108)
|
|
308
|
+
was implemented to the approved
|
|
309
|
+
[plan](superpowers/plans/2026-10-21-turn-events-and-controller-wake.md) and
|
|
310
|
+
merged in [#110](https://github.com/plagor44-ux/pi-session-mcp/pull/110)
|
|
311
|
+
(Linux only), after several independent review rounds and a provider-free
|
|
312
|
+
product probe on Claude Code 2.1.306. Released as 0.11.0 on 2026-10-22; the
|
|
313
|
+
operator confirmed the wake in the interactive Claude Code TUI.
|
|
314
|
+
- Fixed in 0.11.1: [#113](https://github.com/plagor44-ux/pi-session-mcp/issues/113).
|
|
315
|
+
With delivery enabled, 0.11.0 refused to start without `XDG_RUNTIME_DIR`,
|
|
316
|
+
which Codex never passes, so a shared configuration broke Codex and setup
|
|
317
|
+
verification. Delivery now stays inactive there (ADR 0011 amendment).
|
|
318
|
+
- Released as 0.11.2 on 2026-10-22 ([#116](https://github.com/plagor44-ux/pi-session-mcp/pull/116);
|
|
319
|
+
[post-release evidence](acceptance.md#v0112-post-release-evidence) in
|
|
320
|
+
[#119](https://github.com/plagor44-ux/pi-session-mcp/pull/119)):
|
|
321
|
+
- [#109](https://github.com/plagor44-ux/pi-session-mcp/issues/109): processes
|
|
322
|
+
that exited during a `/proc` scan made the Linux setup fence fail at random
|
|
323
|
+
with `ownership_lock_unavailable`, in CI and on busy hosts.
|
|
324
|
+
- [#117](https://github.com/plagor44-ux/pi-session-mcp/issues/117): Pi SDK
|
|
325
|
+
1.4.0.
|
|
326
|
+
- Decided in [#119](https://github.com/plagor44-ux/pi-session-mcp/pull/119):
|
|
327
|
+
[#115](https://github.com/plagor44-ux/pi-session-mcp/issues/115). The server
|
|
328
|
+
keeps its own controlled `mcpServers` bridge and guards against Pi's built-in
|
|
329
|
+
MCP client.
|
|
330
|
+
- Open operator checks: wake in the VS Code extension, whether a running
|
|
331
|
+
session loads a newly written hook without a restart or `/hooks` review, and
|
|
332
|
+
a wrapped container writer with delivery under rootless Podman, including the
|
|
333
|
+
isolation check of the extra mount; Sprint 7 runs them. The question channel
|
|
334
|
+
(ADR 0011 item 4) is still undecided; a ledger and a supervisor are not
|
|
335
|
+
product features.
|
|
336
|
+
The #79 isolation review point of 2026-11-15 stays.
|
|
337
|
+
- Deferred: Codex wake (no documented path), macOS delivery (no
|
|
338
|
+
`XDG_RUNTIME_DIR` and no `/proc/self/fd` by default), a supervisor-only
|
|
339
|
+
detection arm.
|
|
340
|
+
|
|
341
|
+
### Sprint 5 issue status
|
|
342
|
+
|
|
343
|
+
Implemented means the code or text exists on the Sprint 5 branch; verified
|
|
344
|
+
means its named checks passed with evidence. The implemented items shipped in
|
|
345
|
+
0.9.0; live acceptance stays as stated per row.
|
|
346
|
+
|
|
347
|
+
| Issue | Scope | Owner | Depends on | Status |
|
|
348
|
+
| --- | --- | --- | --- | --- |
|
|
349
|
+
| [#79](https://github.com/plagor44-ux/pi-session-mcp/issues/79) | Isolation decision, ADR 0008; execution policy, ADR 0009 | maintainer | — | accepted for Linux; [Linux acceptance](evaluation/isolation-acceptance-2026-10-18/README.md) passed on 2026-10-18 for writers `psm-alpha` and `go-app-alpha` (contained and live), both registered in Claude Code's local scope; Plan A per-repository modes (#98) and Plan B automated container writers with near-expiry credential refresh (#99) ship in 0.9.0; no live rollout or new live writer acceptance claimed yet; remaining host routes/repositories need operator choices, review point 2026-11-15 |
|
|
350
|
+
| [#81](https://github.com/plagor44-ux/pi-session-mcp/issues/81) | Doctor `workspace_gitfile` warning | Sprint 5 | — | implemented; provider-free tests |
|
|
351
|
+
| [#86](https://github.com/plagor44-ux/pi-session-mcp/issues/86) | Orchestration skill: consume once, cadence, start-error reference | Sprint 5 | — | implemented; live effect unmeasured (#93) |
|
|
352
|
+
| [#87](https://github.com/plagor44-ux/pi-session-mcp/issues/87) | Concise worker reports | Sprint 5 | — | implemented; live effect unmeasured; untested by the A/B unless worker skills are selected |
|
|
353
|
+
| [#88](https://github.com/plagor44-ux/pi-session-mcp/issues/88) | Tool-description hints | Sprint 5 | — | implemented; Codex 0.162.1 projection +255 bytes; Claude Code bare route −819 bytes together with #90 |
|
|
354
|
+
| [#89](https://github.com/plagor44-ux/pi-session-mcp/issues/89) | Claude Code projection | Sprint 5 research | — | partial: q1 output schema not observed, q2 one representation, q3 deferral observed on a non-bare route; q4 needs approval |
|
|
355
|
+
| [#90](https://github.com/plagor44-ux/pi-session-mcp/issues/90) | Input schemas without the UUID pattern | Sprint 5 | compatibility proof | implemented after the proof (156 identical responses); no effect on the Codex 0.162.1 projection, which drops `pattern` itself; wire −1,074 bytes |
|
|
356
|
+
| [#91](https://github.com/plagor44-ux/pi-session-mcp/issues/91) | Bounded wait decision | maintainer | — | decided 2026-10-18: no bounded wait; trigger C restated with the cost dimension in ADR 0003 |
|
|
357
|
+
| [#92](https://github.com/plagor44-ux/pi-session-mcp/issues/92) | Worker usage research | Sprint 5 research | — | research note delivered; no contract change |
|
|
358
|
+
| [#93](https://github.com/plagor44-ux/pi-session-mcp/issues/93) | M1 A/B | operator approval | — | A/B done: probe attempt 4 passed after three preserved failures; four pairs all PASS; quality kept, cumulative controller input lower in B in 10 of 12 case-pairs (mostly cached), no consistent uncached difference; #87 untested ([results](evaluation/m1-ab-proposal-2026-10-18/results/README.md)) |
|
|
359
|
+
|
|
360
|
+
Gates for later sprints: the #79 decision before any isolation work; the #93
|
|
361
|
+
approval before the A/B; the A/B before the final #91 decision; a public
|
|
362
|
+
contract decision before any minor-release work.
|
|
59
363
|
|
|
60
364
|
### Sprint 3 task status
|
|
61
365
|
|
|
@@ -66,13 +370,16 @@ Updated 2026-10-15. Base main `bdfb95de9a46defa64d2eb382d58d454f97fc8fb`
|
|
|
66
370
|
| R05 / R09 ten-task Level 3 cycle | None (acceptance) | verified: accepted, 10 of 10 tasks |
|
|
67
371
|
| R06 new Codex abort run | None (acceptance) | verified |
|
|
68
372
|
| R07 Codex discovery of the setup-installed skill | None (acceptance) | verified |
|
|
69
|
-
| R10 / R11 current macOS Level 2 and smoke | None |
|
|
70
|
-
| R22 ChatGPT project instructions | None (outside this repository) | blocked on an operator action; proposal in the Sprint
|
|
373
|
+
| R10 / R11 current macOS Level 2 and smoke | None | verified for Claude Code on 2026-10-16 (release 0.8.3, real Mac) and again on 2026-10-26 (release 0.11.6: Level 2 with and without turn-event delivery, lock contention, interruption, install smoke and a live check with a stdio driver); Codex on macOS, the two-client Level 3 gate, Claude Code as controller of a live run on 0.11.x and Intel Macs not established; see [Acceptance](acceptance.md#macos-acceptance-on-real-hardware-2026-10-26) |
|
|
374
|
+
| R22 ChatGPT project instructions | None (outside this repository) | blocked on an operator action; current proposal in the [Sprint 4 decision](sprints/2026-10-15-s4-decision.md#appendix-proposed-chatgpt-project-instructions-r22) |
|
|
71
375
|
|
|
72
376
|
Status words: planned, in progress, implemented (code exists), verified (named
|
|
73
377
|
criteria met with evidence), blocked, failed (ran and missed its criteria; kept
|
|
74
|
-
on record). Sprints 1 to 4 are closed;
|
|
75
|
-
|
|
378
|
+
on record). Sprints 1 to 4 are closed; Sprint 5 is a maintenance sprint; the next
|
|
379
|
+
investment remains isolation under
|
|
380
|
+
[#79](https://github.com/plagor44-ux/pi-session-mcp/issues/79), now decided in
|
|
381
|
+
ADRs 0008 and 0009; both plans ship as 0.9.0. Operator migration and live
|
|
382
|
+
writer acceptance remain separate from the release.
|
|
76
383
|
|
|
77
384
|
## Sprints and exit gates
|
|
78
385
|
|
|
@@ -126,6 +433,10 @@ in-memory state and one trusted local peer.
|
|
|
126
433
|
| --- | --- |
|
|
127
434
|
| OS isolation | Trigger fired on 2026-10-15 (coding profiles wrote on non-disposable repositories); decision in [#79](https://github.com/plagor44-ux/pi-session-mcp/issues/79) and ADR 0008, interim rules in the [Sprint 4 decision](sprints/2026-10-15-s4-decision.md#interim-operating-rules); profiles/skills are not an OS sandbox |
|
|
128
435
|
| pi_turn_wait | Measured high polling cost per turn with pauses or tool/approval cost; 5–7 polls per invocation is insufficient evidence |
|
|
436
|
+
| Question channel for worker questions (ADR 0011 item 4, undecided) | Demonstrated demand, its own decision, contract tests and a minor release |
|
|
437
|
+
| Worker result channel or report extension (K11) | Sprint 10 shows that the report contract in the skills is not enough; an ADR on either an extension allowance in the writer boundary or a result field in the MCP contract, and a minor release |
|
|
438
|
+
| `Stop` gate on open sessions, MCP elicitation for worker questions, pi-goal-x, pi-subagents, the `subagent`, `structured-output.ts` and `git-checkpoint.ts` examples | Not planned: each collides with the wake, reaches the human instead of the model, continues outside the turn or loses its result (operator concept of 2026-10-25, consistent with #91 and ADR 0011) |
|
|
439
|
+
| pi-lens on coding profiles | Not planned: no benefit in two ablation waves, 1.47 times the cost |
|
|
129
440
|
| Persistence/resume | Actual loss of useful work on restart |
|
|
130
441
|
| HTTP/remote/mobile | Concrete need existing SSH/remote development cannot meet; separate ADR/security decision |
|
|
131
442
|
| Finer turn_failed | Closed public final SDK cause discriminator after retry/compaction, not error-text guessing |
|
|
@@ -134,7 +445,7 @@ in-memory state and one trusted local peer.
|
|
|
134
445
|
| Former pi-control #31/#32 | Closed as not_planned; no automatic migration/reopening |
|
|
135
446
|
| Former release gates/#11–#14 | Historical; bind current acceptance to the current build |
|
|
136
447
|
|
|
137
|
-
|
|
138
|
-
|
|
448
|
+
A patch release ships only if the MCP contract remains unchanged and its gates
|
|
449
|
+
pass. Apply the current [release procedure](releasing.md): version and
|
|
139
450
|
pre-release acceptance travel in the change PR. Merge, tagging and
|
|
140
451
|
publication remain maintainer decisions. No release is authorized by this plan.
|
package/docs/session-mcp.md
CHANGED
|
@@ -10,7 +10,11 @@ before the session is returned.
|
|
|
10
10
|
Global and project extensions are never auto-discovered; only the extensions
|
|
11
11
|
that a profile allowlists load (see [Pi extensions](installation.md#pi-extensions)).
|
|
12
12
|
Installing `pi-mcp-adapter` globally is neither required nor sufficient for this
|
|
13
|
-
integration.
|
|
13
|
+
integration. The same holds for Pi's own MCP client (Pi 1.2 and later: `pi mcp
|
|
14
|
+
add`, `~/.pi/agent/mcp.json`, the built-in `mcp` extension). It belongs to the
|
|
15
|
+
Pi CLI; embedded sessions never load it. A server added with `pi mcp add` or
|
|
16
|
+
listed in a project `.pi/mcp.json` is therefore invisible to Pi Session MCP
|
|
17
|
+
workers. Grant it through `mcpServers` instead. Skills are likewise never auto-discovered; a profile gets only the
|
|
14
18
|
skills it selects from the operator's catalog (see [Pi skills](skills.md)).
|
|
15
19
|
Granting an external MCP tool through `mcpServers` and selecting a skill are
|
|
16
20
|
independent: a skill grants no tool.
|