Skip to content

Squadra 3+ 3.13.0

Choose a tag to compare

@dagoSte dagoSte released this 05 Nov 08:57
· 31 commits to main since this release

Squadra 3.13.0 stops checkpoints from growing linearly and reclaims the space of data you already have.

  • Reuse of immutable content. New frozen candidates and checkpoints share identical files instead of copying them: a copy-on-write clone (APFS, or FICLONE on Linux), a hardlink only for verified read-only files where clones do not exist, a plain copy last. Bytes, paths, fingerprints and package formats are unchanged, so older versions still restore them. Measured on a copy of a real registry, 10 consecutive checkpoints with concurrent writes: 8.97 GB → 0.60 GB on APFS (−93%), 9.22 GB → 3.60 GB without copy-on-write (−61%).
  • Compaction of existing data. storage adopt --scan DIR registers checkpoints made before 3.13, but only those whose last event matches this journal. storage compact then shares the bytes of candidates, checkpoints, saves and archived run logs in place. On a 4.25 GB copy of a real registry with six old checkpoints, 89,485 of 93,684 files were shared and the registry shrank to 0.98 GB (−77%) in 7 minutes. Nothing is compacted at opening: every step previews first, and --apply belongs to the coordinator.
  • Retention policy. storage status and storage purge --dry-run show what can go. By default the newest three checkpoints and three saves are kept, along with the last restored save, anything under 24 hours and storage keep paths. Open tasks, live runs and the active registry are always protected, and unknown folders are never touched. storage purge --apply is coordinator only. A keep or a task that arrives during a purge stops the deletion or is refused, never recorded for deleted data. On the same copy: 0.88 GB after the default purge (−79%).
  • Recorded, compact checkpoints. checkpoint --actor WINDOW --compact records the recovery point and omits views that are rebuilt on opening; save reuses the previous package. A checkpoint no longer fails when a concurrent writer's temporary file disappears mid-copy.
  • Ask for it in one sentence. After updating, tell a Claude window: «Use squadra to compact the storage of the registry at /path/to/registry». At every resume doctor --resume notices old unregistered checkpoints or more than 1 GB of candidates, and the coordinator proposes that sentence.
  • Skill instructions no longer ask for repeated full copies: checkpoints are compact and recorded, and every long round starts with storage purge --dry-run.

After updating, tell a Claude window: «Use squadra to compact the storage of the registry at /path/to/registry». The coordinator runs storage adopt, storage compact and storage purge, each previewed first, and applies only on your word. doctor --resume proposes it when there is space to reclaim.

Python 3.12+ is required. Plugins unchanged: memoranda 1.0.10, Playwright 1.0.11, Sentry 0.1.8.

Validation: 2274/2274 tests passed on the exact release commit with the strict parallel runner (no known reds accepted), zero failures, errors, skips or worker errors. Measurements: 10 consecutive checkpoints with concurrent writes on dedicated APFS and HFS+ volumes, and a full rehearsal (adopt, compact, purge, full audit, opening a kept checkpoint) on a copy of a real registry. Each lane, the integration and the release were read and accepted by a Codex window that did not write them; their findings (a log replaced under a live run, a self-deadlock, and three purge/protection races) were fixed with red-to-green regression tests before acceptance. A 3.12.1 save package restores with this version.