an.stores.scenes

Scenes store — wraps the project’s scene.md + ir/scene.json pair.

Right now an an project contains exactly one scene (“main”), so this store exposes only the "main" key. Future versions can support multi-scene projects by promoting siblings inside a scenes/ directory.

Reading returns a SceneIR. Writing accepts a SceneIR (or a dict that validates as one) and persists both the JSON and the regenerated Markdown.

class an.stores.scenes.ScenesStore(project_dir: str | Path)[source]

MutableMapping exposing the scene file pair under a project root.

Keys: currently always "main". The store enforces this by raising KeyError for other keys.