Commit Graph

3 Commits

Author SHA1 Message Date
Thomas Hallock 3f4691e8a3 feat(know-your-world): live crop updates and safe zone improvements
- Add runtime crop override system for live DevCropTool updates without page reload
- Fix SVG letterboxing in DevCropTool coordinate conversion (screenToSvg/svgToScreen)
- Hide all UI (nav, GameInfoPanel) during crop mode for unobstructed drawing
- Show debug overlay (leftover/crop rectangles) even when no custom crop defined
- Use full map bounds as implicit crop when no custom crop exists
- Ensure map always fits within leftover area (not under UI elements)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-28 19:46:23 -06:00
Thomas Hallock e06de8ea47 docs: add operator-specific settings architecture & refactoring plan
**Problem:** Mixed mastery mode uses operator-specific setting overrides
that are easy to overlook when making changes. This caused the recent
scaffolding bug and will get worse as we add more operators.

**Created Documentation:**
- OPERATOR_SPECIFIC_SETTINGS.md - Complete architecture guide
  - Explains current implementation (global vs operator-specific)
  - Documents recent scaffolding bug and root cause
  - Lists all components that need special handling
  - Provides 4-phase refactoring plan before adding new operators

**Key Insights:**
- Currently: 2 operators → 2 optional override fields per setting
- Future: 6+ operators → 6+ override fields = exponential complexity
- Hidden complexity: Not obvious from schema which fields have overrides
- Bug prone: Every UI component needs conditional logic

**Refactoring Plan:**
1. Phase 1: Documentation & audit (this commit)
2. Phase 2: Unified config model (explicit operator structure)
3. Phase 3: UI clarity (visual indicators, bulk actions)
4. Phase 4: Validation & testing

**Documentation Graph:**
- Linked from main README under "Additional Documentation"
- Marked with ⚠️ [NEEDS REFACTORING] for visibility
- Connected to Config Schema, Mastery, and Subtraction docs

**Next Steps:**
- Audit ContentTab and DifficultyTab for operator-specific handling
- Add integration tests for mixed mode settings
- Complete refactoring BEFORE adding multiplication/division

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-17 18:24:07 -06:00
Thomas Hallock 1a7e81c4e2 docs: link problem generation docs to README graph
Created worksheet README and updated root README to ensure all problem
generation documentation is discoverable via linked path.

**Documentation Graph:**
```
README.md (root)
  → apps/web/src/app/create/worksheets/README.md
    → PROBLEM_GENERATION_ARCHITECTURE.md
    → USER_WARNING_IMPROVEMENTS.md
    → .claude/PROBLEM_GENERATION.md
```

**New Files:**
- `apps/web/src/app/create/worksheets/README.md` - Overview of worksheet
  system with links to all documentation

**Updated Files:**
- `README.md` - Added "Additional Documentation" section with worksheet
  generator and abacus react component links
- `.claude/CLAUDE.md` - Added "Documentation Graph Requirement" at top
  stating ALL docs must be reachable from root README

**Why This Matters:**
- Documentation that isn't linked gets forgotten and becomes stale
- New developers start at root README and follow links
- Ensures docs stay discoverable and maintained
- Now enforced as a critical requirement in Claude Code instructions

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-12 09:32:37 -06:00