Files
hermes-agent/hermes_cli
Hermes Agent f84db42a32 fix(cron): deduplicate cross-profile jobs in GET /api/cron/jobs
profile=all aggregated every profile's list without deduplication, so a job
copied into a second profile's cron/jobs.json during profile creation appeared
twice — inflating the desktop sidebar count and rendering duplicate rows.

Collect all jobs first, then resolve duplicates by id with default-profile
priority, instead of keeping whichever copy the profile loop happened to append
first. cron.jobs._normalize_job_record() fills a missing id with the literal
sentinel string "unknown", which is truthy — treat it like no id so two
genuinely different id-less legacy records from different profiles are never
collapsed into one.

Fixes #51721

Salvaged from #69132 by @ygd58 (kept its dedup semantics and regression tests,
ported onto the web_routers/cron.py seam after the web_server refactor).

Co-authored-by: ygd58 <buraysandro9@gmail.com>
2026-09-25 18:28:06 -05:00
..
…
…
…
…
…
…
…
…