What's new in v0.6.0
Phase 4 — Scheduled background tasks
- Autonomous scheduler: background asyncio loop fires tasks on a configurable interval, runs them through the planner pipeline, stores results locally
- CRUD API:
POST/GET/PATCH/DELETE /api/schedulewith interval format5m / 2h / 1d(minimum 5 minutes) - Run history: each execution logged to
task_runswith status (done/error), output, timestamps - UI: scheduled tasks panel with create form, enable/pause toggle, delete, expandable run history, notification badge for new completed runs
Phase 3 — Non-custodial wallet layer
- Cashu e-cash, Lightning (LNbits), EVM stablecoins (EURC, EURe, EURCV), Solana SPL tokens, Monero, Bitcoin — all non-custodial
- Daily spending limit + explicit confirmation gate on every send
Bug fixes (this release)
PRAGMA foreign_keys = ONnow enforced per connection —ON DELETE CASCADEontask_runsactually cascadesCancelledErrorcaught infinallyblock — task runs never stuck atstatus=runningon shutdown- Invalid interval strings in
PATCH /api/schedulereturn 422 not 500 - Create button no longer stays disabled after a server error
- Notification badge count fixed on first load
- XSS:
task.nameandrun.outputHTML-escaped beforeinnerHTMLinjection strip_htmldeduplicated intoutils.py(browser version, removes script/style content)session_noncestable pruned to 24h on every insert
Upgrade
docker compose pull
docker compose up -dNo manual migration needed — new tables are created automatically on first start.