CanonicalTable
Defined in: packages/contracts/src/fingerprint.ts:35
Properties
Section titled “Properties”columns
Section titled “columns”columns:
CanonicalColumn[]
Defined in: packages/contracts/src/fingerprint.ts:40
consistencyGroup
Section titled “consistencyGroup”consistencyGroup:
string|null
Defined in: packages/contracts/src/fingerprint.ts:70
Consistency group (ADR-0009 decision 2). Part of the fingerprint because it decides which
subscription-state row a table persists under: moving a table between groups must shift the
fingerprint (forcing a cache rebuild + subscription reset) and surface in the diff gate. null
= the default singleton group.
key:
string
Defined in: packages/contracts/src/fingerprint.ts:36
localPrimaryKey
Section titled “localPrimaryKey”localPrimaryKey:
string[] |null
Defined in: packages/contracts/src/fingerprint.ts:39
managedFields
Section titled “managedFields”managedFields:
object[]
Defined in: packages/contracts/src/fingerprint.ts:63
applyOn
Section titled “applyOn”applyOn:
string[]
field:
string
strategy
Section titled “strategy”strategy:
string
mode:
string
Defined in: packages/contracts/src/fingerprint.ts:37
primaryKey
Section titled “primaryKey”primaryKey:
string[]
Defined in: packages/contracts/src/fingerprint.ts:38
projection
Section titled “projection”projection: {
journalTable:string|null;omitColumns:string[];overlayTable:string|null;syncedTable:string|null; } |null
Defined in: packages/contracts/src/fingerprint.ts:41
retention
Section titled “retention”retention:
string
Defined in: packages/contracts/src/fingerprint.ts:77
Retention (ADR-0021). Part of the fingerprint because it changes the cluster DDL — an ephemeral
table’s whole cluster is emitted as TEMP/pg_temp — so flipping persistent↔ephemeral must force a
cache rebuild + subscription reset. (Subscription timing is NOT included: it is pure runtime
orchestration over identical tables and needs no rebuild.)
shape: {
physicalTable:string|null;rowFilter:CanonicalRowFilter|null;scope:string[] |null;shapeKey:string;tableName:string;where:string|null; } |null
Defined in: packages/contracts/src/fingerprint.ts:47
Union Members
Section titled “Union Members”Type Literal
Section titled “Type Literal”{ physicalTable: string | null; rowFilter: CanonicalRowFilter | null; scope: string[] | null; shapeKey: string; tableName: string; where: string | null; }
physicalTable
Section titled “physicalTable”physicalTable:
string|null
rowFilter
Section titled “rowFilter”rowFilter:
CanonicalRowFilter|null
scope:
string[] |null
Shared-tier scope columns, in declaration order — the order parameterizes the family.
shapeKey
Section titled “shapeKey”shapeKey:
string
tableName
Section titled “tableName”tableName:
string
where:
string|null
The native static predicate, canonicalized in full.
Unlike customPredicate, this one is visible: an AST can be hashed, where a closure could only
ever be fingerprinted by its presence. So the revision footgun does not apply here — editing
a native where shifts the fingerprint by itself, and a consumer cannot forget to say so.
null