Back to the changelog

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.