From 634af7540fa267d526628223624577e480d1cd56 Mon Sep 17 00:00:00 2001 From: John McCardle Date: Sat, 25 Oct 2025 22:55:51 +0000 Subject: [PATCH] Add "Issue-Roadmap" --- Issue-Roadmap.-.md | 339 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 339 insertions(+) create mode 100644 Issue-Roadmap.-.md diff --git a/Issue-Roadmap.-.md b/Issue-Roadmap.-.md new file mode 100644 index 0000000..2491641 --- /dev/null +++ b/Issue-Roadmap.-.md @@ -0,0 +1,339 @@ +# Issue Roadmap + +**Status:** 46 open issues (as of October 2025) +**Organization:** Issues grouped by system and priority tier + +**Related Pages:** +- [[Strategic-Direction]] - Project priorities +- [[Design-Proposals]] - Major architectural proposals +- [[Home]] - Documentation hub + +--- + +## Overview + +This page organizes McRogueFace's 46 open issues by system and priority. Use this to understand what's being worked on and what's planned. + +**Priority Tiers:** +- **Tier 1: Active Development** - Current focus, critical path to v1.0 +- **Tier 2: Foundation Work** - Important but not blocking v1.0 +- **Tier 3: Future Features** - Deferred until after v1.0 + +--- + +## Tier 1: Active Development (Foundation) + +### Performance & Optimization System + +**Priority:** IMMEDIATE - Critical path to v1.0 + +| Issue | Title | Status | +|-------|-------|--------| +| [#104](../../issues/104) | Basic profiling/metrics | ✅ Completed Oct 2025 | +| [#116](../../issues/116) | Dirty Flag System | 🔄 Next priority | +| [#115](../../issues/115) | SpatialHash Implementation | 🔄 High priority | +| [#117](../../issues/117) | Memory Pool for Entities | ⏳ After SpatialHash | +| [#113](../../issues/113) | Batch Operations for Grid | ⏳ After dirty flags | + +**Related Wiki:** [[Performance-and-Profiling]] + +**Goal:** 60 FPS with 10,000 entities and 100x100 grid + +--- + +### Animation System + +**Priority:** HIGH - Blocks tutorial completion + +| Issue | Title | Status | +|-------|-------|--------| +| [#120](../../issues/120) | Animation Property Locking | ⏳ After performance work | +| [#100](../../issues/100) | Rotation Support | ⏳ API consistency needed | + +**Related Wiki:** [[Animation-System]] + +**Goal:** Consistent API suitable for tutorials + +--- + +### Grid System + +**Priority:** HIGH - Performance and features + +| Issue | Title | Status | +|-------|-------|--------| +| [#124](../../issues/124) | Grid Point Animation | ⏳ Depends on animation fixes | +| [#123](../../issues/123) | Grid Subgrid System | ⏳ Large world support | +| [#114](../../issues/114) | CellView API | ⏳ Grid ergonomics | +| [#64](../../issues/64) | TCOD GridPointState updates | ⏳ FOV integration | + +**Related Wiki:** [[Grid-System]], [[Grid-Rendering-Pipeline]], [[Grid-TCOD-Integration]] + +--- + +### Python Binding Layer + +**Priority:** HIGH - API consistency for v1.0 + +| Issue | Title | Status | +|-------|-------|--------| +| [#126](../../issues/126) | Perfect Python Interface Generation | ⏳ After API stabilization | +| [#109](../../issues/109) | mcrfpy.Vector Convenience | ⏳ Minor ergonomics | +| [#101](../../issues/101) | Standardize Constructor Defaults | ⏳ API consistency | + +**Related Wiki:** [[Python-Binding-Layer]], [[Adding-Python-Bindings]] + +--- + +### Documentation + +**Priority:** HIGH - Needed for v1.0 release + +| Issue | Title | Status | +|-------|-------|--------| +| [#92](../../issues/92) | Inline C++ Documentation System | ⏳ Infrastructure exists | +| [#91](../../issues/91) | Python Type Stub Files (.pyi) | ⏳ IDE support | +| [#97](../../issues/97) | Automated API Documentation | ⏳ Extract from inline docs | +| [#48](../../issues/48) | Compilation Guide | ⏳ Developer onboarding | + +**Related Wiki:** [[Adding-Python-Bindings]] (inline docs section) + +--- + +## Tier 2: Foundation Work + +### UI Component Hierarchy + +**Priority:** MEDIUM - Architectural improvements + +| Issue | Title | Status | +|-------|-------|--------| +| [#122](../../issues/122) | Parent-Child UI System | ⏳ UI architecture enhancement | +| [#118](../../issues/118) | Scene as Drawable | ⏳ Composition pattern | +| [#102](../../issues/102) | Global Position Property | ⏳ Nested UI support | +| [#10](../../issues/10) | Visibility: Skip Render/Click | ⏳ Performance optimization | + +**Related Wiki:** [[UI-Component-Hierarchy]] + +--- + +### Input & Events + +**Priority:** MEDIUM - Fix bugs, improve ergonomics + +| Issue | Title | Status | +|-------|-------|--------| +| [#111](../../issues/111) | Click Events Broken in Headless | 🐛 Bug - headless mode | +| [#1](../../issues/1) | Resize Event for Scene | ⏳ Window management | +| [#53](../../issues/53) | Alternative Input Methods | ⏳ Accessibility | + +**Related Wiki:** [[Input-and-Events]] + +--- + +### Grid Utilities + +**Priority:** MEDIUM - Quality of life + +| Issue | Title | Status | +|-------|-------|--------| +| [#20](../../issues/20) | UIGrid: Replace Vector Getters/Setters | ⏳ API cleanup | +| [#16](../../issues/16) | Map Data via GridPointState | ⏳ Data access pattern | +| [#15](../../issues/15) | UIGridPointState Collection | ⏳ Collection pattern | + +**Related Wiki:** [[Grid-System]] + +--- + +### UI Element Management + +**Priority:** LOW - Nice to have + +| Issue | Title | Status | +|-------|-------|--------| +| [#41](../../issues/41) | Use Names as Tags / .find() | ⏳ Element search | +| [#40](../../issues/40) | UIDrawable Overwriting by Name | ⏳ Element management | + +**Related Wiki:** [[UI-Component-Hierarchy]] + +--- + +## Tier 3: Future Features (Post-v1.0) + +### Advanced Rendering + +**Priority:** LOW - Post-v1.0 + +| Issue | Title | Status | +|-------|-------|--------| +| [#107](../../issues/107) | Particle System | ⏸️ Deferred - advanced feature | +| [#106](../../issues/106) | Shader Support | ⏸️ Deferred - advanced feature | + +**Rationale:** Advanced rendering features add complexity. Focus on foundation first. + +--- + +### Distribution & Packaging + +**Priority:** MEDIUM - Post-v1.0 API freeze + +| Issue | Title | Status | +|-------|-------|--------| +| [#70](../../issues/70) | Package without Embedded Interpreter | ⏸️ Deferred - needs stable API | + +**Rationale:** Wait for v1.0 API freeze before packaging work. + +See [[Strategic-Direction]] for pip packaging discussion. + +--- + +### Demo Targets + +**Priority:** LOW - Community engagement + +| Issue | Title | Status | +|-------|-------|--------| +| [#67](../../issues/67) | Grid Stitching: Infinite World | ⏸️ Demo - technical showcase | +| [#62](../../issues/62) | Multiple Windows | ⏸️ Demo - advanced use case | +| [#55](../../issues/55) | Agent Simulation Environment | ⏸️ Demo - research use case | +| [#54](../../issues/54) | Jupyter Notebook Interface | ⏸️ Demo - research/teaching | +| [#46](../../issues/46) | Subinterpreter Tests | ⏸️ Demo - technical exploration | +| [#45](../../issues/45) | Accessibility Modes | ⏸️ Demo - accessibility showcase | +| [#36](../../issues/36) | SFML-DearImgui Usage | ⏸️ Demo - UI framework integration | + +**Rationale:** Demos are valuable for showcasing capabilities but not critical for v1.0. + +--- + +### Platform & Integration + +**Priority:** LOW - Specialized use cases + +| Issue | Title | Status | +|-------|-------|--------| +| [#125](../../issues/125) | Gitea/Forgejo Issues Automation | ⏸️ Tooling - project management | +| [#75](../../issues/75) | "Not Responding" with REPL | 🐛 Bug - REPL interaction | +| [#66](../../issues/66) | Standardize Audio Handling | ⏸️ Audio system refactor | +| [#65](../../issues/65) | Python Explorer Scene / Console | ⏸️ Developer tools | +| [#35](../../issues/35) | TCOD as Built-in Module | ⏸️ Distribution enhancement | +| [#14](../../issues/14) | SFML Python Library | ⏸️ Library extraction | + +--- + +## System Labels (Proposed) + +To improve organization, these system labels are recommended: + +**System Labels:** +- `system:grid` - Grid system and spatial containers +- `system:animation` - Animation and property interpolation +- `system:ui-hierarchy` - UI component hierarchy and composition +- `system:python-binding` - Python/C++ binding layer +- `system:performance` - Performance optimization and profiling +- `system:documentation` - Documentation infrastructure +- `system:rendering` - Rendering pipeline and visuals +- `system:input` - Input handling and events + +**Priority Labels:** +- `priority:tier1-active` - Current development focus +- `priority:tier2-foundation` - Important foundation work +- `priority:tier3-future` - Future/deferred features + +**Workflow Labels:** +- `workflow:needs-documentation` - Needs docs before/after implementation +- `workflow:needs-benchmark` - Needs performance testing +- `workflow:blocked-by-foundation` - Waiting on foundation fixes + +See Phase 3 of wiki migration for label creation and tagging. + +--- + +## Critical Path to v1.0 + +Based on [[Strategic-Direction]], the critical path is: + +``` +1. Performance Foundation (Oct-Nov 2025) + - Grid dirty flags (#116) + - SpatialHash (#115) + - Batch operations (#113) + ↓ +2. Animation System Overhaul (Dec 2025-Jan 2026) + - Property locking (#120) + - Rotation support (#100) + - API consistency + ↓ +3. Tutorial Completion (Feb-Mar 2026) + - Parts 7-10 on stable foundation + - Testing framework + - Documentation sprint + ↓ +4. v1.0 Release (Apr 2026) + - API freeze + - Python wheel packaging (#70) + - Public announcement +``` + +**Timeline:** 6 months to v1.0 + +--- + +## Monthly Priorities + +### October 2025 (Current) +- ✅ Profiling system (#104) - Complete +- ✅ Wiki documentation migration - In progress +- 🔄 Issue organization and labeling + +### November 2025 +- Grid dirty flags (#116) +- SpatialHash implementation (#115) +- Performance benchmarking + +### December 2025 - January 2026 +- Animation property locking (#120) +- Animation API consistency +- Rotation support (#100) + +### February - March 2026 +- Tutorial completion (parts 7-10) +- Documentation sprint (#92, #91, #97) +- Testing framework + +### April 2026 +- v1.0 API freeze +- Python wheel packaging (#70) +- Public release + +--- + +## Issue Statistics + +**By Priority Tier:** +- Tier 1 (Active): 14 issues +- Tier 2 (Foundation): 11 issues +- Tier 3 (Future): 21 issues + +**By System:** +- Performance: 5 issues +- Grid System: 8 issues +- Animation: 2 issues +- Python Binding: 3 issues +- UI Hierarchy: 4 issues +- Documentation: 4 issues +- Demo Targets: 7 issues +- Other: 13 issues + +**By Status:** +- ✅ Completed: 1 (#104) +- 🔄 In Progress: 2 (#116, #115) +- ⏳ Planned: 22 +- ⏸️ Deferred: 21 + +--- + +**Navigation:** +- [[Home]] - Documentation hub +- [[Strategic-Direction]] - Project priorities and decision framework +- [[Design-Proposals]] - Architectural proposals +- [Gitea Issues](../../issues) - Live issue tracker