diff --git a/docs/superpowers/plans/2026-05-08-canonical-chat-smoke-fixes-a-b.md b/docs/superpowers/plans/2026-05-08-canonical-chat-smoke-fixes-a-b.md
new file mode 100644
index 000000000..b365b76ec
--- /dev/null
+++ b/docs/superpowers/plans/2026-05-08-canonical-chat-smoke-fixes-a-b.md
@@ -0,0 +1,530 @@
+# Canonical `examples/chat` Demo — Smoke fixes A+B — Implementation Plan
+
+> **For agentic workers:** REQUIRED SUB-SKILL: Use superpowers:subagent-driven-development (recommended) or superpowers:executing-plans to implement this plan task-by-task. Steps use checkbox (`- [ ]`) syntax for tracking.
+
+**Goal:** Land Findings A (palette dropdowns ignore signal value on initial render) and B (reasoning blocks have empty summary) as a single quick-fix PR.
+
+**Architecture:** Three independent edits — palette template `[selected]` bindings (Angular), python graph `reasoning.summary='auto'` kwarg (Python), adapter `extractReasoning` extension to read summary items (libs/langgraph). Each is small and testable in isolation.
+
+**Tech Stack:** Angular 21 (standalone, signals, OnPush), Python 3.12 (uv, langgraph, langchain-openai), TypeScript (libs/langgraph + vitest spec).
+
+**Spec:** `docs/superpowers/specs/2026-05-08-canonical-chat-smoke-fixes-a-b-design.md`
+
+**Branch:** `claude/examples-chat-smoke-fixes-a-b`, branched from `origin/main`.
+
+**Hard constraint:** Never reference hashbrown / copilotkit / chatgpt / chatbot-kit / claude in code, comments, commits, PR bodies, or docs.
+
+---
+
+## File Structure
+
+```
+examples/chat/
+├── angular/src/app/shell/control-palette.component.html # +2 [selected] bindings
+└── python/src/graph.py # +1 kwargs key
+
+libs/langgraph/src/lib/internals/
+├── stream-manager.bridge.ts # extend extractReasoning
+└── stream-manager.bridge.spec.ts # +1 unit test (TDD)
+```
+
+Total ≈ 25 LOC. ~4 commits.
+
+---
+
+## Phase 0 — Branch creation
+
+### Task 0.1: Create implementation branch
+
+- [ ] **Step 1: Branch from origin/main**
+
+```bash
+cd /Users/blove/repos/angular-agent-framework
+git fetch origin main
+git checkout -b claude/examples-chat-smoke-fixes-a-b origin/main
+```
+
+- [ ] **Step 2: Verify**
+
+```bash
+git rev-parse --abbrev-ref HEAD
+```
+
+Expected: `claude/examples-chat-smoke-fixes-a-b`.
+
+```bash
+git log --oneline -1
+```
+
+Expected: a commit on `origin/main`.
+
+---
+
+## Phase 1 — Finding A: palette dropdown initial value
+
+### Task 1.1: Add `[selected]` bindings to palette dropdowns
+
+**Files:**
+- Modify: `examples/chat/angular/src/app/shell/control-palette.component.html`
+
+- [ ] **Step 1: Locate the Model dropdown**
+
+Open `examples/chat/angular/src/app/shell/control-palette.component.html`. Find the Model select:
+
+```html
+
+```
+
+Replace the `