Skip to content

Releases: fan56/dsh-cron

v0.6.1

Choose a tag to compare

@github-actions github-actions released this 26 Oct 12:37

fix: mark every peer optional — npm auto-install shadowed the host closure

npm-class profile installs auto-resolve the hard >=0.2.0-rc.2 peers from the
stable tower, materializing exact-pinned 0.2.0-rc.2 copies of dsh-agent,
dsh-session, dsh-settings and friends inside the consumer tree. On a
0.2.1-rc.3 host the pre-flight compat gate disabled those rows and the
required plugin never activated — fan56/dsh-subagent-registry's weekly
e2e install went red on exactly this (run 40313931959, cron 0.6.0
real-host boot FAIL; same failure class first seen 10-19).

peerDependenciesMeta.optional stops the package manager from materializing
the peers at all; the host runtime supplies the real closure. Same contract
llm-proxy 0.7.3 and tui-pi 2.28.2 already shipped. No code change.

Verified locally: the 0.6.1 tarball installs with a clean consumer tree,
dump-config composes the plugin, and a real 0.2.1-rc.3 host boots with
zero disabling rows; the published 0.6.0 under the same install shape
reproduces the foreign tower.

v0.6.0

Choose a tag to compare

@github-actions github-actions released this 21 Oct 03:18

v0.6.0 — session-bound delivery and a default-installed skill

Breaking: every task now binds to exactly one session — global delivery
is gone (ADR 0010, superseding the delivery half of ADR 0001).

Session binding (cron_create attach):

  • creator (default): fires land in the session that created the task
  • new: the plugin opens a dedicated session (cwd inherited) for
    background monitors isolated from the conversation
  • cold sessions resume on demand when a fire is due; a stopped session
    cancels its tasks; archiving a session that still holds cron tasks is
    refused — the same lifecycle discipline as official dsh-schedule
  • delegated child sessions can neither create tasks nor receive fires
  • pre-binding unbound tasks archive as cancelled on first boot

Bundled skill (dsh-cron-config), installed by default:

  • mounts through the host skill registry at boot — installing the
    plugin installs the skill, removal drops it, no file copies
  • teaches natural-language usage: rule choice, validity windows,
    session binding, deploy-monitor and watchdog patterns

/cron gains --new-session; list output shows the binding.
80 unit tests, packaged-install, and real-host boot smoke green;
podman E2E (mock-LLM fire chain) green on CI.

v0.5.1

Choose a tag to compare

@github-actions github-actions released this 12 Oct 14:31

v0.5.1 — the published tarball installs again

postinstall referenced scripts/link-dsh-closure.mjs, which the files
allow-list never shipped: every non-link install failed with
MODULE_NOT_FOUND (same defect class as dsh-subagent-registry#2). scripts/
now ships, and the linker's stand-down guard uses repo-only markers
(tsconfig.json + .git). A packaged-install regression test and an
npm-based boot smoke gate the consumer path.

v0.5.0

Choose a tag to compare

@github-actions github-actions released this 29 Sep 12:38

chore: raise dsh host floor to 0.2.0-rc.2

peer floors >=0.2.0-rc.2, dev pins exact 0.2.0-rc.2; README support
floor follows. Zero code changes (MessageSourceMap{cron} contract
unchanged in 0.2.0). README: positioning paragraph in 'Why not
dsh-schedule?' — official automation schedule is OPTIONAL_BUNDLE and
default-off as of dsh 0.2.0 (existing scheduled tasks silently stop
after upgrade), while dsh-cron is an independent always-resident
plugin unaffected by that switch; docs-only, no release.
Regression: 7 test files, 55 cases green + tsc --noEmit clean
against the 0.2.0-rc.2 closure. Container e2e skipped this wave
(zero code changes).

v0.4.3

Choose a tag to compare

@github-actions github-actions released this 25 Sep 14:45

feat: 投递消息 source 改为自有 kind 'cron'

将 cron 投递消息的 source 从与用户输入无法区分的 user 改为自有 cron,并为 turn 级下游门控保留 durable attribution。新增纯工厂与测试覆盖 source、content 和 role;0.1.7 的 merge-extensible sum 允许 producer 声明自有 kind,未知 kind 的消费侧按契约 fall through,兼容宿主。

v0.4.2

Choose a tag to compare

@github-actions github-actions released this 25 Sep 01:19

fix: legacy 导入接线改 ctx.inject(['settings']) + update 有界重试(5×2s)——真机实证 boot 期宿主持 profile package.json.lock 致单发 update 必超时(update-failed 不落 marker 下次重试);no-settings 分支补 warn 不再静默

v0.4.1

Choose a tag to compare

@github-actions github-actions released this 25 Sep 00:22

feat: 0.1.5 旧 settings 段一次性自动迁移(无感知升级)——读 settings.yaml.imported 按段名找回旧配置写入新形态,审计档 storages/*/legacy-import.json + logger 摘要,marker 幂等防复活,失败不落 marker 下次重试

v0.4.0

Choose a tag to compare

@github-actions github-actions released this 24 Sep 06:19

v0.4.0: dsh 0.1.7-rc.1 settings migration (Config+volatile); message source kind user; e2e profile-patch config; icon/locale metadata

v0.3.0

Choose a tag to compare

@github-actions github-actions released this 11 Sep 13:39

dsh-cron 0.3.0: dsh floor 0.1.5-rc.2

v0.2.1

Choose a tag to compare

@github-actions github-actions released this 05 Sep 10:16

0.2.1: uninstall docs (schedule retention semantics + purge path) + smoke uninstall leg.