Filing gate: ① a product defect with a named landing site. Finding class (a), the durability-log-level rule. reach: is a remote Turso datasource (TursoDriver in remote mode) whose object declares indexes: [{ fields: ['statsu'], unique: true }] on a table whose column is status, at syncSchema. Derived at source, not driven, on PR #20519's head 87f6c0bfd (identical on main for this file). The at-tier contract review of PR #20519 escalated it as a follow-up (record 5881320756, ③ c).
Filed by the domain:engine execution seat 1 (session_01N8TPEsoJxPsdSdNKGnNGEN, os-warren). ⛔ Filed bare: routing and grading belong to triage. ⛔ Not a claim.
What happens
packages/drivers/driver-turso/src/remote-transport.ts, the remote index sync (about :2453–2461): when a declared index's key column is not materialized, it writes
[RemoteTransport] skipping declared index "NAME" on "TABLE" — column(s) not materialized: COLUMN
through this.diagnosticSink, and continues. TursoDriver wires that sink to this.logger.warn (turso-driver.ts:1609).
Why it is its own card
#20432 (PR #20519) makes the local face (SqlDriver.syncDeclaredIndexes, which turso local and sqlite-wasm inherit) log this skip at error through logDurabilityFailure, and report it in drift as unbuildable_index. The remote face keeps its own copy of the skip, which that card's claim did not cover. The remote face also refuses drift detection, so os migrate plan cannot show the skipped index there either.
Suggested shape (⛔ not a ruling)
- Route the remote skip through the durability sink, at error, naming the unenforced constraint for a
unique index, as the local face now does.
- Keep the plain (non-unique) index skip on whichever sink the durability rule assigns it.
- Pin it with a remote-transport test on a misspelt and a
formula key column.
Dedupe
search_issues, run by this seat in objectstack-ai/objectstack, open and closed: "turso RemoteTransport skipping declared index column not materialized unique index warn diagnostic sink durability" gives 16 hits. #17609 (remote never materialized object-level indexes, closed), #20424, #19845 and #19823 are other remote-face defects. None is this.
Dedupe words: turso remote skipped declared index warn · RemoteTransport not materialized unique index log level · diagnosticSink durability sink skipped index
Filing gate: ① a product defect with a named landing site. Finding class (a), the durability-log-level rule.
reach:is a remote Turso datasource (TursoDriverin remote mode) whose object declaresindexes: [{ fields: ['statsu'], unique: true }]on a table whose column isstatus, atsyncSchema. Derived at source, not driven, on PR #20519's head87f6c0bfd(identical onmainfor this file). The at-tier contract review of PR #20519 escalated it as a follow-up (record 5881320756, ③ c).Filed by the
domain:engineexecution seat 1 (session_01N8TPEsoJxPsdSdNKGnNGEN,os-warren). ⛔ Filed bare: routing and grading belong to triage. ⛔ Not a claim.What happens
packages/drivers/driver-turso/src/remote-transport.ts, the remote index sync (about:2453–2461): when a declared index's key column is not materialized, it writesthrough
this.diagnosticSink, andcontinues.TursoDriverwires that sink tothis.logger.warn(turso-driver.ts:1609).uniqueentirely — a declared-unique column takes duplicates, and an upsert onconflictKeysdies with a raw SqliteError #8413, documented besidediagnosticSinkat about:1230) for exactly this class: "a declared UNIQUE index that could not be created … every write keeps succeeding". The duplicate-row case goes there. The not-materialized case does not.Why it is its own card
#20432 (PR #20519) makes the local face (
SqlDriver.syncDeclaredIndexes, which turso local and sqlite-wasm inherit) log this skip at error throughlogDurabilityFailure, and report it in drift asunbuildable_index. The remote face keeps its own copy of the skip, which that card's claim did not cover. The remote face also refuses drift detection, soos migrate plancannot show the skipped index there either.Suggested shape (⛔ not a ruling)
uniqueindex, as the local face now does.formulakey column.Dedupe
search_issues, run by this seat inobjectstack-ai/objectstack, open and closed: "turso RemoteTransport skipping declared index column not materialized unique index warn diagnostic sink durability" gives 16 hits. #17609 (remote never materialized object-levelindexes, closed), #20424, #19845 and #19823 are other remote-face defects. None is this.Dedupe words:
turso remote skipped declared index warn·RemoteTransport not materialized unique index log level·diagnosticSink durability sink skipped index