From ed01d92321431bd76e661feaf71aa32b986b8d6f Mon Sep 17 00:00:00 2001 From: Dotta Date: Mon, 28 Sep 2026 14:38:22 -0500 Subject: [PATCH] docs(runner): retain bounded Pi qualification attempts Co-Authored-By: Paperclip --- doc/architecture/runner-pi-capabilities.md | 75 ++++-- ...der-pack-proof.darwin-arm64.58511d79d.json | 138 +++++++++++ ...line-provider-pack-proof.darwin-arm64.json | 73 +----- ...d-qualification-progress.darwin-arm64.json | 221 ++++++++++++++++++ 4 files changed, 425 insertions(+), 82 deletions(-) create mode 100644 packages/paperclip-runner/test-fixtures/pi-acp/offline-provider-pack-proof.darwin-arm64.58511d79d.json create mode 100644 packages/paperclip-runner/test-fixtures/pi-acp/paid-qualification-progress.darwin-arm64.json diff --git a/doc/architecture/runner-pi-capabilities.md b/doc/architecture/runner-pi-capabilities.md index 66272592825..5a34b81309b 100644 --- a/doc/architecture/runner-pi-capabilities.md +++ b/doc/architecture/runner-pi-capabilities.md @@ -1,8 +1,9 @@ # Pi rich ACP runtime Status: implementation candidate, 2026-09-28. Deterministic protocol tests and an -uncredentialed admission probe pass. Paid local inference and Linux x64 Daytona -qualification are pending; this document does not promote the candidate to a +uncredentialed admission probe pass. One paid local Runner turn reached semantic +tools but timed out; Product E2E setup exposed a separate candidate-admission gap. +Local and Linux x64 Daytona qualification remain pending; this document does not promote the candidate to a qualified production runtime. The runner pins `pi-acp@0.0.33` and @@ -221,8 +222,9 @@ receipt boundary. `usage.cost` is a Pi catalog pricing estimate, never an invoic The closed snapshot has been exercised against actual pinned Pi through ACP initialization and the missing-credential admission path without a model call. -The exact reported `currentModelId` and billable receipt still need credentialed -local and Linux/Daytona qualification. +The first authenticated local Runner snapshot verified the exact configured +model ID. It did not settle or produce a terminal usage receipt; complete local +and Linux/Daytona receipt qualification remains outstanding. Profile version 2 declaration digest: `sha256:0f687e38cb3c607a01fab80f03e19bbbf5cb53a8afb1fc40d71f9ab54551cff1`. It hashes the versioned profile domain, patched wrapper source and platform closure pins. Every native @@ -239,24 +241,29 @@ helper discards failed-attempt usage, so any retry or missing compaction receipt invalidates complete-turn token/cost totals instead of inventing complete coverage. The retained [macOS ARM64 provider-pack admission proof](../../packages/paperclip-runner/test-fixtures/pi-acp/offline-provider-pack-proof.darwin-arm64.json) -records source `58511d79d9c4a1525d98e219d027654902b704e1`, after final-spawn +records source `a6167ce3a7804c31f4f9990a9ba6761c1d91f27c`, after final-spawn credential-marker preservation and direct candidate-admission gating. It includes the Node engine, Pi v2 fixture, assigned HTTPS gateway, and failed-turn receipt repairs. Its manifest digest is -`sha256:a9728fe4298a5eee00555382af01e85550820a294957caf2eba0c79bf33c4388`. +`sha256:0ed45bf84d172aa7087baec3d662275206e8121b0ba142aaa9039dcfbf4402a2`. +This refresh also includes candidate initialization, canonical CLI paths, usage +provenance and reasoning projection repairs; the prior +[58511d79d proof](../../packages/paperclip-runner/test-fixtures/pi-acp/offline-provider-pack-proof.darwin-arm64.58511d79d.json) +remains a historical observation. The clean tracked-lock resolution matched Docker's reviewed `650e23d20e967bcfbfced888e131199b9a06e66a1ba4f64cfb68383b59def4a8` digest before a frozen install and pack build. The probe used the deployed generic installation registry and immutable snapshot. Every advertised capability was read and asserted from its actual initialize response. Session creation rejected the missing bound credential; no model prompt was submitted. The record contains -no credentials or provider session IDs and records zero paid calls. It includes -128 targeted backend/environment/control-plane checks, 31 installed-distribution -checks, and 17 real/patched package checks at this source. The preceding full -runner TypeScript suite (2,202 passed, 11 skipped) and all 13 native-provider Rust -tests remain explicitly pinned to source `2e65b64d5`. It precedes only this -evidence-retention/report commit. It proves no authenticated interaction, -reported model ID, or Daytona qualification. +no credentials or provider session IDs and records zero paid calls. This refreshed +probe is an admission check, not an authenticated interaction test. The 128 +targeted backend/environment/control-plane checks, 31 installed-distribution +checks and 17 patched-package checks remain recorded with the historical +`58511d79d` proof. The preceding full Runner suite (2,202 passed, 11 skipped) and +13 native-provider Rust tests remain pinned to source `2e65b64d5`; they are not +relabeled as checks of the latest source. Current focused validation and the +separate authenticated attempts are recorded below. The [pre-launch-boundary proof](../../packages/paperclip-runner/test-fixtures/pi-acp/offline-provider-pack-proof.2e65b64d5.darwin-arm64.json) retains source `2e65b64d5a2148583109b8157d6e72f54f5ad29b` and manifest @@ -303,7 +310,9 @@ every field in Pi's native event stream. These are explicit follow-ups: `notify` retains a bounded message and severity, while interactive `select`, `confirm`, `input`, and `editor` have the explicit response bridge. Native session-name and thinking-level change events also lack a separate event - projection; existing ACP configuration responses remain the control surface. + projection. The wrapper advertises ACP thinking-level configuration, but the + current Runner host does not expose `set_mode` or `set_config_option`; no + reasoning-level override was applied during qualification. - File diffs are bounded text snapshots, not complete binary changes or durable artifact publication. Semantic artifact tools remain the supported publication path. Image prompting, model-triggered tools, approvals, typed questions, @@ -311,7 +320,37 @@ every field in Pi's native event stream. These are explicit follow-ups: Linux x64 Daytona proof for the exact declared model. The reported model ID must be checked, rather than inferred from the configuration. -No provider or Daytona credentials were available for this qualification. -Provider calls, paid calls, and measured inference spend remain zero. Production -admission must remain qualification-pending until the live matrix and spend -receipt checks pass; catalog pricing estimates alone are not spend receipts. +## Authenticated local qualification progress + +The [sanitized attempt ledger](../../packages/paperclip-runner/test-fixtures/pi-acp/paid-qualification-progress.darwin-arm64.json) +retains all six attempts, including four pre-provider failures and the later +Product agent-admission rejection. One Runner protocol turn reached the exact +model and successfully called `get_task_context`, `get_task_history`, +`list_documents`, and `read_document`. The canonical case permits those extra +orientation reads, but also requires a completed turn; it timed out after 120s +without terminal usage. No successful protocol or Product journey is claimed. + +Exclusive OpenRouter key billing increased by **$0.005748807**, confirmed again +after diagnosis; all other attempts had two post-attempt observations with zero +delta. This is measured provider spend, separate from Pi's stale catalog pricing +estimate. A missing terminal receipt remains unknown, not free execution. Each +attempt had no automatic retries, a $2 reservation and a $0.50 billing watchdog; +the Product supervisor also imposed a 300s outer deadline. + +The paid trace exposed a shared projection defect: canonical `item.delta` events +with `kind: reasoning` were relabeled as assistant messages by the TypeScript +facade. Shared commit `a978d1bc5` preserves summary/detail reasoning channels, +including mixed coalesced batches, so the existing private-reasoning redactor +applies. Three regressions failed before the fix; 20 focused checks, 8 additional +Codex event checks and source typecheck passed afterward. Hidden reasoning is +excluded from this report and the published ledger. The provider timeout remains +a separate unresolved result. + +Product hello first failed before startup because the local PostgreSQL package's +symlink hydration had not run. Its bundled setup script repaired the installation +and a fresh database initialization passed. The deliberate repeat reached the +real browser/server, then candidate agent creation returned 422 because the +provider-profile validator still rejected candidates before the host's explicit +qualification admission boundary. The shared server correction is pending. +Production admission remains qualification-pending until the live matrix and +spend receipt checks pass. diff --git a/packages/paperclip-runner/test-fixtures/pi-acp/offline-provider-pack-proof.darwin-arm64.58511d79d.json b/packages/paperclip-runner/test-fixtures/pi-acp/offline-provider-pack-proof.darwin-arm64.58511d79d.json new file mode 100644 index 00000000000..8819e06f70b --- /dev/null +++ b/packages/paperclip-runner/test-fixtures/pi-acp/offline-provider-pack-proof.darwin-arm64.58511d79d.json @@ -0,0 +1,138 @@ +{ + "schema": "paperclip.pi-provider-pack-offline-proof.v1", + "recordedAt": "2026-09-28T18:38:17.647Z", + "classification": "offline_candidate_admission", + "source": { + "runnerRevision": "58511d79d9c4a1525d98e219d027654902b704e1", + "distDigest": "sha256:e465121951d5824d22b64d4d057a280493b5c01a9134ddec3bac1b1741422541", + "bridgeDigest": "sha256:4ef5ffcf16a3e7f8e975843d99dc568aed94ca1113e24bfd4174237d92d8ecca", + "productionLockDigest": "sha256:650e23d20e967bcfbfced888e131199b9a06e66a1ba4f64cfb68383b59def4a8", + "note": "Built after the final-spawn credential-marker preservation and direct candidate-admission fixes, including the Node engine policy, Pi v2 fixture, HTTPS and failed-turn receipt repairs. This probe executed the deployed generic installation registry and immutable snapshot. Every capability field below was read and asserted from this actual initialize response. No prompt was sent." + }, + "environment": { + "platform": "darwin", + "architecture": "arm64", + "nodeVersion": "24.19.0", + "execution": "local macOS ARM64; immutable guarded provider snapshot", + "packageManager": "pnpm@9.15.4" + }, + "candidate": { + "agent": "pi", + "qualification": "pending", + "agentProfileVersion": 2, + "declaredModel": "openrouter/deepseek/deepseek-v4-flash-0731", + "reportedModelId": null, + "modelVerification": "not_performed_authentication_missing", + "wrapperVersion": "0.0.33", + "runtimeVersion": "0.84.2", + "profileDigest": "sha256:0f687e38cb3c607a01fab80f03e19bbbf5cb53a8afb1fc40d71f9ab54551cff1", + "closureDigest": "sha256:b30047dce9c4c25e1fbc88a1aa828690a6a11ebdc3f6fcc083875986eb2d9585", + "assetTreeDigest": "sha256:5c046265335d4a6924efcd207f837d5aa0e0fc3baa0bf6ea7059afe8d6ab3939", + "distributionManifestDigest": "sha256:406345b3b75d8aee399da886fbdf8566aaaa44ff29fe3462da21f0c29901aecd", + "wrapperDigest": "sha256:2eb201c3a931177490a8e18f4a8392f00cbcf21847e9cc171de528da5e253935", + "helperDigest": "sha256:4333d284ff06ab1195e49630041f0b03a486a92fc678100525ad107e0982dba1", + "extensionDigest": "sha256:0a2ca138d6d87a85498bd982ee64543ea8b14f2ecceded96cfc27b0836cc4254" + }, + "providerPack": { + "manifestDigest": "sha256:a9728fe4298a5eee00555382af01e85550820a294957caf2eba0c79bf33c4388", + "portableNodeDigest": "sha256:27db838bb204ef7c21df2931f5656e4c8fb32e6e947f363a402b49714d32b5b1", + "piNodeDigest": "sha256:27db838bb204ef7c21df2931f5656e4c8fb32e6e947f363a402b49714d32b5b1", + "acpxSidecarDigest": "sha256:a909a86d0c0697697ef9dc8922785648e84e25dd687653b7c7428c863db5856b" + }, + "observed": { + "closedSnapshotLaunch": true, + "acpInitialize": "passed", + "authMethods": [], + "capabilities": { + "version": 1, + "steering": true, + "queuedFollowUp": true, + "questions": [ + "select", + "confirm", + "input", + "editor" + ], + "nativePermissions": true, + "promptUsage": true, + "nativePlan": false, + "pendingRequestRecovery": "live-process-only" + }, + "sessionNew": "rejected_authentication_missing", + "expectedError": "Bind the configured OpenRouter API credential to this Paperclip runtime.", + "missingCredentialRejected": true, + "capabilityProvenance": "Read and asserted in full from this pack launch.", + "rpcMethods": [ + "initialize", + "session/new" + ] + }, + "usage": { + "providerCalls": 0, + "promptRequests": 0, + "paidProviderCalls": 0, + "credentials": "none", + "spentUsd": 0 + }, + "limitations": [ + "No provider authentication, model prompt, or reported currentModelId was verified.", + "Native tool execution, permissions, questions, and semantic MCP calls were not exercised by this pack-launch probe.", + "Linux x64, macOS x64, and Daytona execution were not exercised.", + "Production qualification remains pending." + ], + "verification": { + "sourceRevision": "58511d79d9c4a1525d98e219d027654902b704e1", + "resolvedSourceLockDigest": "sha256:650e23d20e967bcfbfced888e131199b9a06e66a1ba4f64cfb68383b59def4a8", + "lockResolution": "clean tracked input, full workspace resolution, matched reviewed Docker pin before frozen filtered install", + "typescriptBuild": "passed", + "providerPackBuild": "passed", + "launchBoundaryTests": { + "files": 3, + "passed": 128, + "failed": 0, + "coverage": "native backend admission, scoped credential environment, durable final processLauncher specification for all candidate providers" + }, + "vitest": { + "files": 4, + "passed": 31, + "failed": 0, + "maxWorkers": 1, + "hookTimeoutMs": 10000, + "actualDistributionInstallation": "enabled; current provider-pack assets" + }, + "nodeTests": { + "files": 3, + "passed": 17, + "failed": 0, + "skipped": 0, + "actualPackages": "fresh provider-pack assets" + }, + "precedingFullSuite": { + "sourceRevision": "2e65b64d5a2148583109b8157d6e72f54f5ad29b", + "fullRunnerVitest": { + "filesPassed": 160, + "filesSkipped": 1, + "passed": 2202, + "failed": 0, + "skipped": 11, + "durationSeconds": 223.84, + "attachTransitionRunnerDigest": "sha256:66122cae0160bfa2655d64afb7c7b5c01aa5fa7bba8ad608c7ee768c14f51fec", + "note": "Used the matching foundation transition runner plus locally built Rust fake binaries. Optional installed-Pi test runs separately below." + }, + "nativeProviderRustTests": { + "passed": 13, + "failed": 0, + "ignored": 0 + }, + "note": "These broader checks ran before the final shared launch-boundary patch; current-source focused checks are recorded separately above." + }, + "notRun": [ + "full runner TypeScript suite after the final shared launch-boundary patch", + "full repository typecheck, build, and tests for this provider branch", + "full Rust workspace test suite for this provider branch", + "credentialed model evaluation", + "Linux x64 or macOS x64 execution", + "Daytona deployment" + ] + } +} diff --git a/packages/paperclip-runner/test-fixtures/pi-acp/offline-provider-pack-proof.darwin-arm64.json b/packages/paperclip-runner/test-fixtures/pi-acp/offline-provider-pack-proof.darwin-arm64.json index 8819e06f70b..b292668a165 100644 --- a/packages/paperclip-runner/test-fixtures/pi-acp/offline-provider-pack-proof.darwin-arm64.json +++ b/packages/paperclip-runner/test-fixtures/pi-acp/offline-provider-pack-proof.darwin-arm64.json @@ -1,13 +1,13 @@ { "schema": "paperclip.pi-provider-pack-offline-proof.v1", - "recordedAt": "2026-09-28T18:38:17.647Z", + "recordedAt": "2026-09-28T19:35:49.729Z", "classification": "offline_candidate_admission", "source": { - "runnerRevision": "58511d79d9c4a1525d98e219d027654902b704e1", - "distDigest": "sha256:e465121951d5824d22b64d4d057a280493b5c01a9134ddec3bac1b1741422541", - "bridgeDigest": "sha256:4ef5ffcf16a3e7f8e975843d99dc568aed94ca1113e24bfd4174237d92d8ecca", - "productionLockDigest": "sha256:650e23d20e967bcfbfced888e131199b9a06e66a1ba4f64cfb68383b59def4a8", - "note": "Built after the final-spawn credential-marker preservation and direct candidate-admission fixes, including the Node engine policy, Pi v2 fixture, HTTPS and failed-turn receipt repairs. This probe executed the deployed generic installation registry and immutable snapshot. Every capability field below was read and asserted from this actual initialize response. No prompt was sent." + "runnerRevision": "a6167ce3a7804c31f4f9990a9ba6761c1d91f27c", + "distDigest": "sha256:2d0c65ff3d859717cc27fd03739a5e639171d4c46804a1884b3e1301c865eaa8", + "bridgeDigest": "sha256:a81fb87bf2204b0fddac15f952724f691645d3ddbafb93b75b7776f61cbaa5a2", + "productionLockDigest": "sha256:e0c928a494f90ddad3c00791e83f09315ee8c82df2a0418a809dcf93649a8ab3", + "note": "Built from the recorded source after candidate initialization, CLI canonical-path, usage provenance and canonical reasoning projection fixes. The generic registry launched the immutable snapshot, asserted every capability from its initialize response and verified missing-credential refusal. No prompt was sent by this offline probe." }, "environment": { "platform": "darwin", @@ -34,10 +34,10 @@ "extensionDigest": "sha256:0a2ca138d6d87a85498bd982ee64543ea8b14f2ecceded96cfc27b0836cc4254" }, "providerPack": { - "manifestDigest": "sha256:a9728fe4298a5eee00555382af01e85550820a294957caf2eba0c79bf33c4388", + "manifestDigest": "sha256:0ed45bf84d172aa7087baec3d662275206e8121b0ba142aaa9039dcfbf4402a2", "portableNodeDigest": "sha256:27db838bb204ef7c21df2931f5656e4c8fb32e6e947f363a402b49714d32b5b1", "piNodeDigest": "sha256:27db838bb204ef7c21df2931f5656e4c8fb32e6e947f363a402b49714d32b5b1", - "acpxSidecarDigest": "sha256:a909a86d0c0697697ef9dc8922785648e84e25dd687653b7c7428c863db5856b" + "acpxSidecarDigest": "sha256:cfdb2b53f8f4500205560cfc33ca12c2b6c4ffaf54e666250c184f655d095d13" }, "observed": { "closedSnapshotLaunch": true, @@ -79,60 +79,5 @@ "Native tool execution, permissions, questions, and semantic MCP calls were not exercised by this pack-launch probe.", "Linux x64, macOS x64, and Daytona execution were not exercised.", "Production qualification remains pending." - ], - "verification": { - "sourceRevision": "58511d79d9c4a1525d98e219d027654902b704e1", - "resolvedSourceLockDigest": "sha256:650e23d20e967bcfbfced888e131199b9a06e66a1ba4f64cfb68383b59def4a8", - "lockResolution": "clean tracked input, full workspace resolution, matched reviewed Docker pin before frozen filtered install", - "typescriptBuild": "passed", - "providerPackBuild": "passed", - "launchBoundaryTests": { - "files": 3, - "passed": 128, - "failed": 0, - "coverage": "native backend admission, scoped credential environment, durable final processLauncher specification for all candidate providers" - }, - "vitest": { - "files": 4, - "passed": 31, - "failed": 0, - "maxWorkers": 1, - "hookTimeoutMs": 10000, - "actualDistributionInstallation": "enabled; current provider-pack assets" - }, - "nodeTests": { - "files": 3, - "passed": 17, - "failed": 0, - "skipped": 0, - "actualPackages": "fresh provider-pack assets" - }, - "precedingFullSuite": { - "sourceRevision": "2e65b64d5a2148583109b8157d6e72f54f5ad29b", - "fullRunnerVitest": { - "filesPassed": 160, - "filesSkipped": 1, - "passed": 2202, - "failed": 0, - "skipped": 11, - "durationSeconds": 223.84, - "attachTransitionRunnerDigest": "sha256:66122cae0160bfa2655d64afb7c7b5c01aa5fa7bba8ad608c7ee768c14f51fec", - "note": "Used the matching foundation transition runner plus locally built Rust fake binaries. Optional installed-Pi test runs separately below." - }, - "nativeProviderRustTests": { - "passed": 13, - "failed": 0, - "ignored": 0 - }, - "note": "These broader checks ran before the final shared launch-boundary patch; current-source focused checks are recorded separately above." - }, - "notRun": [ - "full runner TypeScript suite after the final shared launch-boundary patch", - "full repository typecheck, build, and tests for this provider branch", - "full Rust workspace test suite for this provider branch", - "credentialed model evaluation", - "Linux x64 or macOS x64 execution", - "Daytona deployment" - ] - } + ] } diff --git a/packages/paperclip-runner/test-fixtures/pi-acp/paid-qualification-progress.darwin-arm64.json b/packages/paperclip-runner/test-fixtures/pi-acp/paid-qualification-progress.darwin-arm64.json new file mode 100644 index 00000000000..35916a5cc26 --- /dev/null +++ b/packages/paperclip-runner/test-fixtures/pi-acp/paid-qualification-progress.darwin-arm64.json @@ -0,0 +1,221 @@ +{ + "schema": "paperclip.pi-paid-qualification-progress.v1", + "recordedAt": "2026-09-28T19:36:32.051800+00:00", + "qualificationStatus": "pending", + "environment": { + "platform": "darwin", + "architecture": "arm64", + "execution": "local" + }, + "declaredModel": "openrouter/deepseek/deepseek-v4-flash-0731", + "observedModel": { + "attemptId": "pi-context-paid-04", + "id": "openrouter/deepseek/deepseek-v4-flash-0731", + "provider": "openrouter", + "source": "actual runtime snapshot providerModel" + }, + "budget": { + "authorizedMaximumUsd": 25, + "reservedPerBatchUsd": 2, + "measuredSpendUsd": 0.005748807, + "measurement": "exclusive OpenRouter key billing delta; model catalog estimates are not provider billing" + }, + "attempts": [ + { + "attemptId": "pi-context-paid-01", + "family": "runner-protocol", + "caseId": "get-task-context", + "startedAt": "2026-09-28T19:06:12.910826+00:00", + "finishedAt": "2026-09-28T19:06:20.148262+00:00", + "durationSeconds": 7.237, + "sourceRevision": "58511d79d9c4a1525d98e219d027654902b704e1", + "providerPackDigest": "sha256:a9728fe4298a5eee00555382af01e85550820a294957caf2eba0c79bf33c4388", + "runnerdDigest": "sha256:2138cc9dd7898d284f5761719112079666dd013e035d705aba73e965faf2fd86", + "profileDigest": "sha256:0f687e38cb3c607a01fab80f03e19bbbf5cb53a8afb1fc40d71f9ab54551cff1", + "exitCode": 0, + "retainedMachineDisposition": "infrastructure_failure", + "diagnosis": "CLI main guard did not recognize the /tmp symlink path; no artifact or provider prompt. Fixed by shared commit ac17430b0.", + "submittedProviderTurns": 0, + "providerRequestCount": 0, + "billingDeltaUsd": 0, + "billingCoverage": "exclusive OpenRouter key usage delta, two spaced post-attempt observations", + "terminalUsage": null, + "automaticRetries": 0, + "supervision": { + "reservationUsd": 2, + "billingWatchdogUsd": 0.5, + "outerDeadlineSeconds": 120 + } + }, + { + "attemptId": "pi-context-paid-02", + "family": "runner-protocol", + "caseId": "get-task-context", + "startedAt": "2026-09-28T19:06:45.550028+00:00", + "finishedAt": "2026-09-28T19:07:03.655460+00:00", + "durationSeconds": 18.103, + "sourceRevision": "58511d79d9c4a1525d98e219d027654902b704e1", + "providerPackDigest": "sha256:a9728fe4298a5eee00555382af01e85550820a294957caf2eba0c79bf33c4388", + "runnerdDigest": "sha256:2138cc9dd7898d284f5761719112079666dd013e035d705aba73e965faf2fd86", + "profileDigest": "sha256:0f687e38cb3c607a01fab80f03e19bbbf5cb53a8afb1fc40d71f9ab54551cff1", + "exitCode": 2, + "retainedMachineDisposition": "infrastructure_failure", + "diagnosis": "Sidecar initialization accepted only Claude/Codex and rejected Pi before prompting. Fixed by shared commit ac17430b0.", + "submittedProviderTurns": 0, + "providerRequestCount": 0, + "billingDeltaUsd": 0, + "billingCoverage": "exclusive OpenRouter key usage delta, two spaced post-attempt observations", + "terminalUsage": null, + "automaticRetries": 0, + "supervision": { + "reservationUsd": 2, + "billingWatchdogUsd": 0.5, + "outerDeadlineSeconds": 120 + } + }, + { + "attemptId": "pi-context-paid-03", + "family": "runner-protocol", + "caseId": "get-task-context", + "startedAt": "2026-09-28T19:19:10.856746+00:00", + "finishedAt": "2026-09-28T19:19:18.160151+00:00", + "durationSeconds": 7.279, + "sourceRevision": "788105248a3ba594b30b5bcec3fa266d8a51d8d4", + "providerPackDigest": "sha256:4de47c31a8131424495366741bd491ff5fa10723ab9a3918c07a3e42982dbe3c", + "runnerdDigest": "sha256:2138cc9dd7898d284f5761719112079666dd013e035d705aba73e965faf2fd86", + "profileDigest": "sha256:0f687e38cb3c607a01fab80f03e19bbbf5cb53a8afb1fc40d71f9ab54551cff1", + "exitCode": 1, + "retainedMachineDisposition": "infrastructure_failure", + "diagnosis": "Supervisor invoked Python3.9; canonical eval uses a newer TemporaryDirectory API. Switched supervisor to its Python3.14 executable before retry.", + "submittedProviderTurns": 0, + "providerRequestCount": 0, + "billingDeltaUsd": 0, + "billingCoverage": "exclusive OpenRouter key usage delta, two spaced post-attempt observations", + "terminalUsage": null, + "automaticRetries": 0, + "supervision": { + "reservationUsd": 2, + "billingWatchdogUsd": 0.5, + "outerDeadlineSeconds": 420 + } + }, + { + "attemptId": "pi-context-paid-04", + "family": "runner-protocol", + "caseId": "get-task-context", + "startedAt": "2026-09-28T19:19:52.195195+00:00", + "finishedAt": "2026-09-28T19:22:45.531217+00:00", + "durationSeconds": 173.331, + "sourceRevision": "788105248a3ba594b30b5bcec3fa266d8a51d8d4", + "providerPackDigest": "sha256:4de47c31a8131424495366741bd491ff5fa10723ab9a3918c07a3e42982dbe3c", + "runnerdDigest": "sha256:2138cc9dd7898d284f5761719112079666dd013e035d705aba73e965faf2fd86", + "profileDigest": "sha256:0f687e38cb3c607a01fab80f03e19bbbf5cb53a8afb1fc40d71f9ab54551cff1", + "exitCode": 1, + "retainedMachineDisposition": "infrastructure_failure", + "diagnosis": "Canonical scorer retained timeout after120000ms without terminal turn or usage. Four semantic operations succeeded. The canonical reasoning delta was incorrectly projected as assistant text; shared commit a978d1bc5 repairs that distinct projection defect. Provider completion remains unproven.", + "submittedProviderTurns": 1, + "providerRequestCount": null, + "billingDeltaUsd": 0.005748807, + "billingCoverage": "exclusive OpenRouter key usage delta, two spaced post-attempt observations", + "terminalUsage": null, + "automaticRetries": 0, + "supervision": { + "reservationUsd": 2, + "billingWatchdogUsd": 0.5, + "outerDeadlineSeconds": 420 + } + }, + { + "attemptId": "pi-product-hello-01", + "family": "product-e2e", + "caseId": "extended-harnesses.runner-acpx-pi.local.hello-complete", + "startedAt": "2026-09-28T19:33:28.605392+00:00", + "finishedAt": "2026-09-28T19:33:46.814523+00:00", + "durationSeconds": 18.208, + "sourceRevision": "68fde1eb5779838518e322ced202a3e454548d34", + "providerPackDigest": "sha256:6e257bfd54dcb6e9d6263cfd408b3087ccd2f6eb91941ec38bd9ddd4b26b5c0b", + "runnerdDigest": "sha256:79d49c3cef01f328742651f62a449661695d0955741a1c37bd89abf54cbc8c2b", + "profileDigest": "sha256:0f687e38cb3c607a01fab80f03e19bbbf5cb53a8afb1fc40d71f9ab54551cff1", + "exitCode": 1, + "retainedMachineDisposition": "transient_infrastructure", + "diagnosis": "Embedded PostgreSQL lifecycle symlink hydration was missing; initdb failed before browser/provider startup. Package hydration and a fresh disposable initdb check passed before deliberate repeat.", + "submittedProviderTurns": 0, + "providerRequestCount": 0, + "billingDeltaUsd": 0, + "billingCoverage": "exclusive OpenRouter key usage delta, two spaced post-attempt observations", + "terminalUsage": null, + "automaticRetries": 0, + "supervision": { + "reservationUsd": 2, + "billingWatchdogUsd": 0.5, + "outerDeadlineSeconds": 300 + } + }, + { + "attemptId": "pi-product-hello-02", + "family": "product-e2e", + "caseId": "extended-harnesses.runner-acpx-pi.local.hello-complete", + "startedAt": "2026-09-28T19:35:51.721674+00:00", + "finishedAt": "2026-09-28T19:36:32.051800+00:00", + "durationSeconds": 40.33, + "sourceRevision": "a6167ce3a7804c31f4f9990a9ba6761c1d91f27c", + "providerPackDigest": "sha256:0ed45bf84d172aa7087baec3d662275206e8121b0ba142aaa9039dcfbf4402a2", + "runnerdDigest": "sha256:79d49c3cef01f328742651f62a449661695d0955741a1c37bd89abf54cbc8c2b", + "profileDigest": "sha256:0f687e38cb3c607a01fab80f03e19bbbf5cb53a8afb1fc40d71f9ab54551cff1", + "exitCode": 1, + "retainedMachineDisposition": "setup_failure", + "diagnosis": "The real server rejected candidate agent creation422 before any provider prompt. Host-only qualification was wired at launch but not the earlier provider-profile resolver. Shared correction pending.", + "submittedProviderTurns": 0, + "providerRequestCount": 0, + "billingDeltaUsd": 0, + "billingCoverage": "exclusive OpenRouter key usage delta, two spaced post-attempt observations", + "terminalUsage": null, + "automaticRetries": 0, + "supervision": { + "reservationUsd": 2, + "billingWatchdogUsd": 0.5, + "outerDeadlineSeconds": 300 + } + } + ], + "observedSemanticOperations": { + "attemptId": "pi-context-paid-04", + "succeeded": [ + "get_task_context", + "get_task_history", + "list_documents", + "read_document" + ], + "terminalTurnObserved": false, + "terminalUsageAvailable": false, + "realPaperclipRequests": 0 + }, + "verification": { + "sharedReasoningProjection": { + "commit": "a978d1bc5", + "regressionsFailedBefore": 3, + "focusedTestsPassedAfter": 20, + "additionalCodexEventTestsPassed": 8, + "sourceTypecheck": "passed" + }, + "productPrerequisites": { + "source": "68fde1eb5779838518e322ced202a3e454548d34", + "typecheck": "passed after building missing workspace plugin-sdk artifact", + "unitTestsPassed": 585 + }, + "offlineProof": "offline-provider-pack-proof.darwin-arm64.json" + }, + "publicationBoundary": { + "hiddenReasoningIncluded": false, + "rawTranscriptsIncluded": false, + "providerSessionIdsIncluded": false, + "credentialsIncluded": false + }, + "remaining": [ + "Successful protocol terminal settlement and complete usage receipt", + "Successful Product E2E agent admission and hello completion", + "File edit, typed question, plan and restart journeys", + "Native permissions and explicit steering acceptance/delivery", + "Linux x64 Daytona qualification" + ] +}