Code structure
Reference documentation for the Lasers-Enigma codebase â read these before non-trivial work.
Architecture and conventionsâ
- Architecture â layered call stack, package map, key classes, command tree, optional dependencies.
- Area lifecycle â the two independent axes (loaded/unloaded vs activated/deactivated),
AreaTaskorchestration, and the cleanup discipline every new per-area singleton must follow. - Component registration â five-file checklist when adding a new puzzle component, base classes and interface list.
- Database migrations â
update_X_Y_Z_to_A_B_C()pattern inSQLDatabase, schema-version row, SQLite + MySQL portability.
Cross-cutting concernsâ
- Translations â language-file structure, 25-language completeness rule, mid-feature staging workflow.
- Sound effects â
SoundLauncherAPI and naming conventions.
Operationsâ
- CI/CD â pipeline jobs, SFTP upload, tag/branch routing.
- Wiki update matrix â which wiki page to update for which type of code change.
âšī¸ AI assistants working on this repository read the canonical rule source at
AGENTS.md, which references the pages above for deep-dives.