Skip to content

Lifecycle contracts and repository ledgers

Site · Canonical English日本語

This Site-owned reader page explains how the repository's different ledger and lifecycle-history mechanisms fit together. It is an integration explanation, not a new semantic authority. Canonical product lifecycle semantics remain owned by the composition provider, while repository-change and review procedures remain owned by Policy.

Why several ledgers exist

Git history, pull requests, CI runs, and review threads preserve important provider facts, but they answer different questions from product contracts and validated lifecycle history. The repository therefore uses several distinct logical records instead of treating every persistent record as one generic ledger.

Record Question it answers Authority Normal durable storage Git tracked?
Requirement / evidence ledger What does the product require now, what contract targets implement it, and what proof is required or recorded? Composition lifecycle contracts contracts/implementation-evidence.json Yes
Lifecycle checkpoint ledger Which validated planning/product states form the product's semantic transition history? Composition lifecycle contracts contracts/lifecycle-checkpoints.json plus content-addressed artifacts/lifecycle/... snapshots Yes
Review-finding ledger Which material review findings remain applicable, what is their disposition, and what closure evidence exists? Policy review procedure Review/PR surfaces or execution state Not required
Repository-change Work ledger What is the current resumable state of a repository change, what evidence is bound to it, and what is the next safe action? Staged Policy repository-change candidate Provider-side PR/issue checkpoint plus execution-local state No, by default

These records are related, but none should silently replace another.

Publication status: the Requirement/Evidence and lifecycle descriptions below reflect the currently selected Composition contracts, and the review-finding model is already published Policy procedure. The Work-ledger row describes the reviewed but unmerged Policy candidate in PRs #754 -> #755. The anti-stall section below projects the separate staged Policy candidates #773 -> #774. The Site currently publishes Policy revision 6023af1b6aed4a22407d9ca43106cd66cfee9fb6, which contains neither staged candidate set. Therefore both the Work-ledger candidate and the anti-stall projection are staged architecture here, not current published Policy authority.

Requirement and evidence: current product state

The Implementation evidence contract is the canonical requirement/evidence ledger for a selected Composition lifecycle. It connects stable requirement IDs to contract targets and, in product mode, to implementation boundaries, positive and negative proofs, authoritative commands, execution capabilities, and release gates.

Planning mode records target-bound requirements before implementation evidence exists. Product mode preserves those stable requirement identities while activating the implementation/evidence graph. The ledger therefore answers "what is required and what evidence supports the current product state?" It is repository-tracked because those claims are part of the consumer/product contract itself.

Lifecycle checkpoints: validated transition history

The Lifecycle checkpoints contract preserves historical transition evidence without replacing the requirement/evidence ledger. A planning checkpoint freezes the exact validated contract baseline that product implementation is expected to satisfy. A product checkpoint closes that transition. Later specification changes create a new planning checkpoint parented to the preceding product state.

Checkpoint chronology is expressed through sequence, parent edges, phase alternation, and content hashes. Snapshot manifests bind the historical contracts, schemas, validation result, and available Composition validation authority. The result answers a different question from current evidence: "which validated semantic state did this product state come from?"

Review findings: review-process state

Policy's review-finding ledger tracks every known material actionable review finding until the current-head disposition is validated and required closure evidence is recorded. It is a logical tracking model rather than a mandatory repository JSON/YAML artifact. A finding may be represented on an inline review thread, a durable PR/review comment, a PR body section, or execution state according to the active procedure.

Finding details remain in that ledger. Repository-change orchestration should reference it rather than copying disposition, repair reasoning, qualification, and closure evidence into a second authority.

Work ledger: resumable repository-change state

A repository-change Work ledger serves a different purpose again: it is an operational projection of a change in progress. Its logical state can include objective and scope, authority snapshots, PR/branch topology, mutation units, stability and qualification state, evidence bindings, blockers, asynchronous dependencies, the review-finding-ledger reference, the next safe action, and the selected stop/handoff boundary.

The Work ledger is repository-associated but should not normally be a Git-tracked progress file. A progress-only commit would move the candidate SHA and can stale exact-head CI or review evidence merely to record that evidence. A provider-side PR/issue checkpoint keeps the operational state durable without changing the source candidate. GitHub commit, branch, PR, CI, review, and merge objects remain canonical provider facts; a Work ledger records observations and bindings to those facts rather than overriding them.

The Work ledger is also not an agent transcript. It should checkpoint material state transitions and preserve a concrete next safe action instead of logging every fetch, command, or poll.

Anti-stall repository-change behavior

Policy remains the semantic authority for anti-stall repository-change behavior. This Site section is only a reader-facing projection of that Policy model and does not define independent retry thresholds, failure classes, or orchestration semantics.

This explanation is staged with Policy PRs #773 -> #774. Until the Site's selected published Policy revision includes those semantics, readers should not attribute this section to the currently published Policy artifact. Site publication of this reader text does not itself promote or authorize the staged Policy candidate.

The central distinction is that tool activity is not material progress. A repository-change worker may fetch evidence, discover capabilities, inspect logs, or report status without changing what is known about the objective. If repeated attempts do not produce a decision-relevant knowledge or repository state change, the worker must reassess the current diagnostic strategy rather than treating more calls as progress.

