feat(api): publish quarantine-parity export lookup stored-request CLI - #474
Conversation
Publish tepp-export-lookup-request get as ADR 0099 parity. Valid origin and key still fail closed with authorization_denied. The CLI never prints a stored export-authorization request or tenant/principal fields. LineageWeave refused. NaruonLiveService stays POST-only.
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Team Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
Thanks 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 |
Module and compose docs no longer promise stored-create stdout. The typed exchange remains authorization_denied after origin/key validation.
71f34b8
into
feat/export-idempotency-lookup-cli-gap-003a
|
Folded without force into the existing Analysis Run/export lookup landing vehicle #466. Verified ancestry first: |
Summary
GAP-003A unique slice: published
tepp-export-lookup-request getis quarantine-parity of ADR 0099.ADR 0099 quarantines
GET /v1/exports/by-idempotency/{idempotency_key}/requestbecause a consumer-only lookup can disclose another tenant's stored authorization request. This CLI does not disclose that payload. Compose calls the typed exchange builder, which returnsauthorization_deniedafter origin/key validation. Stdout never containstenant_workspace_idorprincipal_id.Stale snapshots that still prefer project-history by-idempotency lookup on #429 are wrong — GET-by-id already keys by
idempotency_key(#429 CLOSED). Stale snapshots that still prefer temporal-context stored-request GET on #451 are wrong — already #464 (#451 CLOSED). Stale snapshots that still prefer a disclosure CLI for this route would weaken fail-closed.localhost/httporigin / unpublished consumer / LineageWeave / credential flags fail closed.by-idempotencyas a key, slash/NUL fail closed.NaruonLiveServicestays POST-only.feat/export-idempotency-lookup-cli-gap-003a@ 12e8337. Do not unstack onto main.Does not duplicate lookup GET/CLI (#466),
{export_id}/requestCLI (#459), GET-by-id (#411), retrieval CLI (#417), collection GET/CLI (#443/#444), or cancel lineages (closed). Does not weaken ADR 0099.Test plan
cargo test -p tepp_api --test export_idempotency_lookup_stored_request_cli_contract --lib lookup_storedcargo clippy -p tepp_api --all-targets -- -D warnings