Skip to content

v22.29.0

Choose a tag to compare

@mickeyyaya mickeyyaya released this 16 Oct 14:11
· 1065 commits to main since this release

Release class: binary-release — this release changes the compiled binary, so it has a NEW macOS fingerprint that needs a corporate approval request (see the Fingerprints section below).

Generated by evolve release (go/internal/changeloggen) from commits v22.28.0..HEAD.

Added

  • the repo-contract scan keys each package run and records hits and escapes in shadow (landing plan S5) (#900)
  • internal/testkey and internal/testverdict — the content key of a package test run and a store of green results that can never give a false hit (landing plan S3, S4; unwired) (#889)
  • every third-party library has one home behind an adapter, a guard keeps it there, and govulncheck gates CI (#888)
  • evolve gc archives dev worktrees idle for 14 days, and sees squash-merged branches (#865)
  • evolve practice watch files an inbox item when the best practice of a CLI changes (ADR-0133, plan M1) (#864)
  • the kernel preloads docs-write into each dispatch that writes a document (ADR-0132, plan K2) (#862)
  • docs-write, one skill for every document a person reads, with the reasoning that justifies each decision (ADR-0132) (#856)
  • evolve cover changed refuses any changed function below 100% coverage, and CI enforces it
  • cycle-scoped agent messaging, the doc set and the skeleton (ADR-0129, unwired)

Fixed

  • predicates that comment-zero turned red check code and behaviour instead of comments (#905)
  • the placeholder check lets a correction note quote the token it removed (#904)
  • test the process-group kill guard through an injected sender, never the real kill (#890)
  • each evolve gc step runs under its own deadline; the step after the dev-worktree sweep no longer inherits a spent one (#879)
  • the dev-worktree sweep of evolve gc runs under its own budget, and a budget cut is a skipped tree, not a failure that halts the wave boundary (#877)
  • one shared fresh-session retry carries the evidence, and the attempt postmortem covers every end (ADR-0130 follow-ups)
  • the agent sandbox has an executable contract, a pane-parity gate, real CI coverage, and no read of another pane's tty
  • the auto-resume cap counts, and a boot lost to a dead session is never a quota pause

Changed

  • test-integration runs with a 20-minute timeout, and CI reports each package over the 180 s wall budget (plan T4) (#880)
  • internal/phases/audit, internal/bridge and internal/ciparity tests run in parallel by default, with a guard each (plan T17) (#878)
  • internal/core output to stderr is injectable, so 99 tests that swapped os.Stderr run in parallel; the package drops from 215 s to 142 s (plan T16) (#876)
  • the phase configurations pass SleepFn to the runner; TestRun_EmptyArtifact_FAIL drops from 11 s to under 0.1 s in six phases (plan T15) (#875)
  • the pre-phase snapshot reads the status once for a root that is not a checkout; the fleet-width recovery test drops from 234 status reads to 78 (plan T13) (#874)
  • git fixtures build one template per test binary and copy it per test; TestCycleScenarios drops from 36.5 s to 20.2 s (plan T12) (#873)
  • tests build each Go binary once per test binary and cap nested go runs at two CPUs (plan T14) (#872)
  • cmd/evolve tests run in parallel by default (686 s -> 211 s, plan T11) (#870)
  • internal/phases/ship tests run in parallel by default, with a guard; the package drops from 262 s to 93 s (plan T11) (#871)
  • internal/core tests run in parallel by default, with a guard; the package no longer approaches the go test timeout (plan T11) (#868)
  • one instrumented test run feeds every coverage gate, and the local floor runs each test once (plan T2) (#861)
  • the transcript scan skips files older than the window, and the subagent tests no longer read the host home (plan T1) (#858)

Documentation

  • fleet landing at scale — research, plan and ADR-0134 (Proposed) for content-keyed verification and group commit (#886)
  • a review of every slow test — git and the go tool are 81% of the time, so the next gains come from less work (research §10, plan §11) (#869)
  • the test timeout comes from ~1,900 serial, git-bound tests, not from a short limit (research §9, plan T11 to T13) (#863)
  • the loop watches the practice of each CLI and trims its prompt scaffolding by measure (ADR-0133) (#857)
  • the test system measures once, keeps its poles short and stops new duplicates (ADR-0131) (#852)

Other

  • (dossier) cycle-1898 closeout
  • (dossier) cycle-1897 closeout
  • evolve-cycle: goal=ef7202e9bc9c27ad4d60bc57ec97cb50b515807e6cf921534bc932aa9969b4e1
  • (dossier) cycle-1896 closeout
  • (dossier) cycle-1895 closeout
  • evolve-cycle: goal=440d4c532ea2d4541321f47c4c9f7432d0392cfd350bd7c264785909dcbf7fbc
  • (dossier) cycle-1894 closeout
  • (dossier) cycle-1893 closeout
  • evolve-cycle: goal=3c4de02e8cf4c23f2f42ba961128b7c7513522e5f96beb521e52e6628cd255c2
  • Merge remote-tracking branch 'origin/main'
  • (dossier) cycle-1892 closeout
  • (dossier) cycle-1891 closeout
  • evolve-cycle: goal=d68b6738d5f96158cb2e3cc98fbd8b9979ca0b7191b333d33f14502ca7100f81
  • (dossier) cycle-1890 closeout
  • (dossier) cycle-1889 closeout
  • evolve-cycle: goal=1a5d0a5a3a6f38929dbcfe7e8ac99e6d77da9757473b1be1e7390467a3dd157b
  • (dossier) cycle-1888 closeout
  • (dossier) cycle-1887 closeout
  • (dossier) cycle-1886 closeout
  • evolve-cycle: goal=e6307f04a6982dcedf220205fe4a63f48375dadb97de62b3cbce5a8460d39ada
  • (dossier) cycle-1885 closeout
  • (dossier) cycle-1884 closeout
  • evolve-cycle: goal=62c6f40d636832c6ef422857690b9438be0fb43fa15e271ecb86bbb3778fca8b
  • (dossier) cycle-1883 closeout
  • (dossier) cycle-1882 closeout
  • evolve-cycle: goal=b0527770fe9840669eaf869326e765864c020c43eb23da58937bda74c875cce9
  • (dossier) cycle-1881 closeout
  • (dossier) cycle-1880 closeout
  • (dossier) cycle-1879 closeout
  • evolve-cycle: goal=14845fe7cff57f5c858fa68f4760c1f6230cb8ec30668b73598661720b06a947
  • (dossier) cycle-1870 closeout
  • (dossier) cycle-1869 closeout
  • evolve-cycle: goal=7a547bbc256f1da34269bc78e6e98a54df988c7770669678f8c4a6cbfec22777
  • (dossier) cycle-1866 closeout
  • (dossier) cycle-1865 closeout
  • evolve-cycle: goal=dbdd24e471e412f33cdbe489bb2d8588c60478a1cb37ac9d64a1284cb35837c9
  • (dossier) cycle-1864 closeout
  • (dossier) cycle-1863 closeout
  • evolve-cycle: goal=ffcdf03d75674417b1039d32150934e91f7648e0ac74cc94f49dcf98625295a1
  • (dossier) cycle-1862 closeout
  • (dossier) cycle-1861 closeout
  • evolve-cycle: goal=0d87746fa9c0e9e3bf185d5944fcafd60b791fa94383acdaa218feedf24a26a1
  • (dossier) cycle-1860 closeout
  • (dossier) cycle-1859 closeout
  • evolve-cycle: goal=3bce3268c88d4933c79ff72bfa532a7119d4c3f91628dfcb901b49be4bb78d66
  • (dossier) cycle-1858 closeout
  • (dossier) cycle-1857 closeout
  • Merge pull request #849 from mickeyyaya/test/backfill-ship-landing
  • Merge pull request #848 from mickeyyaya/test/backfill-stelint
  • Merge pull request #847 from mickeyyaya/fix/attempt-postmortem-followups
  • Merge branch 'main' into test/backfill-ship-landing
  • Merge branch 'main' into fix/attempt-postmortem-followups
  • Merge pull request #846 from mickeyyaya/fix/cover-changed-gate
  • Merge pull request #845 from mickeyyaya/feat/agentmsg-skeleton
  • Merge pull request #844 from mickeyyaya/fix/sandbox-contract-pane-parity
  • Merge pull request #843 from mickeyyaya/fix/quota-resume-cap-and-boot-wall

Fingerprints (corporate approval)

The recommended macOS artifact is the universal evolve_darwin_all.tar.gz (a lipo'd x86_64 + arm64 fat binary) — one fingerprint covering both Intel and Apple Silicon. SHA256 checksums for every published artifact are in the checksums.txt release asset. (The per-arch evolve_darwin_amd64.tar.gz / evolve_darwin_arm64.tar.gz archives remain published for existing installs, each with its own distinct hash — approve the universal one.)

To adopt this release under a fingerprint-based approval system:

  1. Download evolve_darwin_all.tar.gz and checksums.txt from this release.
  2. Verify integrity: shasum -a 256 -c checksums.txt.
  3. Submit the universal binary's SHA256 as the one macOS approval fingerprint (one request per adopted version; the pin re-adopts automatically on first run).