Adds the repo-side CI enforcement for .mosaic/repo.json (T51 phase 2, map WP5c; spec section 5.4 point 2): a path-conditional Woodpecker step that validates the declaration whenever it, the vendored validator, or the pipeline config changes (manual runs always include it). The step runs the wave-1 validator with --require-v2 — the authoring rule that edited/new declarations must be schema_version 2 — and fails the pipeline on any VALIDATION_ERROR; the 101-arm hermetic hostile-input suite runs alongside so the gate ships with its own instrument. The validator is vendored into the framework tree (spec 5.1 final home) with a provenance header naming the brain source and commit (brain main 515bcbab, PR 28 wave-1 R9 PASS; body verbatim). CI provisions an explicit fixture MOSAIC_HOST_ROOT: the root gate is a runtime anchor (spec 1.2a) and CI has no host — honest configuration, not a guess; grammar, schema, ref grammar, flow, remote normalization, and path grammar all prove in-pipeline. TOOLS-REFERENCE gains the structure section (resident-index discoverability). Local evidence: vendored suite 101/101 green; red cases measured (v1-under-require-v2 rc 1; dot-segment escape rc 1); green control with fixture root OK; enumeration and tools-index guards green.
Adds the repo-side CI enforcement for .mosaic/repo.json (T51 phase 2, map WP5c; spec section 5.4 point 2): a path-conditional Woodpecker step that validates the declaration whenever it, the vendored validator, or the pipeline config changes (manual runs always include it). The step runs the wave-1 validator with --require-v2 — the authoring rule that edited/new declarations must be schema_version 2 — and fails the pipeline on any VALIDATION_ERROR; the 101-arm hermetic hostile-input suite runs alongside so the gate ships with its own instrument. The validator is vendored into the framework tree (spec 5.1 final home) with a provenance header naming the brain source and commit (brain main 515bcbab, PR 28 wave-1 R9 PASS; body verbatim). CI provisions an explicit fixture MOSAIC_HOST_ROOT: the root gate is a runtime anchor (spec 1.2a) and CI has no host — honest configuration, not a guess; grammar, schema, ref grammar, flow, remote normalization, and path grammar all prove in-pipeline. TOOLS-REFERENCE gains the structure section (resident-index discoverability). Local evidence: vendored suite 101/101 green; red cases measured (v1-under-require-v2 rc 1; dot-segment escape rc 1); green control with fixture root OK; enumeration and tools-index guards green.
Path-conditional Woodpecker step validating .mosaic/repo.json on touch:
runs the wave-1 validator with --require-v2 (authoring rule: edited/new
declarations must be schema_version 2; any VALIDATION_ERROR fails the
pipeline) plus the 101-arm hermetic hostile-input suite. Validator vendored
into the framework tree per spec sec5.1 final home (provenance header:
brain main 515bcbab, PR 28 R9 PASS; body verbatim). CI provisions an
explicit fixture MOSAIC_HOST_ROOT — the root gate is a runtime anchor and
CI has no host; grammar/schema/refs/flow/remote/path surface all prove.
Step triggers on .mosaic/repo.json, structure/**, or ci.yml changes
(manual runs always include it). TOOLS-REFERENCE gains the structure
section (resident-index discoverability). Enumeration guard green via the
ci.yml surface (population 68).
The BRAIN example fixture carried the operator's forge namespace
(jason.woltje/mosaic-brain) — operator-identity token on the public
denylist, caught by the sanitization gate in pipeline 2629. Replaced
with a generic example.invalid owner; same direct-flow shape. Suite
101/101 green; sanitization gate green.
rev-code-02
approved these changes 2026-08-24 04:41:50 +00:00
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Adds the repo-side CI enforcement for .mosaic/repo.json (T51 phase 2, map WP5c; spec section 5.4 point 2): a path-conditional Woodpecker step that validates the declaration whenever it, the vendored validator, or the pipeline config changes (manual runs always include it). The step runs the wave-1 validator with --require-v2 — the authoring rule that edited/new declarations must be schema_version 2 — and fails the pipeline on any VALIDATION_ERROR; the 101-arm hermetic hostile-input suite runs alongside so the gate ships with its own instrument. The validator is vendored into the framework tree (spec 5.1 final home) with a provenance header naming the brain source and commit (brain main 515bcbab, PR 28 wave-1 R9 PASS; body verbatim). CI provisions an explicit fixture MOSAIC_HOST_ROOT: the root gate is a runtime anchor (spec 1.2a) and CI has no host — honest configuration, not a guess; grammar, schema, ref grammar, flow, remote normalization, and path grammar all prove in-pipeline. TOOLS-REFERENCE gains the structure section (resident-index discoverability). Local evidence: vendored suite 101/101 green; red cases measured (v1-under-require-v2 rc 1; dot-segment escape rc 1); green control with fixture root OK; enumeration and tools-index guards green.
T51P2WP5CR PASS