← PORTFOLIO
CASE STUDY / 01

Converge

A prototype that helps AI workflows finish safely after an interruption, without repeating actions that already succeeded in another system.

TYPEAgent infrastructure
STATUSWorking prototype
STACKGemini / Supabase / Stripe
FOCUSReliability + execution

01 / PROBLEM

Agents can reason correctly and still leave the world wrong.

A support agent may decide to issue a refund and resolve a case, but those mutations happen in different systems. If execution dies after Stripe succeeds and before the database updates, blindly retrying the model can duplicate a side effect. Converge treats the desired business outcome—not the model's procedural trace—as the durable object.

FAILURE MODE

Partial mutation

External systems can diverge after a crash, timeout, or interrupted execution.

BOUNDARY

Reasoning ≠ authority

The model chooses a target outcome; deterministic code owns allowlisted mutations.

RECOVERY

Observe before retry

Authoritative state is re-read before deciding which action, if any, remains.

SAFETY

Ownership preflight

Mutation targets must belong to the authorized customer/resource set.

02 / ARCHITECTURE

The system boundary is explicit.

Gemini agent read-only tools
proposes target state
→
Durable Outcome persist requirements
before side effects
→
Converge Runtime validate ownership
observe drift
repair safely
STRIPE / financial truth SUPABASE / application truth

Reconciliation compares the persisted Outcome against live Stripe and Supabase state. The reconciler executes only the minimal safe mutation still required to make reality match the declared target.

03 / FAILURE TRACE

Testing recovery after a simulated interruption.

The demo intentionally stops after a Stripe test-mode refund succeeds, leaving the support ticket unresolved. This simulates an interruption so the system has to check what happened and finish only the remaining work.

01Outcome persisted

Refund $50 · keep both subscriptions active · resolve support case.

NO EXTERNAL MUTATION YET
→
02Process crashes

Stripe refund succeeds. Supabase ticket update never completes.

AUTHORITATIVE SYSTEMS DIVERGE
→
03Reality re-observed

Refund is already true. Ticket is still open. Subscriptions remain active.

NO BLIND REPLAY
→
04Only drift repaired

Converge resolves the ticket and leaves the successful refund untouched.

OUTCOME SATISFIED
STRIPE $50 → refunded once
SUPABASE open → resolved
AGENT #2 0 mutations required

04 / DECISIONS

Engineering choices that matter.

Persist intent before side effects The desired outcome survives process failure and can be inspected by a later worker.
Make reconciliation deterministic LLM reasoning is not used to decide whether a requirement is currently satisfied.
Separate semantic correctness from authorization Ownership checks prevent mutation outside the authorized customer set. They do not prove the agent chose the correct same-customer business target.
Prove coordination across workers A second worker finds the satisfied durable Outcome and performs zero new external mutations.

05 / PRODUCT SURFACES

06 / LINKS