CanonicalTable
Defined in: packages/contracts/src/fingerprint.ts:27
Properties
Section titled “Properties”columns
Section titled “columns”columns:
CanonicalColumn[]
Defined in: packages/contracts/src/fingerprint.ts:32
consistencyGroup
Section titled “consistencyGroup”consistencyGroup:
string|null
Defined in: packages/contracts/src/fingerprint.ts:52
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:28
localPrimaryKey
Section titled “localPrimaryKey”localPrimaryKey:
string[] |null
Defined in: packages/contracts/src/fingerprint.ts:31
managedFields
Section titled “managedFields”managedFields:
object[]
Defined in: packages/contracts/src/fingerprint.ts:45
applyOn
Section titled “applyOn”applyOn:
string[]
field:
string
strategy
Section titled “strategy”strategy:
string
mode:
string
Defined in: packages/contracts/src/fingerprint.ts:29
primaryKey
Section titled “primaryKey”primaryKey:
string[]
Defined in: packages/contracts/src/fingerprint.ts:30
projection
Section titled “projection”projection: {
journalTable:string|null;omitColumns:string[];overlayTable:string|null;syncedTable:string|null; } |null
Defined in: packages/contracts/src/fingerprint.ts:33
retention
Section titled “retention”retention:
string
Defined in: packages/contracts/src/fingerprint.ts:59
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: {
electricTable:string|null;rowFilter:CanonicalRowFilter|null;shapeKey:string;tableName:string; } |null
Defined in: packages/contracts/src/fingerprint.ts:39