Merged
Conversation
Captures the agreed design direction: splitting Conversation from ConversationStore, extracting RequestBuilder, TerminalEditor, AgentMessageHandler, and the display components. Each substep ships independently with the CLI working. Includes estimates, risk ratings, and test ROI notes.
Refresh current state to reflect main branch, completed OAuth2/system prompts/query-summary work, and point to the architecture refactor plan. Add plan reference in the architecture section so future sessions find it.
Dangling row was inserted between Stack line and Packages heading; original table row was left unchanged. Replace the whole block cleanly.
CommandMode (step 5d) was in the target design but absent from the step list. Insert it between ToolApprovalWidget and ScreenCoordinator cleanup. ScreenCoordinator becomes 5e. Totals updated.
bananabot9000
approved these changes
Apr 6, 2026
Collaborator
bananabot9000
left a comment
There was a problem hiding this comment.
Architecture refactor plan — solid decomposition. 🍌
What's good:
- 13 substeps ordered by dependency, each independently shippable
- Core invariant ("CLI+SDK works at every commit, rollback = one step") aligns with micro-session model
- Target class design is clean — single responsibility throughout
- Risk ratings are calibrated (3b editor key handling and 5c ToolApprovalWidget correctly flagged high)
- Test ROI prioritisation on logic-heavy extractions (1a, 2, 3b, 4b)
Fixed in latest push:
- Stray table row for
packages/claude-sdk/(was outside the packages table) - CommandMode extraction step added (5d)
- vitest prerequisite removed
Minor notes:
PermissionPolicymentioned in target design but extraction folded into 4b implicitly — fine as long as it's trackedRefStorenot explicitly placed in target SDK design — presumably stays in AgentLoop or gets its own home during implementation- Estimate units are relative (dimensionless) — perfect for avoiding Claude's "half a day = 5 minutes" problem
Clean plan. Ready to execute step by step. 🍌
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adds
.claude/plans/architecture-refactor.md— the agreed design direction and ordered steps for refactoring the SDK and CLI.This is documentation only, no code changes. The plan captures: