Expand description
Artifact references and canonical scoped paths.
Structs§
- Artifact
Id - An Artifact’s ID:
[A-Za-z0-9][A-Za-z0-9_-]{0,63}, so it can never smuggle a path separator, a dot component, or control text into a scope key or a tool result. - Logical
Suffix - A nonempty relative logical path. Its private storage cannot bypass validation.
- Relation
- Scope
- Scope
Error - Scoped
Path
Enums§
- Argument
- A declared argument, parsed once when its declaration loads: either a plain literal, or a
{name}[/path]/--flag={name}[/path]Artifact reference. Parsing here only checks shape (a single well-formed reference, a valid path suffix); whethernamenames a real Artifact is a separate, config-wide check ([reference_target]) run once every declaration is loaded.std::fmt::Displayreconstructs the exact original text, so round-tripping through the savedVec<String>forms (StoredProfile, Views) changes no byte and no reuse key. - Instruction
Part - Logical
Target - An Artifact root has no suffix; non-root suffixes are validated logical paths.
- Relation
Kind
Functions§
- argv_
scope - Admit an owner plus the explicit references in its argv, as an Eval’s scope admits its deps.
- artifact_
scope - Composition grants access; a referenced Artifact’s Eval instructions do not.
- eval_
scope - instruction_
references - parse_
artifact_ instruction - Presentation tokens only: never expand content or mutate the authored payload. Artifact tokens carry names already validated by configuration.
- resolve_
argv - Resolve
{name}[/path]and--flag={name}[/path]operands to existing scoped inputs. Other arguments, including escaped braces, stay literal. Never interpolate the command. Call at execution preparation, after static config validation; it opens input metadata. - scoped_
path - Resolve a physical input below a canonical root. No component may be a symlink.