Add read-only observer access #249
No reviewers
Labels
No labels
accessibility
bug
documentation
duplicate
enhancement
good first issue
help wanted
invalid
P1
P2
P3
question
wontfix
No milestone
No project
No assignees
2 participants
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
Creatidy/scarcity-router!249
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "issue-183-observer-access"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Scope
Refs #183. Adds separately scoped, administrator-issued and individually revocable observer keys using the existing hash-only client key store; inference keys retain their existing scope. Adds versioned bounded snapshot and cursor-replay reads on the existing listener, with one shared explicit allowlist for current and historical state. Updates the existing administrator key page for labeled read-only issuance, one-time display and revocation, plus short operator documentation. No new listener, remote exposure, stream, CORS, database, identity platform or consumer implementation.
Migration 6 defaults existing client keys to inference. Restart and gap handling reuse the existing producer; source observations are not reconstructed from journal history. Consumer conformance and downstream installed/browser acceptance remain outstanding. The owner granted a finite D-069A exception for this exact PR (see #20630); historical ordinals #1-10 and review #11 remain consumed.
Base:
14580f629f123bd079e1aa80651a454e9b3e9ce7.Head:
e0be39facb542a23700ed959e6431605e43bfd00.Local validation
uv sync --only-dev; focused observer permission-transition, replay and redaction tests;make check(3254 tests, 18 skipped, basedpyright clean);make package-check;uv run basedpyright;git diff --check. No live provider calls.D-069A authorization provenance: direct owner user message in native session
ses_e681d31b9ffew23NoLS5eLPLhT, partprt_19b500fe3001j0K16QtrIkkCUO, received 2026-11-02 08:11:17 (session environment time). Original UTF-8 text SHA-256ed20c503f3e7212295a0c37034cc774d32ad533e36aaf97f5ef890a1baec51ab; the following exact attested excerpt has UTF-8 SHA-25683a32446ffd1378922e577bf12684ec3408117578730ec9840b15a791f95c1d0. The original direct owner message is present in the primary context; this Kilo-authored preservation is not independent owner authority.Verified canonical repository ID 15, issue #183/PR #249 linkage, direct owner scope and maximum, current HEAD
189279b505fc01a5125bd9b22eaa4292574225c4, base/merge-base14580f629f123bd079e1aa80651a454e9b3e9ce7, and D-069A already integrated into freshly fetched develop. Reviews #1–10 remain consumed; this exception is not transferable.Independent whole-PR security/correctness/data-integrity/UX review #11 reserved under the exact owner exception documented in #20630; maximum 13 for issue #183/PR #249 only, #1-10 already consumed. Frozen HEAD
189279b505fc01a5125bd9b22eaa4292574225c4, base/merge-base14580f629f123bd079e1aa80651a454e9b3e9ce7. Requested fresh nativepr-reviewersession: GPT-6.1 Sol,high. Reservation is not approval; all failed/COMMENT/retried dispatches consume an ordinal.Review #11 dispatched through native Agent Manager local session
ses_e64adb0c9ffet0lQ10YMw7qCH1, requestedpr-reviewer,openai/GPT-6.1 Sol,high, at the reserved HEAD/base. Native result and actual execution provenance are pending; model resolution metadata is not proof of backend identity or approval.Independent review #11, native session
ses_e64adb0c9ffet0lQ10YMw7qCH1, returned REQUEST_CHANGES at HEAD189279b505fc01a5125bd9b22eaa4292574225c4/ base14580f629f123bd079e1aa80651a454e9b3e9ce7. P2: the observer reason allowlist omits legitimateawaiting_inventory_refresh, making snapshot/replay return HTTP 500 after a newly granted model and potentially breaking replay even after refreshed inventory. Required: preserve the safe recovery reason and test snapshot plus retained replay across permission grant and subsequent inventory. Reviewer inspected the complete frozen diff and relevant authority/source, reported no limitations. #11 consumed; #12-13 remain within the exact owner exception.Review #11 native session-scoped metadata records agent
pr-reviewer, provideropenai, modelgpt-6.1-sol, varianthigh, with no per-session permission override. The selected reviewer profile is read-only; native transcript shows read-only source operations. This verifies native model dispatch/execution records, not independent remote backend identity.Review #11 finding remediated in
e0be39facb542a23700ed959e6431605e43bfd00: allow the existing safeawaiting_inventory_refreshdiscovery reason; deterministic observer HTTP tests exercise the permission grant, pre-refresh snapshot/replay, retained replay after refresh, and rejection of an unapproved reason. Fullmake checkpassed (3254 tests, 18 skipped; package and basedpyright checks), as didmake package-check. Reverified repository ID 15, issue #183/PR #249, original direct owner authorization and preserved excerpt #20630, maximum 13, D-069A in fetched develop and clean exact refs. Fresh whole-PR review #12 reserved at HEADe0be39facb542a23700ed959e6431605e43bfd00, base/merge-base14580f629f123bd079e1aa80651a454e9b3e9ce7; #1-11 consumed. Reservation is not approval.Review #12 dispatched through native Agent Manager local session
ses_e64957aa0ffe8wupgkbeEllqvw, requestedpr-reviewer,openai/GPT-6.1 Sol,high, at reserved HEAD/base. Actual native result and runtime provenance are pending; dispatch metadata is not approval.Independent review #12, native session
ses_e64957aa0ffe8wupgkbeEllqvw, returned APPROVE with empty findings at HEADe0be39facb542a23700ed959e6431605e43bfd00, base/merge-base14580f629f123bd079e1aa80651a454e9b3e9ce7. The reviewer verified complete frozen diff, source, security and UX contracts, reported no limitations, and did not execute tests against the unrelated working tree. No material UX regression found. #12 consumed; final currentness and CI/integration gates still require verification.Review #12 native session metadata records
pr-reviewer, provideropenai, modelgpt-6.1-sol, varianthigh, with no per-session permission override. The selected reviewer profile is read-only and native transcript records read-only source operations. This is native model execution metadata, not independent proof of remote backend identity.Pre-merge currentness: review #12 APPROVE with empty findings at HEAD
e0be39facb542a23700ed959e6431605e43bfd00; freshly fetched develop/base/merge-base14580f629f123bd079e1aa80651a454e9b3e9ce7; clean checkout; issue open and no excluded labels; direct exact-PR owner exception remains within maximum 13. Forgejo workflow #3474 completed SUCCESS on this HEAD and newestci / check (pull_request)status is success. The combined status resource still includes earlier pending records and reports pending; normal Forgejo merge only, with no force or auto-merge. Actual downstream consumer conformance is not established.