v0.84.7
August 22, 2026
**Errors that tell you what to fix.** The Designer fork rejects reusing a request with different content, import errors list duplicate keys and the phases involved, export refuses documents with broken references, and OAuth errors speak the OAuth contract.
-
Improvement
Actionable import errors
A failing import now says what to fix: duplicate keys with the phases and positions involved, phases without a key, references to nonexistent states with the source phase name and the missing target. API responses include a structured `details` block, and the Designer lists "Phase → missing target" pairs with phase names.
-
Security
Fork idempotency without surprises
Reusing the same fork request key with different content is now explicitly rejected instead of silently returning the previous result: an identical retry remains a replay, improper reuse is a clear error, and no partial write takes place.
-
Improvement
Fail-closed export and OAuth
A process with broken references (an event action or rule pointing to a nonexistent phase) refuses to export with an explicit error instead of producing a non-reimportable document; the export → import round-trip is now certified by end-to-end tests. OAuth validation errors respond with `invalid_request` and a stable description, without raw validator messages.