Skip to content

ci: index version floor (min_mcpp 0.0.85) + resolver-grammar strict lint#65

Merged
Sunrisepeak merged 1 commit into
mainfrom
feat/index-floor-0.0.85
Jul 8, 2026
Merged

ci: index version floor (min_mcpp 0.0.85) + resolver-grammar strict lint#65
Sunrisepeak merged 1 commit into
mainfrom
feat/index-floor-0.0.85

Conversation

@Sunrisepeak

Copy link
Copy Markdown
Member

P1 of the 0.0.85 adoption train (design: mcpp .agents/docs/2026-07-08-index-version-semantics-and-descriptor-grammar-design.md D2/D3; execution detail in this repo's .agents/docs/2026-07-08-index-side-adoption-plan.md).

  • index.toml: [index] min_mcpp = "0.0.85" — the index→client contract. Travels with the tree (publish_mcpp_index.sh now packs it into the artifact); mcpp ≥ 0.0.85 enforces it at index-open (E0006 + upgrade hint; MCPP_INDEX_FLOOR=ignore debug hatch).
  • validate.yml: MCPP_VERSION 0.0.81 → 0.0.85; lint gains a second validator — mcpp xpkg parse with the pinned binary (strict: unknown mcpp-segment keys fail). Lint's grammar and users' build grammar are now identical by construction; the lua5.4 loadfile check stays (guards the xim side, which executes real Lua).
  • docs: floor mechanism + long-bracket / scan_overrides schema rows.

Rollout rule now mechanical: descriptors needing newer grammar cannot merge until this pin+floor pair moves — "floor first, migration after".

Verified locally: all 42 existing descriptors pass mcpp xpkg parse (strict, 0.0.85) with zero warnings; min_mcpp=9.9.9 fixture → E0006 + resolve stop; floor=0.0.84 → builds; ignore-hatch works.

…ain, P1)

- index.toml: [index] min_mcpp = 0.0.85 — the index→client contract;
  travels with the tree (publish script packs it into the artifact).
  mcpp >= 0.0.85 enforces it at index-open (E0006 + upgrade hint).
- validate.yml: MCPP_VERSION 0.0.81 → 0.0.85; lint gains a second
  validator — `mcpp xpkg parse` (strict) with the PINNED binary, so
  lint's grammar and users' build grammar are identical by construction
  (the lua5.4 loadfile check stays: it guards the xim side, which
  executes real Lua).
- tools/publish_mcpp_index.sh: pack index.toml into the artifact tree.
- docs: floor mechanism + long-bracket / scan_overrides schema rows.

Rollout rule now mechanical: descriptors needing newer grammar cannot
merge until this pin+floor pair moves — 'floor first, migration after'.

Design: mcpp .agents/docs/2026-07-08-index-version-semantics-and-
descriptor-grammar-design.md (D3) + index-side adoption plan (P1).
@Sunrisepeak Sunrisepeak merged commit 277c0ac into main Jul 8, 2026
6 checks passed
@Sunrisepeak Sunrisepeak deleted the feat/index-floor-0.0.85 branch July 8, 2026 12:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant