refactor(v2): remove dead migration scaffolding

Delete the obsolete pre-MVP roadmap and task references now that Git preserves that development history, while retaining current V2 operational and architecture guidance.

Remove behavior-neutral server and UI plumbing that has no remaining caller: unused workspace options and cached endpoint state, redundant auto-accept metadata, an unused PTY get adapter, and a one-use message-loading helper. Keep lifecycle proof, restore gates, timeline projection, and targeted invalidation because they still enforce runtime behavior.

Validated with server and UI typechecks, the full server suite (308 passed, 3 skipped), focused UI matrices, browser-conditioned UI tests, production server/UI build, diff checks, caller searches, and an independent regression review.
This commit is contained in:
Pascal André 2026-08-18 23:21:43 +02:00
parent a820f80be3
commit 775c6c6ca1
No known key found for this signature in database
23 changed files with 38 additions and 786 deletions

View file

@ -57,41 +57,6 @@ Executive summary of the entire project - **start here!**
**Read this to understand:** Current implementation boundaries
### [build-roadmap.md](build-roadmap.md)
**Development plan**
- 8 phases of development
- Task dependencies
- Timeline estimates
- Success criteria
- Risk mitigation
**Read this to understand:** The development journey from start to finish
---
## Task Documents
### [tasks/README.md](../tasks/README.md)
**Task management guide**
- Task workflow
- Naming conventions
- How to work on tasks
- Progress tracking
### Task Files (in tasks/todo/)
- **001-project-setup.md** - Electron + SolidJS boilerplate
- **002-empty-state-ui.md** - Initial UI with folder selection
- **003-process-manager.md** - OpenCode server spawning
- **004-sdk-integration.md** - API client integration
- **005-session-picker-modal.md** - Session selection UI
More tasks will be added as we progress through phases.
---
## Reading Order
@ -101,15 +66,11 @@ More tasks will be added as we progress through phases.
1. [SUMMARY.md](SUMMARY.md) - Get the big picture
2. [architecture.md](architecture.md) - Understand the structure
3. [user-interface.md](user-interface.md) - See what you're building
4. [build-roadmap.md](build-roadmap.md) - Understand the plan
5. [tasks/README.md](../tasks/README.md) - Learn the workflow
### For Implementers:
1. [tasks/README.md](../tasks/README.md) - Understand task workflow
2. [technical-implementation.md](technical-implementation.md) - Implementation patterns
3. [tasks/todo/001-\*.md](../tasks/todo/) - Start with first task
4. Refer to architecture.md and user-interface.md as needed
1. [technical-implementation.md](technical-implementation.md) - Implementation patterns
2. Refer to architecture.md and user-interface.md as needed
### For Designers:
@ -117,12 +78,6 @@ More tasks will be added as we progress through phases.
2. [architecture.md](architecture.md) - Component structure
3. [SUMMARY.md](SUMMARY.md) - Feature overview
### For Project Managers:
1. [SUMMARY.md](SUMMARY.md) - Executive overview
2. [build-roadmap.md](build-roadmap.md) - Timeline and phases
3. [tasks/README.md](../tasks/README.md) - Task tracking
---
## Quick Reference
@ -130,10 +85,7 @@ More tasks will be added as we progress through phases.
### Common Questions
**Q: Where do I start?**
A: Read [SUMMARY.md](SUMMARY.md), then start [Task 001](../tasks/todo/001-project-setup.md)
**Q: How long will this take?**
A: See [build-roadmap.md](build-roadmap.md) - MVP in 3-7 weeks depending on commitment
A: Read [SUMMARY.md](SUMMARY.md), then [architecture.md](architecture.md) and [technical-implementation.md](technical-implementation.md).
**Q: What does the UI look like?**
A: See [user-interface.md](user-interface.md) for complete specifications
@ -143,38 +95,3 @@ A: See [architecture.md](architecture.md) for system design
**Q: How do I build feature X?**
A: See [technical-implementation.md](technical-implementation.md) for patterns
**Q: What's the development plan?**
A: See [build-roadmap.md](build-roadmap.md) for phases
---
## Document Status
| Document | Status | Last Updated |
| --------------------------- | ----------- | ------------ |
| README.md | ✅ Complete | 2024-10-22 |
| SUMMARY.md | ✅ Complete | 2024-10-22 |
| architecture.md | ✅ Complete | 2024-10-22 |
| user-interface.md | ✅ Complete | 2024-10-22 |
| technical-implementation.md | ✅ Complete | 2024-10-22 |
| build-roadmap.md | ✅ Complete | 2024-10-22 |
| tasks/README.md | ✅ Complete | 2024-10-22 |
| Task 001-005 | ✅ Complete | 2024-10-22 |
**Project phase:** Post-MVP (Phases 1-3 complete; Phase 4 work underway).
---
## Contributing to Documentation
When updating documentation:
1. Update the relevant file
2. Update "Last Updated" in this index
3. Update SUMMARY.md if adding major changes
4. Keep consistent formatting and style
---
_This index will be updated as more documentation is added._

