Caching: CultCache.Update, update-with-retry as the golden-path write (golden-path-write-api) #168

Merged
libby merged 5 commits from golden-write/update-with-retry into main 2026-11-13 15:40:35 +00:00

2026-11-13

Libby
Caching README Happy Path runs as written (same-key blind upsert, MessagePackObject), tested; UpdateTests defend the reload-failed conflict, variant apply count, A-B-A, removal, directory LostRace, held instance, gate, ledger
All checks were successful
CultMesh portability and performance / ubuntu-latest reactive semantics and leases (pull_request) Successful in 27m14s
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-11-13 15:12:16 +00:00
Libby
Caching README: Update leads Happy Path; cut four nonexistent surfaces
All checks were successful
CultMesh portability and performance / ubuntu-latest reactive semantics and leases (pull_request) Successful in 29m7s
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-11-13 14:14:54 +00:00
Libby
docs/start: C# update with retry, tested snippet; shared snippet check
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-11-13 14:14:42 +00:00
Libby
Update: pull the home before returning LostRace; UpdateTests
The result's Document is what the cache holds, so a final lost attempt
refreshes the home too. Tests pin lost updates, re-run on fresh value,
bounded attempts, private copy, decline, create race, refusals, variant
store conflict, in-memory race.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-11-13 14:14:42 +00:00
Libby
CultCache.Update<T>: conditional read-apply-commit with bounded retry
Reads the held content version, applies the caller's function to a codec
copy, commits with Expected under the store lock, and re-runs on a lost
race. CultCodec.Clone is the one copy, shared with CultInspectorModel.

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