# Task List: PR-Sized Implementation Chunks
Each PR is independently testable, deployable, and under 400 lines of code.
---
## Phase 1: Infrastructure & Quick Fixes
### PR-01: Accessibility Improvements ✅ COMPLETED
**Est. Lines:** ~80 | **Priority:** High | **Dependencies:** None
- [x] Add `aria-expanded` and `aria-controls` to expert-card.tsx
- [x] Add `aria-label` to expandable buttons
- [x] Add `prefers-reduced-motion` media query to globals.css
- [x] Changed `motion.div` to `motion.article` for semantic HTML
**Files:**
- `web/components/council/expert-card.tsx`
- `web/app/globals.css`
**Test:** ✅ Build passes, ARIA attributes added
---
### PR-02: Tool Data Enhancement ✅ COMPLETED
**Est. Lines:** ~150 | **Priority:** High | **Dependencies:** None
- [x] Add `persona` field to Tool interface
- [x] Add `demoScenario` field to Tool interface
- [x] Add `whenToUse` array field to Tool interface
- [x] Add `worksWellWith` array field to Tool interface
- [x] Populate data for all 11 tools
**Files:**
- `web/components/tools/tools-data.ts`
**Test:** ✅ Build passes, all 11 tools have enhanced data
---
### PR-03: Dynamic Tool Route Setup ✅ COMPLETED
**Est. Lines:** ~120 | **Priority:** High | **Dependencies:** PR-02
- [x] Create `/tools/[slug]/page.tsx` dynamic route
- [x] Create `/tools/[slug]/layout.tsx` with back navigation
- [x] Add `generateStaticParams` for all 11 tools
- [x] Basic placeholder page rendering tool name
**Files:**
- `web/app/(test)/tools/[slug]/page.tsx` (NEW)
- `web/app/(test)/tools/[slug]/layout.tsx` (NEW)
- `web/app/(test)/tools/[slug]/tool-page-content.tsx` (NEW)
**Test:** ✅ Navigate to `/tools/council`, `/tools/trace` etc. - shows placeholder with tool data
---
### PR-04: Fix Bento Card Links ✅ COMPLETED
**Est. Lines:** ~50 | **Priority:** High | **Dependencies:** PR-03
- [x] Wrap tool cards with Next.js Link component
- [x] Route "Learn more" to `/tools/[tool.id]`
- [x] Add hover state indicating clickability (scale + border glow)
- [x] Ensure entire card is clickable
**Files:**
- `web/components/sections/bento-tools.tsx`
**Test:** ✅ Click any tool card → navigates to tool page
---
## Phase 2: Tool Page Template
### PR-05: Tool Page Template Component ✅ COMPLETED
**Est. Lines:** ~250 | **Priority:** High | **Dependencies:** PR-02, PR-03
- [x] Create `ToolPageTemplate` component with sections:
- Hero with persona badge and icon
- Before/After placeholder (with slot for custom content)
- Output preview/demo placeholder (with demoComponent prop)
- "When to use" numbered list
- "Works well with" linked cards + pro tip
- Install CTA with copy button
- [x] Style with existing design tokens
- [x] Add framer-motion staggered entrance animations
- [x] Added Variants type for TypeScript compatibility
**Files:**
- `web/components/tools/tool-page-template.tsx` (NEW)
**Test:** ✅ Build passes, template renders with all sections
---
### PR-06: Integrate Template into Dynamic Route ✅ COMPLETED
**Est. Lines:** ~100 | **Priority:** High | **Dependencies:** PR-05
- [x] Import `ToolPageTemplate` in tool-page-content.tsx
- [x] Fetch tool data by slug (via toolId prop)
- [x] Pass data to template
- [x] Handle 404 for invalid slugs (server-side in page.tsx)
**Files:**
- `web/app/(test)/tools/[slug]/tool-page-content.tsx`
**Test:** ✅ All 11 tool URLs render with standardized template
---
## Phase 3: High-Impact Tool Pages
### PR-07: Council Demo Component ✅ COMPLETED
**Est. Lines:** ~200 | **Priority:** High | **Dependencies:** PR-06
- [x] Created reusable `CouncilDemo` component with new scenario
- [x] Integrated with council tool page via `demoComponent` prop
- [x] Expert cards and synthesis panel render properly
- [x] Business strategist persona scenario: "Should we enter the European market?"
- [x] Added `getDemoComponent()` mapper in tool-page-content.tsx
**Files:**
- `web/components/demos/council-demo.tsx` (NEW)
- `web/app/(test)/tools/[slug]/tool-page-content.tsx` (MODIFIED)
**Test:** ✅ `/tools/council` shows full interactive demo with 4 experts + synthesis
---
### PR-08: Decide Demo Component ✅ COMPLETED
**Est. Lines:** ~300 | **Priority:** High | **Dependencies:** PR-06
- [x] Create weighted criteria table component
- [x] Add option scoring visualization with animated bars
- [x] Show recommendation output with rationale and risk note
- [x] Executive/PM persona scenario: "Which cloud provider?"
- [x] AWS, GCP, Azure comparison with 5 weighted criteria
**Files:**
- `web/components/demos/decide-demo.tsx` (NEW)
**Test:** ✅ `/tools/decide` shows weighted criteria table with scores
---
### PR-09: Trace Demo Component ✅ COMPLETED
**Est. Lines:** ~350 | **Priority:** High | **Dependencies:** PR-06
- [x] Create branching thought visualization
- [x] Show thought numbers and connections
- [x] Visualize revision markers and branch points
- [x] Researcher persona scenario: "Quantum computing implications for cryptography"
- [x] 8 thought steps with 1 revision, 2 branches
**Files:**
- `web/components/demos/trace-demo.tsx` (NEW)
**Test:** ✅ `/tools/trace` shows branching thought chain with revision
---
### PR-10: Map Demo Component ✅ COMPLETED
**Est. Lines:** ~300 | **Priority:** High | **Dependencies:** PR-06
- [x] Create customer journey flowchart visualization
- [x] Show nodes (touchpoints, decisions, outcomes) and edges
- [x] Systems thinker persona scenario: "Customer journey touchpoints"
- [x] Static but styled diagram with SVG arrows
- [x] Legend and insight panel
**Files:**
- `web/components/demos/map-demo.tsx` (NEW)
**Test:** ✅ `/tools/map` shows visual customer journey diagram
---
## Phase 4: Medium-Complexity Tool Pages
### PR-11: Debate Demo Component ✅ COMPLETED
**Est. Lines:** ~250 | **Priority:** Medium | **Dependencies:** PR-06
- [x] Create thesis/antithesis/synthesis structure
- [x] Show argument cards with strengths/weaknesses
- [x] Consultant persona scenario: "Build vs Buy authentication"
- [x] Final verdict with dialectical resolution
**Files:**
- `web/components/demos/debate-demo.tsx` (NEW)
**Test:** ✅ `/tools/debate` shows dialectical structure with 3 arguments
---
### PR-12: Hypothesis Demo Component ✅ COMPLETED
**Est. Lines:** ~250 | **Priority:** Medium | **Dependencies:** PR-06
- [x] Create scientific method walkthrough with timeline
- [x] Show observation → question → hypothesis → experiment → analysis → conclusion
- [x] Scientist persona scenario: A/B testing checkout flow
- [x] Variables, predictions, and results table
**Files:**
- `web/components/demos/hypothesis-demo.tsx` (NEW)
**Test:** ✅ `/tools/hypothesis` shows scientific method steps
---
### PR-13: Reflect Demo Component ✅ COMPLETED
**Est. Lines:** ~200 | **Priority:** Medium | **Dependencies:** PR-06
- [x] Create confidence calibration display with animated bars
- [x] Show knowledge assessment with limitations
- [x] Claim confidence categorization (fact/inference/speculation/uncertain)
- [x] Self-improvement persona scenario: API latency debugging
- [x] Metacognitive summary with recommendation
**Files:**
- `web/components/demos/reflect-demo.tsx` (NEW)
**Test:** ✅ `/tools/reflect` shows confidence visualization
---
## Phase 5: Text-Based Tool Pages
### PR-14: Debug Demo Component ✅ COMPLETED
**Est. Lines:** ~180 | **Priority:** Medium | **Dependencies:** PR-06
- [x] Create step-by-step investigation log
- [x] Show binary search methodology with narrowing scope
- [x] Problem solver persona scenario: Tuesday 500 errors
- [x] Root cause identification and resolution
**Files:**
- `web/components/demos/debug-demo.tsx` (NEW)
**Test:** ✅ `/tools/debug` shows debugging steps
---
### PR-15: Model Demo Component ✅ COMPLETED
**Est. Lines:** ~150 | **Priority:** Low | **Dependencies:** PR-06
- [x] Show mental model application steps (First Principles)
- [x] Display 4-step reasoning process
- [x] Analyst persona scenario: SaaS pricing strategy
- [x] Key insight and actionable conclusion
**Files:**
- `web/components/demos/model-demo.tsx` (NEW)
**Test:** ✅ `/tools/model` shows mental model output
---
### PR-16: Pattern Demo Component ✅ COMPLETED
**Est. Lines:** ~150 | **Priority:** Low | **Dependencies:** PR-06
- [x] Show design pattern structure (Circuit Breaker)
- [x] Display implementation steps with code example
- [x] Benefits and tradeoffs grid
- [x] Architect persona scenario: Payment API failures
**Files:**
- `web/components/demos/pattern-demo.tsx` (NEW)
**Test:** ✅ `/tools/pattern` shows pattern output
---
### PR-17: Paradigm Demo Component ✅ COMPLETED
**Est. Lines:** ~150 | **Priority:** Low | **Dependencies:** PR-06
- [x] Show programming paradigm (Functional Programming)
- [x] Display approach with code example
- [x] Benefits and limitations comparison
- [x] Decision maker persona scenario: Data transformation pipeline
**Files:**
- `web/components/demos/paradigm-demo.tsx` (NEW)
**Test:** ✅ `/tools/paradigm` shows paradigm output
---
## Phase 6: Landing Page Enhancements
### PR-13: Tool Icons (Lucide-based SVGs) ✅ COMPLETED
**Est. Lines:** ~400 | **Priority:** Medium | **Dependencies:** None
- [x] Create `web/public/icons/` directory
- [x] Create 11 SVG icons in Lucide style (24x24, stroke-width="2")
- [x] trace.svg - Brain with flow lines (sequential thinking)
- [x] model.svg - Lightbulb (mental models)
- [x] pattern.svg - Modular grid blocks (design patterns)
- [x] paradigm.svg - Code brackets with lambda (programming paradigms)
- [x] debug.svg - Bug with magnifying glass (debugging)
- [x] council.svg - Multiple people connected (collaborative reasoning)
- [x] decide.svg - Balance scale (decision making)
- [x] reflect.svg - Mirror with reflection (metacognition)
- [x] hypothesis.svg - Flask with bubbles (scientific method)
- [x] debate.svg - Speech bubbles (argumentation)
- [x] map.svg - Connected nodes (visual reasoning)
- [x] Add TOOL_ICONS constant to mcp-tools.ts
- [x] Add TOOL_METADATA with icon paths, names, descriptions
- [x] Fix pre-existing type mismatch in progress/types.ts
**Files:**
- `web/public/icons/*.svg` (11 files NEW)
- `web/lib/mcp-tools.ts` (MODIFIED)
- `web/lib/progress/types.ts` (MODIFIED - fixed type mismatch)
- `web/lib/progress/sender.ts` (MODIFIED - fixed type usage)
**Test:** ✅ Build passes, all 11 icons created
---
### PR-18: Tool Chains Section ✅ COMPLETED
**Est. Lines:** ~350 | **Priority:** High | **Dependencies:** PR-04
- [x] Create interactive workflow diagram component
- [x] Add 4 pattern tabs (Architecture, Debugging, Strategic, Research)
- [x] Each pattern shows tool flow with animated arrows
- [x] Tools are clickable → link to tool page
- [x] Outcome badge showing workflow result
- [x] Integrate into pillar page
**Files:**
- `web/components/sections/tool-chains.tsx` (NEW)
- `web/app/(test)/pillar/page.tsx` (MODIFIED)
**Test:** ✅ Tool chains section renders with 4 patterns, clickable tools
---
---
## Phase 7: Schema Verification (Ground UI in MCP JSON)
Verify each tool demo accurately represents the actual MCP JSON response format.
### V-01: Verify Trace Demo ✅ COMPLETED
**Priority:** High | **Status:** ✅ Complete
- [x] Read actual schema from `/src/tools/traceServer.ts`
- [x] Compare with `trace-demo.tsx` interface
- [x] Add missing required field: `nextThoughtNeeded`
- [x] Ensure data entries match MCP response format
- [x] Verify UI renders all schema fields correctly
**MCP Schema Location:** `/src/tools/traceServer.ts`, `/src/models/interfaces.ts`
**Demo File:** `web/components/demos/trace-demo.tsx`
**Changes Made:**
- Added `nextThoughtNeeded: boolean` to interface (required MCP field)
- Added `nextThoughtNeeded: true` to all thinking steps
- Added `nextThoughtNeeded: false` to final conclusion step
- Kept semantic fields (`isBranch`, `complete`) for UI clarity
- Added documentation comments linking to MCP schema
---
### V-02: Verify Council Demo ✅ COMPLETED
**Priority:** High | **Status:** ✅ Complete
- [x] Read actual schema from `/src/tools/councilServer.ts`
- [x] Compare with `council-demo.tsx` interface
- [x] Document any missing/extra fields (5 critical gaps identified)
- [x] Update demo data to match schema (3 phases of refinement)
- [x] Verify UI renders all schema fields correctly
- [x] External validation with real tool output
- [x] Added LLM Output component showing AI analysis after tool calls
**Gap Analysis:**
- Removed fabricated `contribution.id` field (real tool doesn't generate IDs)
- Updated persona names to real human names (Maya Chen, Thomas Weber, etc.)
- Fixed referenceIds format from short codes (`["ma-1"]`) to real format (`["market-analyst-1"]`)
- Added Company Context section with Bloom & Co. synthetic data (8 quarters)
- Added Response Metadata section (stage, iteration, activePersonaId)
- Added Disagreements Panel to visualize previously hidden data
- Added Input Collapsible showing full JSON sent to tool
- Added LLM Output component with:
- Final recommendation with headline
- Stage evolution table (5 stages)
- Key insights (5)
- Disagreements resolved (2)
- Recommended actions (5)
- Open questions for leadership (3)
- Updated referenceIds display in ExpertCard with CornerDownRight icon
**External Validation:**
- Ran real-world test with Bloom & Co. scenario
- Captured actual tool output across 6 iterations
- Verified all 35 MCP schema fields are represented
- Confirmed all 7 contribution types working
- Confirmed all 6 stages working
**Files Modified:**
- `web/components/council/council-demo-data.ts` - Removed id from interface, fixed referenceIds
- `web/components/demos/council-demo.tsx` - Updated personas, contributions, integrated CouncilOutput
- `web/components/council/expert-card.tsx` - Added referenceIds display
- `web/components/council/input-collapsible.tsx` - Fixed key reference
- `web/components/sections/transformation.tsx` - Fixed key reference
**Files Created:**
- `web/components/council/company-context.tsx` - Synthetic company data
- `web/components/council/response-metadata.tsx` - Stage/iteration display
- `web/components/council/disagreements-panel.tsx` - Visualize disagreements
- `web/components/council/input-collapsible.tsx` - Input JSON display
- `web/components/council/council-output.tsx` - LLM Output display
- `web/components/council/council-output-data.ts` - LLM Output synthetic data
- `docs/tests/council_external_test_toolcall.json` - Real tool output capture
- `docs/tests/council_post_toolcall_llm_output.md` - Real LLM output capture
- `council-test-scenario.json` - Synthetic company data for testing
**MCP Schema Location:** `/src/tools/councilServer.ts`
**Demo File:** `web/components/demos/council-demo.tsx`
---
### V-03: Verify Decide Demo
**Priority:** High | **Status:** ✅ Complete
- [x] Read actual schema from `/src/tools/decideServer.ts`
- [x] Compare with `decide-demo.tsx` interface
- [x] Document any missing/extra fields (10 critical gaps identified)
- [x] Update demo data to match schema (created decide-demo-data.ts)
- [x] Verify UI renders all schema fields correctly
- [x] Outcomes-only approach: replaced fabricated scores with possibleOutcomes visualization
**Gap Analysis:**
- Removed fabricated `scores: Record<string, number>` (not in schema)
- Added 6-stage progression visualization (problem-definition → decision)
- Added stakeholders display with badge pills
- Added constraints display with warning badges
- Added timeHorizon and riskTolerance indicators
- Added possibleOutcomes with probability bars, values, and confidence
- Added decisionId, iteration, and nextStageNeeded displays
- Added option descriptions
- Criteria shown as weight context, not scoring matrix
**MCP Schema Location:** `/src/tools/decideServer.ts`
**Demo File:** `web/components/demos/decide-demo.tsx`
**Data File:** `web/components/demos/decide-demo-data.ts`
---
### V-04: Verify Map Demo
**Priority:** High | **Status:** ✅ Complete
- [x] Read actual schema from `/src/tools/mapServer.ts`
- [x] Compare with `map-demo.tsx` interface
- [x] Document any missing/extra fields
- [x] Update demo data to match schema
- [x] Verify UI renders all schema fields correctly
- [x] Upgraded UI with Flow Focus design (AnimatedBeam, TransitionPanel, Disclosure, BorderBeam)
**MCP Schema Location:** `/src/tools/mapServer.ts`
**Demo File:** `web/components/demos/map-demo.tsx`
---
### V-05: Verify Debate Demo
**Priority:** Medium | **Status:** ✅ Complete
- [x] Read actual schema from `/src/tools/debateServer.ts`
- [x] Compare with `debate-demo.tsx` interface
- [x] Document any missing/extra fields (5 critical gaps identified)
- [x] Update demo data to match schema (created debate-demo-data.ts)
- [x] Verify UI renders all schema fields correctly
- [x] Full Dialectical View upgrade with AnimatedBeam, side-by-side layout, all 5 argument types
**Gap Analysis:**
- Added missing argument types: `objection` (amber), `rebuttal` (emerald)
- Added relationship visualization: respondsTo, supports, contradicts with AnimatedBeam
- Added flow indicators: nextArgumentNeeded, suggestedNextTypes
- Implemented dialectical layout: Thesis vs Antithesis side-by-side
- Added argument ID badges for cross-referencing
**MCP Schema Location:** `/src/tools/debateServer.ts`
**Demo File:** `web/components/demos/debate-demo.tsx`
**Data File:** `web/components/demos/debate-demo-data.ts`
---
### V-06: Verify Hypothesis Demo
**Priority:** Medium | **Status:** ✅ Complete
- [x] Read actual schema from `/src/tools/hypothesisServer.ts`
- [x] Compare with `hypothesis-demo.tsx` interface
- [x] Document any missing/extra fields (20+ gaps identified)
- [x] Update demo data to match schema (complete rewrite)
- [x] Verify UI renders all schema fields correctly
- [x] Playwright browser testing verified all components working
**Gap Analysis:**
- Removed fabricated fields: `content`, `details[]`, fake `results` table structure
- Added all 4 root required fields: stage, inquiryId, iteration, nextStageNeeded
- Added complete HypothesisData object: statement, confidence, status (5 values), domain, assumptions, alternativeTo, refinementOf
- Added all 4 variable types including `confounding` with operationalization
- Added complete ExperimentData object: design, methodology, predictions (if/then/else), controlMeasures, results, outcomeMatched, unexpectedObservations, limitations, nextSteps
- Implemented ParsedResultsTable to parse string results into visual table
- Built 8 new sub-components: ConfidenceIndicator, StatusBadge, VariablesTable, PredictionCard, CollapsibleList, OutcomeIndicator, UnexpectedObservationsAlert, ParsedResultsTable
- Accordion-based layout per user preference
**MCP Schema Location:** `/src/tools/hypothesisServer.ts`
**Demo File:** `web/components/demos/hypothesis-demo.tsx`
---
### V-07: Verify Reflect Demo
**Priority:** Medium | **Status:** ✅ Complete
- [x] Read actual schema from `/src/tools/reflectServer.ts`
- [x] Compare with `reflect-demo.tsx` interface
- [x] Document any missing/extra fields (8 critical gaps identified)
- [x] Update demo data to match schema (created reflect-demo-data.ts)
- [x] Verify UI renders all schema fields correctly
- [x] Added stage progression visualization (6 stages)
- [x] Added Reasoning Steps section with biases/assumptions (NEW)
**Gap Analysis:**
- Fixed structural mismatch: changed from `knowledgeAreas[]` array to single `knowledgeAssessment` object
- Added 6-stage progression visualization (knowledge-assessment → planning → execution → monitoring → evaluation → reflection)
- Added session tracking: monitoringId, iteration, nextAssessmentNeeded
- Added complete Reasoning Steps section with:
- Step descriptions with numbered indicators
- Dual progress bars: Logical Validity + Inference Strength
- Expandable sections for potentialBiases and assumptions
- First step expanded by default, others collapsed
- Enhanced Claims with falsifiabilityCriteria and alternativeInterpretations
- Added suggestedAssessments badges
- Added relevantTrainingCutoff to knowledge assessment
- Integrated AnimatedCircularProgressBar for overall confidence
**MCP Schema Location:** `/src/tools/reflectServer.ts`
**Demo File:** `web/components/demos/reflect-demo.tsx`
**Data File:** `web/components/demos/reflect-demo-data.ts`
---
### V-08: Verify Debug Demo
**Priority:** Medium | **Status:** ⏳ Pending
- [ ] Read actual schema from `/src/tools/debugServer.ts`
- [ ] Compare with `debug-demo.tsx` interface
- [ ] Document any missing/extra fields
- [ ] Update demo data to match schema
- [ ] Verify UI renders all schema fields correctly
**MCP Schema Location:** `/src/tools/debugServer.ts`
**Demo File:** `web/components/demos/debug-demo.tsx`
---
### V-09: Verify Model Demo
**Priority:** Low | **Status:** ✅ Complete
- [x] Read actual schema from `/src/tools/modelServer.ts`
- [x] Compare with `model-demo.tsx` interface
- [x] Document any missing/extra fields (6 gaps identified)
- [x] Update demo data to match schema (complete rewrite)
- [x] Verify UI renders all schema fields correctly
- [x] Playwright browser testing verified all components working
**Gap Analysis:**
- Removed fabricated fields: `steps[].stepNumber`, `steps[].title` (not in schema)
- Fixed type mismatch: changed from `ModelStep[]` objects to `string[]` array
- Added missing MCP response fields: status badge, hasSteps indicator, hasConclusion indicator
- Added modelName enum display with human-readable labels
- Added results parser for MCP JSON extraction
- Updated demo data to use Pareto Principle example matching user prompt
- Built 4 new sub-components: StatusBadge, BooleanIndicator, StepItem, StepsSection
- Collapsible layout for steps and reasoning sections
**MCP Schema Location:** `/src/tools/modelServer.ts`
**Demo File:** `web/components/demos/model-demo.tsx`
---
### V-10: Verify Pattern Demo
**Priority:** Low | **Status:** ✅ Complete
- [x] Read actual schema from `/src/tools/patternServer.ts`
- [x] Compare with `pattern-demo.tsx` interface
- [x] Document any missing/extra fields (6 fabricated fields identified)
- [x] Update demo data to match schema (complete rewrite)
- [x] Verify UI renders all schema fields correctly
- [x] Playwright browser testing verified all components working
**Gap Analysis:**
- Removed fabricated hardcoded Circuit Breaker data (context, implementation[], benefits[], tradeoffs[], codeExample, languages[])
- MCP JSON only returns: patternName, status, hasImplementation (bool), hasCodeExample (bool)
- Added PatternResponse interface matching actual JSON output
- Added PatternInput interface for input echo transparency
- Built metadata display with boolean indicators (Provided/Not provided)
- Added collapsible Input Echo section showing what was sent to tool
- Added pattern display name mapping for all 7 enum values
- Status badge reflects actual `status` field
**MCP Schema Location:** `/src/tools/patternServer.ts`
**Demo File:** `web/components/demos/pattern-demo.tsx`
---
### V-11: Verify Paradigm Demo
**Priority:** Low | **Status:** ⏳ Pending
- [ ] Read actual schema from `/src/tools/paradigmServer.ts`
- [ ] Compare with `paradigm-demo.tsx` interface
- [ ] Document any missing/extra fields
- [ ] Update demo data to match schema
- [ ] Verify UI renders all schema fields correctly
**MCP Schema Location:** `/src/tools/paradigmServer.ts`
**Demo File:** `web/components/demos/paradigm-demo.tsx`
---
## Summary
| Phase | PRs | Est. Total Lines | Status |
|-------|-----|------------------|--------|
| 1: Infrastructure | PR-01 to PR-04 | ~400 | ✅ COMPLETE |
| 2: Template | PR-05 to PR-06 | ~350 | ✅ COMPLETE |
| 3: High-Impact | PR-07 to PR-10 | ~1150 | ✅ COMPLETE |
| 4: Medium | PR-11 to PR-12 | ~500 | ✅ COMPLETE |
| 5: Text-Based | PR-14 to PR-17 | ~630 | ✅ COMPLETE |
| 6: Landing | PR-13, PR-18 | ~750 | ✅ COMPLETE |
| 7: Verification | V-01 to V-11 | ~200 | 🔄 IN PROGRESS |
**Total: 19 PRs + 11 Verifications | ~3,980 lines**
---
## PR Dependency Graph
```
PR-01 (a11y) ─────────────────────────────────┐
│
PR-02 (data) ──┬── PR-03 (route) ── PR-04 ────┼── PR-18 (chains)
│ │
└── PR-05 (template) ──────────┤
│ │
└── PR-06 (integrate) │
│ │
┌──────────────────┼───────────────┘
│ │
┌─────┴─────┬────────────┼────────────┬───────────┐
│ │ │ │ │
PR-07 PR-08 PR-09 PR-10 PR-11-17
(council) (decide) (trace) (map) (remaining)
```
---
## Quick Start
Start with these PRs in order for fastest value delivery:
1. **PR-02** - Tool data (unblocks everything)
2. **PR-03** - Dynamic route (enables navigation)
3. **PR-04** - Fix dead links (immediate UX win)
4. **PR-05** - Template (standardizes pages)
5. **PR-07** - Council demo (showcase existing work)