You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Queue mode: shared atomic work index + per-locale JSONL journal shards.
Every scan writes {claim, done} entries; the done entry carries the full
RepoResult payload. --resume replays every shard in the journal
directory, reconstructs RepoResult records from prior runs, and merges
them with fresh scans so the final report covers everything.
Per-run shard filenames (locale-<id>-<runId>.jsonl) keep crashed runs'
partial shards isolated from the next run's writes. --journalDir lets
operators point shards at a shared FS explicitly; default is
<outputDir>/journal.
Static mode is unchanged — the existing round-robin coforall path is
factored into runStaticScan() and main() dispatches on --scheduler.
Selecting queue does not make static slower.
Banner already wired in d49a209 — this flips it from bail-out to
go-ahead and updates README / ROADMAP from "planned v3.0.0" to shipped.
Not build-verified (no chpl on this machine). Syntax mirrors existing
patterns in MassPanic.chpl / Protocol.chpl; runtime validation deferred
to first build on a Chapel-equipped box.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
* [] `--scheduler=queue` — resumable dynamic work-pull scheduler for mass-panic. Atomic fetch-add work index shared across locales; per-locale JSONL journal shards recording `{claim, done}` state per repo; `--resume` skips any repo already marked `done`. ~5–15% slower than static on clean runs, survives mid-sweep crashes and Ctrl+C. Flag and both-directions banner already wired (2026-04-17); queue path targeted for v3.0.0. See `chapel/README.md` §Scheduling modes for the full spec.
188
+
* [x] `--scheduler=queue` — resumable dynamic work-pull scheduler for mass-panic. Atomic fetch-add work index shared across locales; per-run JSONL journal shards (`locale-<id>-<runId>.jsonl`) recording `{claim, done}` state per repo with full RepoResult payload on `done`; `--resume` replays every shard in the journal directory, reconstructs RepoResult records from prior runs, and skips those repos on the new run. ~5–15% slower than static on clean runs; a crash or Ctrl+C loses only the in-flight repo per locale. See `chapel/README.md` §Scheduling modes for the full spec.
0 commit comments