Task · GCI-0025

Verify what traces:read and profiles:read actually permit, with an isolated mint-and-delete probe

Description

GCI-0023 documented every declared reader scope’s breadth except two. traces:read and profiles:read are recorded in CAPABILITIES.md as explicitly unverified, with the necessary probe named rather than a narrow boundary asserted. This task runs that probe.

Authorised by the operator on 2026-09-11 for wave 2.

The probe

Mint an access policy carrying traces:read and nothing else, on a control organisation. Call content-bearing Tempo routes with it and record what returns 200 and what returns 403. Repeat for profiles:read against Pyroscope. Delete both policies. Verify no residual object remains.

Constraints

Acceptance Criteria

Definition of Done

Implementation Plan

loop3 R-0025: live inventory, isolated single-scope stack-realm policy per traces/profiles, bounded content read, recorded-ID policy delete and GET404; I-0025doc captures verified scope breadth without raw content.

Implementation Notes

Wave 2 attended probe did not run because the operator did not supply the control-organisation identity. No organisation was inferred and no access policy was minted, read, modified or deleted.

loop3 admitted 2026-09-30 under owner goal: root owns tracker; bounded lanes own implementation/discovery, evidence pending. No acceptance claimed yet.

loop3 R-0025 live proof on staff control org: two stack-realm single-scope policies, traces:read and profiles:read, minted separately; Tempo 24h search and fetched trace batches returned 200; Pyroscope ProfileTypes and SelectMergeStacktraces returned 200 with nonempty flamegraph. Both created policy IDs were deleted then re-read as 404. No preexisting policy modified and no collector scopes changed. Evidence is private codex/loop3-evidence/R-0025; documentation lane I-0025doc active. AC1/2/3/5 root evidence accepted, formal checks after documentation integration.

Final Summary

Parked without live mutation. The control organisation was not supplied, so traces:read and profiles:read remain explicitly unverified, no content-bearing route result was claimed, and CAPABILITIES.md was not changed.

SUPERSEDES the old parked outcome: loop3 completed the staff control-org single-scope probe. traces:read returned a 24h Tempo search and nonempty fetched trace; profiles:read returned types and a populated flamegraph. Both stack-realm policies were deleted by recorded IDs, then GET returned 404. No existing policy or collector scope changed. CAPABILITIES documents route results and untested org-realm/other-stack/label-policy boundaries at 1f5acd5e5fa84de06add8e0045c08bb3ad6b7783. Full just check green (1571 passed, 2 skipped), exact-SHA CI 36715056370 success; documentation-only CodeRabbit exemption. R-0025 and I-0025doc evidence retained privately; all live read content excluded from public docs.

View the source file on GitHub