Complete task002 through task016 across cache correctness, editor lifecycle, C boundaries, build and release governance, dictionary provenance, performance, interactive workflows, tests, documentation, and final cleanup.
1.7 KiB
1.7 KiB
Change Log: Release and CI Governance 2026-07-28
Planning
- Added
task010and locked the local/remote boundary, immutable input, Windows, tracked-record, and version-pair acceptance criteria before code.
task010
-
Add —
tests/check-release.sh,Docs/RELEASING.md- Added one executable repository-invariant gate and a distinct credentialed release checklist.
-
Modify —
.github/workflows/ci.yml- Pinned checkout and Emacs setup actions to verified full upstream SHAs.
- Replaced live MELPA installation with a pinned package-lint checkout.
- Added an Emacs 30.1 Windows Elisp compile/ERT baseline.
-
Modify —
.gitignore, contributor/public/audit documentation- Made
.phraserecords versionable. - Documented immutable release artifacts, checksums, and remote checks.
- Closed
issue009without claiming an unperformed remote publish.
- Made
-
Add —
postmortem/20260728-release-governance.md- Recorded why local invariants and credentialed remote release evidence remain separate boundaries.
Validation
- Release gate red: floating refs, missing Windows/public ERT path, and
ignored
.phrasewere all reported. - Release gate green: repository invariants pass.
- Pinned package-lint commit: pass with an empty package directory.
- Workflow YAML parse and POSIX shell syntax: pass.
- Default ERT: 119/119.
git diff --check: pass.
Behavior and Risk
- Full-SHA action pins intentionally require explicit maintenance updates.
- Windows CI covers the required pure-Elisp product baseline; the optional C module remains exercised on Linux and macOS.
- No commit, tag, remote workflow, artifact, push, or publication was made.