JustYannicc
dd06028827
feat(heartbeat): skip API calls when HEARTBEAT.md is effectively empty ( #1535 )
...
* feat: skip heartbeat API calls when HEARTBEAT.md is effectively empty
- Added isHeartbeatContentEffectivelyEmpty() to detect files with only headers/comments
- Modified runHeartbeatOnce() to check HEARTBEAT.md content before polling the LLM
- Returns early with 'empty-heartbeat-file' reason when no actionable tasks exist
- Preserves existing behavior when file is missing (lets LLM decide)
- Added comprehensive test coverage for empty file detection
- Saves API calls/costs when heartbeat file has no meaningful content
* chore: update HEARTBEAT.md template to be effectively empty by default
Changed instruction text to comment format so new workspaces benefit from
heartbeat optimization immediately. Users still get clear guidance on usage.
* fix: only treat markdown headers (# followed by space) as comments, not #TODO etc
* refactor: simplify regex per code review suggestion
* docs: clarify heartbeat empty file behavior (#1535 ) (thanks @JustYannicc)
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-01-24 04:19:01 +00:00
..
2026-01-21 02:54:14 +00:00
2026-01-23 18:39:25 +00:00
2026-01-20 13:04:20 +00:00
2026-01-20 09:52:26 +00:00
2026-01-17 20:37:36 +00:00
2026-01-17 07:32:54 +00:00
2026-01-17 08:00:05 +00:00
2026-01-07 23:22:12 +00:00
2026-01-14 15:02:19 +00:00
2025-11-26 00:53:53 +01:00
2026-01-14 15:02:19 +00:00
2026-01-20 15:10:06 +00:00
2026-01-20 15:10:06 +00:00
2026-01-07 20:59:49 +00:00
2026-01-20 16:02:46 +00:00
2026-01-20 15:10:06 +00:00
2026-01-08 02:44:19 +00:00
2026-01-14 15:02:19 +00:00
2026-01-14 15:02:19 +00:00
2026-01-14 15:02:19 +00:00
2026-01-13 08:40:39 +00:00
2026-01-14 15:02:19 +00:00
2026-01-14 15:02:19 +00:00
2026-01-14 15:02:19 +00:00
2026-01-15 06:19:47 +00:00
2026-01-14 15:02:19 +00:00
2026-01-14 15:02:19 +00:00
2026-01-11 00:12:25 +01:00
2026-01-11 00:12:25 +01:00
2026-01-20 13:04:19 +00:00
2026-01-19 11:32:15 +00:00
2026-01-20 10:46:33 +00:00
2026-01-20 10:46:33 +00:00
2026-01-20 22:51:47 +00:00
2026-01-21 00:30:34 +00:00
2026-01-14 15:02:19 +00:00
2026-01-05 01:11:29 +01:00
2026-01-09 09:59:58 +01:00
2026-01-18 23:10:39 +00:00
2026-01-18 23:10:39 +00:00
2026-01-21 01:58:47 +00:00
2026-01-23 00:11:58 +00:00
2026-01-23 19:00:45 +00:00
2026-01-20 13:04:19 +00:00
2026-01-14 15:02:19 +00:00
2026-01-21 16:46:58 +00:00
2026-01-21 19:10:31 +00:00
2026-01-14 15:02:19 +00:00
2026-01-21 22:47:18 +00:00
2026-01-21 22:47:18 +00:00
2026-01-17 12:30:11 +00:00
2026-01-14 15:02:19 +00:00
2026-01-22 01:36:28 +00:00
2026-01-24 04:19:01 +00:00
2026-01-21 00:53:54 +00:00
2026-01-23 02:05:34 +00:00
2026-01-24 04:19:01 +00:00
2026-01-14 15:02:19 +00:00
2026-01-04 14:38:51 +00:00
2026-01-14 15:02:19 +00:00
2026-01-10 16:37:54 +01:00
2026-01-18 05:44:22 +00:00
2026-01-21 03:03:48 +00:00
2026-01-18 08:45:29 +00:00
2026-01-10 23:32:07 +01:00
2026-01-16 03:11:16 +00:00
2026-01-18 23:10:39 +00:00
2026-01-21 17:45:26 +00:00
2026-01-21 18:52:55 +00:00
2026-01-21 18:52:55 +00:00
2026-01-21 18:52:55 +00:00
2026-01-08 02:42:43 +01:00
2026-01-14 15:02:19 +00:00
2026-01-14 15:02:19 +00:00
2026-01-14 20:07:35 +00:00
2026-01-23 07:17:59 +00:00
2026-01-23 07:17:59 +00:00
2026-01-14 20:07:35 +00:00
2026-01-14 15:02:19 +00:00
2026-01-14 15:02:19 +00:00
2026-01-14 05:40:03 +00:00
2026-01-17 19:45:48 +00:00
2026-01-14 05:40:03 +00:00
2026-01-23 07:17:59 +00:00
2026-01-14 15:02:19 +00:00
2026-01-23 19:43:26 +00:00
2026-01-23 07:17:59 +00:00
2026-01-14 15:02:19 +00:00
2026-01-17 19:45:48 +00:00
2026-01-16 00:25:49 +00:00
2026-01-14 09:57:32 +00:00
2026-01-08 01:30:02 +01:00
2026-01-21 01:20:25 +00:00
2026-01-19 00:15:45 +00:00
2026-01-19 00:15:45 +00:00
2026-01-14 15:02:19 +00:00
2026-01-14 15:02:19 +00:00
2026-01-14 15:02:19 +00:00
2026-01-14 15:02:19 +00:00
2026-01-14 15:02:19 +00:00
2026-01-19 00:05:06 +00:00
2026-01-22 08:51:22 +00:00
2026-01-20 14:04:13 +00:00
2026-01-14 15:02:19 +00:00
2026-01-20 14:04:13 +00:00
2026-01-19 10:08:29 +00:00
2026-01-16 07:33:15 +00:00
2026-01-16 07:33:15 +00:00
2026-01-14 15:02:19 +00:00
2026-01-14 01:17:56 +00:00
2026-01-19 05:59:29 +00:00
2026-01-14 15:02:19 +00:00
2026-01-12 21:38:56 -06:00
2026-01-20 13:04:20 +00:00
2026-01-20 13:04:20 +00:00
2025-12-17 17:01:10 +01:00
2025-12-17 17:01:10 +01:00
2026-01-24 00:49:04 +00:00
2026-01-24 00:17:20 +00:00
2026-01-16 23:03:12 +00:00
2026-01-16 20:33:04 +00:00
2026-01-21 01:58:47 +00:00
2026-01-20 14:19:03 +00:00
2026-01-22 02:01:11 +00:00
2026-01-20 16:36:04 +00:00
2026-01-21 06:00:54 +00:00
2026-01-22 04:19:33 +00:00
2026-01-22 04:19:33 +00:00
2026-01-20 16:36:37 +00:00
2026-01-20 16:36:04 +00:00
2026-01-14 15:02:19 +00:00
2026-01-14 15:02:19 +00:00
2026-01-20 15:10:06 +00:00
2026-01-20 15:10:06 +00:00
2025-12-23 03:00:04 +01:00
2026-01-17 18:32:23 +00:00