--- name: CTO Hermes WebUI Live Smoke PRD status: validated lifecycle_classification: sot owner: jp created: 2026-06-01 last_reviewed: 2026-06-01 core_promotion_status: not-promoted --- # CTO Hermes WebUI Live Smoke PRD Local planning SOT only. Not a Core Protocol. Not active Core authority. ## Problem `CTO-WORK-059` proved the Hermes WebUI CTO panel by unit and aggregate plugin tests. The next useful proof is a Hermes WebUI live smoke path that proves the route and assets are present through existing plugin smoke machinery. ## Scope Add Hermes WebUI live smoke coverage for: - `/api/cto/control-summary` - `/plugins/svrnty/cto_control_panel.js` - `/plugins/svrnty/cto_control_panel.css` The smoke may accept normal auth-gated status codes when the WebUI is protected. It must still prove the route/static paths are wired into the Hermes-owned plugin surface. ## Non-goals - Do not edit upstream `hermes-webui`. - Do not edit upstream `hermes-agent`. - Do not activate Case as default backend. - Do not mutate target repositories. - Do not introduce a new browser automation stack if existing plugin smoke machinery is enough. - Do not move authority from Cortex SOT to Hermes or Case. ## Acceptance Criteria - Existing plugin smoke machinery includes the CTO route and panel assets. - `/api/cto/control-summary` is represented in deterministic smoke coverage. - `/plugins/svrnty/cto_control_panel.js` is represented in deterministic smoke coverage. - `/plugins/svrnty/cto_control_panel.css` is represented in deterministic smoke coverage. - Harness-backed summary data remains the source of truth. - Case default activation remains false. - Target repository mutation remains false. ## Validation - Focused: run the plugin tests that cover smoke route registration and CTO panel assets. - Aggregate before commit: run plugin connection-map check and full plugin tests once. - Aggregate after merge: run plugin connection-map check and full plugin tests once. - CTO evidence: record commit and validation output in child-local SOT. ## Risks - A live WebUI process may be password-gated or unavailable. Treat that as an allowed smoke status if the route is registered and protected, not as a product failure. - Starting the full WebUI may be slower than unit checks. Do not over-expand beyond existing smoke coverage. ## Success Definition Hermes WebUI live smoke coverage can prove the CTO panel route and assets are wired without changing upstream vendor source, activating Case default behavior, or mutating any target repository.