@karmaniverous/jeeves-runner
    Preparing search index...

    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

    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