fix(cli): aura graph rejects a bad blueprint arg, not a silent sample (#28)
The #28 cycle-close audit found aura graph <file> silently rendered the embedded sample at exit 0 when the positional named an unreadable blueprint (typo, nonexistent path, wrong extension): is_blueprint_file returns None both for "no positional" and for a bad arg, and dispatch_graph's None arm conflated them — re-introducing the exact #28 "I asked for my graph, got the sample" surprise in the error path, and diverging from every sibling verb (a bad blueprint arg is a usage fault, exit 2, per C14). Split the None arm: no positional -> the sample (unchanged); a positional that is not a readable .json -> a usage error naming the arg, exit 2, mirroring dispatch_run. Also close the paired doc drift the audit flagged: the README blueprint-verb table and the authoring guide now document the aura graph <file> render surface, absent while graph was the last sample-bound verb. refs #28
This commit is contained in:
@@ -86,7 +86,10 @@ $ aura graph build < smacross.json
|
||||
"input_roles":[{"name":"price",...,"source":"F64"}],"output":[...]}}
|
||||
```
|
||||
|
||||
Introspection is build-free wherever possible:
|
||||
The built blueprint renders visually, too: `aura graph blueprint.json` emits an
|
||||
interactive HTML DAG so a mis-wire is visible before any run (`aura graph` with
|
||||
no file renders the built-in sample; a named-but-unreadable file is a usage
|
||||
error). Introspection is build-free wherever possible:
|
||||
|
||||
```
|
||||
$ aura graph introspect --vocabulary # one node type per line
|
||||
|
||||
Reference in New Issue
Block a user