host P0.3b: durable flow log — survives restart (LIVE-VERIFIED)
The driver now persists each effect record to the blog store (string-keyed to dodge the keyword/ persist top-level split), and host/blog-load-flowlog! rebuilds the in-memory log on boot (wired into serve.sh after load-edges!). So /flows survives a restart — closing the P0.3 gap. LIVE PROOF: published a post on blog.rose-ash.com → /flows showed validate+notify → RESTARTED the container (in-memory log lost) → /flows STILL showed them, reloaded from the durable store. Round-trip also covered by a conformance test (persist → clear → reload → identical). blog 208/208, full host conformance 599/599. Note: whole-list rewrite per effect — fine at P0 volume, cap/rotate later. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -149,6 +149,11 @@ EPOCH=1
|
||||
echo "(epoch $EPOCH)"
|
||||
echo "(eval \"(host/blog-load-edges!)\")"
|
||||
EPOCH=$((EPOCH+1))
|
||||
# P0.3b: rebuild the in-memory publish flow log from the durable store, so /flows
|
||||
# survives a restart (the driver persists each effect record under "flowlog").
|
||||
echo "(epoch $EPOCH)"
|
||||
echo "(eval \"(host/blog-load-flowlog!)\")"
|
||||
EPOCH=$((EPOCH+1))
|
||||
# Sessions on the DURABLE store, LAZILY: only a logged-in session (one that
|
||||
# writes a field) persists, so a login survives a restart while anonymous /
|
||||
# crawler traffic leaves no rows. host/session-init! bumps the per-boot epoch
|
||||
|
||||
Reference in New Issue
Block a user