Sample apps/Production pattern

Widget Journey Host

Own a complete place-selection journey around a Mappls widget: launch, recover through fallback, normalize a candidate, commit deliberately, invalidate stale selection, and submit exactly once in effect.

JourneyProduction pattern
Draft → open → candidate → commit → submit
Node.jsResponsive host form UIWidget message adapterDurable evidence store

A small app with production bones.

The download separates browser experience, command API, Mappls adapter, aggregate state, audit history, transactional outbox, fixtures, tests, and deployment guidance.

01Experience
02Mappls adapter
03Journey state
04Events + recovery
05Observability

Implemented and verified.

15 implemented capabilitiesResponsive widget-host journey · Exact-origin postMessage validation · Versioned candidate schema · Mappls Pin normalization · Opaque provider result rejection · Application-owned durable selection · Useful manual fallback · Stale-selection invalidation after host edits · Deliberate cancellation · Idempotent commands · Optimistic concurrency · Append-only audit events · Transactional outbox · Restart recovery · Credential-free fixture mode
Browser application

A responsive operations console backed by the included JSON API.

Durable domain

Aggregate snapshots, audit events, idempotency records, evidence, and outbox entries are committed together.

Fixture adapter

A credential-safe provider boundary aligned to named Mappls endpoint contracts.

Executable tests

8 tests covering lifecycle, HTTP, replay, conflicts, domain recovery, and restart behavior.

Architecture notes

Trust boundaries, aggregate invariants, adapter ownership, evidence lineage, and recovery design.

Deployment guide

Database, identity, secrets, outbox, privacy, observability, migration, and rollback work.