Recovery baseline consolidation — 2026-09-23

This module is the governed extraction and disposition manifest for the recovery corpus preserved at immutable Git revision 2dbf8937fc43e8fa035e8f7575e0e8fe81b2b92c.

The corpus contains 24 unique session handoffs plus selected non-reproducible local Govenv state from solo098. Natural-language extraction remains an agent/human judgment; the compiler does not claim it can prove that hidden model memory or every semantic nuance of the prose was recovered. What it does prove is that every observation declared below has exactly one disposition and that every GovernanceId used as a target exists in the resulting roadmap.

Overlapping session notes are intentionally consolidated into durable observations rather than duplicated one-for-one by handoff file. Ephemeral run, PR, and release status is retained only when it carries a durable design or regression consequence.

{-# OPTIONS --safe #-}

module Govenv.Consolidation.Baseline20260923 where

open import Agda.Builtin.Equality using (refl)
open import Agda.Builtin.List using ([]; _∷_)
open import Agda.Builtin.String using (String)
open import Govenv.Kernel.Consolidation
open import Govenv.Kernel.Identifier using (GVR)
open import Govenv.Kernel.Roadmap using
  (GovernanceTarget; governanceTarget)
open import Govenv.Roadmap using (roadmap)

data Observation : Set where
  roadmapIdentityAndSnapshots : Observation
  releaseGovernanceAndCanonicalChangelog : Observation
  sparseRevisionAwareReleaseProjection : Observation
  regressionCounterexampleClosure : Observation
  evidenceBearingCompletionAndAssurance : Observation
  authorizedRevisionAndDerivedEffects : Observation
  singleRootAdministrationHistory : Observation
  purposeStewardship : Observation
  projectDirectionReview : Observation
  governanceProtocolArchitectureSplit : Observation
  materializationAuthorityBoundary : Observation
  agentContextAndLifecycleBoundaries : Observation
  dependencyAndDevenvAuthority : Observation
  constitutionalHistorySpine : Observation
  propositionIdentityAndEvidence : Observation
  supersessionDispositionAndCoverage : Observation
  historyDerivedRoadmapState : Observation
  historyDerivedSnapshotAndDelta : Observation
  developerJournalAndSocialPublication : Observation
  multiProviderAdministration : Observation
  transientReleaseAndPrState : Observation
  localMainGV60AssuranceWip : Observation
  localGV90StageB : Observation
  localGV90StageC : Observation
  localGV92AdminRoot : Observation
  localGV92StageC : Observation
  localGV84ReleasePlacement : Observation
  localReleaseHistoryFix : Observation
  detachedValidationHeads : Observation

describe : Observation → String
describe roadmapIdentityAndSnapshots =
  "Roadmap identity, typed membership, immutable definitions, lifecycle integrity, and snapshot-v2 semantics from the Sep 9–15 handoffs."
describe releaseGovernanceAndCanonicalChangelog =
  "Canonical Unreleased/changelog ownership, frozen release documents, read-back verified publication, and release-boundary semantics from the Sep 10–23 release handoffs."
describe sparseRevisionAwareReleaseProjection =
  "Sparse semantic governance diffs, revision-aware links, compact supersession rendering, and shared PR/Release projections."
describe regressionCounterexampleClosure =
  "Observed regressions must remain preserved as counterexamples until assurance and earliest-sound enforcement reject recurrence."
describe evidenceBearingCompletionAndAssurance =
  "Governance completion should be evidence-bearing and persistent; historical legacy completions remain migration debt until assured."
describe authorizedRevisionAndDerivedEffects =
  "Human PR merge is the semantic authorization boundary; derived commits/effects carry causal provenance but no independent authority."
describe singleRootAdministrationHistory =
  "Earlier administration design assumed exactly one human-supplied GitHub administrative root from which every subordinate capability could be derived."
describe purposeStewardship =
  "Canonical public Purpose, bounded repository identity metadata, and explicit vigilance review whenever semantic roadmap direction changes."
describe projectDirectionReview =
  "Current and Next should be governed semantic judgments over Purpose and exact project state rather than mechanically selecting the first pending GV."
describe governanceProtocolArchitectureSplit =
  "Governance, Protocol, Materialization, Projection, Adapter, Assurance, and Kernel responsibilities must stay semantically separated and dependency-directed."
describe materializationAuthorityBoundary =
  "Materializations bind authoritative semantic sources to targets; projections only encode representation and adapters only observe/apply/verify."
describe agentContextAndLifecycleBoundaries =
  "AGENTS.md is transitional bootstrap; scoped context should move toward typed closure delivered through LSP/hooks with MCP optional and unsupported-agent fallbacks."
describe dependencyAndDevenvAuthority =
  "Reuse-first and dependency discipline were established, while the no-devenv.yaml / generated devenv.nix / transient lock target still needed correct Governance-vs-Protocol classification."
describe constitutionalHistorySpine =
  "Governance should evolve through append-only constitutional history rather than mutable stored lifecycle state."
describe propositionIdentityAndEvidence =
  "Formal Proposition identity is independent from GovernanceId; GovernanceId text is a human contract; evidence establishes Propositions into Obligations."
describe supersessionDispositionAndCoverage =
  "Effective supersession is atomic, disposition belongs to the transition, and every outgoing responsibility requires exactly one disposition while N-to-M reformulation remains possible."
describe historyDerivedRoadmapState =
  "Roadmap status and glyphs, including mixed-resolution completed governance, should derive from Proposition/history resolution; supersession lineage is not a mutable status."
describe historyDerivedSnapshotAndDelta =
  "Snapshots should preserve constitutional history prefixes and release deltas should derive constitutional events; activity-only advancement is not constitutional delta."
describe developerJournalAndSocialPublication =
  "Developer-journal posts should be reviewed in the authorizing PR, use the canonical Govenv visual pattern, and publish exact approved artifacts after merge; major/minor release posts use Release Please approval."
describe multiProviderAdministration =
  "External providers such as X require irreducible provider grants under one human-facing Admin Materialize setup rather than pretending GitHub can derive every credential."
describe transientReleaseAndPrState =
  "Historical PR numbers, action runs, temporary release candidates, and rollout checkpoints were captured for continuation but are not durable project semantics by themselves."
describe localMainGV60AssuranceWip =
  "The captured dirty main worktree contained an unfinished static GV60 assurance migration."
describe localGV90StageB =
  "Recovered local wip/gv90-stage-b semantic work encoded authorization/materialization boundaries not yet published at capture time."
describe localGV90StageC =
  "Recovered local wip/gv90-stage-c encoded later authorization/materialization rollout work."
describe localGV92AdminRoot =
  "Recovered local gov/gv92-admin-root encoded the earlier single-root administration model."
describe localGV92StageC =
  "Recovered local wip/gv92-stage-c encoded later single-root setup stages."
describe localGV84ReleasePlacement =
  "Recovered local wip/gv84-release-placement and its counterexample encoded release-placement regression closure work."
describe localReleaseHistoryFix =
  "Recovered release-history-fix patch and counterexample encoded changelog/release historical reconstruction defects."
describe detachedValidationHeads =
  "Detached verification heads preserved specific historical candidate/release validations but carried no unique semantic authority beyond their findings."

gv54 : GovernanceTarget roadmap
gv54 = governanceTarget (GVR 54) refl

gv74 : GovernanceTarget roadmap
gv74 = governanceTarget (GVR 74) refl

gv83 : GovernanceTarget roadmap
gv83 = governanceTarget (GVR 83) refl

gv84 : GovernanceTarget roadmap
gv84 = governanceTarget (GVR 84) refl

gv90 : GovernanceTarget roadmap
gv90 = governanceTarget (GVR 90) refl

gv95 : GovernanceTarget roadmap
gv95 = governanceTarget (GVR 95) refl

gv101 : GovernanceTarget roadmap
gv101 = governanceTarget (GVR 101) refl

gv102 : GovernanceTarget roadmap
gv102 = governanceTarget (GVR 102) refl

gv105 : GovernanceTarget roadmap
gv105 = governanceTarget (GVR 105) refl

gv110 : GovernanceTarget roadmap
gv110 = governanceTarget (GVR 110) refl

gv111 : GovernanceTarget roadmap
gv111 = governanceTarget (GVR 111) refl

gv114 : GovernanceTarget roadmap
gv114 = governanceTarget (GVR 114) refl

gv115 : GovernanceTarget roadmap
gv115 = governanceTarget (GVR 115) refl

gv116 : GovernanceTarget roadmap
gv116 = governanceTarget (GVR 116) refl

gv117 : GovernanceTarget roadmap
gv117 = governanceTarget (GVR 117) refl

declared : Corpus Observation
declared = corpus
  "recovery-baseline-2026-09-23"
  "2dbf8937fc43e8fa035e8f7575e0e8fe81b2b92c"
  ( sourceArtifact
      "recovery/baseline-2026-09-23/govenv.tar.gz"
      "61e4fa1bd628c4b5d15b0be63e3bcc20226d0be1ad29f3e690a12fcb9bf8ce6d"
      "Original immutable session corpus: 24 unique handoffs."
  ∷ sourceArtifact
      "recovery/baseline-2026-09-23/README.md"
      "cd086a9f1c7998f4ab053fe12d5932807771d3c291230f191ad7f8274e5a150f"
      "Recovery provenance and removal condition."
  ∷ sourceArtifact
      "recovery/baseline-2026-09-23/solo098/README.md"
      "f62794641795917c2314b8cbfbe3f14dab4fe14db28bdcb53f41de29aee0aa0b"
      "Captured non-reproducible local-worktree inventory."
  ∷ sourceArtifact
      "recovery/baseline-2026-09-23/solo098/local-commits/relevant-local-heads.bundle"
      "0fa479a821eb2338ee9b4c311bce333abcf97dcbb4b76b4c0856a48f8f2f32b6"
      "Complete bundle for the five relevant unpublished local heads."
  ∷ sourceArtifact
      "recovery/baseline-2026-09-23/solo098/patches/main-unstaged.patch"
      "0abb05d14af996427d147f88542c78a37db100a8cf5a0a102bf66c4b4d91d203"
      "Dirty main semantic patch captured at recovery time."
  ∷ sourceArtifact
      "recovery/baseline-2026-09-23/solo098/patches/gv90-stage-b-semantic.patch"
      "6a6c0cb1b5bbae68d8ef49cbb8382ba280b2800822e5c441d4b735f33fa78f18"
      "Recovered GV90 Stage-B semantic patch."
  ∷ sourceArtifact
      "recovery/baseline-2026-09-23/solo098/patches/release-history-fix.patch"
      "c5f3ce5df014cfb902f212d48331365c1a8ca1079fd6624d24c5c2fde67f58b0"
      "Recovered release-history semantic patch."
  ∷ sourceArtifact
      "recovery/baseline-2026-09-23/solo098/untracked/main-GV60.lagda.md"
      "39e1341f6a72d982ce61b3f1bbb1fe8b9a4c3915fc4e6341b8a6264296fadcb1"
      "Untracked GV60 assurance source."
  ∷ sourceArtifact
      "recovery/baseline-2026-09-23/solo098/untracked/release-history-preservation-counterexample.md"
      "d142cb2d5741de90ef3f77da1a551d9cdcbc42449d0b08aec0e76425f5428b66"
      "Untracked release-history preservation counterexample."
  ∷ [])
  describe

disposition : Observation → Disposition roadmap
disposition roadmapIdentityAndSnapshots =
  representedBy (governance gv54
    "Immutable governance identity and snapshot evolution remain explicit governed concerns; structural roadmap integrity is additionally established by GV50/GV52.")
disposition releaseGovernanceAndCanonicalChangelog =
  representedBy (governance gv95
    "GV95 owns canonical Unreleased state, release freeze, historical reconstruction, and publication equality.")
disposition sparseRevisionAwareReleaseProjection =
  representedBy (governance gv83
    "Sparse release projection remains explicit roadmap work, together with revision-aware link work in GV76/GV78–GV82.")
disposition regressionCounterexampleClosure =
  representedBy (governance gv84
    "GV84 requires observed contradictions to remain governed counterexamples until recurrence is rejected.")
disposition evidenceBearingCompletionAndAssurance =
  representedBy (governance gv74
    "GV74 tracks evidence-bearing completion and persistent satisfaction, including migration of historical legacy completions.")
disposition authorizedRevisionAndDerivedEffects =
  representedBy (governance gv90
    "GV90 owns human authorization, candidate limitations, derived-effect provenance, and lack of independent derived authority.")
disposition singleRootAdministrationHistory =
  supersededBy gv114
    "The GitHub-only single-root assumption was valid for its earlier scope but cannot derive independent X credentials; GV114 generalizes setup to explicit provider grants."
disposition purposeStewardship =
  representedBy (governance gv110
    "GV109 owns the canonical public Purpose and GV110 enforces explicit purpose-review vigilance on semantic roadmap changes.")
disposition projectDirectionReview =
  representedBy (governance gv111
    "GV111 now implements bounded compiler-checked Current/Next review over exact Purpose and Roadmap sources.")
disposition governanceProtocolArchitectureSplit =
  representedBy (governance gv101
    "GV101 is the canonical Governance/Protocol/effect classification rule; GV98 carries the architectural role model.")
disposition materializationAuthorityBoundary =
  representedBy (governance gv102
    "GV102 explicitly tracks separation of domain semantic authority from materialization binding.")
disposition agentContextAndLifecycleBoundaries =
  representedBy (governance gv105
    "GV103–GV107 capture Git hooks, scoped Protocol advice, lifecycle hooks, govenv shell integration, LSP and optional MCP boundaries.")
disposition dependencyAndDevenvAuthority =
  representedBy (governance gv117
    "The recovery corpus exposed that repository-validity properties were still mixed into Protocol; GV117 now tracks the required classification.")
disposition constitutionalHistorySpine =
  representedBy (governance gv116
    "GV116 now tracks migration from mutable lifecycle state to validated append-only constitutional history.")
disposition propositionIdentityAndEvidence =
  representedBy (governance gv116
    "GV116 preserves independent Proposition identity, human Governance contracts, and evidence-driven establishment into Obligations.")
disposition supersessionDispositionAndCoverage =
  representedBy (governance gv116
    "GV116 preserves atomic supersession, transition-owned disposition, outgoing-responsibility coverage, and reformulation semantics.")
disposition historyDerivedRoadmapState =
  representedBy (governance gv116
    "GV116 explicitly requires roadmap lifecycle and glyphs to derive from constitutional history rather than stored ItemState.")
disposition historyDerivedSnapshotAndDelta =
  representedBy (governance gv116
    "GV116 explicitly carries history-prefix snapshots and constitutional-event release deltas, excluding activity-only advancement.")
disposition developerJournalAndSocialPublication =
  representedBy (governance gv115
    "GV115 owns PR-authorized journal publication and Release Please major/minor release-post authorization.")
disposition multiProviderAdministration =
  representedBy (governance gv114
    "GV114 owns irreducible provider grants and least-privileged provider capability boundaries under one human-facing setup.")
disposition transientReleaseAndPrState =
  irrelevantBecause
    "Specific old PR numbers, workflow run states, and release-candidate checkpoints are historical transport state; their durable semantics and regressions are represented by GV84/GV90/GV95 and current governed evidence."
disposition localMainGV60AssuranceWip =
  representedBy (governance gv74
    "The unfinished GV60 static-assurance migration is not lost: GV74 keeps historical completion evidence migration as explicit outstanding governance work.")
disposition localGV90StageB =
  representedBy (governance gv90
    "The recovered Stage-B semantics are represented by the current AuthorizedRevision governance and its implemented materialization boundary.")
disposition localGV90StageC =
  representedBy (governance gv90
    "The recovered Stage-C authorization/effect concepts are represented by GV90 plus later merged materialization/administration work.")
disposition localGV92AdminRoot =
  supersededBy gv114
    "The recovered branch encoded the former exactly-one-provider-root model now explicitly generalized by GV114."
disposition localGV92StageC =
  supersededBy gv114
    "The recovered Stage-C setup work depends on the former single-root assumption and is retained historically while GV114 owns the generalized target."
disposition localGV84ReleasePlacement =
  representedBy (governance gv84
    "The recovered placement regression and counterexample are covered by GV84's counterexample-closing obligation and later release-governance repairs.")
disposition localReleaseHistoryFix =
  representedBy (governance gv95
    "The recovered historical reconstruction fix/counterexample is represented by the completed canonical release-history model and its regression evidence.")
disposition detachedValidationHeads =
  irrelevantBecause
    "Detached heads were execution checkpoints used to validate historical candidates/releases; their semantic findings are retained in governed source, assurance, and counterexamples, so the heads themselves are not intended project state."

closure : Consolidation Observation roadmap declared
closure = consolidated disposition

registered : DeclaredConsolidation roadmap
registered = declaredConsolidation Observation declared closure