Internal Developer Platform  ·  View 19 of 21  ·  Operations

Component Lifecycle

Seven states, and no state in which a component has no owner.

Editable source SVG draw.io All views
Scaffolded template version pinned Experimental sandbox · light guardrails Production full guardrails · SLO Drifting behind the template Updated or Forked a recorded choice Deprecated no new dependants Retired resources de-provisioned Component Lifecycle promoted tier declared template moves on team decides back to current successor named catalog entry archived Internal Developer Platform — Component Lifecycle Application we own Security / platform Risk / gap Decision point There is no state in which a component has no owner. The lifecycle exists so that a component nobody can name is caught as a transition failure rather than discovered in a cost report. v 1.0 · owner Platform Architecture · date 2026-09

Decisions

  • Lifecycle state changes which guardrails apply and which SLO is expected, so it is a control input rather than a label (ADR-10).
  • "Drifting" is a named state rather than a report, and "Updated or Forked" is a recorded decision, because the fork ratio is the number that predicts migration cost (ADR-03).
  • Retirement de-provisions resources; a retired component that still costs money has not been retired (ADR-11).

Assumptions

  • ≥ 90% of components within two template versions of current, none below the supported floor for more than 90 days (stated assumptions).
  • 60 new components per month against an assumed comparable retirement rate at steady state.

Risks

  • A team dissolving is the most common way a component leaves the loop without passing through retirement — caught by resolving ownership against live identity groups and quarantining orphans.
  • Deprecation without a named successor produces components nobody dares retire and nobody maintains.