ECC/scripts/lib
bymle 9c35aef60f
fix(project-detect): match packageKeys on boundaries, not substrings (#2181)
Framework detection matched a dependency against a framework's packageKeys
with unbounded substring containment (dep.includes(key)), so any dependency
whose name merely contained a key was misclassified: `preact` and even
`reactive` were both detected as `react`.

Match only when the dependency equals the key, or the key is a prefix
immediately followed by a delimiter (/ . _ -). This still matches every real
case (react-dom, @remix-run/node, spring-boot-starter, org.springframework.boot,
github.com/labstack/echo/v4, phoenix_live_view) while excluding preact/reactive
(and incidentally nextra). Adds regression tests.

Co-authored-by: bymle <229636660+bymle@users.noreply.github.com>
2026-06-07 13:25:34 +08:00
..
control-pane feat: add dynamic workflow team orchestration surface 2026-06-04 21:45:13 +08:00
install feat(install-targets): add claude-project (per-project Claude Code) adapter 2026-05-19 12:14:27 -04:00
install-targets fix(install-targets): validate compiled OpenCode plugin before install (#2041) 2026-05-25 14:07:52 -04:00
mcp-inventory feat: worktree-lifecycle service (deterministic conflict prediction + safe GC) (#2164) 2026-06-07 13:00:08 +08:00
session-adapters feat: worktree-lifecycle service (deterministic conflict prediction + safe GC) (#2164) 2026-06-07 13:00:08 +08:00
skill-evolution feat(design): skill health dashboard mockup (#518) 2026-03-16 14:01:41 -07:00
skill-improvement fix: port safe ci cleanup from backlog 2026-04-01 16:09:54 -07:00
state-store feat: add work items CLI 2026-05-11 12:24:12 -04:00
worktree-lifecycle feat: worktree-lifecycle service (deterministic conflict prediction + safe GC) (#2164) 2026-06-07 13:00:08 +08:00
agent-compress.js feat: agent description compression with lazy loading (#696) 2026-03-20 03:53:22 -07:00
cost-estimate.js feat: add ECC statusline observability hooks 2026-05-11 23:44:06 -04:00
cursor-agent-names.js fix: namespace cursor agent installs 2026-04-30 02:19:57 -04:00
ecc_dashboard_runtime.py fix: port hook session and dashboard safety fixes 2026-05-11 02:53:28 -04:00
github-discussions.js fix: skip disabled discussion queries in platform audit 2026-05-17 20:32:09 -04:00
harness-adapter-compliance.js feat: add zed install target 2026-05-17 07:06:49 -04:00
hook-flags.js feat: deliver v1.8.0 harness reliability and parity updates 2026-03-04 14:48:06 -08:00
inspection.js feat: agent compression, inspection logic, governance hooks (#491, #485, #482) (#688) 2026-03-20 01:38:13 -07:00
install-executor.js fix(installer): harden locale docs install 2026-05-17 20:46:04 -04:00
install-lifecycle.js fix(scripts): add os.homedir() fallback for Windows compatibility 2026-03-28 11:28:12 +08:00
install-manifests.js docs(i18n): add German localization scout (#2029) 2026-05-25 14:12:01 -04:00
install-state.js feat: strengthen install lifecycle and target adapters (#512) 2026-03-15 21:47:31 -07:00
mcp-config.js feat: support disabling bundled mcp servers 2026-04-05 14:37:28 -07:00
observer-sessions.js fix: port continuous-learning observer fixes 2026-05-11 03:35:42 -04:00
orchestration-session.js feat: orchestration harness, selective install, observer improvements 2026-03-14 12:55:25 -07:00
package-manager.d.ts fix: Windows path support, error handling, and dedup in validators 2026-02-12 15:57:20 -08:00
package-manager.js Fix failing workflows: trim action in getCommandPattern and remove broken AgentShield scan 2026-02-18 08:06:25 +00:00
project-detect.js fix(project-detect): match packageKeys on boundaries, not substrings (#2181) 2026-06-07 13:25:34 +08:00
resolve-ecc-root.js fix(hooks): avoid escaped quotes in plugin bootstrap 2026-05-19 05:15:42 -04:00
resolve-formatter.js refactor: deduplicate config lists and unify resolveFormatterBin branches 2026-03-11 10:45:28 +09:00
session-aliases.d.ts fix: 6 bugs fixed, 67 tests added for session-manager and session-aliases 2026-02-12 15:50:04 -08:00
session-aliases.js fix: make saveAliases atomic on Unix by skipping unnecessary unlink before rename 2026-02-13 04:23:22 -08:00
session-bridge.js fix(lib): retry rename on Windows EPERM/EACCES/EBUSY in writeBridgeAtomic 2026-05-19 04:57:10 -04:00
session-manager.d.ts fix: fold session manager blockers into one candidate 2026-03-24 23:08:27 -04:00
session-manager.js fix: finish blocker lane hook and install regressions 2026-03-25 04:00:50 -04:00
shell-split.js fix(hooks): allow tmux-wrapped dev server commands (#321) 2026-03-07 14:47:49 -08:00
shell-substitution.js fix(hooks): close grouped command bypasses in gateguard (#1912) 2026-05-15 01:39:15 -04:00
tmux-worktree-orchestrator.js fix: resolve 8 test failures on main (install pipeline, orchestrator, repair) (#564) 2026-03-18 03:03:31 -07:00
utils.d.ts fix: fold session manager blockers into one candidate 2026-03-24 23:08:27 -04:00
utils.js fix: respect home overrides in hook utilities 2026-04-02 18:22:07 -07:00