|
18 | 18 | // way. So a `beforeInsert` hook that re-issues or normalises a record number |
19 | 19 | // still loses its write to the one caller that submitted the same value. |
20 | 20 | // |
21 | | -// ⛔ THE SIBLING SEAM IS DELIBERATELY NOT HERE. #14259 named a second one — |
22 | | -// `isCallerSuppliedValue`, behind the two `readonlyWhen` strips — and it is |
23 | | -// WITHHELD pending a maintainer ruling, not forgotten. Measured on this branch: |
24 | | -// threading the record into that predicate turns the existing #9107 pin |
25 | | -// `LOCK 3b` red, because a hook spelled `ctx.input.data.x = ctx.input.data.x` |
26 | | -// is a `set` on the recorded object, so the CALLER's forged value becomes |
27 | | -// hook-owned and survives a TRUE `readonlyWhen` predicate (measured: |
28 | | -// `closed_note` committed `'1999-01-01'` where the lock had stripped it to |
29 | | -// `null`). That is the card's own fork clause — a caller value surviving a TRUE |
30 | | -// predicate — and it goes to the decision inbox, never resolved here. |
| 21 | +// ⛔ THE SIBLING SEAM IS DELIBERATELY NOT HERE, AND IT HAS SINCE BEEN RULED. |
| 22 | +// #14259 named a second one — `isCallerSuppliedValue`, behind the two |
| 23 | +// `readonlyWhen` strips — and maintainer ruling B kept it on VALUE EQUALITY: |
| 24 | +// the divergence from this seam is deliberate, not a port nobody got to. |
| 25 | +// ⛔ The argument is NOT restated here. It lives on `isCallerSuppliedValue`'s |
| 26 | +// docblock (`validation/rule-validator.ts`), and each face carries a pin: |
| 27 | +// `MEASURED: a lone self-assigning hook leaves the CALLER value on the key` |
| 28 | +// (this suite, insert side; `engine-readonly-strip-caller-values.test.ts`, |
| 29 | +// update side) against `LOCK 3b` in |
| 30 | +// `engine-readonly-when-derived-writes.test.ts`. |
31 | 31 | // |
32 | 32 | // ⛔ WHAT THIS SUITE IS NOT, and is written to fail if anyone reads it that |
33 | 33 | // way: it is NOT a relaxation of #5503. The DISCRIMINATOR PAIRS are the |
@@ -348,8 +348,9 @@ describe('seam 2 — the insert-side runtime-owned strip reads PROVENANCE (#1425 |
348 | 348 | // pinned rather than argued: it is the exact shape that forked the |
349 | 349 | // `readonlyWhen` seam out of this PR, whose #9107 pin `LOCK 3b` pins the |
350 | 350 | // OPPOSITE verdict for a STATE lock ("a hook that writes the caller value |
351 | | - // BACK is the caller value, and goes"). #14259's fork clause sends that one |
352 | | - // to the decision inbox; nothing here resolves it. |
| 351 | + // BACK is the caller value, and goes"). That fork was RULED (#14259, |
| 352 | + // maintainer ruling B): the two verdicts are one recorded asymmetry, and |
| 353 | + // `isCallerSuppliedValue`'s docblock carries the argument. |
353 | 354 | // |
354 | 355 | // Why the same mechanism ships on THIS seam: `stripRuntimeOwnedFields` |
355 | 356 | // guards a runtime-owned COLUMN (#5503) — the same class of protection |
|
0 commit comments