Gustavo Madeira Santana
8c609ca411
test(cron): keep store tests lightweight
2026-04-20 14:22:49 -04:00
Gustavo Madeira Santana
b696eebd14
cron: surface unreadable state sidecars
2026-04-20 14:22:49 -04:00
Gustavo Madeira Santana
4e2280b94c
cron: consolidate split store cache state
2026-04-20 14:22:49 -04:00
Gustavo Madeira Santana
0df78eda10
cron: recover missing split state sidecar
2026-04-20 14:22:49 -04:00
Gustavo Madeira Santana
b09fb16a9a
cron: harden split state loading
2026-04-20 14:22:48 -04:00
Gustavo Madeira Santana
a1db26707d
cron: clarify split store docs
2026-04-20 14:22:48 -04:00
Gustavo Madeira Santana
6a3f92baef
cron: simplify split store hydration
2026-04-20 14:22:48 -04:00
Gustavo Madeira Santana
a5385155f3
cron: document split runtime state store
2026-04-20 14:22:48 -04:00
Feelw00
0844bd521e
fix(cron): use loadCronStore in issue-regression tests for split store compat
2026-04-20 14:22:48 -04:00
Feelw00
a1a08e27db
fix(cron): guard hasInlineState against null/undefined job entries
...
Legacy jobs arrays may contain null items. hasInlineState now skips
them instead of throwing, preserving prior fault-tolerant behavior.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-20 14:22:47 -04:00
Feelw00
074fabc540
fix(cron): backfill updatedAtMs in fresh-clone path
...
Jobs loaded from a git-cloned jobs.json (no state file, no inline
state) had updatedAtMs undefined, violating the type contract and
breaking updatedAtMs sort. Backfill from createdAtMs.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-20 14:22:47 -04:00
Feelw00
0ed61b31a5
fix(cron): address PR review — path guard, updatedAtMs backfill, remove redundant chmod
...
- resolveStatePath: handle storePath not ending in .json
- loadCronStore: backfill updatedAtMs from createdAtMs for jobs missing state entry
- atomicWrite: remove redundant setSecureFileMode on tmp (writeFile mode already sets it)
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-20 14:22:47 -04:00
Feelw00
ad996e1320
feat(cron): split jobs.json into config and runtime state files
...
Separate cron store into jobs.json (config, git-trackable) and
jobs-state.json (runtime state, gitignored) so that cron executions
no longer produce meaningless diffs when tracking config in git.
Closes #53581
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-20 14:22:47 -04:00
Peter Steinberger
33e63d914b
test: share cron delivery job fixture
2026-04-20 19:22:41 +01:00
Peter Steinberger
16985aba4e
test: type skill scanner matrix cases
2026-04-20 19:21:24 +01:00
Peter Steinberger
bcf17447f0
test: share execFile builtin mock
2026-04-20 19:20:46 +01:00
Peter Steinberger
901f2f38fc
test: share mcp bridge gateway setup
2026-04-20 19:19:35 +01:00
Peter Steinberger
f8bb35ead0
test: share media server harness
2026-04-20 19:18:27 +01:00
Peter Steinberger
5934a8eacc
test: share task executor cancellation fixtures
2026-04-20 19:16:31 +01:00
Peter Steinberger
7aebac697e
ci: split remaining slow test shards
2026-04-20 19:15:45 +01:00
Peter Steinberger
9a71595d97
test: share tui session action setup
2026-04-20 19:14:01 +01:00
Peter Steinberger
ed526a2121
perf(test): merge skill scanner matrix cases
2026-04-20 19:11:45 +01:00
Peter Steinberger
85c1ff6ea4
perf(test): merge system run plan matrix tests
2026-04-20 19:09:51 +01:00
Peter Steinberger
02a6e78531
test: share spawnSync builtin mock
2026-04-20 19:08:24 +01:00
Peter Steinberger
305d04b758
perf(test): move temp path guard to check
2026-04-20 19:07:29 +01:00
Peter Steinberger
8ea7866356
test: share video provider options fixture
2026-04-20 19:04:47 +01:00
Peter Steinberger
ed1716cd9d
test: share gateway dispatch mock exports
2026-04-20 19:02:47 +01:00
Peter Steinberger
34f60de970
perf(test): reuse version fixture root
2026-04-20 19:02:32 +01:00
Peter Steinberger
785ecf7715
perf(test): mock system run logger
2026-04-20 19:01:37 +01:00
Peter Steinberger
d9311a7935
perf(test): mock plugin activation manifest registry
2026-04-20 19:00:11 +01:00
Peter Steinberger
43a34e23b3
test: share lazy channel contract surface
2026-04-20 18:59:45 +01:00
Peter Steinberger
26c213031d
perf(test): isolate gateway audit tests
2026-04-20 18:58:10 +01:00
Peter Steinberger
f43e006529
perf(test): mock plugin trust audit deps
2026-04-20 18:51:05 +01:00
Peter Steinberger
81722f0b26
test: share gateway auth status oauth fixture
2026-04-20 18:50:07 +01:00
Peter Steinberger
fafdd23568
test: share gateway web start context
2026-04-20 18:48:45 +01:00
Peter Steinberger
0c75b9ce00
ci: speed up fast security checks
2026-04-20 18:47:02 +01:00
Peter Steinberger
537f4689f9
test: share gateway deleted-agent guard mocks
2026-04-20 18:46:20 +01:00
Peter Steinberger
aa36c077fc
test: share delivery queue reconnect fixtures
2026-04-20 18:42:43 +01:00
Peter Steinberger
9430113fe5
test: share outbound media action assertions
2026-04-20 18:40:04 +01:00
Peter Steinberger
4a7e3d9058
test: share outbound action mock fixture
2026-04-20 18:37:30 +01:00
Peter Steinberger
456bc8df65
test: share launchd integration helpers
2026-04-20 18:35:25 +01:00
Peter Steinberger
0fb9a3beac
test: share schtasks startup fallback helpers
2026-04-20 18:34:05 +01:00
Peter Steinberger
29a48ab129
test: share systemd stage fixture
2026-04-20 18:32:11 +01:00
Peter Steinberger
cde7ae8809
test: share launchd test helpers
2026-04-20 18:30:53 +01:00
Peter Steinberger
800572e9c6
test: share schtasks install fixtures
2026-04-20 18:29:18 +01:00
Peter Steinberger
af134f1dd9
test: share doctor device pairing setup
2026-04-20 18:28:06 +01:00
Peter Steinberger
90bbd6b453
perf(test): preimport plugin activation boundary
2026-04-20 18:26:59 +01:00
Peter Steinberger
dbfc3d7104
perf(test): split plugin trust audit seam
2026-04-20 18:25:25 +01:00
Peter Steinberger
d206bf6362
test: share control ui trusted proxy fixtures
2026-04-20 18:23:50 +01:00
Peter Steinberger
1a006aa49e
test: share gateway close deps fixture
2026-04-20 18:22:25 +01:00