Commit 4393318
docs(metadata-protocol): the create-strip aggregation states what the tree does, not a premise it falsifies (#17293)
The docblock on `mergeDroppedFieldEvents` justified `createManyData`'s
aggregated `droppedFields` with a second, falsified reason: that the
create-side static-`readonly` strip is "schema-uniform — every row drops the
same set". Maintainer ruling C (#14147) falsifies it. The strip runs inside
`engine.insert`, after `beforeInsert`, and exempts keys a hook itself assigned
— indexed per row at the call site
(`hookWrittenKeys: rowHookWrittenKeys[i]`, packages/objectql/src/engine.ts),
so a hook that stamps a protected key on some rows and not others makes those
rows drop different sets.
The first reason the docblock already gave is the correct one and is the one
`packages/spec` kept when the sibling carrier was corrected: the
`{ object, records, count }` response has no per-row slot, so a union is the
only view it can represent. The shape is unchanged; only the justification and
the reader guidance move. Reader guidance matches the landed spec wording —
read a name as "at least one row dropped this field", not "every row did".
Three carriers in this package, judged by claim rather than by spelling: the
docblock, the bulk test's header comment, and a test TITLE that named the
pinned behaviour by the falsified premise. The test's assertions are untouched
— the aggregate is still right for the first reason.
Claude-Session: https://claude.ai/code/session_01XTBcV7zZHmokdyQgXjbyEU
Co-authored-by: Claude <noreply@anthropic.com>1 parent 386de16 commit 4393318
2 files changed
Lines changed: 25 additions & 9 deletions
Lines changed: 5 additions & 2 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
10 | 10 | | |
11 | 11 | | |
12 | 12 | | |
13 | | - | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
14 | 17 | | |
15 | 18 | | |
16 | 19 | | |
| |||
87 | 90 | | |
88 | 91 | | |
89 | 92 | | |
90 | | - | |
| 93 | + | |
91 | 94 | | |
92 | 95 | | |
93 | 96 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1873 | 1873 | | |
1874 | 1874 | | |
1875 | 1875 | | |
1876 | | - | |
1877 | | - | |
1878 | | - | |
1879 | | - | |
1880 | | - | |
| 1876 | + | |
| 1877 | + | |
| 1878 | + | |
| 1879 | + | |
| 1880 | + | |
| 1881 | + | |
| 1882 | + | |
| 1883 | + | |
| 1884 | + | |
| 1885 | + | |
| 1886 | + | |
| 1887 | + | |
| 1888 | + | |
| 1889 | + | |
| 1890 | + | |
| 1891 | + | |
| 1892 | + | |
| 1893 | + | |
1881 | 1894 | | |
1882 | | - | |
1883 | | - | |
| 1895 | + | |
| 1896 | + | |
1884 | 1897 | | |
1885 | 1898 | | |
1886 | 1899 | | |
| |||
0 commit comments