# Agent rules Read `docs/FOUNDATION.md` and `docs/ARCHITECTURE.md` before large refactors. - `Game.Core` must not depend on Godot. - All randomness must go through `GameRng`. Simulation and presentation share one rules engine. - UI must not implement game rules. Presentation renders `GameState` and plays `GameEvent`s. - Adding or changing core rules requires adding or updating tests. - Ordinary cards should use standard effects. Do not invent a general-purpose scripting language. - Changing the content schema requires updating the validator and `docs/CONTENT_SCHEMA.md`. - Changing event resolution order requires checking related tests. - Do not create a global rule for a single card. - Prefer the smallest working implementation. Do not optimize until there is a measured bottleneck. - Freeze the 11 core actions in `docs/RULES.md`. New “archetypes” are combinations, conditions, or keywords — not new primitive events. - Card packs are **in-run only**. Unlock state must reset with the run. Do not add cross-run / meta unlocks.