f10: schedule=manual, systemd timer is the sole dispatcher

The 15-min job-scheduler daemon and the systemd per-job timer both
dispatched auto-work-queue-f10 (timer at :27, scheduler at :30) because
the scheduler's dedup watermark only tracks its own fires. Setting
schedule=manual so job-scheduler.py skips it; the systemd timer
(OnCalendar=*:27) remains the single dispatch path.

Requested by 646 (DM 2112a7fe): kill the duplicate :27-UTC scheduler entry.
This commit is contained in:
operator-main
2026-10-05 10:48:27 +00:00
parent c8c86a7ff9
commit 8e6dd1e892
+3 -2
View File
@@ -2,7 +2,7 @@
"name": "auto-work-queue-f10",
"description": "Auto work-queue scavenger (builder 6/10): poll job-list, find manual/pending/stale jobs, check status, nudge/claim, keep chain moving",
"agent": "pip",
"schedule": "27 * * * *",
"schedule": "manual",
"timeout": 600,
"prompt_template": "Auto work-queue scavenger sweep. Time: {datetime}. Job ID: {job_id}.\n\n1. Run `box job-list` and find jobs with schedule \"manual\" or that look stale/pending/unclaimed.\n2. For each candidate run `box job-status <name>` to check dispatch/result/chain state.\n3. If a job is unclaimed or stuck pending, claim it: work it yourself if quick, otherwise nudge the owning agent with `box notify <agent> <message>`.\n4. If a job failed, run `box job-next <job-id>` and keep the chain moving (box->agent->box).\n5. Keep your reply short and end with a one-line summary of what you found and did, starting with OK or FAIL.",
"sidechat": {
@@ -18,5 +18,6 @@
"route": "work-queue"
},
"chain_next": null,
"on_failure": "alert"
"on_failure": "alert",
"note": "Dispatched by systemd job-auto-work-queue-f10.timer (OnCalendar=*:27). schedule=manual so job-scheduler.py skips it; prevents double-fire (systemd :27 + scheduler :30). Changed 2026-10-05 by operator-main per 646 DM 2112a7fe."
}