cultcache-ts: update-with-retry (update-with-retry-ts) #169

Merged
libby merged 7 commits from golden-write/update-with-retry-ts into main 2026-11-13 19:28:57 +00:00

2026-11-13

Libby
cultcache-ts store: an identical rewrite keeps only the stamp, the writer's type and catalog still land; the push result must parse as a stamp; CHANGELOG states the departure from C#
All checks were successful
CultMesh portability and performance / ubuntu-latest reactive semantics and leases (pull_request) Successful in 22m4s
Fixes variants:finding:cut-update-with-retry-ts.s3.identical-drops-writer-catalog and .identical-rule-undeclared.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-11-13 18:49:12 +00:00
Libby
cultcache-ts store: a rewrite of identical content keeps its stamp and version; the push result is used only if it is a stamp
Some checks failed
CultMesh portability and performance / ubuntu-latest reactive semantics and leases (pull_request) Failing after 21m14s
Fixes variants:finding:cut-update-with-retry-ts.s2.flush-remints-unchanged-records and .push-result-unvalidated (ruling variants:ruling:storedat-on-change).

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-11-13 17:02:19 +00:00
Libby
cultcache-ts update: the legacy-global refusal is one rule at read and write, a store attached mid-apply loses the race, put installs the stamp the store wrote
Some checks failed
CultMesh portability and performance / ubuntu-latest reactive semantics and leases (pull_request) Has been cancelled
Fixes variants:finding:cut-update-with-retry-ts.s1.*: global-key-skips-legacy-refusal,
attach-midflight-blind-push, put-held-storedat-diverges, null-decline-unpinned,
maxattempts-bound-kills-by-hang, storeless-othertype-guard-unpinned, and the
9999-12-31 stamp edge (RangeError, nothing written).

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-11-13 16:32:11 +00:00
Libby
cultcache-ts docs: update with retry in the start guide, README and changelog
Some checks failed
CultMesh portability and performance / ubuntu-latest reactive semantics and leases (pull_request) Has been cancelled
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-11-13 16:09:42 +00:00
Libby
cultcache-ts: update is conditional and retried; the blind update is gone
update and updateGlobal read the record and its content version from the
store, apply to a fresh copy, commit through the store's commitIf and run
again on a lost race, returning updated, declined or lostRace. A cache with
no store compares the held entry. put stays the blind write.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-11-13 16:09:42 +00:00
Libby
cultcache-ts store: content version, read, commitIf, storedAt re-mint
The single-file store reports a record with its content version (SHA-256 of
the persisted encoding, equal to the C# reference's on the content-version
vector), commits conditionally under its write lock, and stamps a write that
replaces a record strictly later than it.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-11-13 16:01:54 +00:00
Libby
Caching tests: content-version vector, written by the C# reference
store.cc and versions.msgpack pin the content version of a stored record
(SHA-256 of its persisted encoding) for other runtimes to match.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-11-13 16:00:09 +00:00