NEXO 7.9.3 — canonical lifecycle plan shape v2 for exact-once Desktop diary
Published 2026-04-23. Patch release over v7.9.2.
v7.9.3 is the Brain-side half of restoring the original Desktop diary lifecycle behaviour for close, archive, delete, and app quit. Brain still owns the canonical plan; this patch makes the plan shape explicit enough that Desktop can execute it without guessing.
What changed
canonical_actions now publish type as the action discriminator and put the diary prompt in payload.prompt. That is the normalized v2 contract Desktop consumes for resume_session, inject_prompt, and stop_session.
Compatibility
The older kind and top-level prompt fields remain for one release as mirrors. Desktop clients up to v0.28.1 keep working, while v0.28.2 reads the canonical shape and preserves exact event-id dedupe.
Verification
Lifecycle tests pin the normalized action shape, payload prompt round-trip, app-exit parity, and compatibility mirrors. Targeted validation: pytest tests/test_lifecycle_events.py with 25 passing tests, release artifact sync, and release-readiness.