feat(ariadne): add CLI skeleton
This commit was merged in pull request #31.
This commit is contained in:
@@ -1,18 +1,53 @@
|
||||
# Ariadne
|
||||
|
||||
Ariadne analyzes Clew output for a local Ren'Py game install.
|
||||
|
||||
Keep project-owned source under `src/ariadne/`.
|
||||
Keep game-derived files local and ignored under `src/ariadne/output/`.
|
||||
Ariadne analyzes Clew-produced data for local Ren'Py projects.
|
||||
|
||||
Clew owns extraction, preparation, and Ren'Py AST export.
|
||||
Ariadne consumes Clew's `clew-renpy-ast-v1` JSON from `output/ast/`.
|
||||
Ariadne maps that data into internal analysis state.
|
||||
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.
|
||||
|
||||
## Bazel shape
|
||||
## CLI
|
||||
|
||||
Run the current placeholder CLI with:
|
||||
Run the default target, `all`:
|
||||
|
||||
```sh
|
||||
bazel run //src/ariadne:ariadne
|
||||
```
|
||||
|
||||
By default, Ariadne writes output under `output/`.
|
||||
Use `--output-dir` to choose a different output directory:
|
||||
|
||||
```sh
|
||||
bazel run //src/ariadne:ariadne -- --output-dir scratch/ariadne-output
|
||||
```
|
||||
|
||||
Run through a specific target stage and its prerequisites:
|
||||
|
||||
```sh
|
||||
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:
|
||||
|
||||
```text
|
||||
<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.
|
||||
|
||||
Reference in New Issue
Block a user