32 Commits

Author SHA1 Message Date
Claude (dbsp-threads) 9c10c7cf6b fix(incremental): a dead unit is dropped inside catch_unwind; pool drop joins deterministically; the leaf's more is pinned
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VdfEGXA7aJ6ftMsCc9PJze
2026-10-10 22:06:33 -07:00
Claude (dbsp-threads) f5d204dc51 Merge dbsp/zset-edge into dbsp/sched
# Conflicts:
#	context/test-evidence/zset.md
2026-10-10 21:59:40 -07:00
Claude (dbsp-threads) 6d7cd481f9 fix(zset): a new edge receiver seeds its request tokens from a fresh base; the late-reply history polls one frame at a time
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VdfEGXA7aJ6ftMsCc9PJze
2026-10-10 21:59:31 -07:00
Claude (dbsp-threads) d6c99c3527 fix(incremental): a panicking turn buries its unit instead of hanging the pool; pool workers counted and stopped on drop; two untested more-clauses settled
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VdfEGXA7aJ6ftMsCc9PJze
2026-10-10 21:45:40 -07:00
Claude (dbsp-threads) 203dc5f3f7 fix(zset): edge counters survive a restart of either end (merge fixes)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VdfEGXA7aJ6ftMsCc9PJze
2026-10-10 21:35:15 -07:00
Claude (dbsp-threads) 92c7875673 Merge dbsp/zset-edge into dbsp/sched
# Conflicts:
#	context/test-evidence/zset.md
#	crates/zset/src/edge.rs
2026-10-10 21:33:54 -07:00
Claude (dbsp-threads) 2ee4fee32f chore(zset): drop the proptest regressions the injected rivals wrote
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VdfEGXA7aJ6ftMsCc9PJze
2026-10-10 21:33:28 -07:00
Claude (dbsp-threads) 5344d287a9 test(zset): the edge over a hostile network, and the cases the review found
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VdfEGXA7aJ6ftMsCc9PJze
2026-10-10 21:33:21 -07:00
Claude (dbsp-threads) 5c577cddb1 Merge dbsp/zset-send into dbsp/zset-edge
# Conflicts:
#	context/test-evidence/zset.md
2026-10-10 21:26:54 -07:00
Claude (dbsp-threads) ce6e36112d fix(zset): pin every handle check, make handles invariant, test not-Sync, document the cost and the FFI thread state
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VdfEGXA7aJ6ftMsCc9PJze
2026-10-10 21:26:42 -07:00
Claude (dbsp-threads) 491f47d33c fix(zset): edge receivers join by token-matched answers, refuse poll in a transaction, and re-ask on a new epoch
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VdfEGXA7aJ6ftMsCc9PJze
2026-10-10 21:20:01 -07:00
Claude (dbsp-threads) 4ba0cf196e feat(incremental): a scheduler runs sub-circuits on a worker pool; the aggregate and grid stages placed on two units
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VdfEGXA7aJ6ftMsCc9PJze
2026-10-10 21:00:10 -07:00
Claude (dbsp-threads) c2598f0c60 feat(zset): a stamped, coalescing delta edge between two circuits
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VdfEGXA7aJ6ftMsCc9PJze
2026-10-10 20:50:07 -07:00
Claude (dbsp-threads) 5d7a3423c2 docs(zset): keep comment runs to two lines; drop the compile_fail doctests (improvise-dbsp-threads)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VdfEGXA7aJ6ftMsCc9PJze
2026-10-10 20:38:09 -07:00
Claude (dbsp-threads) 49d9552476 refactor(zset): a circuit is Send; edge values live in an owned arena and handles are ids
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VdfEGXA7aJ6ftMsCc9PJze
2026-10-10 20:32:37 -07:00
Claude (zset-rollback) 8b0b715213 fix(zset): mark a rebuild chunk's push as a step so a panicking push is counted (improvise-bw4p.5)
Also renames the MemTrace clone-panic test to what it asserts.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VdfEGXA7aJ6ftMsCc9PJze
2026-10-10 18:28:18 -07:00
Claude (zset-rollback) b2445fed97 test(zset): split-tick rollback, integrate and step_continue costs; docs and evidence for the review of #355 (improvise-bw4p.5)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VdfEGXA7aJ6ftMsCc9PJze
2026-10-10 18:14:59 -07:00
Claude (zset-rollback) 4303af5a1f fix(zset): clone a log entry before the change it describes and make MemTrace::apply panic-safe (improvise-bw4p.5)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VdfEGXA7aJ6ftMsCc9PJze
2026-10-10 18:14:59 -07:00
Claude (zset-rollback) e026d77a02 fix(zset): count the rollbacks that undid a step so a Rebuild cannot outlive its chunks (improvise-bw4p.5)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VdfEGXA7aJ6ftMsCc9PJze
2026-10-10 18:14:59 -07:00
Claude (zset-rollback) b1662f2e88 fix(zset): a rollback that took a rebuild's chunks interrupts the job for good (improvise-bw4p.5)
A monotone count of rollbacks that undid a step, recorded by the job before its first chunk.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VdfEGXA7aJ6ftMsCc9PJze
2026-10-10 18:14:52 -07:00
Claude (zset-rollback) 51438911e8 docs(context): zset transactions, the bound rebuild and the borrowed piece; evidence (improvise-bw4p.5)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VdfEGXA7aJ6ftMsCc9PJze
2026-10-10 17:16:43 -07:00
Claude (zset-rollback) 3dafc2fa41 feat(zset): Circuit::begin, commit and rollback undo a failed step (improvise-bw4p.5)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VdfEGXA7aJ6ftMsCc9PJze
2026-10-10 17:11:29 -07:00
Claude (zset-rollback) 44fc3ead7c fix(zset): a Rebuild is bound to the circuit its input came from (improvise-bw4p.12)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VdfEGXA7aJ6ftMsCc9PJze
2026-10-10 17:04:24 -07:00
Claude (zset-rollback) 7bca7965ca perf(zset): an eval borrows its input and a stream keeps a whole only while a tick is split (improvise-bw4p.11)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VdfEGXA7aJ6ftMsCc9PJze
2026-10-10 17:03:14 -07:00
Claude (dbsp-circuit) 66898d81e4 fix(zset): current() is the whole tick, a split rebuild tick is refused, later ticks are tested (improvise-bw4p.1)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VdfEGXA7aJ6ftMsCc9PJze
2026-10-10 12:31:06 -07:00
Claude (dbsp-circuit) 0849981ae1 fix(zset): a chunked rebuild is one tick, empty groups have no row, a last chunk is Done (improvise-bw4p.1)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VdfEGXA7aJ6ftMsCc9PJze
2026-10-10 12:06:46 -07:00
Claude (dbsp-circuit) ba17f92bc9 style(zset): satisfy clippy and the comment cap (improvise-bw4p.1)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VdfEGXA7aJ6ftMsCc9PJze
2026-10-10 11:48:21 -07:00
Claude (dbsp-circuit) 42ee9bac98 feat(zset): the circuit, incremental operators, traces and resumable rebuild (improvise-bw4p.1)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VdfEGXA7aJ6ftMsCc9PJze
2026-10-10 11:44:20 -07:00
Claude (adr009-zset) 6de889a116 test(zset): reach the overflow branches of sub and scale, and correct the policy's reason (improvise-tk51)
Adds sub and scale(-1) overflow examples and an i128-oracle property over
near-limit weights; injecting wrapping_{add,sub,mul,neg} now fails named
tests. context/code/zset.md no longer claims wrapping breaks retraction.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VdfEGXA7aJ6ftMsCc9PJze
2026-10-09 23:57:04 -07:00
Claude (adr009-zset) 069d56bd9f fix(zset): a - a is zero at i64::MIN, and the partial group is stated (improvise-tk51)
Answers Copilot (SubAssign negated before consulting the held weight) and
Codex (checked arithmetic makes associativity order-dependent at the i64
boundary; documented as the intended policy and pinned by a test).

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VdfEGXA7aJ6ftMsCc9PJze
2026-10-09 23:40:15 -07:00
Claude (adr009-zset) 1bb73cbe4f docs(zset): the reasoning, the evidence and the wasm gate entry (improvise-tk51)
Registers zset in nix/ci.nix's wasmCrates and the doc site, shortens the
comment runs, and fixes the clippy findings in the test crate.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VdfEGXA7aJ6ftMsCc9PJze
2026-10-09 23:03:32 -07:00
Claude (adr009-zset) e15b285822 feat(zset): the Z-set group, map, filter, distinct and the stream operators (improvise-tk51)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VdfEGXA7aJ6ftMsCc9PJze
2026-10-09 22:57:39 -07:00