Files
L'électron rare d31d8af180 docs: nested CLAUDE.md via init-deep
Slim root CLAUDE.md (90 lines) and add 7 nested CLAUDE.md
files for progressive disclosure. Each nested file loads
automatically when Claude reads files in that directory.

Nested files:
- game/        scenarios + NPC phrases (source-of-truth)
- tools/       Python tooling (Runtime 3, TTS, MCP, dev CLI)
- tests/       Python unittest patterns
- specs/       contracts governance
- frontend-scratch-v2/  React 19 + Blockly + Vite (legacy)
- frontend-v3/ pnpm monorepo (production target)
- desktop/     Electron Zacus Studio (macOS)

Root CLAUDE.md gains a Where-to-Look table and pointer to
nested guidance. ESP32_ZACUS submodule is intentionally not
covered (separate repo with its own CI).
2026-05-01 11:44:17 +02:00

1.4 KiB

Game Content

Source-of-truth for scenarios, NPC dialogue, and prompts. Edits here propagate to firmware, frontends, and TTS pools.

Canonical Files

File Role
scenarios/zacus_v2.yaml Master scenario (Runtime 3 IR source)
scenarios/npc_phrases.yaml All Professor Zacus lines (FR), categorised
prompts/ LLM prompt templates for hints/coherence

Editing Rules

  • IDs are foreign keys: changing puzzle.id or zone.id breaks audio + printables manifests, firmware bundles, and frontend tests. Sync cross-file when renaming.
  • Never edit exports/ or generated MD — regenerate via tools/scenario/export_md.py.
  • French dialogue only in npc_phrases.yaml; full diacritics required.
  • New NPC phrase categories must be added to schema validator and tools/tts/generate_npc_pool.py.

Validate Before Commit

python3 tools/scenario/validate_scenario.py scenarios/zacus_v2.yaml
python3 tools/scenario/compile_runtime3.py scenarios/zacus_v2.yaml
python3 tools/audio/validate_manifest.py ../audio/manifests/zacus_v2_audio.yaml
python3 tools/printables/validate_manifest.py ../printables/manifests/zacus_v2_printables.yaml

Anti-Patterns

  • Editing generated outputs in exports/ instead of YAML source
  • Renaming IDs without grepping the repo for cross-references
  • Adding NPC phrases without regenerating the MP3 pool
  • Mixing French narrative with English code identifiers in YAML values