mirror of
https://github.com/fabro-sh/fabro.git
synced 2026-09-15 23:32:46 +00:00
Drop the unreachable active-run mismatch guard that was copied into load_run_projection: the active-runs map is only ever inserted under the handle's own run ID, so the check could never fire. Remove it from the two pre-existing sites too and delete matches_run. Trim install_in_memory_state to take only the committed projection, since the event envelope duplicated last_seq and the inner scope only existed to release the lock before the now-removed shared cache update. Add a From impl so RunDatabase::build no longer hand-builds EventProjectionCache, and rename projected_state_locked to match its projection_snapshot sibling. In fabro-server, have reject_if_archived and ensure_run_exists read the run summary row instead of replaying the full event history for inactive runs; the summary is written in the same transaction as the event. Fold the repeated store-reopen fixtures in fabro-store and fabro-server tests into helpers, and fix a stale comment about the deleted shared projection cache. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| fabro-cli | ||
| fabro-mcp-server | ||
| fabro-server | ||
| fabro-spa | ||