$ the-wire · showcase
OpenClaw fixes session picker stall, honors system agent, atomic skill revisions
By RepoJournal · Filed · About OpenClaw
OpenClaw shipped three behavioral fixes: the New Session picker no longer stays on 'Models unavailable' after a missing catalog owner, ambient owner resolution now honors agents.defaults.systemAgent.agentId on multi-agent rosters, and Skill Workshop revisions stage atomically instead of tearing on interruption. [ref:1][ref:4][ref:5]
OpenClaw fixed a session-recovery bug where the Control UI could be stuck on 'Models unavailable'. chat.metadata cached the first unavailable snapshot, and a partial auth-bind publication could fail-close the picker while sibling owners were stale. The fix recovers cleanly once the missing catalog owner is resolved. [1]
Multi-agent operators get the behavior they configured: commands and checks that resolve an agent-owned model or auth state without an explicit --agent used to ignore agents.defaults.systemAgent.agentId, causing openclaw doctor to fail outright under agents.ownership: "explicit" with two agents. That setting is now honored. Separately, Skill Workshop used to leave SQLite describing the previous revision while PROPOSAL.md or support files were partially replaced after an interruption; revisions now stage as immutable filesystem generations, so inspect/evaluate/apply won't reject a torn bundle. Worker artifact parsing is also bounded, closing a gap where a malformed canonical worker artifact could bypass the 6 MiB file limit. [2][3][4]
On the provider side, Crabbox consolidated redirect-security hardening across 17 HTTP-API providers into shared SecureHTTPClient and SameOrigin policies, keeping existing error text and custom error types byte-identical. Machine class profiles became authoritative for provider sizing, with tiny and small classes added below the heavy standard (32-vCPU) class. Machine0 support landed, including fixed idempotent lease IDs for automation that replays a canonical lease identity after a lost response; warmup previously rejected --lease-id there and exited 2. [5][6][7][8]
Action items
- → If you run multi-agent OpenClaw with agents.ownership: "explicit", pull the fix for agent.defaults.systemAgent.agentId before relying on openclaw doctor openclaw/openclaw [immediate]
- → Test New Session recovery after a transient catalog-owner failure to confirm the picker no longer sticks on 'Models unavailable' openclaw/openclaw [plan]
- → Review Crabbox usage of machine classes; tiny and small profiles now drive provider sizing and Machine0 idempotent lease IDs are available openclaw/crabbox [plan]
References
- [1] fix: New Session stays on Models unavailable after a missing catalog owner (#125450) ↗ openclaw/openclaw
- [2] fix(agents): honor the configured system agent for ambient owner resolution ↗ openclaw/openclaw
- [3] fix(skills): keep workshop revisions atomic ↗ openclaw/openclaw
- [4] fix(package): bound installed worker artifact parsing ↗ openclaw/openclaw
- [5] refactor(providers): share the redirect-security HTTP client policy (#1418) ↗ openclaw/crabbox
- [6] fix(providers): make machine class profiles authoritative (#1404) ↗ openclaw/crabbox
- [7] feat(providers): add tiny and small machine classes ↗ openclaw/crabbox
- [8] feat(machine0): support fixed idempotent lease IDs (#1414) ↗ openclaw/crabbox