AdminEvents pane auth prerequisite: admin.events.read scope #11
Open
opened 2026-05-23 14:25:28 -07:00 by vh
·
2 comments
No Branch/Tag Specified
main
diag/r30-gap-injection-harness
diag/r30-phi0-step-response
diag/r29-pad-series
graphify-tooling
v0.22.3
v0.22.2
v0.22.1
v0.22.0
v0.21.20
v0.21.19
v0.21.18
v0.21.17
v0.21.16
v0.21.15
v0.21.14
v0.21.13
v0.21.12
v0.21.11
v0.21.10
v0.21.9
v0.21.8
v0.21.7
v0.21.6
v0.21.5
v0.21.4
v0.21.3
v0.21.2
v0.21.1
v0.21.0
v0.20.17
v0.20.16
v0.20.15
v0.20.14
v0.20.13
v0.20.12
v0.20.11
v0.20.10
v0.20.9
v0.20.8
v0.20.7
v0.20.6
v0.20.5
v0.20.4
v0.20.3
v0.20.2
v0.20.1
v0.20.0
v0.19.9
v0.19.8
v0.19.7
v0.19.6
v0.19.5
v0.19.4
v0.19.3
v0.19.2
v0.19.1
v0.19.0
v0.18.11
v0.18.10
v0.18.9
v0.18.8
v0.18.7
v0.18.6
v0.18.5
v0.18.4
v0.18.3
v0.18.2
v0.18.1
v0.18.0
v0.17.17
v0.17.16
v0.17.15
v0.17.14
v0.17.13
v0.17.12
v0.17.11
v0.17.10
v0.17.9
v0.17.8
v0.17.7
v0.17.6
v0.17.5
v0.17.4
v0.17.3
v0.17.2
v0.17.1
v0.17.0
v0.16.1
v0.16.0
v0.15.1
v0.15.0
v0.14.2
v0.14.1
v0.14.0
v0.13.0
v0.12.0
v0.11.0
v0.10.0
v0.9.0
v0.8.2
v0.8.1
v0.8.0
v0.7.1
v0.7.0
v0.6.5
v0.6.4
v0.6.3
v0.6.2
v0.6.1
v0.6.0
v0.5.1
v0.5.0
v0.4.1
v0.4.0
v0.3.0
v0.2.1
v0.2.0
v0.1.0
Labels
Clear labels
blocked-needs-contract
blocked-needs-dependency
bug
cli
documentation
duplicate
enhancement
invalid
needs-architect-decision
needs-info
needs-triage
observability
ready-for-agent
sse-client
task
tui
wontfix
Sleipnir refuses dispatch — issue-scoped contract missing
Sleipnir holds dispatch — INV-029 dependency-aware gate
Something is not working
Command-line surface (--send, --new, --session, etc.)
Docs / contract / spec work
Duplicate of another issue
New feature or improvement
Not a real issue
Escalated for a design call
More info required from reporter
Newly filed, not yet sorted
Log-pane / debug-surface work (persona, admin events, Bifrost, tools)
Gates AFK dispatch via Sleipnir (applied by /sleipnir-preflight)
SSE consumer module (src/ratatoskr/sse_client.py)
Implementation task
Textual app shell + presenters
Accepted as not-fixing
Milestone
No items
No Milestone
Projects
Clear projects
No projects
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: vh/ratatoskr#11
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Context
Design-brief §5 lists five side panes for ratatoskr's TUI. One of them is the AdminEvents pane, which surfaces Worldtree's
/admin/eventsSSE stream (lifecycle events, persona affect, etc.).Worldtree-dev confirmed in althing thread
01KSBARG2B8M8C82H6AJGJWX1B(2026-05-23) that/admin/eventsis auth-gated:Posture
Our current API key (
c990f0be) is send-only (agents.call:mimir,agents.call:lofnpending — see issue ratatoskr#???/althing thread01KSBBHDWVZZP10ENMFMNQ1EHW). It does NOT carryadmin.events.read.Worldtree-dev's recommendation:
What this issue tracks
The auth prerequisite for shipping the AdminEvents pane. Not the pane implementation itself (that's a separate side-pane issue per design-brief §5).
Resolution paths (operator's call)
c990f0be); ratatoskr accepts it via a new env-var (RATATOSKR_ADMIN_API_KEYor similar) when the pane is enabled.admin.events.readscope to the existing key (c990f0be). Simpler but elevates the privilege of every ratatoskr call.Recommendation: defer the decision until the AdminEvents pane is actually being scheduled. Filing this issue now as a documentation breadcrumb so we don't forget the auth gate when we get there.
Out of scope
Why now
Worldtree-dev surfaced the gate on 2026-05-23. Filing as a doc-debt fix before it's forgotten.
Scope request QUEUED to infra-ops (althing thread
01KVKB16VB9GVHE17ERP0R2B5G, 2026-06-20).Requested path 1 (least privilege): a SEPARATE admin-tier Heimdall key carrying
admin.events.read— distinct key_id from the send-onlyc990f0be, NOT an augmentation of it. ratatoskr will consume it via a newRATATOSKR_ADMIN_API_KEYenv var when the AdminEvents pane is built. infra-ops brokers the Heimdall scope with worldtree-dev.This clears the auth prerequisite this issue tracks; the pane implementation itself remains a separate side-pane issue (out of scope here).
Auth prerequisite CLEARED (2026-06-20). worldtree-dev minted a least-privilege
readonly-adminkey (key_id20bb72ad, userratatoskr-readonly, personal:8081) granting exactly 7 read scopes incl.admin.events.read— writes denied (POST /admin/keys → 403, verified). Collected via a secure mode-600 drop, stored asRATATOSKR_ADMIN_API_KEYinenv.sh(mode 600), independently verifiedGET /admin/keys → 200from nh3-dev.The auth gate this issue tracks is resolved; the AdminEvents pane implementation remains a separate side-pane issue (out of scope here).