|
17 | 17 | # stay routed here as directories: the driver still owns a same-category |
18 | 18 | # collision, which is the residue sharding cannot remove. |
19 | 19 | # |
20 | | -# Two entries below are still SINGLE files — spec-changes.json and |
21 | | -# docs/protocol-upgrade-guide.md — and #8344 asked what the driver-less queue does |
22 | | -# to them. MEASURED (2026-08-13, the real in-flight case plus four synthetic pairs, |
23 | | -# each merged in a clone with no merge.os-regen.driver): it never leaves them |
24 | | -# stale-but-clean. Both are sorted unions and an ADR-0087 registration is |
25 | | -# insertion-only, so the queue's text merge either takes both sides — byte-identical |
26 | | -# to the regeneration, gates green — or conflicts outright. It conflicts only when |
27 | | -# the two in-flight entries are ADJACENT in registry sort order; one existing entry |
28 | | -# between them is already enough to merge clean AND current. |
29 | | -# |
30 | | -# Sharding them would not buy back an ejection, which is why they are still single |
31 | | -# files: every conflicting case also conflicts in |
| 20 | +# One entry below is still a SINGLE file — spec-changes.json — and #8344 asked |
| 21 | +# what the driver-less queue does to it. MEASURED (2026-08-13, the real in-flight |
| 22 | +# case plus four synthetic pairs, each merged in a clone with no |
| 23 | +# merge.os-regen.driver, over it and the protocol upgrade guide, then a second |
| 24 | +# committed single file): the queue leaves neither stale-but-clean. Both were sorted |
| 25 | +# unions and an ADR-0087 registration is insertion-only, so the queue's text merge |
| 26 | +# either takes both sides — byte-identical to the regeneration, gates green — or |
| 27 | +# conflicts outright. It conflicts only when the two in-flight entries are ADJACENT |
| 28 | +# in registry sort order; one existing entry between them is already enough to |
| 29 | +# merge clean AND current. |
| 30 | +# |
| 31 | +# Sharding it would not buy back an ejection, which is why it is still a single |
| 32 | +# file: every conflicting case also conflicts in |
32 | 33 | # packages/spec/src/migrations/registry.ts — generated, committed, unsharded, |
33 | 34 | # NOT_DRIVER_MANAGED — and every registration touches it by construction. The table |
34 | 35 | # and the reproduction are in packages/spec/src/migrations/entries/README.md. |
35 | 36 | # |
| 37 | +# docs/protocol-upgrade-guide.md LEFT this list at #22483 because nothing generates |
| 38 | +# it any more. It is a hand-written pointer stub naming the guide's public address, |
| 39 | +# and `gen:upgrade-guide` writes the gitignored docs pages under |
| 40 | +# content/docs/protocol-upgrade/ instead (NOT_DRIVER_MANAGED records that path). A |
| 41 | +# route there was harmful, not idle: the driver kept OURS whole, and the pre-commit |
| 42 | +# discharge then passed it, because `check:upgrade-guide` compares no committed |
| 43 | +# copy — so a branch carrying a generated guide merged the stub away in silence. |
| 44 | +# Unrouted, a merge made from a checkout that carries this file conflicts on the |
| 45 | +# stub. ⚠️ git reads the route from the checkout DOING the merge, so a branch |
| 46 | +# forked before #22483 still defers the guide on its first merge of main; the merged |
| 47 | +# tree has no row to discharge it against, so the next commit and the push are |
| 48 | +# refused instead of passed (measured on PR #22556 with the previous head as the |
| 49 | +# control, both merge directions). |
| 50 | +# |
36 | 51 | # `merge=os-regen` hands those paths to `scripts/git-merge-regen.mjs`, which does |
37 | 52 | # NOT text-merge them. See that file for why it also does not regenerate them |
38 | 53 | # in place (git runs merge drivers BEFORE the sources are merged, so anything |
@@ -173,7 +188,6 @@ packages/spec/src/meta-spelling/meta-url-data.generated.ts merge=os-regen |
173 | 188 | packages/spec/export-origins/** merge=os-regen |
174 | 189 | packages/spec/declaration-map/** merge=os-regen |
175 | 190 | packages/spec/api-surface-signatures.json merge=os-regen |
176 | | -docs/protocol-upgrade-guide.md merge=os-regen |
177 | 191 | docs/audits/2026-07-unknown-key-strictness-ledger.counts/** merge=os-regen |
178 | 192 | content/docs/references/** merge=os-regen |
179 | 193 | content/docs/permissions/system-context.mdx merge=os-regen |
|
0 commit comments