docs: remove Ariadne skeleton from Palworld PR
This commit is contained in:
@@ -1,64 +0,0 @@
|
|||||||
# Ariadne CLI skeleton
|
|
||||||
|
|
||||||
## Scope
|
|
||||||
|
|
||||||
Build only the CLI scaffolding and boilerplate first.
|
|
||||||
Do not implement Clew AST import in this slice.
|
|
||||||
Do not add route planning in this slice.
|
|
||||||
Do not add Bazel tests in this slice.
|
|
||||||
|
|
||||||
## Dependency setup
|
|
||||||
|
|
||||||
Use `clap` for CLI parsing.
|
|
||||||
Vendor `clap` in a separate prerequisite commit.
|
|
||||||
Add the CLI skeleton in a follow-up commit.
|
|
||||||
|
|
||||||
## Command shape
|
|
||||||
|
|
||||||
The first CLI has no subcommands.
|
|
||||||
The default command runs all declared stages.
|
|
||||||
|
|
||||||
Example:
|
|
||||||
|
|
||||||
```sh
|
|
||||||
ariadne --output-dir output/
|
|
||||||
```
|
|
||||||
|
|
||||||
Use `--output-dir`, not `--output_dir`, unless project convention later requires underscores.
|
|
||||||
|
|
||||||
## Stage model
|
|
||||||
|
|
||||||
Model stages with a manually written typed `Stage` enum for now.
|
|
||||||
Defer compile-time generation until duplication creates a real problem.
|
|
||||||
|
|
||||||
A stage has:
|
|
||||||
|
|
||||||
- a name;
|
|
||||||
- prerequisites.
|
|
||||||
|
|
||||||
Stage execution can use dispatch logic instead of a common trait.
|
|
||||||
The graph type stays stable across all stages.
|
|
||||||
|
|
||||||
## Pipeline behavior
|
|
||||||
|
|
||||||
Running all stages runs each declared stage in dependency order.
|
|
||||||
A future targeted stage command will also run its prerequisites first.
|
|
||||||
|
|
||||||
Each stage writes artifacts under:
|
|
||||||
|
|
||||||
```text
|
|
||||||
<output-dir>/graph/<stage-name>/
|
|
||||||
```
|
|
||||||
|
|
||||||
`graph` is a literal directory name.
|
|
||||||
It is not a parameter.
|
|
||||||
|
|
||||||
A stage skips when its stage output already exists.
|
|
||||||
`--force` makes every invoked stage overwrite its output.
|
|
||||||
With `--force`, Ariadne removes each invoked stage output directory before it runs that stage.
|
|
||||||
|
|
||||||
## Deferred questions
|
|
||||||
|
|
||||||
- Decide whether stage outputs need success markers.
|
|
||||||
- Decide whether stage names use kebab-case in output paths.
|
|
||||||
- Decide how future targeted stage invocation appears in the CLI.
|
|
||||||
Reference in New Issue
Block a user