v0.154.0
v0.154.0 aligns CI with local dependency pins, adds opt-in self-improvement reviews and typed memory classification, and stabilizes cross-turn reasoning replay for Codex.
Self-Improvement
- Completed goals and tracked tasks can now enqueue a bounded, same-session review of persona, skills, and distillation policy, in
off,propose, orautomode. - Proposal runs cannot reach artifact writers; direct private-skill updates and deletes carry provenance and archive the outgoing version so a change can be rolled back.
Dependency Alignment
- PR gates install from
uv.lockusinguv sync --frozen, ensuring local and CI suites run identical code. - The pinned AI stack upgrades
openaito 3.5.0 andanthropicto 1.2.0, closing the gap between locked and resolved versions. - A nightly upstream canary files a tracking issue if the suite breaks against latest dependencies, providing version deltas and seam-contract output.
Memory & Context
- The
chunkstable addsmemory_kind,subject,review_state, andexpires_atcolumns for operator-profile versus agent-note classification. memory_ingestaccepts an optionalsubjectparameter, andmemory_recallandmemory_listsupport filtering bymemory_kind.- ADR 0108 defines the v2 context contract, specifying derived context projection at request time and memory attributes as orthogonal dimensions.
Chat & Fleet
- Pressing ↑ on an empty composer now dequeues the newest queued message into the editor; re-sending queues the edited text without duplicating the original steer.
- Durable artifacts insert paragraph breaks between text segments and tool calls, preventing unreadable concatenated strings in chat history.
- Fleet status and roster lists now respect a persisted, hub-scoped order via
PUT /api/fleet/order, rejecting malformed permutations without mutating saved state. - New fleet sisters inherit every configured model connection and credential: the provider registry and gateway keys come with the agent, and protoAgent-owned OAuth is shared through the box credential store, so ChatGPT/Codex and Claude work without reconnecting while plugins, skills, identity, and unrelated secrets stay isolated.
- The fleet guide, native OAuth ADR, and provider docstrings now document explicit Codex credential transfer and the picker/API inheritance default, replacing the obsolete instance-copy language.
Codex Reasoning
- Encrypted reasoning blobs are captured during streaming and replayed only to the issuer that minted them, using a truncated digest of
base_urlandaccount_idfor verification. - Reasoning items lacking a verifiable encrypted blob are dropped from outbound requests to prevent 400 errors that brick threads.
- A recovery middleware strips invalid replay state and retries once, rewriting offending assistant messages to heal checkpointed threads.
What's Changed
- ci: shard Windows native gates by scope by @mabry1985 in #3195
- Fix fleet model and OAuth inheritance by @mabry1985 in #3198
- Document fleet OAuth inheritance ownership by @mabry1985 in #3202
- fix(codex): stop replaying reasoning items the backend can't verify by @mabry1985 in #3199
- feat: Persist and serve fleet roster order by @mabry1985 in #3200
- feat: add policy-bounded self-improvement reviews by @mabry1985 in #3201
- feat(codex): capture encrypted reasoning and replay it only to its issuer by @mabry1985 in #3207
- chore(deps): bring the pinned AI stack up to what a fresh install gets by @mabry1985 in #3208
- feat: typed memory schema — additive columns for memory classification by @mabry1985 in #3205
- fix(chat): ↑ pulls the queued message out of the turn instead of copying it by @mabry1985 in #3212
- fix(a2a): separate text segments around tool calls in durable artifacts by @mabry1985 in #3210
- feat: Context Architecture v2 ADR (lifecycle, authority, projection) by @mabry1985 in #3204
- ci: pin PR gates to uv.lock, add an upstream canary and seam contracts by @mabry1985 in #3209
Full Changelog: v0.153.2...v0.154.0