mirror of
https://github.com/johndoe6345789/metabuilder.git
synced 2026-04-25 22:34:56 +00:00
- Created TODO files for Testing, DBAL, Frontend, Packages, Database, and Lua Scripting. - Updated README with a quick reference table for all TODO files and their priorities. - Added specific tasks for improving testing coverage, implementing DBAL features, enhancing frontend components, and refining package management. - Included documentation tasks to ensure thorough coverage and clarity across all areas. - Implemented initial unit tests for the useAuth hook and improved password generation logic. - Enhanced package loader functionality to support modular package seed data retrieval. - Updated page renderer to include public role in permission checks. - Added comments for future unit tests in workflow engine and other critical areas.
566 lines
16 KiB
Markdown
566 lines
16 KiB
Markdown
# 🎯 MetaBuilder Improvement Roadmap: Master Index
|
|
|
|
**Document Date:** December 25, 2025
|
|
**Total Work Packages:** 4 comprehensive guides
|
|
**Total Effort:** ~180 hours over 10 weeks
|
|
**Status:** Ready for implementation
|
|
|
|
TODO: This file uses ./docs/... links which are broken from docs/reference/; update to correct relative paths.
|
|
|
|
---
|
|
|
|
## 📚 Complete Documentation Set
|
|
|
|
This master index organizes all improvement areas into actionable, sequenced work packages.
|
|
|
|
### Document Structure
|
|
|
|
```
|
|
MASTER INDEX (this file)
|
|
│
|
|
├─ PRIORITY_ACTION_PLAN.md [Start here]
|
|
│ └─ 5-phase execution roadmap
|
|
│ ├─ Phase 1: Components (2 weeks)
|
|
│ ├─ Phase 2: State Management (2 weeks)
|
|
│ ├─ Phase 3: Package System (2 weeks)
|
|
│ ├─ Phase 4: Documentation (2 weeks)
|
|
│ └─ Phase 5: Quality (2 weeks)
|
|
│
|
|
├─ COMPONENT_VIOLATION_ANALYSIS.md [For developers]
|
|
│ └─ Detailed refactoring for each of 8 components
|
|
│ ├─ Tier 1: Critical (887/733/686 LOC)
|
|
│ ├─ Tier 2: High (520/450/380 LOC)
|
|
│ └─ Tier 3: Medium (290/210 LOC)
|
|
│
|
|
├─ STATE_MANAGEMENT_GUIDE.md [Architecture decision guide]
|
|
│ └─ 4-category state pattern framework
|
|
│ ├─ Local State (useState)
|
|
│ ├─ Global State (Context)
|
|
│ ├─ Database State (Prisma)
|
|
│ └─ Cache State (React Query)
|
|
│
|
|
└─ PACKAGE_SYSTEM_COMPLETION.md [Feature specification]
|
|
└─ Missing pieces to complete system
|
|
├─ Asset Management (Phase 1)
|
|
├─ Import/Export UI (Phase 2)
|
|
└─ Pre-built Packages (Phase 3)
|
|
```
|
|
|
|
---
|
|
|
|
## 🚀 Quick Start by Role
|
|
|
|
### 👨💼 Project Manager
|
|
**Start Here:**
|
|
1. Read [PRIORITY_ACTION_PLAN.md](./PRIORITY_ACTION_PLAN.md) sections:
|
|
- "Executive Summary" (2 min)
|
|
- "Success Metrics & Milestones" (5 min)
|
|
- "Week-by-Week Execution Plan" (10 min)
|
|
|
|
**Key Info:**
|
|
- 10 weeks, ~180 hours total effort
|
|
- 5 phases + clear dependencies
|
|
- Recommend 2 developers + 1 QA
|
|
|
|
**Deliverables:**
|
|
- 40+ small components
|
|
- 10+ reusable hooks
|
|
- 5 pre-built packages
|
|
- Unified state management
|
|
- Complete documentation
|
|
|
|
---
|
|
|
|
### 👨💻 Developer (Starting Phase 1)
|
|
**Start Here:**
|
|
1. [PRIORITY_ACTION_PLAN.md](./PRIORITY_ACTION_PLAN.md) - "PHASE 1: CRITICAL PATH"
|
|
2. [COMPONENT_VIOLATION_ANALYSIS.md](./COMPONENT_VIOLATION_ANALYSIS.md) - Your assigned component
|
|
|
|
**Week 1 Tasks:**
|
|
- [ ] GitHubActionsFetcher: Create useGitHubFetcher hook
|
|
- [ ] GitHubActionsFetcher: Create child components
|
|
- [ ] GitHubActionsFetcher: Add unit tests
|
|
- [ ] Code review + merge
|
|
|
|
**Key Resources:**
|
|
- Testing setup guide (in PRIORITY_ACTION_PLAN.md)
|
|
- Component decomposition pattern (in COMPONENT_VIOLATION_ANALYSIS.md)
|
|
- Existing examples: Level4.tsx, Level5.tsx refactoring (already done)
|
|
|
|
---
|
|
|
|
### 🏗️ Architect / Tech Lead
|
|
**Start Here:**
|
|
1. [PRIORITY_ACTION_PLAN.md](./PRIORITY_ACTION_PLAN.md) - Full read (30 min)
|
|
2. [STATE_MANAGEMENT_GUIDE.md](./STATE_MANAGEMENT_GUIDE.md) - Architecture decisions
|
|
3. [PACKAGE_SYSTEM_COMPLETION.md](./PACKAGE_SYSTEM_COMPLETION.md) - Feature design
|
|
|
|
**Key Decisions to Make:**
|
|
- [ ] Context provider structure (max 3-4)
|
|
- [ ] React Query configuration
|
|
- [ ] Asset storage strategy
|
|
- [ ] Package publishing process
|
|
|
|
**Validation Checklist:**
|
|
- [ ] All components < 150 LOC after refactoring
|
|
- [ ] All hooks < 100 LOC
|
|
- [ ] State scattered → consolidated into 4 categories
|
|
- [ ] Package system feature-complete
|
|
|
|
---
|
|
|
|
### 🧪 QA / Test Engineer
|
|
**Start Here:**
|
|
1. [PRIORITY_ACTION_PLAN.md](./PRIORITY_ACTION_PLAN.md) - "PHASE 5: QUALITY & LAUNCH"
|
|
2. [COMPONENT_VIOLATION_ANALYSIS.md](./COMPONENT_VIOLATION_ANALYSIS.md) - "Testing Strategy"
|
|
|
|
**Test Coverage Goals:**
|
|
- Components: 90%+ coverage
|
|
- Hooks: 100% coverage
|
|
- E2E: All workflows passing
|
|
- Performance: <100ms TTI
|
|
|
|
**Test Templates:**
|
|
- Component tests (use React Testing Library)
|
|
- Hook tests (use renderHook)
|
|
- Integration tests
|
|
- E2E workflows
|
|
|
|
---
|
|
|
|
### 📚 Documentation Writer
|
|
**Start Here:**
|
|
1. [PRIORITY_ACTION_PLAN.md](./PRIORITY_ACTION_PLAN.md) - "PHASE 4: DOCUMENTATION"
|
|
2. [STATE_MANAGEMENT_GUIDE.md](./STATE_MANAGEMENT_GUIDE.md) - As reference for best practices
|
|
3. [PACKAGE_SYSTEM_COMPLETION.md](./PACKAGE_SYSTEM_COMPLETION.md) - As reference for features
|
|
|
|
**Documentation to Create:**
|
|
- [ ] Component refactoring guide (step-by-step)
|
|
- [ ] State management decision tree (with examples)
|
|
- [ ] Package development tutorial
|
|
- [ ] API documentation
|
|
- [ ] Developer playbooks
|
|
|
|
---
|
|
|
|
## 🎯 Problem-Solution Mapping
|
|
|
|
### Problem 1: Components Too Large (4,146 LOC over)
|
|
|
|
**Solution:** Component decomposition into 40+ smaller components
|
|
|
|
**Reference:** [COMPONENT_VIOLATION_ANALYSIS.md](./COMPONENT_VIOLATION_ANALYSIS.md)
|
|
|
|
| Component | Strategy | Result |
|
|
|-----------|----------|--------|
|
|
| GitHubActionsFetcher (887 LOC) | Extract hooks + child components | 85 LOC + 6 children |
|
|
| NerdModeIDE (733 LOC) | Split panels into components | 110 LOC + 4 children |
|
|
| LuaEditor (686 LOC) | Extract script logic | 120 LOC + 2 children |
|
|
| Others (Tier 2-3) | Tab/section decomposition | 85-100 LOC each |
|
|
|
|
**Timeline:** 2 weeks for Tier 1, 1 week for Tier 2-3
|
|
|
|
---
|
|
|
|
### Problem 2: Scattered State Management
|
|
|
|
**Solution:** Unified 4-category state framework
|
|
|
|
**Reference:** [STATE_MANAGEMENT_GUIDE.md](./STATE_MANAGEMENT_GUIDE.md)
|
|
|
|
| State Type | Pattern | Limit | Examples |
|
|
|-----------|---------|-------|----------|
|
|
| Local | useState | 2-3/component | UI toggles, form inputs |
|
|
| Global | Context | 3-4 providers | Auth, theme, notifications |
|
|
| Persistent | Prisma + useState | DB-driven | User prefs, config |
|
|
| Cache | React Query | Auto-managed | API responses, expensive queries |
|
|
|
|
**Timeline:** 2 weeks for audit + 2 weeks for migration
|
|
|
|
---
|
|
|
|
### Problem 3: Incomplete Package System
|
|
|
|
**Solution:** Asset management + import/export + pre-built packages
|
|
|
|
**Reference:** [PACKAGE_SYSTEM_COMPLETION.md](./PACKAGE_SYSTEM_COMPLETION.md)
|
|
|
|
| Feature | Status | Effort | Timeline |
|
|
|---------|--------|--------|----------|
|
|
| Asset storage & upload | 0% | 12h | Week 4-5 |
|
|
| Import/export UI | 0% | 14h | Week 5-6 |
|
|
| 5 pre-built packages | 0% | 10h | Week 6-7 |
|
|
|
|
**Timeline:** 3 weeks to complete
|
|
|
|
---
|
|
|
|
### Problem 4: Documentation Scattered (4,935+ LOC across 50+ files)
|
|
|
|
**Solution:** Consolidation + reorganization + new implementation guide
|
|
|
|
**Reference:** [PRIORITY_ACTION_PLAN.md](./PRIORITY_ACTION_PLAN.md) - Phase 4
|
|
|
|
**Deliverables:**
|
|
- Single master index
|
|
- Implementation guide (step-by-step)
|
|
- Developer playbooks
|
|
- API documentation
|
|
|
|
**Timeline:** 2 weeks for consolidation + ongoing maintenance
|
|
|
|
---
|
|
|
|
## 🗺️ Dependency Chain
|
|
|
|
```
|
|
START
|
|
↓
|
|
[Phase 1] Component Refactoring (2 weeks)
|
|
├─ GitHubActionsFetcher ✓ Done
|
|
├─ NerdModeIDE
|
|
├─ LuaEditor
|
|
└─ Medium components
|
|
↓
|
|
[Phase 2] State Management (2 weeks)
|
|
├─ Depends on: Phase 1 complete
|
|
├─ Audit state patterns
|
|
├─ Define unified strategy
|
|
└─ Migrate 10+ components
|
|
↓
|
|
[Phase 3] Package System (2 weeks)
|
|
├─ Can start in parallel with Phase 2
|
|
├─ Asset management
|
|
├─ Import/export
|
|
└─ Pre-built packages
|
|
↓
|
|
[Phase 4] Documentation (2 weeks)
|
|
├─ Can start in parallel with Phase 3
|
|
├─ Consolidate 50+ files
|
|
├─ Create guides
|
|
└─ Developer playbooks
|
|
↓
|
|
[Phase 5] Quality (2 weeks)
|
|
├─ Depends on: All phases
|
|
├─ Comprehensive testing
|
|
├─ Code quality review
|
|
└─ Production readiness
|
|
↓
|
|
LAUNCH
|
|
```
|
|
|
|
---
|
|
|
|
## 📊 Metrics Dashboard
|
|
|
|
### Current State (Today)
|
|
```
|
|
Components: 8 violations, 4,156 LOC over limit
|
|
State Management: Scattered, inconsistent, hard to debug
|
|
Package System: 70% complete (missing assets, UI, packages)
|
|
Documentation: 4,935+ LOC scattered across 50+ files
|
|
```
|
|
|
|
### Target State (Week 10)
|
|
```
|
|
Components: 0 violations, 755 LOC total (81.8% reduction)
|
|
State Management: Unified, 4-category framework, well-tested
|
|
Package System: 100% complete with 5 pre-built packages
|
|
Documentation: Consolidated, indexed, comprehensive
|
|
```
|
|
|
|
### Success Metrics
|
|
```
|
|
✓ All files < 150 LOC (components), < 100 LOC (hooks)
|
|
✓ 90%+ test coverage across refactored code
|
|
✓ Max 3-4 global context providers
|
|
✓ Zero scattered state patterns
|
|
✓ 5 production-ready pre-built packages
|
|
✓ Single-entry documentation index
|
|
✓ <2 hour developer onboarding time
|
|
✓ Lighthouse score > 90
|
|
✓ WCAG 2.1 AA compliance
|
|
✓ Multi-tenancy verified in all operations
|
|
```
|
|
|
|
---
|
|
|
|
## 🔍 How to Use These Documents
|
|
|
|
### For Reference
|
|
- **Component details needed?** → COMPONENT_VIOLATION_ANALYSIS.md
|
|
- **State pattern decision?** → STATE_MANAGEMENT_GUIDE.md
|
|
- **Package feature spec?** → PACKAGE_SYSTEM_COMPLETION.md
|
|
- **Overall timeline?** → PRIORITY_ACTION_PLAN.md
|
|
|
|
### For Execution
|
|
- **Starting new component?** → Follow COMPONENT_VIOLATION_ANALYSIS.md pattern
|
|
- **Adding state?** → Use STATE_MANAGEMENT_GUIDE.md decision tree
|
|
- **Building package feature?** → Follow PACKAGE_SYSTEM_COMPLETION.md spec
|
|
- **Managing sprints?** → Track PRIORITY_ACTION_PLAN.md weeks
|
|
|
|
### For Management
|
|
- **Weekly standup?** → PRIORITY_ACTION_PLAN.md "Week-by-Week"
|
|
- **Risk assessment?** → PRIORITY_ACTION_PLAN.md "Risk Mitigation"
|
|
- **Success criteria?** → All documents have completion checklists
|
|
- **Budget/timeline?** → PRIORITY_ACTION_PLAN.md "Resource Allocation"
|
|
|
|
---
|
|
|
|
## 📋 Pre-Implementation Checklist
|
|
|
|
### Before Starting Phase 1
|
|
- [ ] Team reviewed and agreed to plan
|
|
- [ ] Developer assignments made
|
|
- [ ] Testing infrastructure set up
|
|
- [ ] Feature branches created
|
|
- [ ] Daily standups scheduled (15 min)
|
|
- [ ] Code review process documented
|
|
- [ ] Merge strategy defined (rebase/squash)
|
|
|
|
### Before Starting Phase 2
|
|
- [ ] Phase 1 components merged to main
|
|
- [ ] All Phase 1 tests passing
|
|
- [ ] Code review complete
|
|
- [ ] No regressions in production
|
|
|
|
### Before Starting Phase 3
|
|
- [ ] Phase 2 state pattern framework established
|
|
- [ ] Context providers created
|
|
- [ ] React Query configured
|
|
- [ ] Sample migration completed (1-2 components)
|
|
|
|
### Before Starting Phase 4
|
|
- [ ] All Phase 1-3 work documented
|
|
- [ ] Code comments added
|
|
- [ ] Example files created
|
|
- [ ] Video tutorials planned (optional)
|
|
|
|
### Before Starting Phase 5
|
|
- [ ] All phases implemented
|
|
- [ ] Code quality checks passing
|
|
- [ ] Security audit complete
|
|
- [ ] Performance benchmarks established
|
|
|
|
---
|
|
|
|
## 🎓 Learning Resources
|
|
|
|
### Component Patterns
|
|
- [React docs: Composition vs Inheritance](https://react.dev/learn/thinking-in-react)
|
|
- [Atomic Design Methodology](https://bradfrost.com/blog/post/atomic-web-design/)
|
|
- [Component Refactoring Example](./docs/implementation/component-atomicity-refactor.md)
|
|
|
|
### State Management
|
|
- [React Hooks: useState, useContext](https://react.dev/reference/react/useState)
|
|
- [React Query Documentation](https://tanstack.com/query/latest)
|
|
- [Design Patterns for State](./STATE_MANAGEMENT_GUIDE.md)
|
|
|
|
### Testing
|
|
- [React Testing Library](https://testing-library.com/docs/react-testing-library/intro/)
|
|
- [Jest Documentation](https://jestjs.io/docs/getting-started)
|
|
- [Hook Testing with renderHook](https://react-hooks-testing-library.com/)
|
|
|
|
### Package System
|
|
- [packages/README.md](./packages/README.md)
|
|
- [DBAL Architecture](./dbal/README.md)
|
|
- [Package Development Guide](./PACKAGE_SYSTEM_COMPLETION.md)
|
|
|
|
---
|
|
|
|
## 🆘 Troubleshooting & Support
|
|
|
|
### Issue: Component still >150 LOC after refactoring
|
|
**Solution:**
|
|
1. Check COMPONENT_VIOLATION_ANALYSIS.md for your component type
|
|
2. Ensure all logic moved to hooks
|
|
3. Each child component should be single-purpose
|
|
4. Consider extracting CSS to separate file
|
|
|
|
### Issue: State management unclear
|
|
**Solution:**
|
|
1. Read STATE_MANAGEMENT_GUIDE.md decision tree
|
|
2. Ask: "Will this survive page reload?" (DB vs local)
|
|
3. Ask: "Is this needed globally?" (Context vs local)
|
|
4. When in doubt, keep local until needed globally
|
|
|
|
### Issue: Package import/export failing
|
|
**Solution:**
|
|
1. Validate package ZIP structure against spec
|
|
2. Check asset encoding (base64)
|
|
3. Verify tenantId isolation
|
|
4. Review API error logs
|
|
|
|
### Issue: Test coverage low
|
|
**Solution:**
|
|
1. Use parameterized tests (see TESTING_QUICK_REFERENCE.md)
|
|
2. Test happy path + error cases
|
|
3. Test props validation
|
|
4. Run: `npm run test:coverage:report`
|
|
|
|
---
|
|
|
|
## 📞 Escalation Path
|
|
|
|
**For Architecture Questions:**
|
|
- → Tech Lead / Architecture Team
|
|
- Reference: STATE_MANAGEMENT_GUIDE.md
|
|
|
|
**For Component Design:**
|
|
- → Senior Developer
|
|
- Reference: COMPONENT_VIOLATION_ANALYSIS.md
|
|
|
|
**For Package System:**
|
|
- → Platform Team
|
|
- Reference: PACKAGE_SYSTEM_COMPLETION.md
|
|
|
|
**For Timeline/Resources:**
|
|
- → Project Manager
|
|
- Reference: PRIORITY_ACTION_PLAN.md
|
|
|
|
---
|
|
|
|
## 🎉 Expected Outcomes
|
|
|
|
### By End of Phase 1 (Week 2)
|
|
- 6 components refactored to <150 LOC
|
|
- 2,200 LOC moved to hooks/components
|
|
- 90%+ test coverage
|
|
- GitHubActionsFetcher verified in production
|
|
|
|
### By End of Phase 2 (Week 4)
|
|
- State management audit documented
|
|
- Unified strategy defined
|
|
- 10 components migrated
|
|
- 60% reduction in useState instances
|
|
|
|
### By End of Phase 3 (Week 6)
|
|
- Asset system fully functional
|
|
- Import/export UI complete
|
|
- 5 pre-built packages available
|
|
- Package marketplace working
|
|
|
|
### By End of Phase 4 (Week 8)
|
|
- Documentation consolidated
|
|
- Implementation guide published
|
|
- Developer playbooks available
|
|
- <2 hour onboarding time
|
|
|
|
### By End of Phase 5 (Week 10)
|
|
- 90%+ test coverage
|
|
- All size limits enforced
|
|
- Zero security issues
|
|
- Lighthouse > 90
|
|
- Production ready
|
|
|
|
---
|
|
|
|
## 📝 Document Maintenance
|
|
|
|
### Weekly Review
|
|
- Check progress against PRIORITY_ACTION_PLAN.md timeline
|
|
- Update actual vs estimated hours
|
|
- Log blockers and decisions
|
|
|
|
### Monthly Review
|
|
- Review complete sections
|
|
- Update success metrics
|
|
- Capture learnings
|
|
- Adjust future phases if needed
|
|
|
|
### Post-Launch
|
|
- Document what went well
|
|
- Document what could improve
|
|
- Create lessons learned guide
|
|
- Plan next iteration
|
|
|
|
---
|
|
|
|
## 📞 Quick Links by Task
|
|
|
|
| Need | Document | Section |
|
|
|------|----------|---------|
|
|
| Start implementing | PRIORITY_ACTION_PLAN.md | "Getting Started" |
|
|
| Assign component | COMPONENT_VIOLATION_ANALYSIS.md | "Recommended Order" |
|
|
| Choose state pattern | STATE_MANAGEMENT_GUIDE.md | "Decision Tree" |
|
|
| Implement package feature | PACKAGE_SYSTEM_COMPLETION.md | "Phase X" |
|
|
| Track progress | PRIORITY_ACTION_PLAN.md | "Week-by-Week" |
|
|
| Check success | All documents | "Completion Checklist" |
|
|
|
|
---
|
|
|
|
## 🏁 Completion Verification
|
|
|
|
**How to verify Phase is complete:**
|
|
|
|
```bash
|
|
# Component size check
|
|
npx tsx scripts/enforce-size-limits.ts
|
|
|
|
# Test coverage report
|
|
npm run test:coverage:report
|
|
|
|
# ESLint check
|
|
npm run lint
|
|
|
|
# TypeScript check
|
|
npm run typecheck
|
|
|
|
# E2E tests
|
|
npm run test:e2e
|
|
```
|
|
|
|
**All should pass with 0 violations, 90%+ coverage, 0 errors**
|
|
|
|
---
|
|
|
|
## 📬 Feedback & Iteration
|
|
|
|
**How to provide feedback:**
|
|
1. Document specific issue or suggestion
|
|
2. Reference which document/section
|
|
3. Propose solution if applicable
|
|
4. Submit pull request if code-related
|
|
|
|
**Feedback channels:**
|
|
- Pull request comments (code)
|
|
- GitHub issues (planning)
|
|
- Team meetings (decisions)
|
|
- Slack (quick questions)
|
|
|
|
---
|
|
|
|
## 🎯 Final Checklist Before Launch
|
|
|
|
- [ ] All 4 documents reviewed by tech lead
|
|
- [ ] Team trained on new patterns
|
|
- [ ] Developer environment setup guide created
|
|
- [ ] CI/CD pipeline ready
|
|
- [ ] Monitoring/alerting configured
|
|
- [ ] Rollback plan documented
|
|
- [ ] Communication plan ready (stakeholders notified)
|
|
- [ ] Success metrics dashboard set up
|
|
- [ ] Post-launch support plan documented
|
|
|
|
---
|
|
|
|
**Generated:** December 25, 2025
|
|
**Version:** 1.0 - Initial Comprehensive Plan
|
|
**Next Update:** After Phase 1 Completion
|
|
|
|
---
|
|
|
|
## 📚 All Documents
|
|
|
|
1. **[PRIORITY_ACTION_PLAN.md](./PRIORITY_ACTION_PLAN.md)** - 5-phase roadmap with timelines
|
|
2. **[COMPONENT_VIOLATION_ANALYSIS.md](./COMPONENT_VIOLATION_ANALYSIS.md)** - Detailed refactoring for 8 components
|
|
3. **[STATE_MANAGEMENT_GUIDE.md](./STATE_MANAGEMENT_GUIDE.md)** - 4-category state framework
|
|
4. **[PACKAGE_SYSTEM_COMPLETION.md](./PACKAGE_SYSTEM_COMPLETION.md)** - Asset system & import/export spec
|
|
|
|
**Total Documentation:** 20,000+ lines of comprehensive guidance
|
|
|
|
---
|
|
|
|
**Created for MetaBuilder Development Team**
|
|
**All feedback welcome - help us improve the plan!**
|