View file

@ -2,11 +2,11 @@
## Current Status
We have completed the MVP milestones (Phases 1-3) and are now operating in post-MVP mode. Future work prioritizes multi-instance support, advanced input polish, and system integrations outlined in later phases.
The MVP and multi-instance milestones are complete. Current architecture and implementation details live in the documents indexed below.
## What We've Created
A comprehensive specification and task breakdown for building the CodeNomad desktop application.
Development documentation for the CodeNomad desktop application.
## Directory Structure
@ -16,7 +16,6 @@ packages/ui/ SolidJS UI and native Promise clients
packages/electron-app Electron host
packages/tauri-app/ Tauri host
dev-docs/ Development documentation
tasks/ Task tracking
```
## Documentation Overview
@ -85,70 +84,6 @@ tasks/ Task tracking
- Message rendering implementation
- Build and packaging config
### 4. Build Roadmap (build-roadmap.md)
**What it covers:**
- 8 development phases
- Task dependencies
- Timeline estimates
- Success criteria per phase
- Risk mitigation
- Release strategy
**Phases:**
1. **Foundation** (Week 1) - Project setup, process management
2. **Core Chat** (Week 2) - Message display, SSE streaming
3. **Essential Features** (Week 3) - Markdown, agents, errors
4. **Multi-Instance** (Week 4) - Multiple projects support
5. **Advanced Input** (Week 5) - Commands, file attachments
6. **Polish** (Week 6) - UX refinements, settings
7. **System Integration** (Week 7) - Native features
8. **Advanced** (Week 8+) - Performance, plugins
## Task Breakdown
### Current Tasks (Phase 1)
**001 - Project Setup** (2-3 hours)
- Set up Electron + SolidJS + Vite
- Configure TypeScript, TailwindCSS
- Create basic project structure
- Verify build pipeline works
**002 - Empty State UI** (2-3 hours)
- Create empty state component
- Implement folder selection dialog
- Add keyboard shortcuts
- Style and test responsiveness
**003 - Shared Service Manager** (4-5 hours)
- Discover or launch one OpenCode service through CodeNomad's lease-locked process-proof lifecycle
- Validate workspace locations/directories
- Transfer proof to a live peer or stop only the exact proven daemon on final shutdown
- Handle errors and timeouts
- Auto-cleanup on app quit
**004 - Native Client Integration** (3-4 hours)
- Create native clients through the CodeNomad proxy
- Fetch sessions, agents, models
- Implement session CRUD operations
- Add error handling and retries
**005 - Session Picker Modal** (3-4 hours)
- Build modal with session list
- Agent selector for new sessions
- Keyboard navigation
- Loading and error states
**Total Phase 1 time: ~15-20 hours (2-3 weeks part-time)**
## Key Design Decisions
### 1. Two-Level Tabs
@ -194,15 +129,6 @@ tasks/ Task tracking
## Implementation Guidelines
### For Each Task:
1. Read task file completely
2. Review related documentation
3. Follow steps in order
4. Check off acceptance criteria
5. Test thoroughly
6. Move to done/ when complete
### Code Standards:
- TypeScript for everything
@ -220,73 +146,14 @@ tasks/ Task tracking
- Test edge cases (long text, special chars)
- Keyboard navigation verification
## Next Steps
### To Start Building:
1. **Read all documentation**
- Understand architecture
- Review UI specifications
- Study technical approach
2. **Start with Task 001**
- Set up project structure
- Install dependencies
- Verify build works
3. **Follow sequential order**
- Each task builds on previous
- Don't skip ahead
- Dependencies matter
4. **Track progress**
- Update task checkboxes
- Move completed tasks to done/
- Update roadmap as you go
### When You Hit Issues:
1. Review task prerequisites
2. Check documentation for clarification
3. Look at related specs
4. Ask questions on unclear requirements
5. Document blockers and solutions
## Success Metrics
### MVP (After Task 015)
- Can select folder → spawn server → chat
- Messages stream in real-time
- Can switch agents and models
- Tool executions visible
- Basic error handling works
- **Performance is NOT a concern** - focus on functionality
### Beta (After Task 030)
- Multi-instance support
- Advanced input (files, commands)
- Polished UX
- Settings and preferences
- Native menus
### v1.0 (After Task 035)
- System tray integration
- Auto-updates
- Crash reporting
- Production-ready stability
## Useful References
### Within This Project:
- `README.md` - Project overview and getting started
- `docs/architecture.md` - System design
- `docs/user-interface.md` - UI specifications
- `docs/technical-implementation.md` - Implementation details
- `tasks/README.md` - Task workflow guide
- `dev-docs/architecture.md` - System design
- `dev-docs/user-interface.md` - UI specifications
- `dev-docs/technical-implementation.md` - Implementation details
### External:
@ -307,33 +174,3 @@ tasks/ Task tracking
- PTYs: location-scoped native entries in Status, refreshed on PTY events/reconnect with metadata, title updates, and ownership-checked removal; current installed declarations have no output/read/stream or separate stop API, so output and distinct stop are unavailable and removal stops a running PTY
- Legacy plugin/background processes: `packages/opencode-plugin` and server plugin/background-process paths remain deleted
- Git mutations and Yolo: CodeNomad-owned
## Estimated Timeline
**Conservative estimate (part-time, ~15 hours/week):**
- Phase 1 (MVP Foundation): 2-3 weeks
- Phase 2 (Core Chat): 2 weeks
- Phase 3 (Essential): 2 weeks
- **MVP Complete: 6-7 weeks**
**Aggressive estimate (full-time, ~40 hours/week):**
- Phase 1: 1 week
- Phase 2: 1 week
- Phase 3: 1 week
- **MVP Complete: 3 weeks**
Add 2-4 weeks for testing, bug fixes, and polish before alpha release.
## This is a Living Document
As you build:
- Update estimates based on actual time
- Add new tasks as needed
- Refine specifications
- Document learnings
- Track blockers and solutions
Good luck! 🚀

View file

@ -1,391 +0,0 @@
# CodeNomad Build Roadmap
## Overview
This document outlines the phased approach to building the CodeNomad desktop application. Each phase builds incrementally on the previous, with clear deliverables and milestones.
**Status:** MVP (Phases 1-3) is complete. Focus now shifts to post-MVP phases starting with multi-instance support and advanced input refinements.
## MVP Scope (Phases 1-3)
The minimum viable product includes:
- Single instance management
- Session selection and creation
- Message display (streaming)
- Basic prompt input (text only)
- Agent/model selection
- Process lifecycle management
**Target: 3-4 weeks for MVP**
---
## Phase 1: Foundation (Week 1)
**Goal:** Running desktop app connected to one shared OpenCode service
### Tasks
1. ✅ **001-project-setup** - Electron + SolidJS + Vite boilerplate
2. ✅ **002-empty-state-ui** - Empty state UI with folder selection
3. ✅ **003-process-manager** - Discover/start and manage the shared OpenCode service
4. ✅ **004-sdk-integration** - Connect through the native OpenCode client
5. ✅ **005-session-picker-modal** - Select/create session modal
### Deliverables
- App launches successfully
- Can select folder
- Shared service starts or reconnects automatically
- Session picker appears
- Can create/select session
### Success Criteria
- User can launch app → select folder → see session picker
- Workspace location is ready on the shared service
- Sessions fetch from API successfully
---
## Phase 2: Core Chat Interface (Week 2)
**Goal:** Display messages and send basic prompts
### Tasks
6. **006-instance-session-tabs** - Two-level tab navigation
7. **007-message-display** - Render user and assistant messages
8. **008-sse-integration** - Real-time message streaming
9. **009-prompt-input-basic** - Text input with send functionality
10. **010-tool-call-rendering** - Display tool executions inline
### Deliverables
- Tab navigation works
- Messages display correctly
- Real-time updates via SSE
- Can send text messages
- Tool calls show status
### Success Criteria
- User can type message → see response stream in real-time
- Tool executions visible and expandable
- Multiple sessions can be open simultaneously
---
## Phase 3: Essential Features (Week 3)
**Goal:** Feature parity with basic TUI functionality
### Tasks
11. **011-agent-model-selectors** - Dropdown for agent/model switching
12. **012-markdown-rendering** - Proper markdown with code highlighting
13. **013-logs-tab** - View server logs
14. **014-error-handling** - Comprehensive error states and recovery
15. **015-keyboard-shortcuts** - Essential keyboard navigation
### Deliverables
- Can switch agents and models
- Markdown renders beautifully
- Code blocks have syntax highlighting
- Server logs accessible
- Errors handled gracefully
- Cmd/Ctrl+N, K, L shortcuts work
### Success Criteria
- User experience matches TUI quality
- All error cases handled
- Keyboard-first navigation option available
---
## Phase 4: Multi-Instance Support (Week 4)
**Goal:** Work on multiple projects simultaneously
### Tasks
16. **016-instance-tabs** - Instance-level tab management
17. **017-instance-state-persistence** - Remember instances across restarts
18. **018-child-session-handling** - Auto-create tabs for child sessions
19. **019-instance-lifecycle** - Stop, restart, reconnect instances
20. **020-multiple-sdk-clients** - Location-scoped clients over one shared service
### Deliverables
- Multiple instance tabs
- Persists across app restarts
- Child sessions appear as new tabs
- Can stop individual instances
- All instances work independently
### Success Criteria
- User can work on 3+ projects simultaneously
- App remembers state on restart
- No interference between instances
---
## Phase 5: Advanced Input (Week 5)
**Goal:** Full input capabilities matching TUI
### Tasks
21. **021-slash-commands** - Command palette with autocomplete
22. **022-file-attachments** - @ mention file picker
23. **023-drag-drop-files** - Drag files onto input
24. **024-attachment-chips** - Display and manage attachments
25. **025-input-history** - Up/down arrow message history
### Deliverables
- `/command` autocomplete works
- `@file` picker searches files
- Drag & drop attaches files
- Attachment chips removable
- Previous messages accessible
### Success Criteria
- Input feature parity with TUI
- File context easy to add
- Command discovery intuitive
---
## Phase 6: Polish & UX (Week 6)
**Goal:** Production-ready user experience
### Tasks
26. **026-message-actions** - Copy, edit, regenerate messages
27. **027-search-in-session** - Find text in conversation
28. **028-session-management** - Rename, share, export sessions
29. **029-settings-ui** - Preferences and configuration
30. **030-native-menus** - Platform-native menu bar
### Deliverables
- Message context menus
- Search within conversation
- Session CRUD operations
- Settings dialog
- Native File/Edit/View menus
### Success Criteria
- Feels polished and professional
- All common actions accessible
- Settings discoverable
---
## Phase 7: System Integration (Week 7)
**Goal:** Native desktop app features
### Tasks
31. **031-system-tray** - Background running with tray icon
32. **032-notifications** - Desktop notifications for events
33. **033-auto-updater** - In-app update mechanism
34. **034-crash-reporting** - Error reporting and recovery
35. **035-performance-profiling** - Optimize rendering and memory
### Deliverables
- Runs in background
- Notifications for session activity
- Auto-updates on launch
- Crash logs captured
- Smooth performance with large sessions
### Success Criteria
- App feels native to platform
- Updates seamlessly
- Crashes don't lose data
---
## Phase 8: Advanced Features (Week 8+)
**Goal:** Beyond MVP, power user features
### Tasks
36. **036-virtual-scrolling** - Handle 1000+ message sessions
37. **037-message-search-advanced** - Full-text search across sessions
38. **038-workspace-management** - Save/load workspace configurations
39. **039-theme-customization** - Custom themes and UI tweaks
40. **040-native-capabilities** - Integrate additional native OpenCode capabilities
### Deliverables
- Virtual scrolling for performance
- Cross-session search
- Workspace persistence
- Theme editor
- Native capability integration
### Success Criteria
- Handles massive sessions (5000+ messages)
- Can search entire project history
- Fully customizable
---
## Parallel Tracks
Some tasks can be worked on independently:
### Design Track
- Visual design refinements
- Icon creation
- Brand assets
- Marketing materials
### Documentation Track
- User guide
- Keyboard shortcuts reference
- Troubleshooting docs
- Video tutorials
### Infrastructure Track
- CI/CD pipeline
- Automated testing
- Release automation
- Analytics integration
---
## Release Strategy
### Alpha (After Phase 3)
- Internal testing only
- Frequent bugs expected
- Rapid iteration
### Beta (After Phase 6)
- Public beta program
- Feature complete
- Bug fixes and polish
### v1.0 (After Phase 7)
- Public release
- Stable and reliable
- Production-ready
### v1.x (Phase 8+)
- Regular feature updates
- Community-driven priorities
- Plugin ecosystem
---
## Success Metrics
### MVP Success
- 10 internal users daily
- Can complete full coding session
- <5 critical bugs
### Beta Success
- 100+ external users
- NPS >50
- <10 bugs per week
### v1.0 Success
- 1000+ users
- <1% crash rate
- Feature requests > bug reports
---
## Risk Mitigation
### Technical Risks
- **Process management complexity**
- Mitigation: Extensive testing, graceful degradation
- **SSE connection stability**
- Mitigation: Robust reconnection logic, offline mode
- **Performance with large sessions**
- Mitigation: NOT a concern for MVP - defer to Phase 8
- Accept slower performance initially, optimize later based on user feedback
### Product Risks
- **Feature creep**
- Mitigation: Strict MVP scope, user feedback prioritization
- **Over-optimization too early**
- Mitigation: Focus on functionality first, optimize in Phase 8
- Avoid premature performance optimization
- **Platform inconsistencies**
- Mitigation: Test on all platforms regularly
---
## Dependencies
### External
- OpenCode CLI availability
- `@opencode-ai/client` contract stability
- Electron framework updates
### Internal
- Design assets
- Documentation
- Testing resources
---
## Milestone Checklist
### Pre-Alpha
- [ ] All Phase 1 tasks complete
- [ ] Can create instance and session
- [ ] Internal demo successful
### Alpha
- [ ] All Phase 2-3 tasks complete
- [ ] MVP feature complete
- [ ] 5+ internal users testing
### Beta
- [ ] All Phase 4-6 tasks complete
- [ ] Multi-instance stable
- [ ] 50+ external testers
### v1.0
- [ ] All Phase 7 tasks complete
- [ ] Documentation complete
- [ ] <5 known bugs
- [ ] Ready for public release