Skip to content

v0.8.0 - CoreRoom Console Data Plane Tracker #238

@spytensor

Description

@spytensor

v0.8.0 - CoreRoom Console Data Plane Tracker

Goal

Build the data plane and host protocol required for the future full-screen CoreRoom Console.

v0.8 does not implement the live K9s-style full-screen TUI. It makes that UI possible by defining the trusted snapshot, visibility, projection, selector, health, layout, and dogfood evidence foundations.

Product Rule

The public session must remain clear:

User <-> @host

Specialist roles are normally host-managed background workers. Their internal delegation and findings should appear as side-rail activity, logs, evidence, or Xray details, not as noisy public chat.

A specialist role enters the public transcript only when:

  • the user explicitly addresses that role; or
  • @host surfaces a critical veto, risk, confirmation, or final evidence summary.

Commands remain automation/debug/recovery surface. The happy path is still user intent -> @host -> WorkOrder/GitHub/gate/evidence/tracker.

Design Boundary

v0.8 builds these foundations:

  • Console control surface constitution.
  • Public transcript vs internal delegation visibility model.
  • CoreRoomSnapshot schema.
  • Observation/citation/freshness model.
  • CREP -> ConsoleState reducer.
  • Role lane/runtime snapshot.
  • Work/gate/evidence/source projections.
  • Actionable health selectors.
  • Responsive layout model.
  • Snapshot-driven generated console mock.
  • End-to-end dogfood validation.

v0.9 is tracked in #239 and remains future backlog until this tracker is complete.

Phase 0 - Constitution and Worker Protocol

Phase 1 - Snapshot and Trust Foundations

Phase 2 - Reducers and Runtime Projection

Phase 3 - Layout and Visual Fixture

Phase 4 - Dogfood Closure

v0.9 Explicit Backlog

v0.9 is tracked in #239. Do not pick up v0.9 issues while this tracker is active unless the user explicitly re-scopes one into v0.8.

Milestone Acceptance Criteria

  • M-AC-1: The console is documented as a host-led projection, not a second control authority or agent runtime.
  • M-AC-2: Public transcript, internal delegation, side-rail summary, and debug/log visibility are defined and tested.
  • M-AC-3: CoreRoomSnapshot exists and preserves project, runtime, roles, work, gates, evidence, sources, GitHub, alerts, and layout hints.
  • M-AC-4: Every console health signal has source/citation/freshness metadata or explicitly reports unknown freshness.
  • M-AC-5: CREP replay can build a deterministic console conversation viewport without relying on println rendering.
  • M-AC-6: Role lanes show useful work state without turning specialist roles into noisy public chat participants.
  • M-AC-7: Work/gate/evidence/source projections preserve the facts needed for host decisions and tracker closure.
  • M-AC-8: Overview health only includes action-relevant signals that can change @host next action.
  • M-AC-9: The generated console mock is driven by a CoreRoomSnapshot fixture where practical and does not claim v0.9 UI is implemented.
  • M-AC-10: Dogfood proves request -> @host classification -> snapshot -> rendered mock/status -> evidence -> tracker closure.

Evidence Ledger

