Phase ID: APG27A
Complete — Python report core, git-diff-report, and Git/operational association adopted
APG27A preserves APG27 as a partial stopped-worktree phase, corrects its two known acceptance defects, and adopts the resulting Python-first reporting implementation. Immutable v0.3.0 release validation now uses its own audited historical surface, independent of the current v0.4 development inventory. Malformed and unsupported release identities fail closed.
The Red branch-count owner in validate_source_path is decomposed into named
lexical, location, destination, metadata, POSIX, and Windows safety helpers.
Focused tests preserve diagnostics and public behavior. Fresh fallback
measurement finds no Red structural signal in maintained report-core code.
Git-show version 2 and compatible standalone operational-report version 1 retain their characterized bytes. Git-diff version 1 retains private-index, untracked-file, drift, failure-cleanup, and real-index-preservation behavior. Operational appends validate exact same-report Git-show or Git-diff association when Git evidence exists. GitPython remains unselected, and Git history owns rollback to the former Bash implementation.
Focused report unit, integration, parity, and all 23 report-tool Bats contracts pass. Release-policy unit, integration, version-policy, and reconstructed historical-policy checks pass. Fresh component reviews accept the historical release-policy correction and Python-profile decomposition, and a fresh complete-diff review owns final stable-tree acceptance. Identity, skill-library, compilation, syntax, help, documentation, privacy, and whitespace gates pass.
The complete APG suite is not run because APG27A is a bounded implementation correction and adoption phase rather than readiness or release validation.
APG27A changes no skill, catalog or maturity row, pytest dependency, mirrored
test path, personal skill, target repository, active or public v0.3.0 object,
or release tag. Windows report replacement and network-filesystem writes remain
unsupported. APG28 may begin only after this phase is committed, its managed
Git-show and explicitly associated operational records are complete, private
main is pushed, and local and remote identities are equal.