Commit Graph

  • 6d314d662f feat(modal): applied tags drop from search instantly; manual add == accepting a suggestion bvandeusen 2026-07-02 22:00:40 -04:00
  • b54243a1ff fix(subscribestar): inject the 18+ age cookie on every SubscribeStar domain bvandeusen 2026-07-02 21:51:51 -04:00
  • e3ceefc820 Merge pull request 'Surgical re-fetch for deep posts (ExternalLink reset) — recovery no longer needs deep scans' (#189) from dev into main bvandeusen 2026-07-02 21:14:45 -04:00
  • aa12a57f97 feat(recovery): surgical re-fetch for deep posts via ExternalLink reset bvandeusen 2026-07-02 21:07:21 -04:00
  • e52090a4cf Merge pull request 'Agent sleep mode: empty queue sheds to one downloader, lease poll backs off to 15 min' (#188) from dev into main bvandeusen 2026-07-02 20:37:48 -04:00
  • b1cfbcc06a fix(agent): sleep mode — an empty queue sheds to one downloader and backs the lease poll off to 15 min bvandeusen 2026-07-02 20:32:11 -04:00
  • bfba8045e4 Merge pull request 'Admin IA overhaul, cap-aware autoscaler, optional ml-worker, hardened tag reset' (#187) from dev into main bvandeusen 2026-07-02 18:01:56 -04:00
  • f08a64f7ae style(ia): wave 4 — one section-header language across every admin surface bvandeusen 2026-07-02 17:56:38 -04:00
  • dc7fa6eae2 feat(ia): wave 3 — Subscriptions landing answers 'what needs me, what came in?' bvandeusen 2026-07-02 17:52:00 -04:00
  • e039689eff feat(ia): wave 2 — Activity becomes the whole-app pulse; Overview gets the health strip bvandeusen 2026-07-02 17:45:45 -04:00
  • 5b34c9221c feat(ia): wave 1 — Import tab dissolves, Maintenance regroups by system, one extension home bvandeusen 2026-07-02 17:37:21 -04:00
  • 19b962f1a7 feat(b3): ml-worker becomes optional — embed-only role, decoupled GPU coordination, cpu-embed switch bvandeusen 2026-07-02 16:53:08 -04:00
  • 7c19ad91ed feat: cap-aware autoscaler + token-gated whole-instance tag reset (operator feedback) bvandeusen 2026-07-02 16:14:48 -04:00
  • a708357436 Merge pull request 'Settings defaults, GPU error tombstones + failure triage/recovery, agent bandwidth cap, approved retirements' (#186) from dev into main bvandeusen 2026-07-02 15:48:48 -04:00
  • eaea4308fc chore: retire the tag-eval harness — it proved the heads system, job done (operator-approved) bvandeusen 2026-07-02 12:41:24 -04:00
  • a7abcc41ca feat(triage): failed-processing triage — probe errored files, flag defects, recover (#125 C1-C3) bvandeusen 2026-07-02 12:36:02 -04:00
  • 1f27189b8f chore: retire ml-backfill-daily beat + the spent purge-legacy action (operator-approved) bvandeusen 2026-07-02 11:24:08 -04:00
  • 95d2ae1d58 feat(agent): global bandwidth cap — the agent can't saturate the desktop's network bvandeusen 2026-07-02 11:20:45 -04:00
  • 31c416bc7b docs(beat): backfill comments no longer claim errored jobs are retried bvandeusen 2026-07-01 23:09:26 -04:00
  • 09e2772628 fix(gpu-jobs): end the error-tombstone loop — deliberate retry semantics + poison-job guards bvandeusen 2026-07-01 22:52:38 -04:00
  • 3d6201734c fix(settings): maintenance tiles start collapsed; remember manual open state bvandeusen 2026-07-01 22:28:52 -04:00
  • 1b1d3732dc feat(agent): store ffmpeg's actual failure reason in the job's error field bvandeusen 2026-07-01 22:01:20 -04:00
  • d9354ac1e1 Merge pull request 'Agent: short-video sampling fix + "Retry errored jobs" recovery action' (#185) from dev into main bvandeusen 2026-07-01 21:13:48 -04:00
  • 686808d3f3 feat(gpu): "Retry errored jobs" — scoped requeue of errors only bvandeusen 2026-07-01 21:09:07 -04:00
  • 3a683d7feb fix(agent): short videos failed as "unprocessable" — fps filter emits 0 frames bvandeusen 2026-07-01 21:00:29 -04:00
  • 1d48770793 Merge pull request 'Agent: fix Status freeze — conchint.textContent destroyed #capn (root cause)' (#184) from dev into main bvandeusen 2026-07-01 20:46:28 -04:00
  • 0a618db10c fix(agent): Status froze after one update — conchint.textContent destroyed #capn bvandeusen 2026-07-01 20:19:37 -04:00
  • 489e6aaaee Merge pull request 'Agent: server-side throughput rates + killable-on-stop ffmpeg' (#183) from dev into main bvandeusen 2026-07-01 20:01:00 -04:00
  • 713a11e394 fix(agent): server-side rate metrics + killable-on-stop ffmpeg bvandeusen 2026-07-01 16:51:26 -04:00
  • ed20df905b Merge pull request 'Agent: DRY pass + Status rate-metrics + real start/stop state machine' (#182) from dev into main bvandeusen 2026-07-01 16:30:32 -04:00
  • 6282e753a9 fix(agent): real start/stop state machine — kill the stuck "stopping" pill bvandeusen 2026-07-01 16:20:12 -04:00
  • 91ea06be79 feat(agent): Status shows smoothed jobs/min + downloads/min (replace jumpy gauges) bvandeusen 2026-07-01 16:01:29 -04:00
  • 98b2ac90dd refactor(agent): DRY pass on the GPU agent worker package bvandeusen 2026-07-01 14:53:58 -04:00
  • 5ba9871ef0 Merge pull request 'fix(agent): stream videos via ffmpeg-from-URL (no full download) — env-agnostic' (#181) from dev into main bvandeusen 2026-07-01 14:20:53 -04:00
  • 8a0237eeea fix(agent): stream videos via ffmpeg-from-URL instead of downloading the whole file bvandeusen 2026-07-01 14:15:22 -04:00
  • 2a820d0848 Merge pull request 'fix(agent): log the real fetch/submit failure reason (diagnose #1225)' (#180) from dev into main bvandeusen 2026-07-01 12:37:45 -04:00
  • aa0605585b fix(agent): log the REAL fetch/submit failure reason, not "curator unreachable" bvandeusen 2026-07-01 12:33:51 -04:00
  • 2f9aa3d86c Merge pull request 'perf(web): 4 MiB file streaming + 4 hypercorn workers (fix 40s downloads)' (#179) from dev into main bvandeusen 2026-07-01 11:55:35 -04:00
  • 0fe1674753 perf(web): stream files in 4 MiB chunks + 4 hypercorn workers (fix 40s downloads) bvandeusen 2026-07-01 11:51:09 -04:00
  • 560a5000a2 Merge pull request 'gallery: sort by earliest post date across all posts (new default)' (#178) from dev into main bvandeusen 2026-07-01 10:54:41 -04:00
  • c22f37d64d feat(gallery): sort by earliest post date across all posts (new default) bvandeusen 2026-07-01 10:46:09 -04:00
  • 7ddad231f8 Merge pull request 'agent: stop downloader pool stampeding a slow curator (congestion collapse)' (#177) from dev into main bvandeusen 2026-07-01 10:45:48 -04:00
  • ccbb5cbc9e fix(agent): stop the downloader pool stampeding a slow curator (congestion collapse) bvandeusen 2026-07-01 10:33:18 -04:00
  • a78f7eaace Merge pull request 'explore: more variance in the related rail (stronger MMR diversification)' (#176) from dev into main bvandeusen 2026-07-01 00:50:59 -04:00
  • ef3318aac1 feat(explore): more variance in the related rail (stronger MMR diversification) bvandeusen 2026-07-01 00:46:56 -04:00
  • 71337b0ba4 Merge pull request 'agent: temporal video dedup — drop near-duplicate frames before the GPU' (#175) from dev into main bvandeusen 2026-07-01 00:38:53 -04:00
  • 7cdce0c474 feat(agent): temporal video dedup — drop near-duplicate frames before the GPU bvandeusen 2026-07-01 00:35:03 -04:00
  • 3996205f3b Merge pull request 'agent: dedupe near-duplicate crops before the SigLIP embed' (#174) from dev into main bvandeusen 2026-07-01 00:24:39 -04:00
  • eaae896858 feat(agent): dedupe near-duplicate crops before the SigLIP embed bvandeusen 2026-07-01 00:20:40 -04:00
  • 9f9db01456 Merge pull request 'agent: download/GPU producer-consumer pipeline + detector fuse fix' (#173) from dev into main bvandeusen 2026-06-30 23:39:25 -04:00
  • afef95a87d feat(agent): download/GPU producer-consumer pipeline + fix detector fuse crash bvandeusen 2026-06-30 23:34:12 -04:00
  • 216b7fc743 Merge pull request 'Agent: bound video GPU work (early-exit frame loop at max_regions)' (#172) from dev into main bvandeusen 2026-06-30 22:57:33 -04:00
  • 83f1070a11 fix(agent): bound video GPU work — early-exit the frame loop at max_regions bvandeusen 2026-06-30 22:52:32 -04:00
  • fbb76e6f36 Merge pull request 'Agent: huge-image load + figure/region caps + stale-active fix' (#171) from dev into main bvandeusen 2026-06-30 22:47:48 -04:00
  • c587ac667c fix(agent): cap figures + global region cap + reset active on stop bvandeusen 2026-06-30 22:42:50 -04:00
  • 7e74fa767c fix(agent): load huge images — disable PIL decompression-bomb guard bvandeusen 2026-06-30 22:32:51 -04:00
  • 5ef1478ade Merge pull request 'Modernise agent base → Ubuntu 24.04 / Python 3.12 / CUDA 12.9' (#170) from dev into main bvandeusen 2026-06-30 22:30:18 -04:00
  • 9f1148b110 chore(agent): modernise base → Ubuntu 24.04 / Python 3.12 / CUDA 12.9 bvandeusen 2026-06-30 22:25:46 -04:00
  • 88ff4147e1 Merge pull request 'Fix: agent py3.10 startup crash + submit-path retry + pin agent ruff to py310' (#169) from dev into main bvandeusen 2026-06-30 22:03:57 -04:00
  • f01b59f390 fix(agent): py3.10 startup crash + submit-path retry; pin agent ruff to py310 bvandeusen 2026-06-30 22:00:10 -04:00
  • 1ea02ad44c Merge pull request 'Release: prompt agent stop + lazy curator polling + build marker + agent in CI' (#168) from dev into main bvandeusen 2026-06-30 21:42:55 -04:00
  • 79269da802 fix(agent): prompt stop + lazy curator polling + build marker; add agent to CI bvandeusen 2026-06-30 21:39:00 -04:00
  • 937cfb65b4 Merge pull request 'Release: agent per-stage timing breakdown' (#167) from dev into main bvandeusen 2026-06-30 21:28:57 -04:00
  • e6a7fe7d03 feat(agent): per-stage timing breakdown (lease/download/decode/gpu/submit) bvandeusen 2026-06-30 21:28:46 -04:00
  • baac851220 Merge pull request 'perf: GPU-job leasing stays O(batch) — partial indexes + two-phase lease' (#166) from dev into main bvandeusen 2026-06-30 21:18:23 -04:00
  • 181f1c6a27 perf(gpu-queue): partial indexes + two-phase lease so leasing stays O(batch) bvandeusen 2026-06-30 21:12:12 -04:00
  • a28c33281a Merge pull request 'Release: unfreeze agent status view + smoothed throughput autoscaler + log pane' (#165) from dev into main bvandeusen 2026-06-30 20:20:34 -04:00
  • f0f031782d fix(agent): unfreeze status view + smoothed throughput-aware autoscaler + log pane bvandeusen 2026-06-30 20:20:14 -04:00
  • 40be0a9323 Merge pull request 'Release: agent page no-store cache header' (#164) from dev into main bvandeusen 2026-06-30 20:00:36 -04:00
  • 82e1a4e127 fix(agent): send Cache-Control: no-store so a new image isn't masked by cache bvandeusen 2026-06-30 20:00:26 -04:00
  • 2c6bf26bfc Merge pull request 'Release: graceful Start/Stop (starting/stopping states) + cached GPU reads' (#163) from dev into main bvandeusen 2026-06-30 19:38:50 -04:00
  • c2e9157822 feat(agent): graceful Start/Stop with starting/stopping states + instant status bvandeusen 2026-06-30 19:38:37 -04:00
  • 3c1e76bd44 Merge pull request 'Release: stable util-band autoscaler + live GPU meters' (#162) from dev into main bvandeusen 2026-06-30 19:16:29 -04:00
  • 3b34230fbd fix(agent): stable util-band autoscaler + live GPU meters bvandeusen 2026-06-30 19:16:17 -04:00
  • 831c5b1c10 Merge pull request 'Release: agent page — centered column + logs fill to bottom' (#161) from dev into main bvandeusen 2026-06-30 19:10:50 -04:00
  • c259d03618 fix(agent): revert full-width page, grow the Logs section to the bottom bvandeusen 2026-06-30 19:09:11 -04:00
  • 76b6af4903 Merge pull request 'Release: agent perf (batched crop embeds) + UI (full-width, copy logs, quiet noise) + truncated-image fix' (#160) from dev into main bvandeusen 2026-06-30 18:47:55 -04:00
  • 2713c3f773 perf(agent): batch SigLIP crop embeds per image + load truncated images bvandeusen 2026-06-30 18:47:33 -04:00
  • 9eaefac385 feat(agent): full-width control page, Copy-logs button, quiet HTTP log noise bvandeusen 2026-06-30 18:41:49 -04:00
  • 92494ec4ed Merge pull request 'Release: agent control-page logs console + styling pass' (#159) from dev into main bvandeusen 2026-06-30 18:37:35 -04:00
  • c1b099e5a3 feat(agent): in-UI log console + a real styling pass on the control page bvandeusen 2026-06-30 18:34:22 -04:00
  • bdfc17477c Merge pull request 'Release: GPU agent autoscaler (throughput hill-climb, Auto default-on)' (#158) from dev into main bvandeusen 2026-06-30 18:23:15 -04:00
  • 6d7b17b0b5 feat(agent): autoscale the worker count (throughput hill-climb), Auto default-on bvandeusen 2026-06-30 18:19:15 -04:00
  • 6cd3153bf4 Merge pull request 'Release: SigLIP 2 default (new installs) + embedder model dropdown' (#157) from dev into main bvandeusen 2026-06-30 18:01:01 -04:00
  • 359bc5a283 feat(ml): default to SigLIP 2 (new installs) + model dropdown, no free-text (#1203) bvandeusen 2026-06-30 16:29:27 -04:00
  • 5f2853168a Merge pull request 'Release: GPU re-process trigger (apply new crop detectors to the existing library)' (#156) from dev into main bvandeusen 2026-06-30 16:13:36 -04:00
  • 80f8eb4756 feat(gpu): re-process trigger to apply new crop detectors to the existing library (#1202) bvandeusen 2026-06-30 16:09:37 -04:00
  • 9a979ee808 Merge pull request 'Release: Explore diversification, model-swap, Camie/centroid retirement, tag-API, crop proposers' (#155) from dev into main bvandeusen 2026-06-30 16:06:13 -04:00
  • ce5db5caaf chore(agent): default the anatomy + panel proposer weights to working values bvandeusen 2026-06-30 15:28:50 -04:00
  • d5f29f7056 feat(agent): crop proposers — booru_yolo anatomy + COCO person + comic panels (#1202) bvandeusen 2026-06-30 15:27:26 -04:00
  • 3d7f60a6e3 fix(lint): use dict() not a dict-comprehension in tag_stats (C416) bvandeusen 2026-06-30 13:52:16 -04:00
  • 9a3cda007a feat(api): agent-friendly tag analysis endpoints — /tags/top + /tags/<id>/stats (#1136) bvandeusen 2026-06-30 13:47:55 -04:00
  • bc6d43d3f2 refactor(ml): drop dead tagger/suggestion settings + columns (#1199) bvandeusen 2026-06-30 13:41:25 -04:00
  • 3d97667f5b fix(lint): drop unused select import in tags.py after allowlist removal bvandeusen 2026-06-30 13:08:46 -04:00
  • 485387ff0b refactor(ml): retire the Camie tagger + allowlist bulk-apply (#1189) bvandeusen 2026-06-30 13:04:31 -04:00
  • 3d77a38a25 refactor(ml): remove the dead per-tag centroid subsystem (#1189) bvandeusen 2026-06-30 11:48:09 -04:00
  • 4daa3f2790 feat(ml): operator model swap — GPU re-embed + embedder as a setting (#1190) bvandeusen 2026-06-30 10:24:30 -04:00
  • 0f472b2f9e fix(explore): diversify "more like this" so it stops getting stuck (#1188) bvandeusen 2026-06-30 09:01:01 -04:00
  • 3138f912fd Merge pull request 'Release: SigLIP concept crops + max-over-bag + agent redeploy-survival' (#154) from dev into main bvandeusen 2026-06-30 08:46:20 -04:00
  • 715e276c03 Merge pull request 'feat(tagging): SigLIP concept crops + max-over-bag scoring (#114)' (#153) from feat/siglip-concept-crops into dev bvandeusen 2026-06-30 08:40:24 -04:00