Four stub extensions now contribute real tabs with views:
- Decisions panel (sidebar, priority -20): lists confirmed D-records
from pql decisions list with ID, title, and domain.
- Tickets panel (sidebar, priority -10): lists tickets with status
dot color-coded by state (done=green, in_progress=blue,
cancelled=red).
- Markdown viewer (context, priority -100): shows raw content of
the active .md file, listens for editor.buffer_activated events.
- Graph view (context, priority -80): lists files with inbound and
outbound link counts from pql search --connections.
All four fetch data via the daemon's pql.exec IPC surface.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
test / unit + widget + golden + a11y (push) Successful in 4m34s
test / integration_test (xvfb) (push) Failing after 1m4s
test / bundle smoke (xvfb 5s) (push) Failing after 58s
test / daemon subprocess + web WASM smoke (push) Successful in 2m27s
CLAUDE.md gains a "Decision discipline" guardrail pointing at
decisions/<domain>.md, rewrites every inline ADR link to the new
anchor-link style (ADR 0001 → D-001, etc.), collapses the bottom
"Open questions" section to a one-line pointer, and updates the
parent-project note to reference decisions/architecture.md instead
of the deleted docs/ADRs/.
Three extension slots are reserved with id-only stubs, registered
alongside the existing 21 built-ins in main.dart:
- builtin.decisions — future sidebar for D/Q/R records
- builtin.tickets — future sidebar + kanban workspace
- builtin.claude-control — future .claude/ first-class surface
(Settings / Skills / Agents / Hooks / MCP). Distinct from the
existing builtin.claude PTY-pane stub.
`flutter analyze` clean; builtin + a11y test suites still pass.
Co-Authored-By: Claude <noreply@anthropic.com>