Skip to content

test(server): pin mutation/command error paths with wire-level tests#11

Merged
grrowl merged 1 commit into
mainfrom
fix/001-server-error-path-tests
Jun 13, 2026
Merged

test(server): pin mutation/command error paths with wire-level tests#11
grrowl merged 1 commit into
mainfrom
fix/001-server-error-path-tests

Conversation

@grrowl

@grrowl grrowl commented Jun 13, 2026

Copy link
Copy Markdown
Owner

Lands the audit's plan-001 error-path coverage on main (for the 0.3.2 patch), branched fresh off main rather than feat/ssr.

Pins three load-bearing server invariants via wire-level tests: mutation atomicity (failed op leaves no partial state), command error rejection paths, and the retention-floor reset+snapshot path.

Main-scoping note: the feat/ssr original included a readSyncSnapshot case; that method is SSR-only and absent on main, so it's omitted here and returns when feat/ssr rebases onto this.

Validated locally against main + published @tanstack/db 0.6.5: typecheck + full suite (151 passed) + build all green.

Part of the 0.3.2 bug-fix batch (audit follow-up). Supersedes the feat/ssr-targeted PR #4.

🤖 Generated with Claude Code

Targets main (published @tanstack/db). The SSR-only "readSyncSnapshot"
case from the feat/ssr original is omitted here — that method does not
exist on main; it returns when feat/ssr rebases onto this.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@grrowl grrowl merged commit 7867fa5 into main Jun 13, 2026
1 check passed
grrowl added a commit that referenced this pull request Jun 13, 2026
Bug-fix batch from the deep-audit follow-up (audit-excluded SSR topic aside):
client reconnect-wedge fix (#12), wire-input hardening + error sanitization
(#15, ADR-0012), catch-up N+1 batching (#14), plus expanded error/wire test
coverage (#11) and dead-code/identifier-quoting cleanup (#13).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
grrowl added a commit that referenced this pull request Jun 13, 2026
- transport: express the failed-open reconnect recovery (#12) via the
  existing scheduleReconnect() rather than the inline form main carried
  (main had no such method; feat/ssr does) — same behavior, one path.
- regenerate package-lock against the merged package.json (0.4.0-dev.0,
  vendored PR-1564 tarballs).

The 0.3.2 fixes (#11#15) now coexist with the SSR feature: readSyncSnapshot
+ readChangesSinceFor + wire guards in sync-do; highWaterSeq + per-table
indexed reads + quoted trigger DDL in changes; ADR index carries 0011+0012.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
grrowl added a commit that referenced this pull request Jun 13, 2026
- transport: express the failed-open reconnect recovery (#12) via the
  existing scheduleReconnect() rather than the inline form main carried
  (main had no such method; feat/ssr does) — same behavior, one path.
- regenerate package-lock against the merged package.json (0.4.0-dev.0,
  vendored PR-1564 tarballs).

The 0.3.2 fixes (#11#15) now coexist with the SSR feature: readSyncSnapshot
+ readChangesSinceFor + wire guards in sync-do; highWaterSeq + per-table
indexed reads + quoted trigger DDL in changes; ADR index carries 0011+0012.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant