Skip to main content

Lifecycle Maps

A Lifecycle Map is a declarative, multi-diagram model of an organisation’s SDLC - or any business process that moves work through governed stages. It is the top-level view of “how does work get from idea to customer?”

Why it exists

A single pipeline cannot capture an entire SDLC. Pipelines are linear or branching execution graphs - they start, run, and finish. A Lifecycle Map is a state machine that describes how a unit of work (a task, a ticket, a PR, a deploy) moves through logically ordered stages over hours, days, or weeks.

The pipeline is the execution primitive. The Lifecycle Map is the orchestration primitive.

Core philosophy

The Lifecycle Map is a semantic model, not a workflow engine. It says “tasks should flow through these stages in this order” without prescribing how each transition happens.

Structure

Each stage in the map is a node; each handoff between stages is a transition edge.

Stages can be:

  • Linked to executable Modulo pipelines (clickable - shows the pipeline graph)
  • Marked as external (documented but not managed by Modulo)
  • Left as manual (human process with no automation)

Stage node types

Stage node types
Type Border Behavior
modulo Solid Clickable to the pipeline graph. This stage is a Modulo pipeline
external Dashed Clickable to an external URL. This stage runs in an external system (CircleCI, GitHub Actions, PagerDuty). Modulo does not own execution
manual Dotted No click-through. A human process with no automation
placeholder Ghost/faded Planned but not yet implemented. Represents a gap

Transition edges

Transition edges carry trigger metadata:

Transition edges
Field Description
trigger_type pipeline_completed | webhook | cron | manual | external
description Human-readable description
trigger_id Optional link to a Modulo Trigger entity
condition Optional condition (JMESPath)
estimated_frequency Expected frequency of the transition

Graduation path

The core adoption model: a stage starts as placeholder (planned), becomes manual or external (documented), and optionally graduates to modulo (managed).

  • Day 0: create a map of the current SDLC, all stages external/manual - a documentation artifact
  • Day 1: replace one manual stage with a Modulo pipeline
  • Day N: more stages graduate

Some stages never graduate. External is a first-class stage type, not a shortcoming. The goal is not 100% management - it is 100% model fidelity.

Multiple maps

Any org member can create a Lifecycle Map. Examples:

  • Main SDLC: Issue → Groom → Dev → Review → Staging → Prod
  • Dependency Renovation: Crawl → Triage → PR → Merge → Deploy
  • Incident Response: Alert → Classify → Remediate → Postmortem
  • Content Publishing: Draft → Review → Approve → Publish

Fractal navigation

The map is the outermost layer: stage node → pipeline → agent node → agent config → sub-pipeline. At every level you can drill down.

Relationship to pipelines

An executable pipeline is attached to a modulo stage node. A pipeline may be a stage of one active map at a time.