safishamsi and Claude Opus 4.8
d193b6277d
feat(reflect): --if-stale to skip redundant runs; agent uses it at session start
...
Both the agent (session start) and the post-commit hook can run reflect; the runs
are deterministic and idempotent, but back-to-back ones are wasted work. Add
`graphify reflect --if-stale`, which no-ops when LESSONS.md is already at least as
new as every input (the memory docs and the graph). The skill's session-start
guidance now uses `--if-stale`, so when the hook just refreshed the file the
agent's run costs almost nothing, while a skill-only install still refreshes
on demand.
New lessons_fresh() helper + 5 tests (mtime freshness in each direction, and the
CLI skip/run behavior). Regenerated per-host references + re-blessed expected/;
all five skillgen guards pass; full suite 2388 passed.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-24 12:26:39 +01:00
..
2026-06-22 22:57:06 +01:00
2026-04-04 18:52:44 +01:00
2026-06-23 13:21:38 +01:00
2026-05-02 12:54:08 +05:30
2026-05-22 13:22:51 +01:00
2026-06-17 10:29:43 +01:00
2026-06-23 17:26:49 +01:00
2026-05-30 21:37:47 +01:00
2026-06-16 01:41:15 +01:00
2026-06-02 23:48:54 +01:00
2026-05-13 10:07:50 -07:00
2026-06-03 00:08:03 +01:00
2026-05-22 13:22:51 +01:00
2026-06-24 08:54:11 +01:00
2026-06-11 23:22:20 +01:00
2026-05-22 13:22:51 +01:00
2026-06-11 15:08:36 -06:00
2026-05-17 11:32:38 +01:00
2026-04-30 22:08:28 +10:00
2026-06-11 09:58:39 -04:00
2026-04-28 00:56:54 +01:00
2026-06-22 21:15:51 +01:00
2026-05-12 02:23:51 +03:00
2026-06-07 14:34:13 +01:00
2026-04-06 16:06:31 +01:00
2026-06-02 22:23:15 +01:00
2026-06-11 19:52:56 +03:00
2026-06-17 14:21:19 +01:00
2026-06-18 01:15:24 +01:00
2026-05-26 09:17:18 +01:00
2026-06-08 10:35:32 +01:00
2026-05-13 23:19:15 +01:00
2026-06-22 23:15:59 +01:00
2026-06-11 14:02:32 +08:00
2026-06-24 09:09:48 +01:00
2026-06-18 22:55:44 +01:00
2026-06-07 15:03:49 +03:00
2026-05-31 17:09:30 +01:00
2026-06-18 01:55:56 +01:00
2026-06-11 09:36:38 +02:00
2026-05-07 20:07:57 +01:00
2026-06-22 17:02:29 +01:00
2026-06-22 17:02:29 +01:00
2026-06-18 22:55:44 +01:00
2026-06-07 01:20:38 +01:00
2026-05-05 00:07:50 +02:00
2026-06-17 10:46:08 +01:00
2026-06-24 11:43:13 +01:00
2026-06-13 15:13:23 +01:00
2026-06-02 20:48:13 +01:00
2026-06-03 00:00:33 +01:00
2026-06-05 22:15:09 +01:00
2026-06-23 00:18:47 +01:00
2026-06-18 01:18:48 +01:00
2026-06-17 10:29:47 +01:00
2026-06-18 22:50:52 +01:00
2026-06-12 17:57:19 +08:00
2026-06-22 22:57:06 +01:00
2026-06-22 22:20:40 +01:00
2026-05-28 17:44:35 +02:00
2026-06-19 10:25:09 +01:00
2026-05-26 20:16:41 +01:00
2026-06-10 15:50:38 +01:00
2026-05-22 13:22:51 +01:00
2026-05-22 13:22:51 +01:00
2026-05-28 14:46:03 +01:00
2026-06-10 19:31:47 +01:00
2026-05-31 16:41:18 +01:00
2026-06-02 22:50:33 +01:00
2026-06-02 22:50:33 +01:00
2026-06-16 01:41:15 +01:00
2026-05-09 15:52:17 +01:00
2026-05-13 23:19:15 +01:00
2026-06-10 12:45:20 +01:00
2026-04-15 23:08:43 +01:00
2026-06-02 22:16:58 +01:00
2026-05-16 22:36:58 +01:00
2026-05-24 20:38:10 +01:00
2026-05-22 13:22:51 +01:00
2026-06-03 21:04:01 +01:00
2026-05-27 22:30:08 +01:00
2026-06-03 00:00:33 +01:00
2026-06-24 12:26:39 +01:00
2026-05-02 18:09:32 +01:00
2026-05-22 13:22:51 +01:00
2026-06-22 17:02:29 +01:00
2026-05-22 13:22:51 +01:00
2026-04-06 16:06:31 +01:00
2026-06-07 00:43:40 +01:00
2026-06-23 12:46:51 +01:00
2026-06-23 17:26:49 +01:00
2026-06-17 12:08:59 +01:00
2026-06-16 03:06:43 +01:00
2026-05-22 13:22:51 +01:00
2026-06-05 21:46:25 +01:00
2026-04-10 15:55:22 +01:00
2026-05-31 16:47:52 +01:00
2026-06-24 08:54:11 +01:00
2026-06-24 11:29:08 +01:00
2026-06-23 17:26:49 +01:00
2026-05-26 09:06:43 +01:00