Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
21 commits
Select commit Hold shift + click to select a range
2151d9f
fix(db): resume independent subscription demand after abandoned renders
Oct 22, 2026
2975790
chore(db): add subscription startup fix changeset
Oct 22, 2026
75a7d04
docs: require source reading across oracle skill handoffs
Oct 22, 2026
7f2ad8e
docs: clarify migration review references and terminology
Oct 22, 2026
16824f6
fix(db): reject subscription admission during cleanup
Oct 22, 2026
da37bc9
fix(db): preserve subscription ownership across cleanup and resumption
Oct 22, 2026
e852b0a
fix(db): retain surviving demand across interrupted admission
Oct 22, 2026
38eb283
test(db): classify replay demand by subscription ownership
Oct 23, 2026
a39a07d
test(db): enforce generated replay demand reach
Oct 23, 2026
e32ac73
Merge remote-tracking branch 'origin/main' into codex/evaluate-dbclie…
Oct 23, 2026
929c1d4
test(db): verify oracle reach against merged rules
Oct 23, 2026
83bd08d
fix(db): preserve error provenance and partial subscription ownership
Oct 23, 2026
1d1ac01
docs: pin high review evidence to verified implementation
Oct 23, 2026
90a3082
test: enforce independent React receiving witnesses
Oct 23, 2026
f374bdb
fix(db): reject unprepared SSR snapshots and preserve valid hydration
Oct 23, 2026
2d1dacb
fix(db): capture rendered SSR views through hydration
Oct 23, 2026
44ee3f0
fix(db): keep window identity within live-query metadata
Oct 23, 2026
a099182
docs: record SSR review laws and verification
Oct 23, 2026
10e0e6f
fix(db): preserve mixed streaming hydration views
Oct 23, 2026
ce8f99d
test(react-db): count actual hydration receiving paths
Oct 23, 2026
b495540
docs: record mixed streaming hydration evidence
Oct 23, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
34 changes: 24 additions & 10 deletions .agents/skills/oracle-authoring/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,21 +19,35 @@ first. Auditors check the order of your work and penalize shortcuts.
Work in this order when a production change is part of the task:

1. State the law and its authority.
2. Extend the history grammar, driver, or observation until generated
2. Inventory the materially affected public receiving paths and their promised
observation cuts. Include required real-host receiving witnesses in this
pre-edit gate; a controlled core witness does not supply their evidence.
3. Extend the history grammar, driver, or observation until generated
histories reach the state where the law matters. Declare that state with
`createOracleReach` (ORC-015).
3. Run the extended oracle on the unchanged production code and record the RED
failure.
4. Change production, with the oracle running after each attempt.
5. Record the GREEN result and a hostile mutant that fails.
`createOracleReach` (ORC-015) for each required receiving path.
4. Run those comparisons on unchanged production. Record the defect's RED
result and the neighboring guarantees' results. A setup failure or missing
required witness blocks production edits; repair the test path first.
5. Change production, with the oracle running after each attempt.
6. Record the GREEN result and a hostile mutant that fails.

Do not change production before step 3. If a model rule disagrees with
Do not change production before step 4. Retrospective runs or a documented
process gap do not satisfy this gate. If a model rule disagrees with
production, find its authority before you edit either one. A rule that you
change only so that it matches production output is model hacking.

Read [the oracle guide](../../../docs/contributing/oracle-rubric.md),
[the glossary](../../../docs/contributing/glossary.md), and the relevant owner
and limits in [the coverage map](../../../docs/contributing/oracle-coverage.md).
Read [the oracle guide](../../../docs/contributing/oracle-rubric.md) and
[the glossary](../../../docs/contributing/glossary.md) in full, then read the
relevant owner and limits in
[the coverage map](../../../docs/contributing/oracle-coverage.md).

After a handoff or compaction, reopen required sources whose relevant contents
are absent from the current context. A prior agent's statement that it read
them does not supply their definitions. Apply the glossary's model alignment
rule before naming or renaming a state, action, boundary, or observation. Use
canonical terms and declare abstractions that combine or split production
concepts. Delegated agents must do the reading relevant to their own scope.

Follow the subsystem reading requirements in AGENTS.md.

