Skip to content

Commit bfeea14

Browse files
committed
test(core): classify the moved reference check in the second-object read census
engine-referential-integrity.ts now holds the referenceTargetOf call that assertReferencesResolve made in engine.ts, so the census in second-object-read-exposure.pin.test.ts gets a not-a-served-read row for it, and the engine.ts row's `also` text drops the reference-existence probe, whose arbiter call no longer lives there. Co-authored-by: Claude <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01KiAsjPtReu1tmXvCEd8f7R
1 parent b1f3252 commit bfeea14

1 file changed

Lines changed: 8 additions & 1 deletion

File tree

‎packages/core/src/security/second-object-read-exposure.pin.test.ts‎

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -138,7 +138,6 @@ const CALLERS: Record<string, Classification> = {
138138
read: "the expansion sub-read (`ObjectQL.expandRelatedRecords`), for the data door's `$expand`",
139139
decidedIn: 'packages/metadata-protocol/src/protocol-query-validation.ts',
140140
also:
141-
'the write-path reference-existence probe (`referenceExists`: whether a stored id resolves, no field) and ' +
142141
'the validation-predicate reads (`resolvePredicateRelated`: a pass/fail verdict, the value never served). ' +
143142
"The engine's privileged callers (a flow's `config.expand`, a hook's read) never pass the door, by design.",
144143
},
@@ -210,6 +209,14 @@ const CALLERS: Record<string, Classification> = {
210209
kind: 'not-a-served-read',
211210
reason: "resolves a seed's references at install, under the system identity; serves nothing to a caller",
212211
},
212+
// [#25522 cut 10] The write-path reference check, moved out of engine.ts.
213+
'packages/objectql/src/engine-referential-integrity.ts': {
214+
kind: 'not-a-served-read',
215+
reason:
216+
'the write-path reference-existence check (`assertReferencesResolve`): it asks whether a caller-supplied id ' +
217+
"resolves on the target (the engine's `referenceExists` probe) and answers `reference_not_found` or nothing, " +
218+
'never a field of the target',
219+
},
213220
'packages/objectql/src/integrity/dangling-reference-audit.ts': {
214221
kind: 'not-a-served-read',
215222
reason: 'an integrity audit: it probes whether a stored id resolves and reports ids, never a field of the target',

0 commit comments

Comments
 (0)