# Acceptance Contract — n8n Reliability Handoff Proof

## Purpose

Demonstrate a self-owned, handoff-ready n8n integration package on a real n8n engine. This is not represented as client work.

## Representative path

A synthetic lead event enters n8n, is validated and normalized, claimed through an idempotency service, enriched through an HTTP API, written to a destination, and returned with an explicit outcome.

## Required cases

1. **Valid event** — one normalized record reaches the destination.
2. **Replay** — replaying the same `event_id` does not create a second destination record.
3. **Malformed event** — missing required fields is rejected and no destination write occurs.
4. **Transient dependency failure** — the external API fails once, n8n retries, and the event succeeds without duplication.
5. **Permanent dependency failure** — the event is routed to a visible failure/alert outcome and no destination write occurs.

## Handoff requirements

- Importable n8n workflow JSON.
- Workflow executed on a real n8n engine, with the version recorded.
- Synthetic fixtures only.
- No embedded credentials or secrets.
- Explicit validation, idempotency, retry, failure visibility, and output contract.
- Automated acceptance runner and machine-readable execution evidence.
- Dependency assumptions, rollback instructions, and maintenance runbook.
