Fifty Pages, One Map

Version the path before you fund the seams

Share

Fifty Confluence pages can describe a launch and still leave an engineering manager unable to answer the simplest question: what is the end user supposed to do, in order? On a multi-system launch I lead, identity, records, entitlement, and partner lookup each had an owner and a doc - but integrated environments broke at handoffs nobody had drawn on one page.

Here's what this piece covers: the leadership problem of parallel truths, what commit 59334b2 (2026-04-02) imported into git, the artifacts I still use, the named pattern, and three habits before you fund integration work.

Part of the Field Notes: agentic delivery series - constraint migration starts with knowing what "done" means for the user.


1. The leadership problem

Launch programs drown in feature lists. Standups sound aligned. Then TEST opens and someone asks why the account does not show the result after the prior step completes - and four teams point at four green dashboards.

Wrong: "We aligned stakeholders on scope."
Right: "Nobody could draw start → complete → confirm → follow-up on one diagram. We were funding local optimization without a shared path."

The anti-pattern is parallel truths - each team owns a doc; handoffs break where the docs do not meet.


2. What the git history shows

On 2026-04-02, commit 59334b2 was the first import into my Planning repo. It was not code. It was program knowledge:

Artifact What it holds
Master flow markdown 1,290 lines - discover, account, confirm, entitlement, support
Requirement tracker CSV One row per capability with status (ready-for-review, WIP, out-of-scope)
Confluence page mirrors 40+ feature pages with per-flow diagrams
Risk and gaps doc Explicit unknowns before integration planning

That commit did not prove anything worked in TEST. It proved intent was versioned - a prerequisite for every gate that followed (integration surface, chain testing, 63-workflow SIT).

flowchart LR C[Scattered Confluence pages] --> M[Master flow in git] M --> T[Requirement tracker] M --> R[Risk and gaps doc] M --> S[SIT workflow IDs - later]

A tiny shape for "is this in launch scope?" - data as a map, not a meeting:

(def master-flow
  {:nodes [:discover :complete :confirm :entitle :support]
   :seams {:confirm [:identity :records]
           :entitle [:records :crm]}})

(defn in-launch-scope? [epic]
  (contains? (set (:nodes master-flow)) epic))

3. What I built

Four artifacts, one editor mindset:

Requirement tracker - one row per capability. If it is not tracked, it is not in launch scope.

Master flow graph - the end-to-end user path with cross-links to source pages. When product moves a page in Confluence, git diff shows whether the map drifted.

Per-feature diagrams - sequence views for high-risk paths (session bind, submit, confirm). Managers need these before they argue dates.

Risk and gaps - unknowns named early: environment parity, pending states, region rules for partner data. The map is intent; this doc is honesty about what we do not yet know.

flowchart TD S[User session] --> B[Discover / select] B --> A[Complete primary action] A --> K[Confirm status] K --> R[Write entitlement] R --> D[Find support / partner] K -.->|seam| X[Identity + records] R -.->|seam| Y[Records + CRM handoff]

I use Obsidian-linked markdown in git because a slide deck does not survive a six-month launch. Versioned program knowledge beats a one-off alignment meeting.


4. Named pattern: map before phase gate

Map before phase gate - one versioned master flow; every epic maps to a node or it is out of launch scope.
Artifact Who uses it Decision it supports
Master flow EM, product, leads "Is this in launch scope?"
Tracker Program office Status vs ready-for-review
Risk/gaps Integration leads What to prove before UAT
Per-feature diagrams Team leads Local design without losing the path

What broke: the map goes stale if Confluence moves faster than git sync. Ready for review ≠ proven in TEST. The map tells you what we intend to ship; SIT tells you whether the chain works.


5. What I'd do as a lead

Three habits - steal one this month:

  1. Mandate one master flow before phase-gate funding on integration work. If you cannot draw the end-to-end path, you are not ready for seam tests.
  2. Assign a single editor for the master flow. Teams contribute deltas, not parallel truths.
  3. Link every epic to a node on the map. If it is not on the map, it is not in launch scope - say that out loud in staff meeting.

Further reading