Handbook
L2.3 — Behavior change with new tests
Status: Defined
Updated
Sub-level at a glance
| Parent level | L2 — Change-set |
| Autonomous unit | Small behavior change with new tests |
| Distinct assay evidence | ≥2 files incl. new/changed test; acceptance criteria list |
| Grade today | a |
Canonical policy, grades a-d, and promotion criteria: Autonomy levels (Blueprints). Per-project scoring: Autonomy maturity framework (Blueprints).
Gates and evidence
All gates and core evidence of the parent level (L2 — Change-set) apply unchanged. Declaring this sub-level adds the distinct check:
- ≥2 distinct changed files including a new or changed test, plus an explicit acceptance-criteria list
A run that fails the sub-level check may still be reported at the plain parent-level grain if the parent's evidence holds — sub-level claims are strictly additive.
Prompt pack
Execution rubric (repo path, nav-hidden): prompts/autonomy/sublevel-l2-3.md — workcell-skeleton prompt declaring this sub-level, its evidence-to-return shape, and human gates.
Worked case
Hypothetical case — no campaign run has declared L2.3 yet.
| Field | Value |
|---|---|
| Repo | forge-dark-factory PoC (hypothetical sandbox fixture) |
| Goal | Small behavior change to calculator.divide with new edge-case test and explicit acceptance criteria |
| Evidence produced | Pattern: runs/campaigns/<campaign>/<item>/run-*/machine/ with acceptance_criteria list and tests/test_divide.py in changed_files |
| Assay pass rationale | L2.3 _check_sublevel: acceptance_criteria declared; at least one _is_test_file in changed_files; core L2 ≥2 files |
| Assay fail example | Behavior change without new test → L2.3 evidence: no new/changed test in changed files; missing AC list → L2.3 evidence: acceptance criteria list missing |
Related
- L2 — Change-set — parent level
- Autonomy levels hub