Files
pulse/internal/ai/memory
rcourtman e5cad4c2c3 Persist remediation log writes synchronously
Log and MarkRolledBack saved through fire-and-forget goroutines, so a
write could land after the owner tore down the data dir and the newest
record could be dropped entirely on process exit. CI hit the teardown
race as TempDir cleanup failures in internal/ai/memory, and the mtime
quiescence helper cannot see a goroutine that has not written yet. The
single production write site runs after a remediation command has
already executed, so the small synchronous file write costs nothing
observable. Mutation now happens under the lock, persistence after
release, still serialized by persistMu.

Contract-Neutral: behavioral bug fix: remediation log fire-and-forget saves raced owner teardown and could drop the newest record on exit; no public contract delta
2026-08-14 06:37:03 +01:00
..
2026-01-25 21:08:44 +00:00
2026-06-03 12:29:37 +01:00