7fc9b5935e
V2_FIELDS list omitted prompt_signal and events — both are always produced by parser and buildEpisodeFromContext, so the happy path is unaffected, but a future ctx-fallback path that dropped them would silently write a malformed episode. Add both to V2_FIELDS; appendEpisode now throws on either being missing. Tests: 2 new — appendEpisode throws when prompt_signal missing / when events missing. 38/38 stop-hook tests green. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>