feat(skills): add rollout promotion contract and sync planning state

This commit is contained in:
William Valentin
2026-02-13 08:51:19 -08:00
parent 46099664f0
commit 8f644d5e25
8 changed files with 464 additions and 56 deletions
@@ -0,0 +1,96 @@
---
phase: 03-live-ops-dashboard
plan: 02
subsystem: gateway-ui
tags: [dashboard, ui, metrics, events, active-requests, monitoring]
# Dependency graph
requires:
- phase: 03-live-ops-dashboard
provides: "MetricsCollector, system.metrics/system.events/system.activeRequests RPC handlers, and /health endpoint"
provides:
- "Live Ops dashboard UI sections for counters, model performance, event stream, active requests, and channels"
- "Dual refresh cadence: fast (3s) metrics/events/requests and slow (10s) health/channels"
- "Event stream styling and model metrics summary styling"
affects: [operator-observability, milestone-closure]
# Tech tracking
tech-stack:
added: []
patterns:
- "Targeted section updates via stable DOM IDs"
- "Split polling cadence for high-churn vs low-churn data"
key-files:
created: []
modified:
- src/gateway/ui/pages/dashboard.js
- src/gateway/ui/style.css
key-decisions:
- "Keep vanilla JS page module pattern (render/teardown), no framework migration"
- "Use two polling timers (3s and 10s) to reduce unnecessary RPC load"
- "Render newest events at the bottom with auto-scroll for log readability"
patterns-established:
- "Dashboard section IDs as update boundaries: ops-counters, ops-model-table, ops-events, ops-requests, ops-channels"
# Metrics
duration: unknown (implementation commit predates this summary backfill)
completed: 2026-02-13
---
# Phase 3 Plan 2: Live Ops Dashboard UI Summary
**Extended the existing dashboard with live counters, model performance telemetry, event stream, and active request visibility, backed by Phase 3 Plan 1 RPC endpoints.**
## Performance
- **Summary date:** 2026-02-13
- **Tasks:** 2/2 (implementation + closure/verification)
- **Files modified:** 2
## Accomplishments
- Implemented dashboard sections for core counters, model metrics table, event stream, active requests, and channels
- Wired RPC calls to `system.metrics`, `system.events`, `system.activeRequests`, `system.health`, and `system.channels`
- Added 3-second fast refresh for dynamic ops data and 10-second slow refresh for health/channel state
- Added event stream and model summary styling in shared gateway UI stylesheet
## Task Commits
Implementation was already present in commit history and is now formally closed with planning artifacts:
1. **Task 1: Extend dashboard page with live ops sections** - `c3ca3f3` (feat)
2. **Follow-up style cleanup** - `6090508` (style)
## Files Created/Modified
- `src/gateway/ui/pages/dashboard.js` - Live ops dashboard structure, polling, and targeted section updates
- `src/gateway/ui/style.css` - Event stream and model metrics summary styles
## Verification
Automated checks run during this closure:
- `pnpm typecheck`
- `pnpm build`
- `pnpm test:run` ✅ (1590/1590 passed)
Manual browser verification (visual sanity check) remains recommended as a final operator check.
## Deviations from Plan
No functional deviations. This summary was backfilled after implementation had already landed.
## Issues Encountered
None
## User Setup Required
None
## Next Phase Readiness
- Phase 3 is complete from an implementation and automated validation perspective
- Milestone artifacts are now synchronized (`STATE.md`, `ROADMAP.md`, `REQUIREMENTS.md`)
---
*Phase: 03-live-ops-dashboard*
*Completed: 2026-02-13*