Changelog
All notable changes to this project will be documented in this file. Dates are displayed in UTC.
chore(core): integrate 0.4.6 init fix #56
[CORE-046] chore(core): integrate 0.4.6 init fix 6c1ecf6
ni ab05460
chore: release @karmaniverous/jeeves-runner v0.8.3 f5c0199
31 March 2026
fix(core): integrate descriptor run callback #54
fix(service): correct startCommand path doubling in descriptor #53
ni 1a9f65e
chore: release @karmaniverous/jeeves-runner-openclaw v0.6.1 3806b14
chore: release @karmaniverous/jeeves-runner v0.8.2 cdde17a
chore: release @karmaniverous/jeeves-runner v0.8.1 4df7759
30 March 2026
feat: v0.8.0 — Component SDK Adoption + Script Utilities Hoist #52
feat(service): replace tsRunner with configurable runners map #48
feat(service): add configurable tsRunner for TypeScript scripts #46
refactor: address Gemini PR review feedback 11aa730
chore: update all dependencies including @karmaniverous/jeeves ^0.4.4 (Zod v4) c5b95ef
fix: regenerate package-lock.json for cross-platform npm ci ffcbc22
feat(service): implement v0.8.0 Phase 1 foundation tasks\n\nP1.1: Config path migration - migrateConfig() function with auto-migration\n from legacy flat config to nested directory layout (#42)\nP1.2: Bind address - replace hardcoded 127.0.0.1 default with\n DEFAULT_BIND_ADDRESS from @karmaniverous/jeeves (#42)\nP1.3: Version reporting fix - inject version at build time via\n @rollup/plugin-replace instead of runtime package.json reads (#39, #26)\nP1.4: Session executor validation - added comprehensive tests verifying\n type='session' flows correctly through cron-registry -> scheduler ->\n session-executor for both manual triggers and scheduled fires (#43)\nP1.5: RRStack reconciliation fix - track next fire times in cron-registry\n and re-register jobs whose fire time is in the past during\n reconciliation, preventing stale timers after failed re-arms (#44)\nP1.6: Script utilities hoist - copied and genericized fs-utils, shell,\n run-script, runner-client, google-auth, spawn-worker, and\n slack-workspace from jeeves-runner-scripts into client/ (#49)\n\nAlso fixes pre-existing TSDoc lint warnings in executor.ts. 382b461
feat: implement v0.8.0 Phase 3 — factory consumers ea79836
docs: full documentation audit for v0.8.0 Component SDK adoption 828cee3
feat: implement v0.8.0 Phase 2 — descriptor + independent plugin work 1e60e73
fix: add @emnapi/core and @emnapi/runtime as devDeps for cross-platform npm ci 53758a5
docs: add script helpers guide, update index.md patterns, README helpers table 6fb1c42
test: audit branch coverage — remove trivial tests, add missing tests 52aa491
refactor(service): DRY — extract shared pino options builder and CLI withDb helper f676dc1
[47] feat(service): replace tsRunner with configurable runners map keyed by extension be06d87
[45] feat(service): add configurable tsRunner for TypeScript scripts 508641f
feat(service): add init-scripts CLI command a92f6be
npm audit fix c6e9b1c
chore: release @karmaniverous/jeeves-runner-openclaw v0.6.0 22ecab0
test: skip .cmd and .ps1 executor tests on non-Windows platforms e206ec2
chore: release @karmaniverous/jeeves-runner v0.8.0 1366368
fix: use npm install in Linux CI for cross-platform native bindings 2690611
refactor(service): remove redundant version prop from route/server deps 5f43efd
fix(service): resolve TSDoc warnings in google-auth 0422beb
chore: bump @karmaniverous/jeeves to ^0.4.3 in service and openclaw packages c6e2370
chore: release @karmaniverous/jeeves-runner v0.7.3 5f8d4ba
chore: release @karmaniverous/jeeves-runner v0.7.4 f900452
ci: add linux-compat workflow via shared gha-workflows a8c4f60
chore: remove stale _cleanup.js automation artifact c1afe26
fix: require Node >=22 (node:sqlite), skip Node 20 in CI 8c2efd1
fix: delete lock file before npm install in Linux CI ca21100
fix(service): add require condition to exports map for CJS compatibility 43be75c
Merge pull request #41 from karmaniverous/bugfix/linux-compat-executor-tests 76bcf90
25 March 2026
fix(openclaw): do not send Content-Type on bodyless DELETE requests #40
chore: bump rrstack to 0.17.1 (fixes minutely nextEvent hang) 3ec48e5
chore: release @karmaniverous/jeeves-runner-openclaw v0.5.1 f00ad74
ci: add shared Deploy Docs workflow 00f6dd4
chore: release @karmaniverous/jeeves-runner v0.7.1 7ce1fd1
chore: release @karmaniverous/jeeves-runner v0.7.2 01a8291
chore(deps): bump @karmaniverous/jeeves to 0.3.1 fb53f47
23 March 2026
chore: update core dependency to v0.3.0 and migrate /health to /status #38
chore: update core dependency to v0.3.0 and migrate /health to /status (#36, #37) 86df754
chore: release @karmaniverous/jeeves-runner-openclaw v0.5.0 b237c41
chore: release @karmaniverous/jeeves-runner v0.7.0 a42dbc8
22 March 2026
feat: v0.6.0 — Runner Management Tools & RRStack Scheduling #35
test: split large test files (routes, scheduler) to respect 300 LOC limit 396818d
feat(openclaw): add 10 management & inspection tools, update enable/disable to PATCH 141e6df
feat(service): Phase 1 — scheduling foundation with RRStack support 3837917
feat(service): Phase 2 — job management endpoints and inline scripts 363f52a
feat(service): Phase 3 — queue and state inspection endpoints 9f38ca5
docs: update SKILL.md , guides, and README for v0.6.0 tools cef7cdc
refactor: complete SOLID/DRY sweep — field-map update builder, single-query queue status, shared test fixtures, fix unimplemented overlap policy, CLI rrstack validation d9b8e25
refactor: extract shared route test harness, fix corrupted emoji in slack notifier 3bd0f6a
feat(openclaw): show schedule format and source type in TOOLS.md content 64f5358
refactor: DRY toggle route and harden tool helper ac82338
refactor: remove deprecated POST enable/disable aliases 0c71fd2
refactor: DRY job-not-found constant, eliminate SELECT-before-UPDATE, add @module tags 68d953b
chore: release @karmaniverous/jeeves-runner-openclaw v0.4.0 47a8ee2
docs: add @module TSDoc tags to all source modules 59efba3
chore: release @karmaniverous/jeeves-runner v0.6.0 c73dbe4
fix(service): add JSONPath support to GET /state/:namespace/:key 089f8f2
refactor: change PUT /jobs/:id to PATCH (partial update semantics) 5a60f23
feat(service): add configurable bind address (#34) 1603103
21 March 2026
chore: adopt @karmaniverous/jeeves ^0.2.0 core SDK #33
chore: upgrade @karmaniverous/jeeves to 0.1.4 #30
bugfix: bundle @karmaniverous/jeeves into plugin dist #29
feat: adopt @karmaniverous/jeeves core in openclaw plugin #28
fix: add PRAGMA busy_timeout=5000 to prevent SQLITE_BUSY errors #25
v0.3.0: Monorepo, OpenClaw plugin, state API, guides, code review cleanup #24
refactor: code review cleanup #23
docs: add service and plugin guides, architecture diagrams, fix typedoc config #22
feat: OpenClaw plugin with 7 runner tools, install CLI, and consumer skill (Phase 3) #21
feat: restructure as npm workspaces monorepo (v0.3.0 Phase 1) #19
feat: add OpenClaw plugin with 7 runner tools, install CLI, and consumer skill b7eb30b
chore: remove stale plantuml from knip ignoreBinaries c9e0db8
refactor: code review cleanup — trim trivial tests, merge notification helper, add maintenance coverage edb2e92
feat: restructure as npm workspaces monorepo 305c40d
chore: upgrade @karmaniverous/jeeves to 0.1.4, use core resolveWorkspacePath 41a7337
docs: sync documentation with v0.3.1 implementation 3062c26
chore: update dependencies (eslint-plugin-tsdoc, @types/node) 6116105
npm audit fix 079c5c4
fix: resolve all tsdoc and typedoc warnings 3f3232f
feat!: remove cursor backward-compat aliases, rename to state API 43e007e
feat: add validate, init, and config-show CLI commands 8dac95f
test: add serviceCommands tests, strengthen generateContent + index coverage c6d8345
feat: add service install/uninstall CLI command (Linux/Windows/macOS) 1f353af
chore: release @karmaniverous/jeeves-runner-openclaw v0.1.0 8fb818d
refactor: use createAsyncContentCache from core, fix version to plugin version 1248f89
chore: release @karmaniverous/jeeves-runner-openclaw v0.2.0 4e1355f
refactor: DRY - getApiUrl via getPluginConfig, extract shared jobId param schema b8380c3
chore: release @karmaniverous/jeeves-runner-openclaw v0.3.0 475afce
chore: release @karmaniverous/jeeves-runner-openclaw v0.2.1 676cfbd
fix: update typedoc, knip, and stan configs for monorepo paths aac7017
chore: release @karmaniverous/jeeves-runner v0.4.0 0fc0eb6
chore: release @karmaniverous/jeeves-runner v0.3.0 648fb51
chore: release @karmaniverous/jeeves-runner v0.4.1 f3e1fc6
chore: release @karmaniverous/jeeves-runner v0.5.0 6f8c847
bugfix: remove dead local resolveWorkspacePath from helpers.ts (use core export) 3730824
fix: knip workspace config - rules at root level, entry points for CLI 0fcab85
chore: upgrade @karmaniverous/jeeves to 0.1.6, add servicePackage + pluginPackage e479820
chore: upgrade @karmaniverous/jeeves to 0.1.5 (workspace resolution fix) 54eecb1
chore: upgrade @karmaniverous/jeeves to 0.1.3, remove content copy (now inlined at build) 31cf31f
fix: derive component version from package.json instead of hard-coding 3d9c839
fix: add tagPrefix to auto-changelog config for monorepo tags f1b510a
chore: release @karmaniverous/jeeves-runner v0.3.1 c29f12f
chore: upgrade @karmaniverous/jeeves to 0.1.5 (workspace resolution fix) 7a8c0bd
Enhance README with personal acknowledgment 4baced5
feat: change default port from 3100 to 1937 605cd58
docs: fix table count (five → six) 906befd
Update README.md 778bb0c
zeroed version 448cd13
merge: resolve conflicts with main (keep next structure) 367f92b
1 March 2026
19 March 2026
chore: upgrade @karmaniverous/jeeves to 0.1.4 #30
bugfix: bundle @karmaniverous/jeeves into plugin dist #29
feat: adopt @karmaniverous/jeeves core in openclaw plugin #28
fix: add PRAGMA busy_timeout=5000 to prevent SQLITE_BUSY errors #25
v0.3.0: Monorepo, OpenClaw plugin, state API, guides, code review cleanup #24
refactor: code review cleanup #23
docs: add service and plugin guides, architecture diagrams, fix typedoc config #22
feat: OpenClaw plugin with 7 runner tools, install CLI, and consumer skill (Phase 3) #21
feat: restructure as npm workspaces monorepo (v0.3.0 Phase 1) #19
chore: change default port from 3100 to 1937 #18
feat: add OpenClaw plugin with 7 runner tools, install CLI, and consumer skill b7eb30b
chore: remove stale plantuml from knip ignoreBinaries c9e0db8
refactor: code review cleanup — trim trivial tests, merge notification helper, add maintenance coverage edb2e92
feat: restructure as npm workspaces monorepo 305c40d
chore: upgrade @karmaniverous/jeeves to 0.1.4, use core resolveWorkspacePath 41a7337
chore: release v0.2.1 5ce3b58
docs: sync documentation with v0.3.1 implementation 3062c26
chore: update dependencies (eslint-plugin-tsdoc, @types/node) 6116105
npm audit fix 079c5c4
fix: resolve all tsdoc and typedoc warnings 3f3232f
feat!: remove cursor backward-compat aliases, rename to state API 43e007e
feat: add validate, init, and config-show CLI commands 8dac95f
test: add serviceCommands tests, strengthen generateContent + index coverage c6d8345
feat: add service install/uninstall CLI command (Linux/Windows/macOS) 1f353af
chore: release @karmaniverous/jeeves-runner-openclaw v0.1.0 8fb818d
refactor: use createAsyncContentCache from core, fix version to plugin version 1248f89
chore: release @karmaniverous/jeeves-runner-openclaw v0.2.0 4e1355f
refactor: DRY - getApiUrl via getPluginConfig, extract shared jobId param schema b8380c3
chore: release @karmaniverous/jeeves-runner-openclaw v0.2.1 676cfbd
fix: update typedoc, knip, and stan configs for monorepo paths aac7017
chore: release @karmaniverous/jeeves-runner v0.4.0 0fc0eb6
chore: release @karmaniverous/jeeves-runner v0.3.0 648fb51
chore: release @karmaniverous/jeeves-runner v0.4.1 f3e1fc6
chore: upgrade @karmaniverous/jeeves to 0.1.3, remove content copy (now inlined at build) 31cf31f
bugfix: remove dead local resolveWorkspacePath from helpers.ts (use core export) 3730824
fix: knip workspace config - rules at root level, entry points for CLI 0fcab85
fix: derive component version from package.json instead of hard-coding 3d9c839
chore: upgrade @karmaniverous/jeeves to 0.1.6, add servicePackage + pluginPackage e479820
chore: upgrade @karmaniverous/jeeves to 0.1.5 (workspace resolution fix) 54eecb1
fix: add tagPrefix to auto-changelog config for monorepo tags f1b510a
chore: release @karmaniverous/jeeves-runner v0.3.1 c29f12f
chore: upgrade @karmaniverous/jeeves to 0.1.5 (workspace resolution fix) 7a8c0bd
Enhance README with personal acknowledgment 4baced5
feat: change default port from 3100 to 1937 605cd58
docs: fix table count (five → six) 906befd
Update README.md 778bb0c
zeroed version 448cd13
merge: resolve conflicts with main (keep next structure) 367f92b
27 February 2026
18 March 2026
feat: adopt @karmaniverous/jeeves core in openclaw plugin #28
fix: add PRAGMA busy_timeout=5000 to prevent SQLITE_BUSY errors #25
v0.3.0: Monorepo, OpenClaw plugin, state API, guides, code review cleanup #24
refactor: code review cleanup #23
docs: add service and plugin guides, architecture diagrams, fix typedoc config #22
feat: OpenClaw plugin with 7 runner tools, install CLI, and consumer skill (Phase 3) #21
feat: restructure as npm workspaces monorepo (v0.3.0 Phase 1) #19
chore: change default port from 3100 to 1937 #18
fix: remove UTF-16 null bytes from .gitignore #17
fix: resolve template literal lint errors #16
v0.2.0: Queue infrastructure, state migration, session dispatch, scheduler hardening #15
chore: remove dev-config.json, add to gitignore #14
feat: add pruneItems and listItemKeys to client API #13
fix: resolve all code review findings #12
feat: native session dispatch via Gateway API #11
feat: Phase 2-4 queue infrastructure + state tables #10
feat: Phase 2 queue infrastructure with deduplication and retention #9
feat: Phase 1 — Scheduler hardening (#4, #5, #6) #8
feat: add OpenClaw plugin with 7 runner tools, install CLI, and consumer skill b7eb30b
chore: remove stale plantuml from knip ignoreBinaries c9e0db8
test: comprehensive test coverage 7b237d7
refactor: code review cleanup — trim trivial tests, merge notification helper, add maintenance coverage edb2e92
feat: add state tables and collection API (migration 003) fc0e4f5
feat: implement Phase 2 queue infrastructure with deduplication and retention 7d1932e
feat: restructure as npm workspaces monorepo 305c40d
chore: release v0.2.0 c4d4561
fix: resolve typecheck, lint, and test failures from code review 7876ea5
feat: runtime schedule reconciliation (#6) e362781
chore: release v0.2.1 5ce3b58
docs: add TSDoc for all exported symbols 4c4be00
refactor: extract queue-ops from client 6f99a8b
docs: sync documentation with v0.3.1 implementation 3062c26
refactor: shared test DB setup, pass logger to server 19ae9da
docs: suppress Zod __type warnings via typedoc config 34f29bc
chore: update dependencies (eslint-plugin-tsdoc, @types/node) 6116105
npm audit fix 079c5c4
refactor: extract shared HTTP utility 9d22ed4
fix: resolve all tsdoc and typedoc warnings 3f3232f
feat!: remove cursor backward-compat aliases, rename to state API 43e007e
feat: notify on schedule registration failures (#4) 5caaf98
feat: add validate, init, and config-show CLI commands 8dac95f
refactor: extract run-repository and notification helper a68894b
test: add serviceCommands tests, strengthen generateContent + index coverage c6d8345
feat: add service install/uninstall CLI command (Linux/Windows/macOS) 1f353af
chore: release @karmaniverous/jeeves-runner-openclaw v0.1.0 8fb818d
refactor: use createAsyncContentCache from core, fix version to plugin version 1248f89
fix: atomic dequeue with transaction 65c140f
chore: release @karmaniverous/jeeves-runner-openclaw v0.2.0 4e1355f
refactor: DRY - getApiUrl via getPluginConfig, extract shared jobId param schema b8380c3
feat: validate schedule on insert (#5) 7ad8c77
fix: reject unsupported overlap_policy and improve type safety 0275ea3
fix: update typedoc, knip, and stan configs for monorepo paths aac7017
fix: eliminate SQL string interpolation 1327a66
chore: release @karmaniverous/jeeves-runner v0.4.0 0fc0eb6
fix: async scheduler stop e7586d5
chore: release @karmaniverous/jeeves-runner v0.3.0 648fb51
fix: resolve template literal lint errors in collection ops 6c3f227
fix: knip workspace config - rules at root level, entry points for CLI 0fcab85
fix: derive component version from package.json instead of hard-coding 3d9c839
fix: add tagPrefix to auto-changelog config for monorepo tags f1b510a
chore: release @karmaniverous/jeeves-runner v0.3.1 c29f12f
Enhance README with personal acknowledgment 4baced5
feat: change default port from 3100 to 1937 605cd58
docs: fix table count (five → six) 906befd
Update README.md 778bb0c
zeroed version 448cd13
merge: resolve conflicts with main (keep next structure) 367f92b
chore: remove temp files bf390b4
25 February 2026
fix: re-read job from DB on each scheduled run #3
fix: re-read job from DB on each scheduled run #2
chore: release v0.1.2 267ffe1
25 February 2026
feat: detect script type by extension in executor (.ps1, .cmd, .bat) #1
chore: release v0.1.1 f77a4fb
25 February 2026
openclaw/0.1.0
3 March 2026
v0.3.0: Monorepo, OpenClaw plugin, state API, guides, code review cleanup #24
refactor: code review cleanup #23
docs: add service and plugin guides, architecture diagrams, fix typedoc config #22
feat: OpenClaw plugin with 7 runner tools, install CLI, and consumer skill (Phase 3) #21
feat: restructure as npm workspaces monorepo (v0.3.0 Phase 1) #19
chore: change default port from 3100 to 1937 #18
fix: remove UTF-16 null bytes from .gitignore #17
fix: resolve template literal lint errors #16
v0.2.0: Queue infrastructure, state migration, session dispatch, scheduler hardening #15
chore: remove dev-config.json, add to gitignore #14
feat: add pruneItems and listItemKeys to client API #13
fix: resolve all code review findings #12
feat: native session dispatch via Gateway API #11
feat: Phase 2-4 queue infrastructure + state tables #10
feat: Phase 2 queue infrastructure with deduplication and retention #9
feat: Phase 1 — Scheduler hardening (#4, #5, #6) #8
fix: re-read job from DB on each scheduled run #3
feat: detect script type by extension in executor (.ps1, .cmd, .bat) #1
fix: re-read job from DB on each scheduled run #2
Initial commit 4721cc3
chore: release v0.1.0 ac0747a
feat: add OpenClaw plugin with 7 runner tools, install CLI, and consumer skill b7eb30b
feat: initial jeeves-runner scaffolding with schemas, db migration, and API structure f26fc80
test: comprehensive test coverage 7b237d7
chore: set version 0.0.0, ESM-only build, update all deps b7378cd
feat: add state tables and collection API (migration 003) fc0e4f5
feat: implement scheduler, notifier, API, and runner eed11f6
docs: comprehensive README for current project state c054a53
feat: implement Phase 2 queue infrastructure with deduplication and retention 7d1932e
feat: implement CLI commands, add job seed script, clean unused files ef4ae39
feat: restructure as npm workspaces monorepo 305c40d
chore: release v0.2.0 c4d4561
fix: resolve typecheck, lint, and test failures from code review 7876ea5
feat: runtime schedule reconciliation (#6) e362781
chore: release v0.2.1 5ce3b58
docs: add TSDoc for all exported symbols 4c4be00
refactor: extract queue-ops from client 6f99a8b
feat: implement job executor with output capture and slack notifier beffd87
docs: suppress Zod __type warnings via typedoc config 34f29bc
feat: add maintenance tasks (run pruning, cursor cleanup), executor tests 551de50
feat: implement db connection and migrations 66f0de9
chore: release @karmaniverous/jeeves-runner-openclaw v0.1.0 8fb818d
chore: release @karmaniverous/jeeves-runner v0.3.0 648fb51
zeroed version 448cd13
merge: resolve conflicts with main (keep next structure) 367f92b
refactor: code review cleanup — trim trivial tests, merge notification helper, add maintenance coverage edb2e92
refactor: shared test DB setup, pass logger to server 19ae9da
chore: update dependencies (eslint-plugin-tsdoc, @types/node) 6116105
refactor: extract shared HTTP utility 9d22ed4
chore: release v0.1.2 267ffe1
feat: implement client library with cursor and queue ops b7b1298
fix: resolve all tsdoc and typedoc warnings 3f3232f
chore: release v0.1.1 f77a4fb
feat!: remove cursor backward-compat aliases, rename to state API 43e007e
feat: notify on schedule registration failures (#4) 5caaf98
feat: add validate, init, and config-show CLI commands 8dac95f
refactor: extract run-repository and notification helper a68894b
test: add client library tests 83d07a0
feat: add service install/uninstall CLI command (Linux/Windows/macOS) 1f353af
fix: CLI shebang (single), typed options, remove bin/start.js wrapper 0f181e8
fix: atomic dequeue with transaction 65c140f
chore: upgrade to zod v4 4981ec1
feat: validate schedule on insert (#5) 7ad8c77
fix: Fastify logger config, add bin/start.js service entry point 93eef52
fix: reject unsupported overlap_policy and improve type safety 0275ea3
fix: update typedoc, knip, and stan configs for monorepo paths aac7017
fix: eliminate SQL string interpolation 1327a66
fix: async scheduler stop e7586d5
fix: resolve template literal lint errors in collection ops 6c3f227
fix: knip workspace config - rules at root level, entry points for CLI 0fcab85
chore: format client tests df61fea
fix: seed jobs disabled by default, ignore bin/ in eslint 3aa13d5
feat: change default port from 3100 to 1937 605cd58
chore: remove temp files bf390b4