You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
refactor(sdk)!: restructure query builder + command naming to match new API routes #199
SDK ergonomics input from nas-observability dogfooding (jfwoods, 2026-05-05) — two friction points worth folding into the query-builder restructure:
liveQuery discoverability — it lives on QueryBuilder (.select().liveQuery(...)), not on TableRef, but live-streaming is the most common reason users reach for .from(table). Consider a TableRef.liveQuery(...) shorthand, or at least document the chain in the TableRef docstring.
Database constraint friendliness — DB extends Record<string, Record<string, unknown>> rejects the natural interface MyDB { table: MyRow } (no index signature), forcing a manual [t: string]: Record<string, unknown>. Either relax to a structural shape explicit-key interfaces satisfy, or document the workaround prominently.
Triage note — one constraint to carry into this restructure:#483 is an open, present-tense contract defect in the current builder. selectAll() preserves previously selected columns and select() preserves the selectAll state, so select('page').selectAll() silently changes the projection and selectAll().count() reaches the server and 400s. The docs already claim these are mutually exclusive.
#483 was considered for folding into this issue and kept discrete — it's live today, and this restructure has no timeline. But whichever lands first, the other has to agree: if this restructure ships before #483 is fixed, the new builder needs to enforce (or explicitly document) that exclusivity rather than inherit the current ambiguity.
Activity
refactor(sdk)!: remove WebSockets + consolidate tooling/coverage (#190)
EricAndrechek commentedon Jun 4, 2026
SDK ergonomics input from nas-observability dogfooding (jfwoods, 2026-05-05) — two friction points worth folding into the query-builder restructure:
liveQuerydiscoverability — it lives onQueryBuilder(.select().liveQuery(...)), not onTableRef, but live-streaming is the most common reason users reach for.from(table). Consider aTableRef.liveQuery(...)shorthand, or at least document the chain in theTableRefdocstring.Databaseconstraint friendliness —DB extends Record<string, Record<string, unknown>>rejects the naturalinterface MyDB { table: MyRow }(no index signature), forcing a manual[t: string]: Record<string, unknown>. Either relax to a structural shape explicit-key interfaces satisfy, or document the workaround prominently.fix(sdk): stop hardcoding received_timestamp in default query order (#…
EricAndrechek commentedon Aug 25, 2026
Triage note — one constraint to carry into this restructure: #483 is an open, present-tense contract defect in the current builder.
selectAll()preserves previously selected columns andselect()preserves theselectAllstate, soselect('page').selectAll()silently changes the projection andselectAll().count()reaches the server and 400s. The docs already claim these are mutually exclusive.#483 was considered for folding into this issue and kept discrete — it's live today, and this restructure has no timeline. But whichever lands first, the other has to agree: if this restructure ships before #483 is fixed, the new builder needs to enforce (or explicitly document) that exclusivity rather than inherit the current ambiguity.
Related: #483.
Triage note from the pm-triage routine, 2026-08-25.