EventHorizon now supports typed non-item ability-effect intents from AI persona decisions. Accepted intents are validated and materialized deterministically in the foreground item/state reconciliation transaction, so the initial passive effect commits atomically with its turn and does not depend on the background lifecycle evaluator.
apply cannot refresh an existing actor/source/target effect. Escalation or refresh requires explicit reapply with the exact effect ID.26f5bc9f (Add structured ability effects)dc7dbd5fb6c273b80b6e28537dfce43128213b58gitea.app.lan/eventhorizon/eventhorizon:sha-dc7dbd5fb6c2/healthz OK; /readyz reported PostgreSQL and Qdrant ready.cargo fmt --allcargo check -p eventhorizon-backendcargo test --workspace: 368 backend tests and 11 frontend tests passed.The reported Aetheria session had already advanced while the fix was built. A guarded correction transaction required an exact turn/generation, no active job, and empty active effects. It detected that the session had advanced and raised an exception; PostgreSQL rolled the transaction back completely.
Later player-authored turns explicitly chose stillness and released tension. No state correction was applied because adding a mechanical limpness effect at that point would have converted voluntary player-authored behavior into involuntary structured incapacity. The live session remained unchanged.