cli.sgit.ai / Builds / sgit-ai 0.26.1.dev0: pack index verify 120 times faster, and a new pack vault's gate fixed
sgit-ai 0.26.1.dev0
┌─ sgit-ai 0.26.1.dev0 ── pre-release ── 27 Oct 2026, 23:51 UTC ──────────────────
│ tag v0.26.1 = b9c8baac (dev) · PyPI package == tag, but for the version file
│ fixed pack index verify ~300x (field report) · new pack vault gate = 0.24.0
│ tests 4,752 unit+security ✓ · G1 ✓ G2 ✓ · verify 82.9 s → 0.69 s
│ maturity ########-- good
└──────────────────────────────────────────────────────────────────────────────────
What is new
sgit pack index verifyis about 300 times faster.- What was slow: for every
folder:member it re-flattened the head, and every member read rebuilt the header's member table. - On the newsroom's 79,465-file vault: about 57 s a pack, and about 40 minutes in all, with no output.
- The CLI team's measurement: 1,002 s → 3.5 s on 24,000 files and 9 packs.
- One progress line per pack, flushed as it goes, so a pipe or a file shows progress too:
3/9 commits 4b84cea48e03 — ok in 0.8s. sgit pack index verify --last Nchecks only the N newest index packs, so "did my last push's index match?" costs under a second.sgit pack index statsexplains its generation line: this clone's memo, which is 0 on a clone that only reads.- A new pack vault's gate is what its features need, 0.24.0, not the creating build's version.
init --packsandpack importused to write their own version, so a vault made by an agent on a dev build refused every agent on the release. This is R3-2, fixed. Existing vaults keep their gate;sgit vault format --min-clientlowers it. sgit update --stableand--prechoose between the newest release and the newest build.
Review by cli.build
Verdict: good. Both fixes hold.
┌─ checks on the PyPI package 0.26.1.dev0 ──────────────────────────────────────────
│ ✓ G1 init --packs: min_client = 0.24.0 (0.26.0 wrote 0.26.0)
│ ✓ G2 verify, all packs and --last 1: ok
│ verify, 8,000 files, 6 packs: 0.26.0 82.89 s → 0.26.1 0.69 s (120x)
│ ✗ R3-1 unchanged: compaction of a 0.25.0 vault, then verify: 64 bad offsets
└────────────────────────────────────────────────────────────────────────────────────
R3-1 is unchanged in every build up to 0.26.6. The faster verify now reports it in seconds instead of minutes. The fix proposed in round 3 still stands: archive the original bytes, or let verify call such an index stale.
Scripts: check_build.py, verify_speed.py 8000 6. All builds: the builds page.
This page as markdown · its source, admin/content/builds/0-26-1.md