Skip to content

Better Codex v0.2.0-beta.5 — Canonical history and local body adoption

Pre-release
Pre-release

Choose a tag to compare

@WhyTan00 WhyTan00 released this 07 Oct 19:20
· 7 commits to main since this release

Beta.5 fixes the canonical-history argument passed to the real SDK reader and the guarded adoption of a first local body.

getLoadedConversationHistoryTurns requires conversation.turnHistory.history. Passing the conversation object caused an actual TypeError(flatMap) and prevented the observed reasoning/tool process from being persisted. The corrected helper saves/restores process items with the SDK's canonical history object. The Android transform allows a genuinely empty local view to adopt a cached body while retaining a newer live metadata head; existing live bodies, cancellation, rewrite and normal stale-history guards remain authoritative.

Evidence is kept separate:

  • No SDK supplied: 16 contract checks pass and three actual-SDK tests are explicitly skipped. Full core: 227 pass, those three SDK-required skips. Bad SDK input does not fall back silently.
  • Actual locally acquired SDK: 19 direct bindings pass; the beta.4 old cache reproduces the real TypeError.
  • Exact public-generated initial/scope/import-map modules: 239 checks pass with no skips, 192 declared-resource hashes and the existing static-import checks, and the bound Android release builds. Host/auth contracts13, full Go suite and the real independent empty-account host43 checks pass.
  • The private maintenance owner reports real APK72/UI ee166 tool/image progress and two Native SQLite process turns (7 and 10 items) retained after forced termination, with 50 actual WebView and 11 formal resource checks. That is SDK/persistence evidence, not offline startup acceptance.

Complete offline cold startup is not solved or accepted in this release. An eight-second private offline cold open still waits for a connection and remains under investigation. Physical-phone behavior, natural long-send latency and sustained power have not been fully accepted. A script's persistence passed result does not establish that its offline first screen passed.

README remains unchanged. Beta.4 and earlier tags/assets remain immutable. The four beta.5 assets provide the portable Mac installer/source, Better Codex source, complete pinned modified OpenCodex corresponding source (AGPL), and SHA256SUMS. Official renderer resources, private APK/signature, credentials, conversation data and raw logs are not redistributed. Consult docs/portable-validation.md for the detailed acceptance layers and current limits.

Follow-up diagnosis after this immutable candidate was committed: the legacy Android packager does not collect every literal dynamic import, and its old pruning checker does not prove every target exists. A private offline trace identified a missing work-mode access splash module. This is a separate pending resource-collector fix; beta.5 does not claim complete dynamic-import closure or full offline startup.