Teknium
4c2961c511
fix(curator): never archive cron-referenced skills + floor use=0 pruning ( #54443 )
...
The curator's inactivity prune archived any non-pinned agent-created
skill whose activity was older than archive_after_days (90d). A skill
loaded only by a cron job had its usage bumped solely when the job
fired, so paused jobs, infrequent (quarterly/annual) schedules, and
far-future one-shots aged their skills out from under them — the next
run then failed to load the now-archived skill.
- cron/jobs.py: add referenced_skill_names() returning skills used by
ANY job (incl. paused/disabled).
- curator.apply_automatic_transitions(): skip cron-referenced skills
like pinned; add a use=0 grace floor so a never-used skill is not
marked stale/archived until it is at least stale_after_days old.
- LLM review pass: candidate list marks cron=yes; prompt forbids
pruning cron-referenced skills and never-used skills under 30 days.
Tested E2E against a real cron job + real usage records and with 4 new
unit tests.
2026-06-28 15:10:21 -07:00
..
2026-06-26 19:15:18 -07:00
2026-05-18 10:14:38 -07:00
2026-06-28 15:10:21 -07:00
2026-06-23 10:32:27 -07:00
2026-06-28 04:16:25 -07:00
2026-06-22 09:57:16 -07:00
2026-06-27 22:52:29 -07:00
2026-06-28 17:06:26 +10:00
2026-06-20 10:26:45 -07:00
2026-06-02 12:37:40 -04:00
2026-06-28 14:25:15 -07:00
2026-06-28 16:29:52 -05:00
2026-06-25 16:29:09 -07:00
2026-06-22 19:16:47 -05:00
2026-06-06 11:46:24 -07:00
2026-06-24 18:53:49 +05:30
2026-06-28 02:41:52 -07:00
2026-06-16 13:09:40 -07:00
2026-06-28 02:05:20 -07:00
2026-06-27 15:59:00 -07:00
2026-06-22 12:14:30 -07:00
2026-05-28 22:26:25 -07:00
2026-06-28 14:33:03 -07:00
2026-06-28 04:34:55 -07:00
2026-06-01 19:52:28 -07:00
2026-06-19 07:46:33 -07:00
2026-06-15 11:55:02 -04:00
2026-06-13 14:50:05 -07:00
2026-05-28 22:26:25 -07:00
2026-06-06 18:33:44 -07:00
2026-05-28 22:26:25 -07:00
2026-05-18 21:43:59 -07:00
2026-06-24 04:16:54 +05:30
2026-05-28 22:26:25 -07:00
2026-06-19 18:06:38 -04:00
2026-06-21 12:09:16 -07:00
2026-06-17 18:48:35 -05:00
2026-06-03 07:32:00 +07:00
2026-06-14 00:27:59 -04:00
2026-06-05 02:54:34 -07:00
2026-06-10 17:37:34 -07:00
2026-05-25 15:18:55 -07:00
2026-05-28 22:26:25 -07:00
2026-05-28 22:26:25 -07:00
2026-06-08 06:32:42 -07:00
2026-06-27 15:59:00 -07:00
2026-06-28 13:49:08 -07:00
2026-06-20 10:26:45 -07:00
2026-05-28 21:40:39 -07:00
2026-05-27 14:31:55 -07:00
2026-06-28 00:53:19 -07:00
2026-06-08 09:35:22 -07:00
2026-05-29 22:29:48 -07:00
2026-05-27 10:49:33 -07:00
2026-06-01 20:13:42 -07:00
2026-06-25 23:49:11 -07:00
2026-06-08 02:18:21 -07:00
2026-06-18 22:11:35 +05:30
2026-06-23 21:33:08 -07:00
2026-06-18 16:26:34 +07:00
2026-06-28 03:58:01 -07:00
2026-06-18 14:14:41 +10:00
2026-06-26 20:10:20 +05:30
2026-05-27 13:55:51 -07:00
2026-05-28 22:26:25 -07:00
2026-06-25 23:49:11 -07:00
2026-05-28 22:26:25 -07:00
2026-06-24 23:51:31 +05:30
2026-05-28 22:26:25 -07:00
2026-05-17 02:29:41 -07:00
2026-05-28 22:26:25 -07:00
2026-04-20 12:23:05 -07:00
2026-05-28 22:26:25 -07:00
2026-06-09 23:22:10 -07:00
2026-05-28 22:26:25 -07:00
2026-06-04 18:04:47 -07:00
2026-06-25 13:52:06 -07:00
2026-05-28 22:26:25 -07:00
2026-06-09 03:17:12 -07:00
2026-05-16 12:15:45 -07:00
2026-06-18 09:16:40 -07:00
2026-05-28 22:26:25 -07:00
2026-06-08 09:35:22 -07:00
2026-05-28 22:26:25 -07:00
2026-06-08 12:11:54 -07:00
2026-06-25 00:17:17 -07:00
2026-06-27 22:43:26 -07:00
2026-05-16 00:57:39 -07:00
2026-06-26 19:15:18 -07:00
2026-06-08 07:03:12 -07:00
2026-06-24 04:16:54 +05:30
2026-06-25 21:18:41 -07:00
2026-06-14 03:20:21 -07:00
2026-05-28 22:26:25 -07:00
2026-05-28 22:26:25 -07:00
2026-05-28 22:26:25 -07:00
2026-05-28 22:26:25 -07:00
2026-06-07 05:01:27 -07:00
2026-06-03 06:36:46 -07:00
2026-06-28 02:35:01 -07:00
2026-06-25 12:29:49 -05:00
2026-06-28 04:34:55 -07:00
2026-06-28 04:14:12 -07:00
2026-06-18 05:41:23 -07:00
2026-06-23 23:43:24 -07:00
2026-06-03 12:00:27 -07:00
2026-06-28 13:49:08 -07:00
2026-06-25 23:27:44 +05:30
2026-05-28 22:26:25 -07:00
2026-06-12 02:06:47 -07:00
2026-05-28 22:26:25 -07:00
2026-06-07 17:49:38 -07:00