A strategy switch changes something material about how the evidence gap is being reduced: for example, the evidence source, method, or hypothesis. Merely renaming an endpoint or repeating the same unavailable retrieval through an equivalent path is not a new strategy. When a path has been invalidated, the Work ledger records why it failed, where that conclusion applies, and the retry condition that would make it reasonable to try again. This prevents an interrupted session from rediscovering the same dead end simply because it is a new session.

An external wait is also different from a diagnostic stall. Waiting for an already-running CI check, review, or other provider event can be legitimate when that event can change the completion state. While waiting, parallel work is productive only when it advances the same completion frontier. A diagnostic stall instead means that the current evidence-gathering approach is no longer producing material progress and should be switched or declared blocked when no allowed alternative remains.

For resume, the Work ledger preserves the evidence gap, current hypothesis, attempted and invalidated paths, exhausted strategies, current strategy, diagnostic budget, progress frontier, last material progress, provider-bound qualification, and the next safe action. In that model, resume does not restart the investigation: it restores the compact operational state needed to avoid repeating failed exploration. Finding-level review state stays separate: the review-finding ledger remains authoritative, and the Work ledger does not copy finding-level disposition or closure evidence.

Authority and storage boundary

A useful rule is to distinguish product state from worker state:

  • requirement/evidence and lifecycle checkpoints are product semantic state or semantic history, so they belong in repository-tracked Composition contracts and artifacts;
  • review-finding and Work ledgers are operational process state, so their durable representation normally lives on provider-side work surfaces and does not create a new product contract;
  • CI results, reviews, commits, and pull requests retain their own provider authority. A ledger entry such as success is not evidence unless its exact binding and locator still apply.

Head or base movement therefore invalidates only the observations whose actual bindings changed. Semantic implementation progress need not be discarded just because an old exact-head qualification became stale.

How the records connect

repository change
    |
    +-- Work ledger ---------------------- resumable orchestration state
    |       |
    |       +-- references review-finding ledger
    |                     |
    |                     +-- finding -> disposition -> closure evidence
    |
    +-- changes product contracts
            |
            +-- requirement/evidence ledger --- current semantic state
            |
            +-- lifecycle checkpoints --------- validated transition history

This separation keeps repository work resumable without turning operational progress into product authority, while keeping product requirements and historical lifecycle evidence reproducible inside the repository.

templates as a reference consumer

The repository itself provides concrete examples of these roles rather than only documenting them for other consumers.

Requirement / evidence example

In the current canonical Site base, contracts/implementation-evidence.json is in product mode. It declares executable Website/PWA commands and connects product requirements to implementation records, proof kinds, implementation boundaries, and release gates. That file is product state: changing the claims changes the consumer contract and therefore belongs in Git.

Lifecycle-history example

The authority baseline contains the following six validated checkpoints:

1  site-reference-adoption
   phase: planning
   changeKind: initial
   parentId: null
   snapshotPath: artifacts/lifecycle/001-site-reference-adoption
   manifestSha256: 9ec8d87ea01cf6f178422ca39589882ac3aac86dbc6084d7cc71f5a03df667d4

2  site-reference-adoption-product
   phase: product
   changeKind: initial
   parentId: site-reference-adoption

3  routes-v5-publication
   phase: planning
   changeKind: specification-change
   parentId: site-reference-adoption-product

4  routes-v5-publication-product
   phase: product
   changeKind: specification-change
   parentId: routes-v5-publication
   snapshotPath: artifacts/lifecycle/004-routes-v5-publication-product
   manifestSha256: c3ba91ed78fc90f780213b443182b17c38316d77d92f0151fb3d00392e77d9f1

5  webmcp-reader-publication
   phase: planning
   changeKind: specification-change
   parentId: routes-v5-publication-product
   snapshotPath: artifacts/lifecycle/005-webmcp-reader-publication
   manifestSha256: a6c587cac040a7929fe4fc020acd61843598b6447bd733795d83e2b7182104dc

6  webmcp-reader-publication-product
   phase: product
   changeKind: specification-change
   parentId: webmcp-reader-publication
   snapshotPath: artifacts/lifecycle/006-webmcp-reader-publication-product
   manifestSha256: 2b434f5636675eeacc0d6c4a9676f68a64c953abfada439b1306449ed31ea2a1

site-reference-adoption identifies the first validated planning baseline, not an individual requirement. The next checkpoint consumes that identity as its parent. The later routes-v5-publication -> routes-v5-publication-product and webmcp-reader-publication -> webmcp-reader-publication-product pairs show specification changes continuing the same linear history after the initial product state. The root requirement/evidence ledger represents current product state while these snapshots preserve the validated states it passed through.

Review-finding and Work-ledger dogfooding

The repository has also exercised the operational side of the model in real Policy work. Policy PR stack #754 -> #755 formalized a repository-change Work ledger and then used a canonical provider-side checkpoint on the stack-tip PR to manage that same implementation. The checkpoint recorded the objective, P1/P2 topology and exact heads, current versus stale CI bindings, the linked finding ledger, blockers, next safe action, and the immediate-stop review boundary. Finding-level disposition and closure stayed on a separate finding surface instead of being copied into the Work ledger.

