Skip to content

feat: v2 compaction hook, dynamic restart fallback, dual-config installer - #5

Open
BoYanZh wants to merge 3 commits into
prevalentWare:mainfrom
BoYanZh:feat/fork-fixes
Open

BoYanZh wants to merge 3 commits into
prevalentWare:mainfrom
BoYanZh:feat/fork-fixes

Conversation

@BoYanZh

@BoYanZh BoYanZh commented Oct 15, 2026 •

Copy link
Copy Markdown

What

  • V2 compaction session hook: preserve open loops across compaction (V1 already had experimental.session.compacting; V2 only had the dispatch-time reminder).
  • Dynamic restart fallback: stale dynamic loops (no nextRunAt after a restart) resume with a configurable fallback delay instead of being stopped. New options dynamic_restart_mode (fallback default, stop restores legacy) and dynamic_restart_fallback_seconds (default 1200, clamped to [min_interval, dynamic_max]). New rescheduleDynamicIfUnchanged state helper + unit test.
  • Dual-config installer: scripts/install.mjs (bun scripts/install.mjs --global|--project) writes both server opencode.json and TUI cli.json entries.
  • Root entry bridges (server.js/tui.js + flat exports): file-spec installs silently skip packages whose server entry lives in a subdirectory (verified on win-deploy via probe bisection: root entry loads, dist/ entry vanishes with zero log). Bisected across name/engines/exports-shape/content variables.

Verify

bun run typecheck / lint / build / pack:dry-run green; bun test 103 pass. Verified live: plugin registers and /loop appears after clean service restart.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant