Diagnose attended custody finish failures with safe staged receipts
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s

Assistant: codex
Assistant-Model: gpt-6.1-sol
Assistant-Session: 01a1029d-2c93-7500-a0e0-e3e089668b29
This commit is contained in:
codex 2026-10-03 21:08:56 +02:00
parent b8f8a7ada6
commit 33ff82210e
8 changed files with 397 additions and 34 deletions

View file

@ -139,3 +139,25 @@ approval applies; operator OIDC/MFA remains execution-only. Fresh receipt must
show success. If the exposed historical local grant matches the current lane,
coordinated existing credential recovery is required before provider proof;
there is no automatic credential rotation or root authority change.
## Failed attended finish and diagnostic correction
Attempt185421Z333977 completed and revoked its operator login, but the finish
child failed without a receipt. Owner audit proves custody, backup-lane and
operator-backup reads all succeeded. The exact external-provider failure is
unknown because the previous catch-all discarded diagnostics; no IAM widening
or speculative protocol/status relaxation is warranted. Safe audit receipt:
2026-10-03-root-custody-failed-finish-audit.json.
The corrected silent wrapper runs a stdlib bootstrap that reserves a fresh
private receipt before importing helper dependencies. Full main emits fixed
allowlisted stage/error codes and safe HTTP/artifact metadata on failure,
including partial owner-baseline success and any attempted created artifact.
It never emits exception text, raw response, credential or provider coordinates.
Private clean-environment full-main tests use the actual attended envelope
predicate, real validator/system age and fake owner/provider boundaries; they
cover success, denied owner read, quota, missing binary, upload, download,
ciphertext/decrypt failure, startup imports, stale receipt and incident stop.
A new fresh-path attended attempt can now identify the actual provider boundary
without guessing or repeating opaque failure. Actual provider acceptance remains
pending; simulated successful provider tests do not establish it.

View file

@ -0,0 +1,28 @@
{
"events": [
{
"error_present": false,
"permission_denied": false,
"request_id": "b29f3261-7fd3-84e9-7aa4-493205e469a4",
"stage": "custody_read",
"time": "2026-10-03T18:54:37.880715204Z"
},
{
"error_present": false,
"permission_denied": false,
"request_id": "e474bc4b-9265-f3d9-d0f3-cdf6ec7eb038",
"stage": "backup_lane_read",
"time": "2026-10-03T18:54:38.14371374Z"
},
{
"error_present": false,
"permission_denied": false,
"request_id": "d4c3df09-30e0-36f7-c66f-8d000e23dfe2",
"stage": "operator_backup_read",
"time": "2026-10-03T18:54:38.4374245Z"
}
],
"lookup_succeeded": true,
"raw_logs_emitted": false,
"scope": "failed-attended-finish-stage-audit"
}