Orchestrata Ultimate / RTM / 016-vizint-command-center

RTM: 016-vizint-command-center

Requirement to symbol to test rows for 016-vizint-command-center: VizInt Command Center.

At a glance

Item Value
Requirement IDs 294
Traced from src/ 38 (12.9%)
Untraced 256
Cited from tests/ 0 (0.0%)
Traced in src/ but not cited from tests/ 38

Reading this matrix

This matrix lists each of the 294 requirement IDs of spec 016-vizint-command-center with the src/ symbols that cite it and the tests that cite it. 38 of them (12.9%) have at least one citing symbol and 256 have none.

0 requirements are also cited from tests/, and 38 are traced in code but never named by a test. A test citation is a @traces on a test function; it shows intent to cover, not that the test runs or reaches the symbol.

Rows showing none in the symbols column are the gaps to close first. The densest untraced groups are REQ-016-* (256).

Requirement to symbols to tests

Requirement Symbols in src/ Tests citing it
REQ-016-001 ProjectExplorer gadget queries knowledge.nodes for the Project node on mount none none
REQ-016-002 Gadget displays project name, version, description from Project node properties none none
REQ-016-003 Gadget displays aggregate counts: total files, total classes, total functions, total LOC none none
REQ-016-004 Gadget displays session summary: total sessions, active sessions, last session date none none
REQ-016-005 Gadget displays iteration summary: total iterations, last iteration number, gap trend none none
REQ-016-006 File tree populated via knowledge.nodes RPC with node_type=File and pagination orchestrata_ultimate/gateway/handlers/knowledge handle_nodes L107 none
REQ-016-007 File tree shows directory hierarchy with expand/collapse toggles none none
REQ-016-008 File tree supports keyword search with real-time filtering (debounced 300ms) none none
REQ-016-009 Each file entry shows: name, path, class count, function count none none
REQ-016-010 Click on file navigates to KGExplorer gadget with file-scoped context none none
REQ-016-011 KG summary displays counts by node type: File, Class, Function, Session, Iteration, Spec none none
REQ-016-012 Each count displayed with sparkline trend (last 20 data points) none none
REQ-016-013 KG summary auto-refreshes every 60 seconds via gateway subscription none none
REQ-016-014 Click on node type count opens KGExplorer filtered to that type none none
REQ-016-015 Recent sessions list (last 10) with: id, date, status badge, duration, achievements none none
REQ-016-016 Status badges: active (green pulse), closed (grey), error (red) none none
REQ-016-017 Recent iterations list (last 10) with: number, date, gap count, pass/fail indicator none none
REQ-016-018 Click on session row opens SessionManager gadget with that session selected none none
REQ-016-019 Click on iteration row opens IterationBrowser gadget with that iteration selected none none
REQ-016-020 Project metrics refresh on session.events and kernel.events subscriptions none none
REQ-016-021 SessionManager gadget calls session.list on mount to find active session none none
REQ-016-022 Active session displayed with: id, goals, portfolio, duration (live timer), status none none
REQ-016-023 Session context displayed: current work description, recent achievements none none
REQ-016-024 Session facts displayed as a scrollable list (last 50 facts) none none
REQ-016-025 "No active session" placeholder shown when no session is active none none
REQ-016-026 "Start Session" button opens dialog: goals (text area), portfolio (dropdown), purpose... none none
REQ-016-027 Start Session sends session.open RPC with user-provided parameters none none
REQ-016-028 Start Session button disabled when a session is already active none none
REQ-016-029 "Close Session" button opens dialog: summary (text area), carryover tasks (checklist) none none
REQ-016-030 Close Session sends session.close RPC with summary and carryover none none
REQ-016-031 Close Session button disabled when no session is active none none
REQ-016-032 Session open/close results displayed as success/error toast notification none none
REQ-016-033 Deferred work items displayed in a prioritized list (critical > high > medium > low) none none
REQ-016-034 Each item shows: description, priority badge, status, session added, notes none none
REQ-016-035 "Add Item" button opens inline form: description, priority dropdown, notes none none
REQ-016-036 Click on item opens inline editor for description, priority, and notes none none
REQ-016-037 "Mark Done" button on each item updates status to done none none
REQ-016-038 "Remove" button with confirmation dialog for item deletion orchestrata_ultimate/knowledge_graph/graph_context_validator ValidationResult L34 none
REQ-016-039 Deferred work changes sent to gateway for persistence in context.json orchestrata_ultimate/knowledge_graph/graph_context_validator GraphContextValidator L86 none
REQ-016-040 "Log Work" text input with send button in the session panel none none
REQ-016-041 Log work sends description to session context via RPC none none
REQ-016-042 Recent work log entries displayed below the input (last 10) none none
REQ-016-043 Gadget subscribes to session.events for real-time updates none none
REQ-016-044 Session open event updates display to show new active session none none
REQ-016-045 Session close event updates display to show "no active session" none none
REQ-016-046 Session history table accessible via "History" tab none none
REQ-016-047 History table columns: id, date, duration, status, achievements (truncated) none none
REQ-016-048 History supports search across achievements and descriptions none none
REQ-016-049 History supports date-range filter none none
REQ-016-050 Click on history row shows full session detail in a side panel none none
REQ-016-051 CXPFeed gadget subscribes to cxp.traffic via GadgetBridge on mount orchestrata_ultimate/gateway/handlers/cxp handle_subscribe L359 none
REQ-016-052 Subscription re-established automatically on gateway reconnect none none
REQ-016-053 Gadget unsubscribes from cxp.traffic on unmount orchestrata_ultimate/gateway/handlers/cxp handle_unsubscribe L391 none
REQ-016-054 Packets displayed as rows in a scrolling list none none
REQ-016-055 Each row shows: timestamp, from (volk alias), to (volk alias), subject, status, thread_id none none
REQ-016-056 Delivery status color-coded: green (delivered), yellow (pending), red (failed), grey... none none
REQ-016-057 Click on row expands to show full CXP payload (all 11 fields) none none
REQ-016-058 Expanded view shows JSON payload with syntax highlighting none none
REQ-016-059 Maximum 5000 packets retained in memory (oldest discarded) none none
REQ-016-060 Volk filter dropdown (populated from volk.list) for from/to filtering none none
REQ-016-061 Thread filter text input with debounced search (300ms) none none
REQ-016-062 Subject filter text input supporting glob patterns (e.g., "code_*") none none
REQ-016-063 Delivery status filter dropdown (all, delivered, pending, failed, expired) none none
REQ-016-064 Multiple filters combine with AND semantics none none
REQ-016-065 Active filter count shown in filter bar none none
REQ-016-066 "Clear Filters" button resets all filters none none
REQ-016-067 Filters applied client-side for instant response none none
REQ-016-068 Auto-scroll to bottom for new packets when scrolled to bottom none none
REQ-016-069 Auto-scroll pauses when user scrolls up (manual inspection) none none
REQ-016-070 "Jump to Bottom" floating button appears when paused none none
REQ-016-071 Auto-scroll resumes on "Jump to Bottom" click or manual scroll to bottom none none
REQ-016-072 Packet count badge shows total packets since gadget mount none none
REQ-016-073 Throughput indicator shows packets/sec (rolling 10-second average) none none
REQ-016-074 Filtered packet count shown when filters active (e.g., "42 / 1234") none none
REQ-016-075 VolkStatus gadget calls volk.list on mount to populate initial state none none
REQ-016-076 Each volk rendered as a card with: alias, role title, health indicator, current task orchestrata_ultimate/orchestrator/orchestrator VolkInstance L39 none
REQ-016-077 Health indicator: green circle (healthy), yellow circle (degraded), red circle (unhealthy) none none
REQ-016-078 Current task shown as status text with elapsed time (live timer) none none
REQ-016-079 Idle volks show "Idle" with grey status text none none
REQ-016-080 Gadget subscribes to volk.lifecycle for real-time updates none none
REQ-016-081 Health changes animate with CSS color transition (300ms fade) none none
REQ-016-082 New volk registration adds card with slide-in animation none none
REQ-016-083 Volk deregistration removes card with fade-out animation none none
REQ-016-084 Task start/complete events update the current task display none none
REQ-016-085 Click on volk card opens detail panel (slide-out right side) none none
REQ-016-086 Detail panel shows: alias, role, capabilities list, protocols, registration time none none
REQ-016-087 Detail panel shows: session_id, resource_usage (tokens, time), last_activity none none
REQ-016-088 Detail panel shows: output artifacts list (files generated, CXP packets sent count) none none
REQ-016-089 Detail panel updated in real-time via volk.lifecycle events none none
REQ-016-090 Default mode: volk cards in a grid (responsive columns based on gadget width) none none
REQ-016-091 Compact mode: horizontal bars with color-coded health (for width < 400px) none none
REQ-016-092 Layout mode auto-switches based on gadget container width none none
REQ-016-093 Manual mode toggle in gadget titlebar (grid/compact icon) none none
REQ-016-094 ClaudeChat gadget renders message history as a scrollable conversation view none none
REQ-016-095 User messages aligned right, Claude responses aligned left none none
REQ-016-096 Message input area with multiline support (Shift+Enter for newline, Enter to send) none none
REQ-016-097 Send button enabled only when input is non-empty none none
REQ-016-098 Message timestamps displayed on hover none none
REQ-016-099 User messages sent via cxp.send RPC with destination set to Claude-backed agent orchestrata_ultimate/gateway/handlers/cxp handle_send L120 none
REQ-016-100 Each chat thread uses a unique CXP thread_id orchestrata_ultimate/gateway/handlers/cxp handle_send L120 none
REQ-016-101 Responses received via cxp.traffic subscription filtered to the chat thread_id none none
REQ-016-102 Work status tracked: "sent" -> "processing" -> "delivered" orchestrata_ultimate/gateway/handlers/cxp handle_send L120 none
REQ-016-103 Error responses displayed inline with red error styling none none
REQ-016-104 Code blocks rendered with syntax highlighting (language detection) none none
REQ-016-105 Inline code rendered with monospace font and background none none
REQ-016-106 Lists (ordered and unordered) rendered with proper indentation none none
REQ-016-107 Bold, italic, and links rendered correctly none none
REQ-016-108 Markdown parser sanitizes HTML (no script tags, no event handlers) none none
REQ-016-109 "New Thread" button creates a fresh CXP thread_id and clears display none none
REQ-016-110 Thread selector dropdown lists recent threads (last 10) by first message preview none none
REQ-016-111 Switching threads loads history from localStorage none none
REQ-016-112 Chat history persisted in localStorage (last 100 messages per thread) none none
REQ-016-113 Chat history synced via StateSync for cross-device persistence none none
REQ-016-114 Typing indicator (animated dots) shown while awaiting response none none
REQ-016-115 Typing indicator triggered by work_status change to "processing" none none
REQ-016-116 Connection status shown in chat header (connected/disconnected) orchestrata_ultimate/knowledge_graph/types_nodes Node L20 none
REQ-016-117 "Reconnecting..." overlay shown when gateway is disconnected none none
REQ-016-118 Message search via keyword filter (search icon in chat header) none none
REQ-016-119 TaskBoard gadget displays tasks as kanban columns: Not Started, In Progress, Completed none none
REQ-016-120 Tasks displayed as cards within columns, sorted by priority (critical first) none none
REQ-016-121 Card shows: title, priority badge, assigned volk (avatar), brief description none none
REQ-016-122 Column header shows task count per status none none
REQ-016-123 "Deferred" column displays deferred work items from context.json none none
REQ-016-124 Tasks draggable between status columns (HTML5 Drag and Drop API) orchestrata_ultimate/knowledge_graph/types_nodes PredicateNode L314 none
REQ-016-125 Drop zones highlighted during drag (visual affordance) orchestrata_ultimate/knowledge_graph/types_nodes RuleNode L363 none
REQ-016-126 Status change on drop sends RPC update to gateway none none
REQ-016-127 Drag-and-drop works on touch devices (pointer events) none none
REQ-016-128 Undo available for 5 seconds after status change (toast with "Undo" button) none none
REQ-016-129 "New Task" button opens modal dialog none none
REQ-016-130 Task form fields: title (required), description, priority dropdown none none
REQ-016-131 Task creation sends RPC to gateway for persistence none none
REQ-016-132 New task appears in "Not Started" column immediately none none
REQ-016-133 "New Task" button within each column opens modal dialog none none
REQ-016-134 Task form fields: title (required), description, assigned volk (dropdown), priority none none
REQ-016-135 Task creation sends RPC to gateway for persistence none none
REQ-016-136 New task appears in the appropriate column immediately none none
REQ-016-137 Click on task card opens detail panel (slide-out right side) none none
REQ-016-138 Detail panel shows: title, description, priority, assigned volk, parent goal none none
REQ-016-139 Detail panel shows: history (status changes with timestamps) none none
REQ-016-140 Detail panel shows: linked CXP threads, time spent none none
REQ-016-141 Inline editing of title, description, priority, assigned volk in detail panel orchestrata_ultimate/gateway/handlers/projects handle_task_update L292 none
REQ-016-142 Dashboard task edits flow to context.json via gateway RPC none none
REQ-016-143 CLI/external edits to context.json appear in dashboard via session.events subscription none none
REQ-016-144 Conflict resolution: last-write-wins with user notification of override none none
REQ-016-145 QADashboard gadget displays current test count as a large number with label none none
REQ-016-146 Gadget displays pass rate as percentage with color (green >=99%, yellow >=95%, red <95%) none none
REQ-016-147 Gadget displays coverage percentage with color coding none none
REQ-016-148 Metrics fetched from project state via knowledge.query or configuration none none
REQ-016-149 Metrics displayed as metric cards with current value and delta since last session none none
REQ-016-150 Coverage trend rendered as sparkline chart (last 20 data points) none none
REQ-016-151 Sparkline rendered using Canvas 2D API (no external chart library) none none
REQ-016-152 Hover on sparkline shows tooltip with exact value and date none none
REQ-016-153 Trend data fetched from knowledge graph (Iteration nodes with coverage property) orchestrata_ultimate/gateway/handlers/knowledge handle_coverage_history L312 none
REQ-016-154 Gate status displayed as pass/fail indicator none none
REQ-016-155 Pass: green checkmark, Fail: red X, Partial: yellow warning triangle none none
REQ-016-156 Hover on gate icon shows: iteration number, date, test count, gap count none none
REQ-016-157 Click on gate icon shows detailed iteration results none none
REQ-016-158 Failed tests section expandable (collapsed by default) none none
REQ-016-159 Each failed test shows: test name, assertion message, file:line location none none
REQ-016-160 Failed tests grouped by test module none none
REQ-016-161 Click on file:line opens relevant context in ProjectExplorer gadget none none
REQ-016-162 RTM progress bar: verified requirements / total requirements orchestrata_ultimate/gateway/handlers/knowledge handle_rtm_progress L354 none
REQ-016-163 RTM percentage displayed as text alongside progress bar none none
REQ-016-164 Click on RTM progress bar opens RTM Viewer gadget none none
REQ-016-165 Test execution events received via kernel.events subscription (test_completed) none none
REQ-016-166 Test count and pass rate updated in real-time during test runs orchestrata_ultimate/gateway/test_runner TestRunner L39
orchestrata_ultimate/gateway/test_runner _emit L294
orchestrata_ultimate/gateway/test_runner _parse_line L238
+2 more
none
REQ-016-167 "Run Tests" button sends test execution command via gateway RPC orchestrata_ultimate/gateway/handlers/test_metrics TestMetricsHandler L13
orchestrata_ultimate/gateway/handlers/test_metrics handle_tests_run L30
orchestrata_ultimate/gateway/test_runner run L85
none
REQ-016-168 Test run progress bar shown during execution orchestrata_ultimate/gateway/test_runner is_running L80 none
REQ-016-169 AuditTrail gadget queries governance.query on mount with default time range none none
REQ-016-170 Query results displayed in a sortable table none none
REQ-016-171 Table columns: timestamp, actor, action, resource, result, latency_ms none none
REQ-016-172 Table sortable by any column (click column header, toggle asc/desc) none none
REQ-016-173 Pagination: 50 items per page, next/prev buttons, page number display none none
REQ-016-174 Full-text search input searches across all audit fields (debounced 300ms) none none
REQ-016-175 Date range filter with date picker (from date, to date) none none
REQ-016-176 Actor filter dropdown (populated from volk.list + gateway client IDs) none none
REQ-016-177 Action type filter dropdown (CXP send, session open, governance check, etc.) none none
REQ-016-178 Result filter dropdown (allow, deny, escalated, error) none none
REQ-016-179 Constitutional article filter dropdown (I through XI) none none
REQ-016-180 Active filter summary bar showing applied filters with remove buttons none none
REQ-016-181 Constitutional article violations highlighted with red left border and article reference none none
REQ-016-182 Escalation events displayed with escalation chain (involved parties, path) none none
REQ-016-183 Governance decisions show Prolog query and evaluation latency none none
REQ-016-184 Click on audit row expands to show full event detail (JSON formatted) none none
REQ-016-185 "Export CSV" button exports current filtered results as CSV download none none
REQ-016-186 "Export JSON" button exports current filtered results as JSON download none none
REQ-016-187 Export respects current filters and sort order none none
REQ-016-188 Export includes all fields (not just visible columns) none none
REQ-016-189 KGExplorer renders a force-directed graph using Canvas 2D API none none
REQ-016-190 Nodes displayed with type-based styling (table view with node type column) none none
REQ-016-191 Node size proportional to relationship count (more connected = larger) none none
REQ-016-192 Relationships rendered as labeled directed edges with arrowheads none none
REQ-016-193 Node labels show name/alias (truncated to 20 chars) none none
REQ-016-194 Zoom via scroll wheel (min 0.1x, max 5x) none none
REQ-016-195 Pan via mouse drag on background none none
REQ-016-196 Node drag repositions node (simulation continues around dragged node) none none
REQ-016-197 Click on node selects it and shows property panel none none
REQ-016-198 Double-click on node expands its relationships (loads connected nodes) none none
REQ-016-199 Property panel shows all node properties as key-value pairs none none
REQ-016-200 Property panel shows node labels and type none none
REQ-016-201 Property panel shows relationship list (type, direction, target node) none none
REQ-016-202 Property panel links to related gadgets (file -> ProjectExplorer, session ->... none none
REQ-016-203 Cypher input area for query entry none none
REQ-016-204 Auto-complete for node types, relationship types, and property names none none
REQ-016-205 "Run Query" button executes via knowledge.query RPC orchestrata_ultimate/gateway/handlers/knowledge handle_query L59 none
REQ-016-206 Query results rendered as tabular data none none
REQ-016-207 Query history dropdown (last 20 queries) for re-execution none none
REQ-016-208 Query error messages displayed inline below the input none none
REQ-016-209 NotificationManager subscribes to governance.decisions for escalation events none none
REQ-016-210 NotificationManager subscribes to kernel.events for error and warning events none none
REQ-016-211 NotificationManager subscribes to session.events for decision_needed events none none
REQ-016-212 Subscriptions established on CommandCenter initialization none none
REQ-016-213 Subscriptions re-established on gateway reconnect none none
REQ-016-214 Notification API permission requested on first critical event none none
REQ-016-215 Desktop notification shown when browser tab is not focused none none
REQ-016-216 Desktop notification includes: title, body (truncated to 100 chars), icon none none
REQ-016-217 Click on desktop notification focuses the browser tab and opens relevant gadget none none
REQ-016-218 Desktop notifications sent only for warning priority and above none none
REQ-016-219 Notification bell icon in dashboard header with unread count badge none none
REQ-016-220 Click on bell opens notification dropdown (last 50 notifications) none none
REQ-016-221 Each notification shows: timestamp, type icon, title, body preview none none
REQ-016-222 Click on notification navigates to relevant gadget (audit trail, session manager, etc.) none none
REQ-016-223 "Mark All Read" button clears unread count none none
REQ-016-224 Per-notification dismiss (X button) removes from list none none
REQ-016-225 Notification priority styling: info (blue), warning (yellow), error (red), critical... none none
REQ-016-226 Settings panel for notification preferences (accessible from bell dropdown) none none
REQ-016-227 Toggle desktop notifications on/off none none
REQ-016-228 Toggle notification sound on/off (with sound file selection) none none
REQ-016-229 Minimum priority filter (show only warnings and above, errors and above, etc.) none none
REQ-016-230 Preferences persisted via StateSync none none
REQ-016-231 PrayerTimes gadget wraps existing VizInt portal PrayerTimes gadget none none
REQ-016-232 Connects to Chronus provider for accurate prayer calculations none none
REQ-016-233 Displays next prayer name and countdown timer (HH:MM:SS) none none
REQ-016-234 Displays all five daily prayer times in a compact table none none
REQ-016-235 TodoistGadget authenticates via personal API token (stored encrypted in localStorage) none none
REQ-016-236 Displays today's tasks grouped by project none none
REQ-016-237 Task completion toggle (checkbox) sends PATCH to Todoist API none none
REQ-016-238 Quick-add task input at bottom of list (POST to Todoist API) orchestrata_ultimate/knowledge_graph/query_engine query L91 none
REQ-016-239 EmailGadget shows unread count and top 10 sender/subject previews none none
REQ-016-240 CalendarGadget shows today's events with time blocks orchestrata_ultimate/knowledge_graph/query_engine multi_hop L110 none
REQ-016-241 API tokens encrypted with Web Crypto API before localStorage storage none none
REQ-016-242 All personal gadgets function independently when gateway is disconnected none none
REQ-016-243 Theme toggle (dark/light) in dashboard header with smooth CSS variable transition none none
REQ-016-244 Gadget grid supports drag-to-reposition and resize handles on chrome none none
REQ-016-245 SessionHandler registered with gateway RPC router orchestrata_ultimate/gateway/handlers/_session_kg SessionKgOps L244
orchestrata_ultimate/gateway/handlers/_session_kg project_slug L292
orchestrata_ultimate/gateway/handlers/_session_kg session_key L305
+4 more
none
REQ-016-246 session.active RPC returns the currently active session or null orchestrata_ultimate/gateway/handlers/_session_events SessionEventOps L20
orchestrata_ultimate/gateway/handlers/_session_events set_processor L44
orchestrata_ultimate/gateway/handlers/_session_kg SessionKgOps L244
+10 more
none
REQ-016-247 session.list RPC returns all sessions with pagination orchestrata_ultimate/gateway/handlers/_session_kg _deserialize_session L219
orchestrata_ultimate/gateway/handlers/_session_kg build_list_query L48
orchestrata_ultimate/gateway/handlers/session SessionHandler L73
+1 more
none
REQ-016-248 session.get RPC returns a single session by ID orchestrata_ultimate/gateway/handlers/_session_kg _deserialize_session L219
orchestrata_ultimate/gateway/handlers/_session_kg build_get_query L82
orchestrata_ultimate/gateway/handlers/_session_kg shape_get_result L123
+2 more
none
REQ-016-249 session.open RPC creates and starts a new session orchestrata_ultimate/gateway/handlers/_session_events SessionEventOps L20
orchestrata_ultimate/gateway/handlers/_session_events broadcast_opened L53
orchestrata_ultimate/gateway/handlers/_session_kg SessionKgOps L244
+4 more
none
REQ-016-250 session.close RPC closes the active session with summary orchestrata_ultimate/gateway/handlers/_session_events SessionEventOps L20
orchestrata_ultimate/gateway/handlers/_session_events broadcast_closed L68
orchestrata_ultimate/gateway/handlers/_session_kg SessionKgOps L244
+6 more
none
REQ-016-251 session.events subscription pushes session lifecycle events orchestrata_ultimate/gateway/handlers/session SessionHandler L73
orchestrata_ultimate/gateway/handlers/session handle_events L385
orchestrata_ultimate/session/event_emitting_session_controller EventEmittingSessionController L29
+4 more
none
REQ-016-252 session.facts.subscribe subscription pushes session facts in real-time orchestrata_ultimate/gateway/handlers/session SessionHandler L73
orchestrata_ultimate/gateway/handlers/session handle_facts_subscribe L416
none
REQ-016-253 ProjectsHandler registered with gateway RPC router orchestrata_ultimate/gateway/handlers/projects ProjectsHandler L14 none
REQ-016-254 projects.list RPC returns all projects orchestrata_ultimate/gateway/handlers/projects _execute_cypher L353
orchestrata_ultimate/gateway/handlers/projects handle_list L34
none
REQ-016-255 projects.get RPC returns a single project by ID orchestrata_ultimate/gateway/handlers/projects _execute_cypher L353
orchestrata_ultimate/gateway/handlers/projects handle_get L70
none
REQ-016-256 projects.tasks RPC returns tasks for a project orchestrata_ultimate/gateway/handlers/projects _execute_cypher L353
orchestrata_ultimate/gateway/handlers/projects handle_tasks L114
none
REQ-016-257 projects.taskCreate RPC creates a new task for a project orchestrata_ultimate/gateway/handlers/projects _execute_cypher L353
orchestrata_ultimate/gateway/handlers/projects handle_task_create L190
none
REQ-016-258 WebSocketBridge implements JSON-RPC 2.0 over WebSocket none none
REQ-016-259 Auto-reconnect with exponential backoff on connection loss none none
REQ-016-260 Request queue buffers calls during disconnection for replay on reconnect none none
REQ-016-261 Authentication token sent on connection handshake none none
REQ-016-262 GadgetBridge maps EventBus events to WebSocket RPC calls none none
REQ-016-263 Supports session, CXP, volk, knowledge, and governance event domains none none
REQ-016-264 Bidirectional mapping: outbound events become RPC requests, inbound RPC responses... none none
REQ-016-265 EventBus uses CustomEvent pub/sub with vizint: prefix namespace none none
REQ-016-266 Compatible with standard addEventListener API none none
REQ-016-267 Supports wildcard subscriptions within event domains none none
REQ-016-268 Dynamic ES module loading of gadgets at runtime none none
REQ-016-269 Manifest validation ensures gadget metadata is complete none none
REQ-016-270 basePath configuration for loading gadgets from different directories none none
REQ-016-271 Gadget lifecycle management: mount, unmount, destroy none none
REQ-016-272 Chrome factory provides consistent gadget window decoration (titlebar, controls) none none
REQ-016-273 localStorage persistence for offline/quick-load state none none
REQ-016-274 Gateway sync for cross-device state consistency orchestrata_ultimate/gateway/handlers/state StateHandler L20 none
REQ-016-275 500ms debounce on state writes to prevent thrashing none none
REQ-016-276 Last-write-wins conflict resolution strategy none none
REQ-016-277 Desktop notification support via Notification API orchestrata_ultimate/knowledge_graph/query_engine cache_size L406 none
REQ-016-278 In-app notification queue with priority-based rendering none none
REQ-016-279 Governance, kernel, and session event subscriptions for alert sources orchestrata_ultimate/knowledge_graph/query_engine _cache_get L420 none
REQ-016-280 Light and dark theme support via CSS custom properties orchestrata_ultimate/knowledge_graph/query_engine _cache_put L429 none
REQ-016-281 System preference detection (prefers-color-scheme media query) none none
REQ-016-282 Theme preference persisted in localStorage none none
REQ-016-283 Development layout profile: 5 gadgets (ProjectExplorer, SessionManager, CXPFeed,... none none
REQ-016-284 Monitoring layout profile: 4 gadgets (CXPFeed, VolkStatus, AuditTrail, NotificationCenter) none none
REQ-016-285 command-center.json configuration file with gateway, state_sync, notifications,... none none
REQ-016-286 Playwright E2E tests: page load, header, connection status, theme toggle, layout... none none
REQ-016-287 Vitest unit tests: EventBus, WebSocketBridge, StateSync, NotificationManager,... none none
REQ-016-288 WsTestServer: Custom JSON-RPC mock server for testing none none
REQ-016-289 Flashcards gadget: Arabic/Italian learning with CSV data (50KB) none none
REQ-016-290 Iqama Countdown gadget: prayer time countdown (31KB) none none
REQ-016-291 Time-to-POI gadget: point-of-interest countdown (1135 LOC) none none
REQ-016-292 Chronus Sequencer gadget: timeline sequencer none none
REQ-016-293 Settings gadget: settings panel (1125 LOC) none none
REQ-016-294 Embed gadgets: iframe embedding for external content none none