Done condition: GET /api/v1/admin/events streams the four transitions off the ONE in-process publisher, authenticated by require_admin (Authorization header); does not expose the panel plane; no token/panel token refused; panel SSE tests stay green.
Checks: focused 13 passed; full suite TZ=UTC uv run pytest -q = 1865 passed.
Maestro task: 92f75680-6d28-4060-bbfc-be808d5c6361 (Feature 23).
Done condition: GET /api/v1/admin/events streams the four transitions off the ONE in-process publisher, authenticated by require_admin (Authorization header); does not expose the panel plane; no token/panel token refused; panel SSE tests stay green.
Head: 74090a5d6b377e5d33873a5fd68a06100d28a764
Base: feature/fce8c1f9-... @ 685f0f2
Checks: focused 13 passed; full suite TZ=UTC uv run pytest -q = 1865 passed.
Extract the panel SSE framing/teardown into the shared
api.sse.transition_event_stream helper and serve it on the admin plane
as GET /api/v1/admin/events, guarded by the admin router's ONE
require_admin and fed by the same app.state.publisher. The panel route
now uses the helper with its auth and exposure unchanged.
Task 92f75680-6d28-4060-bbfc-be808d5c6361
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
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.
Maestro task: 92f75680-6d28-4060-bbfc-be808d5c6361 (Feature 23).
Done condition: GET /api/v1/admin/events streams the four transitions off the ONE in-process publisher, authenticated by require_admin (Authorization header); does not expose the panel plane; no token/panel token refused; panel SSE tests stay green.
Head:
74090a5d6bBase: feature/fce8c1f9-... @
685f0f2Checks: focused 13 passed; full suite TZ=UTC uv run pytest -q = 1865 passed.
Independent Codex gpt-5.6-terra review completed for this exact commit.