Files
dev/src/ariadne

Ariadne

Ariadne analyzes Clew-produced data for local Ren'Py projects.

Clew owns extraction, preparation, and Ren'Py AST export. Ariadne consumes Clew output and builds analysis artifacts from it. Keep project-owned source under src/ariadne/; keep generated or game-derived files out of Git.

CLI

Run the default target, all:

bazel run //src/ariadne:ariadne

By default, Ariadne writes output under output/. Use --output-dir to choose a different output directory:

bazel run //src/ariadne:ariadne -- --output-dir scratch/ariadne-output

Run through a specific target stage and its prerequisites:

bazel run //src/ariadne:ariadne -- parse
bazel run //src/ariadne:ariadne -- add-jump-edges

Available target stages:

  • all
  • parse
  • add-implicit-edges
  • add-init-edges
  • add-jump-edges

Relative --output-dir paths resolve from the workspace root when Ariadne runs through bazel run.

Pipeline skeleton

Ariadne currently has pipeline scaffolding only. Each executable stage prepares an output directory at:

<output-dir>/graph/<stage>/

If a stage output directory already exists and is not empty, Ariadne fails unless --force is set. With --force, Ariadne removes the existing stage output directory before recreating it.

Stage implementations are placeholders and do not write graph artifacts yet.