Marsen website-chat handoff fixture — 28 September 2026 Download handoff.mjs and run-tests.mjs to the same directory. Run: node run-tests.mjs Tested with Node.js 22.23.1. No dependencies or credentials required. The manually authored transcript illustrates the desired conversation. The program receives structured fields; it does not interpret the transcript. Eight assertions cover mapping, duplicate input, conflicting replay, missing email, requested handoff, unknown answer, no contact permission and destination failure. A destination receipt is an in-memory object, not a live CRM write. A customer rollout separately needs conversation evaluation, verified contact and CRM schemas, authenticated actions, durable duplicate protection, monitoring, retention rules, an available human owner and tested destination APIs.