feat(api): drive scientific acceptance via loopback CLI - #362
Conversation
GAP-003A fifth slice for issue #166. tepp-analysis-run creates, records running/terminal, and reads status on the loopback listener. Accepted and running stay metric-free; tepp.scientific_acceptance.v1 prints only on a succeeded scientific_acceptance_v1 status. Non-loopback hosts, credential flags, and failed-plus-artifact emission fail closed. ADR 0029.
Live #361 already owns ADR 0029 for loopback cancel HTTP. Keep CLI authority on a distinct number so the stacked GAP-003A client does not collide.
|
Important Draft PR not reviewedDraft PRs are not automatically reviewed by default.
To automatically review draft PRs, update your CodeRabbit configuration: reviews:
auto_review:
drafts: trueThanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
Hour-20 exact-head review request. Current head GAP-003A loopback scientific-acceptance CLI draft stacked on #360. ADR 0030. Do not duplicate this CLI. Do not open another tepp-analysis-run PR. Do not self-approve. Do not --admin merge. Checks/reviews are not a reason to weaken fail-closed gates. |
|
Hour-21 exact-head review request. Current head @opencode-agent review |
Consolidation decision — closed with the retired scientific-acceptance wire
This PR is not merged. Its exact head
d8f3c5faf6aee5791e5752b4d0d02a0726391d26is preserved as CLI/fail-closed lineage, but the CLI's defining succeeded-state behavior printstepp.scientific_acceptance.v1from the now-retired #356/#358 authority chain.Fold the reusable CLI mechanics into the coherent Analysis Run application/adapter landing vehicle under #166/#435: loopback-only transport, credential refusal, typed create/lifecycle/status framing, metric-free accepted/running output, reverse-transition refusal, and current-head CLI tests. Do not preserve a CLI verb whose success contract itself asserts the invalid scientific-acceptance artifact.
A future CLI may expose versioned Validation Evidence produced by the owning Rust validation path, but Scientific Claim Promotion remains a separate policy/aggregate and cannot be inferred from command success. Branch, tests, review history and doctoring remain available for evidence-preserving fold.