docs: bound params are overridable defaults — C12 amendment, glossary, guide
Task 7 of the bound-override cycle: the design ledger's C12 records the bound-as-default semantics (axis 1 may name a bound param; identity reads the authored document; the retired axes-bind-only-open-knobs restriction was an implementation consequence, not a recorded decision), the glossary's blueprint entry carries the same sentence, and the authoring-guide's data-only starter section explains the one-file run+sweep quickstart. closes #246
This commit is contained in:
@@ -38,10 +38,11 @@ the same shape every node in `aura-std` already follows.
|
||||
- **The project's own signal doesn't need a crate by default.** `aura new`
|
||||
scaffolds a **data-only** project (`docs/project-layout.md`, "A project
|
||||
repo (two tiers)") — a strategy over the std vocabulary is a
|
||||
blueprint/campaign document, not Rust: the scaffold ships a single closed
|
||||
`signal.json` starter, runnable immediately with no build step, and also
|
||||
the sweep target itself (a bound param is a default any `--axis` may
|
||||
override, #246).
|
||||
blueprint/campaign document, not Rust: the scaffold ships **one** closed
|
||||
`signal.json` starter that serves both verbs — `aura run` uses its bound
|
||||
values as-is, `aura sweep --axis <bp>.fast.length=2,4,8` overrides them
|
||||
(bound = default, not fixed); `--list-axes` lists the open knobs and the
|
||||
bound defaults alike, so every override target is discoverable.
|
||||
- **A project-specific *native* node type** — the moment §0's three-part
|
||||
pattern is actually needed — lives in an attached **node crate**:
|
||||
`aura nodes new <name>` scaffolds a sibling cdylib crate (`Cargo.toml` +
|
||||
|
||||
@@ -1132,6 +1132,16 @@ Seed-as-input reconciles Monte-Carlo with C1. The "frozen topology" of the
|
||||
atomic unit is one harness instance, selected by the harness's **structural
|
||||
axes** (C20); the structural experiment matrix is the outer orchestration over
|
||||
this dimension, the tuning sweep the inner (C19/C20).
|
||||
**Amendment (2026-07-12, #246).** A bound blueprint param is the param's
|
||||
**default**: axis 1 (param-sweep) may name a bound param — the family boundary
|
||||
re-opens it on the probe and on every member reload, and the axis binds it per
|
||||
cell. "Open" means *must be bound by an axis*; "bound" means *default,
|
||||
overridable by an axis*. `run`/`mc` still require every param resolved (a truly
|
||||
open param still refuses). Identity is untouched: `content_id_of` and
|
||||
`topology_hash` read the authored document, never a re-opened probe, and each
|
||||
member manifest records its per-cell bindings as before. The restriction this
|
||||
amends — axes bind only open knobs — was an implementation consequence of
|
||||
`bind()` shrinking the param surface, not a recorded decision.
|
||||
|
||||
### C13 — Hot-reload is authoring-only; deploy is frozen
|
||||
**Guarantee.** A node/strategy is authored as a native Rust `cdylib`,
|
||||
|
||||
+1
-1
@@ -29,7 +29,7 @@ A strategy's primary, backtestable DAG output: one signed, bounded `f64 ∈ [-1,
|
||||
|
||||
### blueprint
|
||||
**Avoid:** —
|
||||
The param-generic, input-role-generic graph-as-data produced by running a Rust builder; it carries free numeric params and free input roles before bootstrap. Bootstrapped into a frozen instance by binding params + data + seed. Registered and inspected headless (`aura graph register`, `aura graph introspect --params` — the raw `param_space` namespace campaign axes bind against; cycle 0107/#196).
|
||||
The param-generic, input-role-generic graph-as-data produced by running a Rust builder; it carries free numeric params and free input roles before bootstrap. Bootstrapped into a frozen instance by binding params + data + seed. Registered and inspected headless (`aura graph register`, `aura graph introspect --params` — the raw `param_space` namespace campaign axes bind against; cycle 0107/#196); a *bound* param is an overridable **default** — a sweep axis naming it re-opens it per family (#246), while `run` uses it as-is.
|
||||
|
||||
### bootstrap
|
||||
**Avoid:** —
|
||||
|
||||
Reference in New Issue
Block a user