Issue PR Status Evidence Tracker Updated
#240 #270 merged PR #270 merged as e28d2b4; CI passed: rustfmt, shellcheck, clippy, macOS tests, Ubuntu tests; local validation: git diff --check; changed files: docs/proposed-amendments.md, docs/threat-model.md, docs/v0.4-calm-cli-ui.md; risk: low docs-only. yes
#241 #269 merged PR #269 merged as d3af5ea; CI passed: rustfmt, shellcheck, clippy, macOS tests, Ubuntu tests; local validation: git diff --check; changed files: AGENTS.md, .github/PULL_REQUEST_TEMPLATE.md, .github/ISSUE_TEMPLATE/config.yml; risk: low docs/template-only. yes
#242 #271 merged PR #271 merged as ac57ab5; CI passed: rustfmt, shellcheck, clippy, macOS tests, Ubuntu tests; local validation: cargo fmt --all -- --check, cargo test --test console_snapshot_test --quiet, cargo clippy --all-targets --all-features -- -D warnings, cargo test --all-features --locked --quiet; changed files: src/console_snapshot.rs, src/lib.rs, tests/console_snapshot_test.rs, tests/fixtures/console_snapshot_v08.toml; risk: low additive schema/fixture only. yes
#243 #272 merged PR #272 merged as 844857b; CI passed: rustfmt, shellcheck, clippy, macOS tests, Ubuntu tests; local validation: cargo fmt --all -- --check, cargo test --test observation_test --quiet, cargo test --test console_snapshot_test --quiet, cargo clippy --all-targets --all-features -- -D warnings, cargo test --all-features --locked --quiet; changed files: src/observation.rs, src/console_snapshot.rs, src/lib.rs, observation and snapshot fixtures/tests; risk: low/medium because health signals now require explicit observations. yes
#244 #273 merged PR #273 merged as 87adfdf; CI passed: rustfmt, shellcheck, clippy, macOS tests, Ubuntu tests; local validation: cargo fmt --all -- --check, cargo test --test conversation_visibility_test --quiet, cargo test --test console_snapshot_test --quiet, cargo clippy --all-targets --all-features -- -D warnings, cargo test --all-features --locked --quiet; changed files: src/conversation_visibility.rs, src/console_snapshot.rs, src/lib.rs, visibility and snapshot fixtures/tests; risk: low additive visibility rules/fixtures only. yes
#245 #274 merged PR #274 merged as 075196c; CI passed: rustfmt, shellcheck, clippy, macOS tests, Ubuntu tests; local validation: cargo fmt --all -- --check, cargo test --test console_state_test --quiet, cargo test --test conversation_visibility_test --quiet, cargo clippy --all-targets --all-features -- -D warnings, cargo test --all-features --locked --quiet; changed files: src/console_state.rs, src/lib.rs, CREP fixture/reducer tests; risk: medium additive reducer boundary not wired into live renderer. yes
#246 #275 merged PR #275 merged as 607ab46; CI passed: rustfmt, shellcheck, clippy, macOS tests, Ubuntu tests; local validation: cargo fmt --all -- --check, cargo test --test role_lane_snapshot_test --quiet, cargo test --test console_snapshot_test --quiet, cargo clippy --all-targets --all-features -- -D warnings, cargo test --all-features --locked --quiet; changed files: src/console_snapshot.rs, src/console_state.rs, role lane fixture/test; risk: low/medium richer snapshot schema not live-rendered yet. yes
#247 #276 merged PR #276 merged as 8d98438; CI passed: rustfmt, shellcheck, clippy, macOS tests, Ubuntu tests; local validation: cargo fmt --all -- --check, cargo test --test console_projection_test --quiet, cargo test --test console_snapshot_test --quiet, cargo clippy --all-targets --all-features -- -D warnings, cargo test --all-features --locked --quiet; changed files: src/console_projection.rs, src/lib.rs, projection fixture/tests; risk: low/medium additive projection layer only. yes
#248 #277 merged PR #277 merged as 1b59c8c; CI passed: rustfmt, shellcheck, clippy, macOS tests, Ubuntu tests; local validation: cargo fmt --all -- --check, cargo test --test console_health_test --quiet, cargo clippy --all-targets --all-features -- -D warnings, cargo test --all-features --locked --quiet; changed files: src/console_health.rs, src/lib.rs, tests/console_health_test.rs, tests/fixtures/console_health_selectors.toml; risk: low additive selector/health layer. yes
#249 #278 merged PR #278 merged as a3434f7; CI passed: rustfmt, shellcheck, clippy, macOS tests, Ubuntu tests; local validation: cargo fmt --all -- --check, cargo test --test console_layout_test --quiet, cargo clippy --all-targets --all-features -- -D warnings, cargo test --all-features --locked --quiet; changed files: src/console_layout.rs, src/lib.rs, tests/console_layout_test.rs, tests/fixtures/console_layout_widths.toml; risk: low/medium additive layout ViewModel only. yes
#250 #279 merged PR #279 merged as 998ec69; CI passed: rustfmt, shellcheck, clippy, macOS tests, Ubuntu tests; local validation: make readme-images, git diff --check, cargo fmt --all -- --check, cargo clippy --all-targets --all-features -- -D warnings, cargo test --all-features --locked --quiet; visual inspection passed for generated 4800x2700 console preview; changed files: README.md, scripts/render-readme-images.py, docs/images/control-room-console.png; risk: low/medium README asset/generator only. yes
#251 #280 merged PR #280 merged as 8321d13; CI passed: rustfmt, shellcheck, clippy, macOS tests, Ubuntu tests; local validation: cargo fmt --all -- --check, cargo test --test v08_console_dogfood --quiet, cargo clippy --all-targets --all-features -- -D warnings, cargo test --all-features --locked --quiet, make readme-images, git diff --check; changed files: docs/v0.8-console-dogfood.md, tests/v08_console_dogfood.rs, dogfood fixtures; risk: low/medium docs/fixtures/tests only. yes

AI Handoff Protocol

  1. Only work on issues labelled both status:ready and codex-ready.
  2. Never pick up constitution or human-only issues unless the user explicitly directs that work in the current conversation.
  3. One branch per issue: feat/v0.8-<issue-number>-<short-slug>.
  4. Implement strictly against the issue Acceptance Criteria.
  5. Do not work on v0.9 issues while v0.8.0 - CoreRoom Console Data Plane Tracker #238 is active unless the user explicitly re-scopes them.
  6. PR body must include:
    • checked Acceptance Criteria;
    • Closes #<issue>;
    • changed files;
    • validation commands and outputs;
    • snapshot/fixture evidence for console/view-model work;
    • Evidence Packet or inline evidence summary;
    • tracker update section;
    • risks, rollback, and unverified items.
  7. A PR is incomplete unless it updates this tracker:
    • tick the relevant issue checkbox;
    • update satisfied M-AC checkboxes;
    • update the Evidence Ledger row.
  8. If implementation is complete but tracker is stale, report implementation complete, tracker incomplete; do not claim done.
  9. If a blocker or ambiguity appears, comment on the issue and stop. Do not guess.

Out Of Scope For v0.8

  • Full-screen ratatui console.
  • Keyboard navigation, filters, search, mouse, modal workflows.
  • Making the console the default cr start behavior.
  • Any console mutation that bypasses @host and user confirmation.
  • Multi-project hosted dashboard.
  • Silent source refresh.
  • Fake progress metrics or completion inferred from model prose.

Metadata

Metadata

Assignees

No one assigned

    Labels

    area:consoleConsole snapshot, control surface, and dashboard data planearea:snapshotStructured snapshot, view models, selectors, and health signalsepicTracking issue that links related workpriority:highTruth-in-advertising or locked-spec gap

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions