Historie revizí

Autor SHA1 Zpráva Datum
  clanker 4bc3e61edb goals: web UI — pile, timeline, queue filters, task page, carried fixes před 1 měsícem
  clanker 44f2e66a5a goals: schema, lifecycle service, wire contract and task callbacks před 1 měsícem
  clanker 06760a6895 ui: agent celebrations — saddle yeehaw festive card, 🤠 badge and timeline events před 1 měsícem
  clanker 478be0a6fb ui: heredoc completion reports — markdown summary card + timeline first-line snippets před 1 měsícem
  clanker 9f5ab7ab36 push: plan 11 task E — real Web Push (VAPID) notifications před 1 měsícem
  clanker a661dcca94 ui: plan 11 task D — task page, queue and dashboard layout tranche před 1 měsícem
  clanker 3afef542e0 plans: e2e re-baselined on allocation resumes — plan accept/reject/auto-approve roundtrips, draft matrix, POST /answer retirement proof před 1 měsícem
  clanker b397745530 lifecycle: draft state machine on a flattened M0001 — enqueue/delete guards, edit matrix, auto-enqueue subtasks, waiting-on-drafts display před 1 měsícem
  clanker 47132a3a52 tests: shard web suite into seven parallel bundles with event-driven waits před 1 měsícem
  clanker 087f0e5d6e tests: dispatcher tick honours SADDLE_DISPATCH_TICK_S (default 5s unchanged); meson test timeout 900s před 1 měsícem
  clanker 4fcf4f6e51 ui: task page progress feed directly below the status head před 1 měsícem
  clanker 9f9383720b fix: answered blocks resume flip daemons — verdict delivery + affine wake před 1 měsícem
  clanker 16ea23f919 phase 3: capability awareness + dashboard — assignment capabilities context (saddle_tags/fleet_tags), GET /api/saddle/capabilities for the daemon CLI, subtask callback capabilities validated against the operator tag set (explicit-only, unknown tags name the valid list), task page status block pinned to the top with newest-first blocking sections, home dashboard pinning OPEN blocks as newest-first link-through cards above a cross-task activity timeline (TimelineService, last ~50 events), slow-ask lost-wake regression; tracked test bytecode removed před 1 měsícem
  clanker 1568628f4e phase 2: telemetry flip — pushed chunks/results ingestion, staleness probe, pollers retired před 1 měsícem
  clanker 2a8a2ec4b0 phase 1: work acquisition flip — ask/allocation, per-saddle tokens, wake computation + lost-wake guard před 1 měsícem
  clanker b0ae5dd17d fix: live blocks without reload — hidden terminal tabs release their SSE stream (per-origin HTTP/1.1 cap starvation was the culprit), task pages refresh on focus and log refresh failures instead of swallowing them, README documents the SSE budget; regression test covers daemon-raised block -> pulse -> sealed GET refresh roundtrip před 1 měsícem
  clanker 65ebc7c247 fix: raw-log cursor never trusts the daemon's next beyond served-and-stored chunks — belt-and-braces against the daemon-side /log snapshot race; forensics test simulates the race (chunks appended during response construction, next computed after) and proves every chunk lands exactly once with zero seq gaps před 1 měsícem
  clanker 4d7354bd13 feat: branch_advanced on verdict and resume paths — any sibling (same parent, or same project+branch) completing/failing/dispatching/progressing after the task's park marker (suspended_at, else newest block, else last session activity) flips it true; carried on POST /answer, /notify verdicts, /poll answers and resume /start payloads so the daemon can skip the pointless pull --rebase před 1 měsícem
  clanker b878a9178c feat: /start carries git_identity {name, email} from the saddle row — omitted entirely when unset so the daemon's fallback identity applies před 1 měsícem
  clanker 32a9554c9d feat: per-saddle git identity + ssh key storage — migration (git_name, git_email, ssh_public_key), poller and refresh persist the daemon-reported ssh_public_key, saddles page shows the key (copy button, deploy-key hint) with an inline identity edit form před 1 měsícem
  clanker e818ee4c25 fix: lossless raw-log ingestion — cursor advances only over chunks actually stored (daemon next trusted only when the array was fully consumed; duplicates consumed; failures stop advancement for re-fetch), whitespace-only chunks store as separators; audit test proves the full seq 1..6 corpus (CRLF-only chunk included) lands exactly once and streams unfiltered through SSE před 1 měsícem
  clanker b55f9a8719 feat: dead/wedged daemon reconciliation — vanishing daemons drive offline+requeue with narrated comments (3-strike verified against connection-refused), stale last_activity wedges fence+requeue, saddles page health panel (state/uptime/last-contact/badge), task rows mark the unreachable window, raw-log polling verified from the first push; harness timeout 1800s před 1 měsícem
  clanker 8223c8d4d2 feat: 409-aware dispatch — machine-readable conflicts recover zombies (abort, bounded idle wait, one retry, narrated), live-task conflicts fence and alert; failed pushes mark the session push_failed and retries reuse the row instead of churning new ones před 1 měsícem
  clanker e53b6c03b5 feat: cancel/requeue/stop reaches the daemon — POST /abort with narrated outcome; a failed abort fences the saddle as 'recovering' (not dispatchable) until an idle probe clears it or three failed probes escalate to offline před 1 měsícem
  clanker 5e08dc201b feat: stranded-assignment recovery — assigned/working tasks with an open session, zero stored output past the grace period (SADDLE_STRAND_GRACE_S, default 120s), on a demonstrably idle daemon requeue with a bot comment; extends the stale-busy healing před 1 měsícem
  clanker e654f61840 fix: raw-log capability probe retries on later polls (throttled, SADDLE_RAW_PROBE_INTERVAL_S default 60s) instead of one seed-time failure stripping the session's raw terminal view před 1 měsícem
  clanker 40b7ad1713 fix: refresh maps parked daemon states (blocked/suspended) to logically-free saddles — only 'working' maps to busy, reconciled against the web's open-session records instead of corrupting busy bookkeeping před 1 měsícem
  clanker c6af578198 fix: no daemon request may hang the dispatcher — Soup session timeouts (SADDLE_HTTP_TIMEOUT_S, default 30s, idle-pool reaping) plus a 60s tick watchdog that force-resets the latch; request paths already retry transport blips once před 1 měsícem
  clanker 5c140cb383 test: raise the meson timeout to 900s — the suite has grown past 420s with rounds 4-5 před 1 měsícem
  clanker 7c2b3e00b5 feat: task-reading API for the daemon CLIs — GET /api/saddle/tasks (project_id filter, q over title/description/plan) and GET /api/saddle/task/{id} (parent title joined), callback-token authenticated; harness pins LD_LIBRARY_PATH empty so the binary's RUNPATH always resolves the dev stack před 1 měsícem