Expand description
Typed configuration: rig selection, per-check settings, per-clip
expectations and movement ownership, and typed clip groups. The TOML file (animsmith.toml) is
one constructor of this — embedding pipelines build it
programmatically through this module and keep their own contract
formats on their side.
The structs derive Deserialize so a frontend can parse any
serde-compatible format (the CLI uses TOML); the core itself never
touches a file format. crate::CheckCtx::new does not resolve
Config::rig; the embedding frontend resolves roles first through
crate::profile and passes the resulting crate::ResolvedRoles.
Structs§
- Check
Settings - Per-check settings: a severity override plus the union of the built-in checks’ tunables (only the owning check reads each field).
- Clip
Expectations - What the author declares about one clip (or a glob of clips).
- Config
- The whole configuration. Field names match the
animsmith.tomlsections. - Gait
Group - A set of clips whose gait phases must agree (a directional blend ring).
- Pinned
- A pinned expectation: declared value ± tolerance.
- RigConfig
- Rig selection: a named profile (“auto” to detect) and/or an inline role map (which wins over the profile for the roles it names).
- Runtime
Node Selectors - Normalized, deterministic runtime-node selection authority.
- Runtime
Nodes Config - Engine-neutral runtime-node selection policy.
- Sync
Group - A set of clips sampled together by a same-time / absolute-sync runtime.
- Time
Complement Settings - Thresholds for detecting a pair that is more phase-similar under reflected time than under a declared same-time / absolute-sync rule.
Enums§
- Config
Validation Error - Invalid values in a directly constructed
Config. - Movement
Owner - The system that owns one component of a clip’s world movement.
- Runtime
Node Selector Resolution - One runtime-node selector’s deterministic resolution result.
- Severity
Setting - Severity override for a check;
Offdisables it.
Functions§
- glob_
match - Minimal linear-work
*-wildcard matcher (no character classes;*matches any run including empty).