Commit 74f2f11
`saveMetaItem`'s D1 gate spelled its own `WRITABLE_PACKAGE_REQUIRED` sentence,
which shadowed #8146's hatch-aware create-side emitter on every kernel: D1
refuses on a strictly wider predicate, so every write that would have reached
`SysMetadataRepository.readOnlyBaseCreateError` had already been thrown by D1 —
and D1's sentence carried no hatch clause. An operator with `OS_METADATA_WRITABLE`
set was never told the hatch does not reach package writability.
D1 now calls that emitter (the create-side mirror of #8184's override-side
delegation), computing `hatchOpen` from this class's own memoised reader — the
one the admission limb used. Both named reasons the one-emitter default might
not apply were measured and did not hold: the emitter is static (no repository
instance needed) and both sites already carried the identical ADR-0070 `docs`
pointer.
The emitter gained an optional trailing `name` so the delegated sentence keeps
naming the item; omitted, its output is byte-identical for the direct `put`
callers (promoteDraft / restoreVersion / revertCommit), which were the only
callers reaching the hatch clause at all.
D1's predicate is untouched — no create is newly refused or newly admitted.
Claude-Session: https://claude.ai/code/session_012WMpuAfA2KSdDjGF6tm1bH
Co-authored-by: Claude <noreply@anthropic.com>
1 parent 8a102d0 commit 74f2f11
4 files changed
Lines changed: 458 additions & 13 deletions
File tree
- .changeset
- packages/metadata-protocol/src
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 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 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
11678 | 11678 | | |
11679 | 11679 | | |
11680 | 11680 | | |
| 11681 | + | |
| 11682 | + | |
| 11683 | + | |
| 11684 | + | |
| 11685 | + | |
| 11686 | + | |
| 11687 | + | |
| 11688 | + | |
| 11689 | + | |
| 11690 | + | |
| 11691 | + | |
| 11692 | + | |
| 11693 | + | |
| 11694 | + | |
| 11695 | + | |
| 11696 | + | |
| 11697 | + | |
| 11698 | + | |
| 11699 | + | |
| 11700 | + | |
| 11701 | + | |
| 11702 | + | |
| 11703 | + | |
| 11704 | + | |
| 11705 | + | |
| 11706 | + | |
| 11707 | + | |
| 11708 | + | |
| 11709 | + | |
| 11710 | + | |
| 11711 | + | |
| 11712 | + | |
| 11713 | + | |
| 11714 | + | |
| 11715 | + | |
| 11716 | + | |
| 11717 | + | |
| 11718 | + | |
| 11719 | + | |
11681 | 11720 | | |
11682 | 11721 | | |
11683 | 11722 | | |
11684 | 11723 | | |
11685 | 11724 | | |
11686 | | - | |
11687 | | - | |
11688 | | - | |
11689 | | - | |
11690 | | - | |
11691 | | - | |
| 11725 | + | |
| 11726 | + | |
| 11727 | + | |
| 11728 | + | |
11692 | 11729 | | |
11693 | | - | |
11694 | | - | |
11695 | | - | |
11696 | | - | |
11697 | | - | |
11698 | 11730 | | |
11699 | 11731 | | |
11700 | 11732 | | |
| |||
0 commit comments