DENIEDCURRENT EXTERNAL RED GATE
仓库裁决不冒充真实三方 root、线性一致 replay registry 或 durable checkpoint。
0 votes0 writes8110 · 0CUT 89 UPSTREAM — DIGESTS, NOT PAYLOADS
本刀先补齐真实上游缝隙:Cut 89 终态现在投影五个有序 response seals 和 seal-set digest。
11-FIELD RESPONSE SEAL ANATOMY
响应语义只保留裁决所需字段;正文、连接、函数与 connector handle 均不允许进入批次。
17-FIELD IMMUTABLE BATCH MANIFEST
Batch 同时绑定 session、source revision、五摘要、outcome policy、checkpoint plan 与 replay key。
30-SECOND BATCH WINDOW
短窗口只允许完成验证、裁决和 checkpoint;不允许续期、转移或自动重试。
≤ 30 secondsexactly 1exactly 5forbiddenRESULT-CLASS PRECEDENCE
三方投票不能覆盖响应事实;TERMINAL 优先于 RETRYABLE,RETRYABLE 优先于 SUCCESS。
THREE DETACHED OUTCOME AUTHORITIES
生产者、Runtime 裁决、SRE checkpoint 与独立见证职责分离;三个签名 owner 不可复用。
team:runtime-batch-outcome-adjudicationteam:sre-recovery-checkpointteam:independent-batch-witness16-FIELD SIGNED OUTCOME VOTE
每票绑定 batch digest、seal set、checkpoint plan、decision、reason、30 秒窗口和独立 nonce。
UNANIMOUS 3 / 3 QUORUM
不是多数投票。任一签名、scope、decision 或 reason 不一致,批次立即 fail closed。
requiredrequiredunanimousBATCH REPLAY KEY & SPLIT-BRAIN CLAIM
同一 batchId、nonce、replayKey、batchDigest 必须由一次 CAS 同时占有。
| attempt | previous | result | action |
|---|---|---|---|
| first exact claim | AVAILABLE | CLAIMED · ordinal 1 | continue quorum |
| same replay key | CLAIMED | DENIED | no vote claim |
| same batch / different digest | CONFLICT | SPLIT BRAIN | quarantine |
| cross-session key | INVALID SCOPE | DENIED | burn attempt |
SEVEN-STATE BATCH MACHINE
任何状态都不能跳过 checkpoint readback 直接进入 terminal settlement。
OUTCOME ADJUDICATION PIPELINE
摘要事实、签名事实和存储事实三条证据链必须在 settlement 前交汇。
THREE TERMINAL DECISION CLASSES
三类都是“无生产效果”的终态裁决;retry 只记录 cursor,不授权下一次调用。
cursor 5 · finalizedcursor before first retryablecursor before first terminal18-FIELD RECOVERY CHECKPOINT
Checkpoint 是不可变恢复事实,不包含 response payload,也不是执行授权。
TERMINAL CURSOR SEMANTICS
Cursor 表示已经安全裁决的响应前缀,永远不隐含“可自动执行下一步”。
| decision | cursor | meaning | next execution |
|---|---|---|---|
| SUCCESS | 5 | five seals adjudicated | none |
| RETRY | retry ordinal − 1 | safe prefix only | new authorization required |
| TERMINATE | terminal ordinal − 1 | safe prefix only | forbidden |
WRITE → EXACT READBACK → DIGEST
“写成功”不是证据;只有 version、prior digest、state 与所有字段完整读回才可 settlement。
SPLIT-BRAIN & AMBIGUOUS-WRITE FENCE
超时、版本冲突、readback mismatch 和未知写结果都不能重试 CAS。
quarantinequarantinequarantineforbiddenTERMINATE OUTCOME QUARANTINE
合法的 TERMINATE quorum 也必须进入 quarantine;它是明确的安全终态,不是异常遗漏。
CLAIMEDQUARANTINED0 retained0 productionFAILURE QUARANTINE & BATCH BURN
Batch claim 后的任一错误都先 quarantine,再以零 checkpoint digest burn;不得悄悄回到 AVAILABLE。
15 FAILURE CUTPOINTS
从 manifest 到 settlement 的每个关键边界都有明确终态,不存在“默认继续”。
24 QUALIFIED BATCHES · 8 PER OUTCOME
三类裁决对称覆盖;每个合法 batch 都完成三签、checkpoint write/readback 与 settlement。
checkpointedcheckpointedcheckpointed240 REJECTED OR CONTAINED BATCHES
六个拒绝面独立覆盖 upstream、quorum、语义、replay、checkpoint 与终态泄露。
264-CASE EXECUTABLE QA LAB
按 suite 筛选、搜索并点击用例,核对 decision、quorum、checkpoint、quarantine 与生产零副作用。
264 / 264 passed · quorumVotesRequired=3 · terminalActiveCalls=0 · terminalConnections=0 · retainedResponsePayloads=0 · productionCheckpointWrites=0P54A–H SUBGATES
八个仓库子门全部闭环;真实三签 root、durable CAS 和生产写授权继续独立红门。
BOUNDBOUNDBOUNDBOUNDBOUNDBOUNDBOUNDREPOSITORY BOUND114 / 121 QUALITY GATES & VISIBLE DEBT
七个 live 门未观测;仓库证明、fixture 证明和生产事实保持三层分离。
CUT 91 HANDOFF — explicit retry authorization & checkpoint resume plan
下一刀将只承接 RETRY_FROM_CHECKPOINT_ZERO_EFFECT:验证原 batch、checkpoint、cursor 和失败原因,签发新的显式 retry intent,冻结可恢复调用范围和预算;仍不自动重放、不恢复 response payload、不调用生产 Adapter。
| surface | canonical path | use |
|---|---|---|
| Machine API | /api/runner-controller/d05-g04-invocation-batch-outcome-adjudication-recovery-checkpoint-admission | runtime evidence |
| JSON Schema | /schemas/runner-controller-d05-g04-invocation-batch-outcome-adjudication-recovery-checkpoint-admission.v1.schema.json | consumer validation |
| Candidate | ops/runner-factory/controller-production-adapter-invocation-batch-outcome-adjudication-recovery-checkpoint-candidate.mjs | qualification logic |
| Verifier | scripts/verify-runner-controller-production-adapter-invocation-batch-outcome-adjudication-recovery-checkpoint-candidate.mjs | 264 cases |
| Architecture doc | docs/ui-blueprint/183-d05-g04-invocation-batch-outcome-adjudication-recovery-checkpoint-admission.md | team handoff |