From 3f711bf8f51c2eee6600410a6b076fd4a1bf6d64 Mon Sep 17 00:00:00 2001 From: "Matthew T. Hunter" Date: Thu, 30 Jul 2026 22:31:17 -0400 Subject: [PATCH] docs: tick P1, and record the one design change it forced MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Canonical is published and serving; the gate is proven against the real remote in CI as well as locally. The change worth recording is that STANDARD_URL defaults to canonical inside standard.mk rather than being set per adopter, which is not what this plan said. Per-adopter opt-in fails open: a repo that vendors the file and forgets the line has no drift protection and reports that as a notice reading like a pass. Nobody greps for an absent line. Vendoring the file is now what arms it. Also recording the consequence every adopter inherits — `make lint` now requires network — because that is the RFC's deliberate tradeoff for refusing a cache, and P2 and P4 will both meet it. Co-Authored-By: Claude Opus 5 (1M context) Claude-Session: https://claude.ai/code/session_01XLuSsmv88aheh7mNQgBDQK --- README.md | 26 ++++++++++++++++++++++++-- 1 file changed, 24 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index e51b1a4..b42bcb4 100644 --- a/README.md +++ b/README.md @@ -322,14 +322,36 @@ reasoned about. to every adopter at once. **P1 must publish the post-review file**, which also carries `coverage-gate`, `HAS_EXAMPLES` reduced to `test-examples`, and `all` defaulting to `build` where `HAS_C`. -- [ ] **P1 — publish** canonical `standard.mk` in this org; wire the drift gate - live *(just-buildit)* + +- [x] **P1 — publish** canonical `standard.mk` in this org; wire the drift gate + live *(just-buildit)* — **done**, + [just-buildit.github.io#9](https://github.com/just-buildit/just-buildit.github.io/pull/9) + serving at , vendored back into + just-makeit by + [just-makeit#637](https://github.com/just-buildit/just-makeit/pull/637). + The gate is proven against the real remote, in CI as well as locally: a + matching copy passes, a one-character edit fails with the diff. + + One design change from the plan. `STANDARD_URL` **defaults** to canonical + inside `standard.mk` rather than being set per adopter, because opt-in + fails open: a repo that vendors the file and forgets the line has no drift + protection and reports that as a notice reading like a pass, and nobody + greps for an absent line. Vendoring the file is what arms it; deliberate + opt-out is `STANDARD_URL =`, a line that exists and so can be found. + + Consequence, stated because every adopter inherits it: **`make lint` now + requires network.** That is the RFC's tradeoff for refusing a cache, not a + side effect — a Pages outage reddens `lint` org-wide rather than silently + comparing against something older. + - [ ] **P2 — doppler port**: `docs-check` first (deletes the three-way divergence and the double site build in one commit), then `lint-` dispatch, then ghost/backfill/renames *(doppler)* + - [ ] **P3 — convention doc** updated to match, landing *with* P2 — until `standard.mk` exists, the doc describing the old names is still accurate *(doppler)* + - [ ] **P4 — CI port** per repo: call standard targets, delete each inline duplicate in the same commit *(per repo)*