Repository navigation
Release v1.1.0
Closes #107
Fixed
- An invitation that arrives while no signing key is configured now waits for one without failing Ante's token-issuing reactor. Before, every such invitation left a failed partition. Chronicle stopped retrying after its retry limit, and with quarantine thresholds configured the whole issuing observer could be quarantined, blocking every invitation. After a restart with a key, the host could also receive the token twice.
- Every token or rejection Ante publishes is now checked against the outbox first, so a retry, redelivery or replay publishes an outcome for a receipt or reissue request only once. Each reissue request still gets a new token.
Added
- Waiting invitations are recorded (
InvitationTokenIssuanceDeferred, read modelInvitationAwaitingSigningKey). Instances with a signing key resume them at startup and every 15 seconds (InvitationTokenIssuanceResumed). Concurrency checks stop two replicas from resuming the same invitation. An invitation that was revoked, accepted, or replaced by a later receipt while it waited gets no token.
No configuration or contract changes. Adding an event type to the issuing reactor makes Chronicle recommend a replay. The replay is safe: parked receipts and requests are left to their resumption, and published outcomes are not repeated.
Local: Tier 1 PASS, Integration 115/115. Reviewed with Anthropic models only (same-provider review, no cross-provider check).