Use the [instrument library](../../../docs/contributing/instruments/index.md)
Expand Down
19 changes: 16 additions & 3 deletions .agents/skills/oracle-review/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,18 @@ Ask both whether the oracle enforces its stated law and whether that is the
right law to promise. A passing test can coexist with a wrong theory; a failing
test can coexist with correct production.

Read [the oracle guide](../../../docs/contributing/oracle-rubric.md),
[the glossary](../../../docs/contributing/glossary.md), and the relevant owner
and limits in [the coverage map](../../../docs/contributing/oracle-coverage.md).
Read [the oracle guide](../../../docs/contributing/oracle-rubric.md) and
[the glossary](../../../docs/contributing/glossary.md) in full, then read the
relevant owner and limits in
[the coverage map](../../../docs/contributing/oracle-coverage.md).

After a handoff or compaction, reopen required sources whose relevant contents
are absent from the current context. A prior agent's statement that it read
them does not supply their definitions. Apply the glossary's model alignment
rule before naming or renaming a state, action, boundary, or observation. Use
canonical terms and declare abstractions that combine or split production
concepts. Delegated agents must do the reading relevant to their own scope.

Follow the subsystem reading requirements in AGENTS.md. Guide conformance is
judged by its ORC requirements, not by use of these instruments or headings.

Expand Down Expand Up @@ -59,6 +68,10 @@ Report each one as a finding:

- A production change without a RED result from the extended oracle on the
parent commit.
- Required public receiving paths tested only after the production repair,
or aggregate reach that hides an unexercised receiving path. Check the
pre-edit inventory, actual comparison results, and their order. Retrospective
evidence or documentation of a gap does not satisfy the pre-edit gate.
- A model rule that changed to match production output without an authority.
- A claim about a state that no declared reach shows generated histories enter.
- A skipped, narrowed, or relaxed comparison without a coverage-map entry and a
Expand Down
24 changes: 24 additions & 0 deletions .changeset/resume-independent-subscription-demand.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
---
'@tanstack/db': patch
'@tanstack/react-db': patch
'@tanstack/svelte-db': patch
'@tanstack/react-router-with-db': patch
---

Resume Collection sync when a new subscriber follows a suspended render, while preserving cleanup during startup.

Reject ordinary subscriptions and deferred acquisition resumption during active cleanup. Effects created during that interval still return disposed handles.

Release partial observer and pooled-query subscriptions when setup fails or cleanup interrupts startup. Resumed subscriptions release abandoned render deferrals without restoring retired ownership. Admission checks retain an existing cleanup promise until a replacement sync run starts.

Subscribers that survive cleanup during admission retain demand for an explicit restart. Cleanup in a first-demand callback does not start a replacement implicitly.

Keep ordinary hook errors readable when deferred sync startup records an error. Explicit preloads still report source startup failures. Release channels acquired before synchronous cleanup registration or observer attachment fails.

Reject SSR reads of incidental server-only rows or readiness with an actionable preparation error. Preserve cold loading and normalized source hydration, consume prepared infinite-query snapshots, and register warm Suspense results for streaming.

Capture prepared SSR query rows and readiness at render time. Keep loading captures separate from completed preloads, preserve pending streams, and allow browser writes before hydration. Support prepared non-streaming Suspense, require portable opaque query identity, and include limit and offset in explicit-key result identity.

Keep an ordinary reader's initial loading view when a Suspense sibling completes the same streaming query. Forward replacement query records through the Router stream without discarding the earlier hydration view.

Preserve server snapshots for later-hydrating boundaries after a sibling commits. Wait for missing streamed results instead of rendering local rows during hydration.
2 changes: 2 additions & 0 deletions docs/contributing/glossary.md
Original file line number Diff line number Diff line change
Expand Up @@ -206,6 +206,8 @@ Use nouns for state and verbs for transitions:
- A sync transaction **applies** when its writes and events become visible.
- A replay or repair **publishes** one coherent public snapshot.
- Cleanup start **invalidates** a sync run and **closes** restart admission.
Ordinary subscription admission and deferred acquisition resumption **throw**
during active cleanup without changing subscriber ownership.
Cleanup **settles** after adapter cleanup settles and the Collection publishes
`cleaned-up`. Restart then **starts** a new sync run.
- Truncate replay **replaces** source state inside the current sync run and
Expand Down
Loading
Loading