go-distributedlisted
Install: claude install-skill Dankosik/go-service-template-rest
# Go Distributed
A cross-service flow is defined by its **recovery**.
`flow contract -> durable steps -> partial failure -> ordering and duplicates -> compensation -> redrive -> reconciliation -> proof`
For a delegated Decision or Review, or when the active artifact requires its
result interface, load the
[shared specialist contract](../../contracts/specialist-contract.md).
Trace every accepted producer effect through terminal reconciliation. For
interacting effects, exhaustive recovery-path coverage, or a decision/review
handoff, record
`DurableStep{identity, authority, commit, duplicate, reorder, unknown,
compensate, redrive, reconcile, proof}` per step. A single local path can keep
its judgment and evidence in the code or existing task artifact. Replay duplicate
delivery, reordering, partial completion, process loss, redrive, and mixed
versions. Each step is idempotent under redelivery or has a named compensation;
ordering exists only where a key serializes it; reconciliation distinguishes
applied, unapplied, and unknown.
Read the mechanism present in this checkout before changing policy:
[PostgreSQL Transactional Outbox](../../../docs/postgres-transactional-outbox.md)
owns its transaction, fencing, ordering, retry, redrive, retention, and outcome
classification; [NATS JetStream](../../../docs/durable-messaging.md) owns its
publication identity, acknowledgements, and dead-letter transfer. An absent pack
is a selected profile, not a gap. Reuse the existing pack and reje