Repository navigation
Commit 90add55
committed
docs(changeset): answer the ADR-0087 disposition question for #12603
check-adr-0087-registration flagged the changeset as declaring a breaking
change (the BREAKING-CHANGE-footer regex matched an ordinary hard-wrapped
sentence starting "breaking change does not burn a major version...") with
no adr-0087: disposition marker. Whatever tripped the regex, the underlying
verdict is correct on the merits -- this changeset does argue an accept-set
narrowing -- so the fix is to answer the question, not to reword around it.
Category: no-migration-prescription, verified against the real predicates
(scripts/check-adr-0087-registration.mjs: parseChangeset/hasMigrationPrescription)
rather than assumed:
- hasMigrationPrescription(body) is false both before and after adding the
marker -- the changeset's "**Migration.**" paragraph is prose guidance
("use a string key instead"), not a heading, an arrow rewrite, a FROM/TO
label, or a rewrite table, so it never sets framedSection or matches
REWRITE_RE.
- runtime-interface-only does not apply and was ruled out mechanically, not
just judgment: exportedTypeDeclaration only recognizes an exported
interface/type/class/enum ("const/function are absent on purpose -- this
category is about a TYPE surface"), and every symbol this diff touches
(installFlatInput, refuseSymbolPayloadKey) is a private function; the one
exported function in the file whose behaviour changed (wrapDeclarativeHook)
had no type-declaration change, only a Proxy trap's runtime behaviour, so
naming it would be a category the gate's own predicate cannot verify true.
ADR-0087 addendum (2026-08-13) authorizes the category: "no-migration-
prescription -- REFUSED when the changeset's own body carries a migration
prescription" -- ctx.input carries no spec/Zod field, object definition, or
stored representation for objectstack migrate meta to act on; a symbol key
was never a declarable metadata surface in the first place, so there is
nothing here for a migration to rewrite.
Part of #12603
Claude-Session: https://claude.ai/code/session_01LZbWd2jNV1FErXTPSS4Dry1 parent 651b988 commit 90add55
1 file changed
Lines changed: 2 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
56 | 56 | | |
57 | 57 | | |
58 | 58 | | |
| 59 | + | |
| 60 | + | |
0 commit comments