=== CAPABILITY 1: Foundation IDs as nominal integers (sparse-set semantics) ===

ADR-0.0.57 Decision item 1: foundation IDs (0.0.x) are nominal — unique identifiers,
not sequence positions. Sparse sets allowed; ordering carries no semantics.

-- On-disk foundation corpus (third component, sorted numerically) --
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58


=== CAPABILITY 2: gz plan create --kind foundation gap-fill allocator ===

ADR-0.0.57 Decision item 1: 'gz-adr-create minor-version odometer becomes a
next-free-integer nominal allocator.' Implementation: _next_free_nominal_foundation_id
in src/gzkit/commands/plan.py:113.

-- Real corpus (1..58 contiguous) → next free is 59 --
  Returns: 0.0.59

-- Synthetic sparse set {1,3,5,7} → next free is 2 (gap-fill, NOT 8) --
  Returns: 0.0.2

-- Synthetic contiguous {1,2,3,4,5,6,7,8,9,10} → next free is 11 --
  Returns: 0.0.11

-- Empty foundation dir → returns 0.0.1 (bootstrap) --
  Returns: 0.0.1

=== CAPABILITY 3: gz validate --taxonomy admits sparse sets (no sequence-position assumption) ===

Validated: taxonomy

✓ All validations passed (1 scopes).

=== CAPABILITY 4: gz-foundation-triage skill registered and discoverable ===

│ gz-foundation-triage       │ Rank the in-flight foundation backlog by        │

-- Skill scripts directory --
triage.py

=== CAPABILITY 5: ADR-0.0.17 + ADR-0.0.18 carry the nominal-ID amendment ===

ADR-0.0.57 (Foundation ADR Nominal ID Semantics and Priority Triage, 2026-05-22) extends this ADR's taxonomy by declaring (Decision item 1, verbatim):

> "The third component of foundation ADR IDs (0.0.x) is a nominal integer: a unique identifier, not a sequence position. gz-adr-create's minor-version odometer becomes a next-free-integer nominal allocator."

**Impact on ADR-0.0.17 mechanical enforcement:** The `gz validate --taxonomy` validator enforces format and kind coherence (0.0.x pattern, kind: foundation / feature, pool id-prefix). It has never enforced consecutive ordering of foundation integers — the amendment documents that as intentional nominal-identifier semantics, not an oversight. Sparse foundation trees (e.g. 0.0.54 present, 0.0.55 absent, 0.0.56 present) correctly return no taxonomy errors.


=== CAPABILITY 6: AGENTS.md ordering-rule scope shrunk to feature ADRs ===

- Apply semantic-version ordering in feature-ADR summaries, comparisons, and any operator-facing status narration over feature ADRs.
- **Counter-rule (foundation ADRs):** Foundation ADR IDs (`0.0.x`) are nominal integers — unique identifiers, not sequence positions. Do not order, sort, or compare foundation IDs as semver; foundations have no semantic ordering and may form sparse sets (e.g. `0.0.54`, `0.0.56` with `0.0.55` absent is valid). Doctrine: ADR-0.0.57 § Decision item 1; rule-scope shrink: ADR-0.0.57 § Decision item 3.
- When adding imports in an Edit call, always include the code that uses them in the same edit. The post-edit ruff hook removes unused imports immediately — splitting import addition and usage across separate edits causes the import to be deleted before it's referenced.
- Never prefix `uv run gz` or `uv run -m gzkit` commands with `PYTHONUTF8=1`. The CLI entrypoint handles UTF-8 encoding at runtime.
