feat(api): inspect stored analysis-run requests from LineageWeave and Naruon - #387
Conversation
… Naruon GAP-003A consumer-parity for stored-request GET (issue #166, ADR 0040). LineageWeave reuses the Naruon inspect builder; NaruonLiveService serves metric-free GET /request for Naruon only; tepp-loopback proves create-then-inspect.
|
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 |
seonghobae
left a comment
There was a problem hiding this comment.
Exact-head COMMENT on e2ffc6d (draft). Unique occupied: analysis-run stored-request consumer-parity (ADR 0040) — LineageWeave exchange reuses origin/body/header validation then replaces only tepp-consumer with lineageweave. Accepted response stays an asynchronous transport acknowledgement, not a psychometric result. Do not leak PII through LineageWeave. Do not add GET to NaruonLiveService. Do not un-quarantine stored-request-by-client-key. Do not un-draft. Zero reviews on this SHA before this COMMENT. Never self-approve. Do not weaken fail-closed. No Buyer language.
Why
GAP-003A / issue #166 still has no LineageWeave stored-request exchange builder, no Naruon compatibility-listener inspect, and no
tepp-loopbackTCP proof. ADR 0034 / #377 addedGET /v1/analysis-runs/{run_id}/requestonAnalysisRunLiveServiceand the Naruon inspect builder only. A published LineageWeave consumer would have to mint a Naruon-labelled inspect.NaruonLiveServicestill refused every GET path.Live slices that this PR does not duplicate:
analysis_enginescientific-acceptance libraryf80bd97c05641601d5158c12eef2aa48e7944892)What
Unique GAP-003A stored-request consumer-parity slice stacked on #377 over protected main
1bc02f580cf48e1d39da239f0e818453437c31c3:lineageweave_analysis_run_stored_request_exchangereuses the Naruon inspect builder and replaces onlytepp-consumerNaruonLiveServiceserves metric-free stored-request GET for Naruon only; LineageWeave remains refused there200); unknown, consumer mismatch, nonempty body, and metric keys fail closedtepp-loopbackcreate-then-inspect over loopback TCPNot an ADR 0014 scientific claim. Not GET status. Not lifecycle POST. Not collection GET. Not retry. Not retry-lineage. Not persistence. Does not open
NaruonLiveServiceto LineageWeave.Verification
cargo clippy -p tepp_api --all-targets -- -D warningscargo test -p tepp_api --all-targetsRUSTDOCFLAGS='-D warnings' cargo doc -p tepp_api --no-depspython3 scripts/validate_documentation.pypython3 scripts/check_docstrings.pycrates/tepp_api/tests/lineageweave_http_contract.rscrates/tepp_api/tests/naruon_live_http_contract.rscrates/tepp_api/tests/loopback_binary_contract.rsdocs/research/analysis-run-stored-request-consumer-parity.mdExact-head Checks on
e2ffc6d1cbb6c2f972efd69f236ac5cd918113e6are required before merge. Two independent current-head APPROVEs are required. Author cannot self-approve. Merge #377 before this stacked PR, or retarget onto protected main after #377 lands. No force-push.