Repository navigation
Better Codex v0.2.0-beta.4 — Legacy directory migration fix
Pre-releaseThis is a minimal server-cache upgrade correction to beta.3.
A cache with user-directory-source-v1 already recorded could skip the once-only scan for newly recognized lowercase/serialized/parent-bound noninteractive agent catalog entries. The migration now records user-directory-source-v2 after retiring only those derived directory projections. Original child history, parent records, source/thread generations and command ownership stay intact. The first upgrade is transactional; subsequent cold opens do not republish tombstones.
The regression uses a real legacy SQLite schema with v1 present throughout, three old child source shapes and original bodies, plus a real accepted command Journal. Beta.3 reproduced the unchanged visible catalog; beta.4 passed exact row/receipt/ownership preservation and repeated-reopen checks. No marker was cleared to stand in for an upgrade. The published beta.2 code had no v1 marker itself; this fix covers older/intermediate caches where v1 has already been written.
Validation for this patch: 28 focused upgrade/agent cases, 221 complete core assertions, 13 host/auth contracts, full Go suite, and 43 real independently owned empty-account host/resource/IPC/AppHost checks. Actual runtime readback contains both the retained v1 and new v2 markers. Android and generated renderer code are byte-unchanged from beta.3; their prior acceptance is retained, not rerun or represented as a new device/model/power test.
Beta.3, its tag and assets remain unchanged. The four beta.4 assets are the Mac installer/source ZIP, Better Codex source, complete pinned modified OpenCodex corresponding source (AGPL), and SHA256SUMS. No official renderer, account/runtime data, production APK/signature or private history/log is redistributed. Refer to docs/portable-validation.md for retained device and latency limits.