What's new in v1.1.0
Architecture
- Per-droplet worktrees — each droplet gets an isolated
~/.cistern/sandboxes/<repo>/<droplet-id>/worktree. Aqueduct names are now concurrency slots only. Eliminates dirty state bleed between droplets. - Dispatch-loop self-healing — Castellarius detects and auto-recovers droplets stuck in tight dispatch loops (dirty worktree, missing worktree). Ordered recovery: reset → recreate → escalate.
- Stuck delivery detection — delivery agents past 1.5× timeout are automatically recovered based on PR state.
Web dashboard
- xterm.js PTY terminal — browser renders the real Bubble Tea TUI via
ct dashboardsubprocess in a PTY - Full color — TERM=xterm-256color, 16-color GitHub dark palette, proper box-drawing fonts
- Pinch-to-zoom + pan — CSS transform scale, mobile-responsive, Ctrl+scroll on desktop
- Resize protocol — xterm.js sends
{resize:{cols,rows}}on viewport change; PTY resizes to match
CLI additions
ct update— pull latest main and rebuild in-place; --dry-run, auto-detects repo pathct status --watch— auto-refresh every N seconds (--interval)ct version --json— machine-readable version output
Pipeline quality
- cistern-git skill — git conventions (exclude CONTEXT.md, two-dot diff, no stash) as a reusable skill wired into all cataractae
- Aqueduct prompt overhaul — Phase 0 requirements verification in reviewer, correct diff_only context handling, delivery removes git stash
- worktree_prune drought hook fixed to run in
_primary/not sandbox root
See CHANGELOG.md for full details.