fix(security): require trace purpose authorization - #781
Conversation
|
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: Pro Plus 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 |
|
Current-head review at
This is stacked on #780; no independent required Checks are reported for the stacked branch. Merge only after the parent reaches protected main and the exact rebased head receives required Checks and approval. |
|
Exact current HEAD is |
|
@opencode-agent Review exact current HEAD |
|
|
|
|
|
Current-head proof for
This PR remains stacked on #780; current parent and protected Checks must be satisfied before normal merge. No self-approval, admin merge, or force-push was used. |
* fix: require trace purpose authorization * fix: apply trace purpose policy across evidence routes * test: restore lint-clean contract baseline --------- Co-authored-by: opencode-agent[bot] <219766164+opencode-agent[bot]@users.noreply.github.com>
) * fix: separate liveness from readiness probes * fix: keep readiness backend identifiers private * fix: make trace endpoint authorization explicit * fix(security): require trace purpose authorization (#781) * fix: require trace purpose authorization * fix: apply trace purpose policy across evidence routes * test: restore lint-clean contract baseline --------- Co-authored-by: opencode-agent[bot] <219766164+opencode-agent[bot]@users.noreply.github.com> * docs: reserve unique liveness and trace ADR numbers * fix: preserve trace authorization on read endpoints * test: harden trace authorization regression fixtures * fix: adopt opaque admin-session authorize docstring from merged #788 * fix: register trace disclosure purpose --------- Co-authored-by: opencode-agent[bot] <219766164+opencode-agent[bot]@users.noreply.github.com>
Buyer-visible security gap
Closes #117. Inference or admin authentication alone must not disclose prompts, outputs, provider evidence, workflow traces, or batch evidence.
Change
tracepurpose scope before trace-bearing chat, admin simulation, workflow/evaluation creation, batch-result retrieval, and trace-enabled workflow/evaluation reads;include_orchestration_traceas a strict JSON boolean when present; strings, numbers, arrays, objects, and null are rejected;orchestration_trace_access_grantedaudit event before release and fail closed with generic503if audit persistence is unavailable;This PR remains stacked on #780 and must be integrated only after the parent reaches protected main. No Figma/Storybook change: this is a backend authorization contract. Existing Figma source remains
vsZMd8WAv42HDRgcZuNcWk.Verification
uv run pytest -q— 1440 passed in 558.85suv run ruff checkon changed Python files — passedpython -m compileall -q contextual_orchestrator— passedgit diff --check— passedPlease review exact current HEAD
fc0ebae309fbf8f6023514e02c08b8e63fdc10ad. Merge only through protected normal review/checks; no bypass or self-approval.