{"domain":"spawn.os.moda","count":1,"changes":[{"captured_at":"2026-06-14T00:45:07","card_hash":"d74f9a1ae2bd4060f1440ba05508ffb5e6e379b620b939c4612e990dc0892466","previous_card_hash":null,"diff":{"skills_added":[{"id":"spawn-developer","name":"Spawn Team Server","description":"5-10 agents, heavy loads — 8 vCPU, 16GB RAM, 160GB SSD","tags":null,"inputModes":null,"outputModes":null},{"id":"spawn-production","name":"Spawn Scale Server","description":"10-20+ agents, full fleet — 16 vCPU, 32GB RAM, 320GB SSD","tags":null,"inputModes":null,"outputModes":null},{"id":"spawn-starter","name":"Spawn Pro Server","description":"2-4 agents, real work — 4 vCPU, 8GB RAM, 80GB SSD","tags":null,"inputModes":null,"outputModes":null},{"id":"spawn-test","name":"Spawn Solo Server","description":"1 agent, light tasks — 2 vCPU, 4GB RAM, 40GB SSD","tags":null,"inputModes":null,"outputModes":null}],"skills_removed":[],"skills_changed":[],"fields_changed":[{"field":"name","before":null,"after":"osModa Spawn"},{"field":"description","before":null,"after":"Spawn dedicated AI-managed servers. Pay with USDC via x402. v1.3.6 (2026-05-08): chat persistence finally works — verified against real OpenClaw frame shapes. Was: v1.3.3's extractor looked for `payload.data.text` but production OpenClaw emits `payload.data.delta` (incremental chunks, not cumulative), so accumulation never started, debounce never armed, agent text never persisted. Now: explicit assistant-stream-delta accumulator (concatenates deltas), explicit `payload.stream:'end'` final-frame handler that flushes the accumulated text, plus the existing content-array + debounce paths kept as fallbacks. Verified live: dash-chat NDJSON now contains role:agent entries on every reply. v1.3.5 (2026-05-08): v1 API-key delivery actually wires credentials now. Was: 14-line SSH command joined with `&&` produced invalid `if [ ... ]; then && curl` syntax — the credential POST succeeded but the agent-binding PATCH never ran, leaving orders with credential in store but agent.enabled=false → every chat returned `agent_error`. Topimones bug 2026-05-08 root cause. Fix: heredoc-style script with proper shell control flow + post-write verification (gateway /health must report credentials_count>=1 AND osmoda enabled=true) before flipping api_key_delivered. v1.3.4: wedge auto-restart race fix — finalize() no longer re-establishes auto_restart_status:'timeout' if the recovery path cleared the wedge during the SSH wait. Was: heartbeat resumes mid-SSH → recovery deletes attempts+status → SSH times out → finalize writes status='timeout' onto a clean state, leaving order in `auto_restart_status:'timeout', auto_restart_attempts:0` (impossible-looking contradiction). Now: finalize checks if recovery already won the race and no-ops. v1.3.3: chat persistence really works now. v1.3.2's Method 1 + Method 3 patterns weren't matching real production frame shapes — inspection of the actual dash-chat NDJSON showed zero agent text entries, just user msgs + tool-use bubbles. Now: defensive multi-shape text extractor pulls candidate text from every plausible field, accumulates longest, persists on 5 s debounce — fires regardless of which lifecycle event the runtime ends with. Tool_result detection equally permissive (matches content-array tool_result items + alternative shapes). Force-flush on next user msg + on agent WS close so partial replies survive disconnect. Persisted tool bubbles now carry target + outcome; replay shows 'Reading server.js · 187 lines' instead of bare badges. Phantom 'Thinking' bubble below completed turns suppressed when an agent turn already exists. v1.3.2: chat persistence + replay fixes. v1.3.1: wedge-detector hardening + chat_responsive signal + reseller spawn-log. v1.3.0: unified server-event plane + universal request receipts."},{"field":"version","before":null,"after":"1.3.6"},{"field":"url","before":null,"after":"https://spawn.os.moda"}],"other_changed":true,"is_empty":false,"human_summary":"added 4 skills · name ∅ → osModa Spawn · description ∅ → Spawn dedicated AI-managed servers. Pay  · version ∅ → 1.3.6 · url ∅ → https://spawn.os.moda"}}]}