The reviewed staged identities are P1 / #754 head c2e23789ebabee4d1f35653e86ebe8f61ab6e8bf and P2 / #755 head e73757b93bb7a97c2e6a618d899f652933c9c795. That stack reached green exact-head Policy CI and a clean Codex diagnostic review at the P2 head. The example demonstrates resumability and authority separation, but it does not make the Work ledger part of the currently published Policy authority by itself.

Published lifecycle destinations

The canonical lifecycle semantics and source documents below are owned by the composition provider. This Site page supplies the stable /lifecycle/ reader entry point and groups the published destinations.

For the repository-wide ownership model and the separation between Policy and Composition, see Policy–Composition coexistence.

These reader paths do not create a separate provider. Their provenance in a built artifact resolves to the exact provider revisions recorded in build-provenance.json.

Topology publication remediation history

These additional checkpoints record the current remediation, not retrospective proof that planning preceded the earlier implementation.

Sequence Phase ID Snapshot Manifest SHA-256
7 planning topology-publication-remediation artifacts/lifecycle/007-topology-publication-remediation 5e2203e246437b1ff536430db4e042b403dab7c757b35c2a88447fbfda80c287
8 product topology-publication-remediation-product artifacts/lifecycle/008-topology-publication-remediation-product 3c10eceba4ada27893a6868a7fe9188ce02aab90e8cd641c68237d67cf9f94b8
9 planning topology-consumer-overview-remediation artifacts/lifecycle/009-topology-consumer-overview-remediation acdd54017dd8e0ca560cf1e91d25b3124953ea07b00faa49fe1d3f3cde7543ce
10 product topology-consumer-overview-remediation-product artifacts/lifecycle/010-topology-consumer-overview-remediation-product 5c5f8aa08dfe96393a1de3552c16a1ccbeb366411d8688a044b31dca353cac57

Composition audience publication promotion history

These checkpoints bind the validated Site promotion of the already-qualified Composition audience records into the active publication mapping.

Sequence Phase ID Snapshot Manifest SHA-256
11 planning composition-audience-publication-promotion artifacts/lifecycle/011-composition-audience-publication-promotion 87c31f7f74b99daafc49def986fdcedad16436196bf482d0d0e31d311f65e517
12 product composition-audience-publication-promotion-product artifacts/lifecycle/012-composition-audience-publication-promotion-product a2140c29ac4bb07bc1684291cfcca0a64d0ff82007ffb65f9474357a7ca9475e

Bare Worktree workspace-topology publication history

These checkpoints bind the intended workspace/local-checkout navigation and its Composition-owned Bare Worktree material to a validated planning baseline, then record the product evidence for the published reader routes.

Sequence Phase ID Snapshot Manifest SHA-256
13 planning bare-worktree-publication artifacts/lifecycle/013-bare-worktree-publication 647e873e8fdde33183cc7e850d765f2f14b52309ea1a844a36840e96b07fda2d
14 product bare-worktree-publication-product artifacts/lifecycle/014-bare-worktree-publication-product dc173205220bb14527dd68c1d725486eddebd4727b4280c947c3ce1341f1f7c6

Policy maintainer publication remediation

These checkpoints record the repaired publication contracts and their current validation; they do not claim that planning preceded the original implementation.

Sequence Phase ID Snapshot Manifest SHA-256
15 planning policy-maintainer-promotion artifacts/lifecycle/015-policy-maintainer-promotion 7e7f00cabb3b7077641115a7bc1fb8271fc7d3e340678c61cdc872363aaee58b
16 product policy-maintainer-promotion-product artifacts/lifecycle/016-policy-maintainer-promotion-product c412c8931adc39488e8efb7410a3c7f91666976b8b178ba2ff94d03658a4b68d

Audience manifest foundation remediation

These checkpoints bind the current remediation contracts and validation. They do not retrospectively establish planning before the original implementation.

Sequence Phase ID Snapshot Manifest SHA-256
17 planning audience-manifest-foundation artifacts/lifecycle/017-audience-manifest-foundation 9b9a2ba7bb728bba7da97b7db125ec2171872ada15b322933d58d60b1429daef
18 product audience-manifest-foundation-product artifacts/lifecycle/018-audience-manifest-foundation-product 6dfcc3b1ce589f53627a600a2eeb503feb246dfeb744a6a3277e36f3b3b2669e

Site maintainer audience publication

These checkpoints bind the ten Site-owned maintainer sources to their canonical Maintain reader pages and the Website evidence that qualifies those pages.

Sequence Phase ID Snapshot Manifest SHA-256
19 planning audience-maintainer-publication artifacts/lifecycle/019-audience-maintainer-publication e2a873147f4aea4e0296fe8dee34a76d4b73cf2c70eb90de274b3aee8179fcca
20 product audience-maintainer-publication-product artifacts/lifecycle/020-audience-maintainer-publication-product c6ec49c904a83229b8e5827988f6c803693493eadf5f398b25ddaaeae37ab1b3