Commit Graph

3467 Commits

Author SHA1 Message Date
YeonGyu-Kim f6a8f64fa4 Merge pull request #3078 from code-yeongyu/refactor/deslop-features-managers
refactor(features): fix empty catches in manager modules
2026-04-03 21:45:53 +09:00
YeonGyu-Kim d11b4c1648 Merge pull request #3076 from code-yeongyu/refactor/deslop-hooks
refactor(hooks): fix empty catches and remove AI slop
2026-04-03 21:45:38 +09:00
YeonGyu-Kim 51ee237cad Merge pull request #3075 from code-yeongyu/refactor/deslop-agents
refactor(agents): remove AI slop from agent code comments
2026-04-03 21:43:10 +09:00
YeonGyu-Kim 4a651c67d9 Merge pull request #3077 from code-yeongyu/refactor/deslop-features-rest
refactor(features): remove AI slop and decompose git-master skill
2026-04-03 21:42:55 +09:00
YeonGyu-Kim 66cc823ff3 refactor(plugin): remove AI slop and clean verbose comments 2026-04-03 21:42:14 +09:00
YeonGyu-Kim dc695e8776 refactor(cli,mcp,openclaw): remove AI slop from code comments 2026-04-03 21:42:12 +09:00
YeonGyu-Kim c7afc795be refactor(features): fix empty catches and remove AI slop from manager modules 2026-04-03 21:42:10 +09:00
YeonGyu-Kim bd4f8ab8b7 Merge pull request #3071 from code-yeongyu/refactor/deslop-shared-config
refactor(shared): remove AI slop from shared and config modules
2026-04-03 21:37:41 +09:00
YeonGyu-Kim af07610bc4 refactor(features): remove AI slop from feature modules 2026-04-03 21:37:17 +09:00
YeonGyu-Kim 5c7299830d refactor(hooks): fix empty catches and remove AI slop from code comments 2026-04-03 21:37:16 +09:00
YeonGyu-Kim f497f956db refactor(agents): remove AI slop from code comments and clean verbose patterns 2026-04-03 21:37:14 +09:00
YeonGyu-Kim e0feb16dab refactor(shared,config): remove redundant null checks and AI slop from code comments 2026-04-03 19:39:55 +09:00
YeonGyu-Kim d0f795dd8f refactor(shared): decompose model-capabilities into focused modules 2026-04-03 19:38:26 +09:00
YeonGyu-Kim 3cc9e8bc30 refactor(shared): extract shared cache factory to deduplicate cache patterns 2026-04-03 19:36:56 +09:00
YeonGyu-Kim 22283fca6d refactor(tools): fix empty catches, remove AI slop from code comments 2026-04-03 19:17:09 +09:00
YeonGyu-Kim 3689ecd5b0 refactor(tools): decompose skill/tools.ts into focused tool creators 2026-04-03 19:17:03 +09:00
YeonGyu-Kim 3ce1f30310 refactor(tools): split delegate-task constants into category-specific modules 2026-04-03 19:16:57 +09:00
YeonGyu-Kim 6b431c5522 Merge pull request #3059 from code-yeongyu/fix/p2-13-anchor-pane-cleanup
fix(tmux): reassign anchor pane on first subagent deletion
2026-04-03 18:55:30 +09:00
YeonGyu-Kim 3180389dea Merge pull request #3052 from code-yeongyu/fix/p0-1-task-system-default-split-brain
fix: resolve task_system default split-brain
2026-04-03 18:52:40 +09:00
YeonGyu-Kim 0c6aa91fc8 Merge pull request #3049 from code-yeongyu/fix/p0-5-mcp-env-expansion
fix(mcp): warn on blocked env expansion
2026-04-03 18:52:32 +09:00
YeonGyu-Kim 1631509989 fix: reset hook state on abort so session recovers after user cancel
When a user cancels a generation (ESC x2), all three idle hooks could
enter a permanently broken state:

1. **todo-continuation-enforcer**: consecutiveFailures accumulated from
   abort-caused promptAsync failures, eventually hitting MAX_CONSECUTIVE_FAILURES
   and permanently stopping continuation injection.

2. **unstable-agent-babysitter**: no abort awareness at all — would keep
   firing reminders after user cancelled the session.

3. **runtime-fallback**: retry dedupe keys and pending fallback state
   persisted across cancellation, blocking legitimate error recovery.

Fix:
- Add shared `isAbortError()` utility for consistent abort detection
- Reset consecutiveFailures and clear stale state on AbortError in all hooks
- Track `lastCancelledAt` in todo-continuation-enforcer for abort window
- Add abort-awareness to unstable-agent-babysitter (skip if recently cancelled)
- Clear runtime-fallback retry state on abort errors

Tests: 61 pass, 0 fail across all 3 affected hook test suites.

Closes #2984
2026-04-03 18:51:10 +09:00
YeonGyu-Kim 8be39e558d fix(tmux): preserve isolated container cleanup after anchor reassignment 2026-04-03 18:42:58 +09:00
YeonGyu-Kim ac5e507155 Merge pull request #3060 from code-yeongyu/fix/p2-15-claude-code-hooks-rules
Fix Claude user rule skipping for disabled hooks
2026-04-03 18:41:09 +09:00
YeonGyu-Kim 9783fae351 Merge pull request #3057 from code-yeongyu/fix/p1-9-recovery-retry-timer-leak
fix: clear stale recovery retry state
2026-04-03 18:40:29 +09:00
YeonGyu-Kim 71b8110ff0 fix(zip): parse zipinfo file entries with preserved filenames
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-04-03 18:38:14 +09:00
YeonGyu-Kim e20b59cb29 fix(mcp): allow common Windows env vars by default
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-04-03 18:34:22 +09:00
YeonGyu-Kim 316d250465 fix(mcp): ignore project allowlist overrides for env expansion
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-04-03 18:34:22 +09:00
YeonGyu-Kim 2b43558349 fix(tar): surface traversal extraction failures as blocked entries
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-04-03 18:34:22 +09:00
YeonGyu-Kim a4f436c116 fix(tar): classify traversal tar listing errors as blocked entries
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-04-03 18:34:12 +09:00
YeonGyu-Kim 2288988f28 fix(zip): use zipinfo to preflight zip extraction on unix
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-04-03 18:34:12 +09:00
YeonGyu-Kim 2e6a7b4339 fix: update docs and barrel imports for task_system default 2026-04-03 18:32:12 +09:00
YeonGyu-Kim b931e309f4 fix(mcp): warn when MCP env expansion is blocked
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-04-03 18:31:29 +09:00
YeonGyu-Kim 4766891557 fix(mcp): expand builtin allowlist for benign env vars
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-04-03 18:31:29 +09:00
YeonGyu-Kim d65714eba0 fix(shared): avoid archive test batch regression
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-04-03 18:31:26 +09:00
YeonGyu-Kim 760099eb03 fix(tasks-hook): update default task_system test
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-04-03 18:31:26 +09:00
YeonGyu-Kim 47769d5f49 fix(tasks-hook): share task_system resolution
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-04-03 18:31:26 +09:00
YeonGyu-Kim 3b3520da90 fix(agent-config): share task_system resolution
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-04-03 18:31:26 +09:00
YeonGyu-Kim d65c7c0800 fix(tool-config): share task_system resolution
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-04-03 18:31:26 +09:00
YeonGyu-Kim c65baa80c8 fix(tool-registry): unify task_system default
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-04-03 18:31:26 +09:00
YeonGyu-Kim 2ba2f8f5f7 fix(shared): add task_system resolver
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-04-03 18:31:26 +09:00
YeonGyu-Kim 83acafce48 Merge pull request #3058 from code-yeongyu/fix/p1-11-remove-as-any-tests
fix(tests): remove as any from new test files
2026-04-03 18:30:30 +09:00
YeonGyu-Kim 32b9235764 Merge pull request #3051 from code-yeongyu/fix/p0-2-https-enforcement-gaps
fix(security): enforce HTTPS for all non-loopback remote hooks
2026-04-03 18:30:29 +09:00
YeonGyu-Kim 071f6c334d Merge pull request #3055 from code-yeongyu/fix/p1-8-legacy-config-canonical-priority
fix: prefer canonical plugin config files
2026-04-03 18:30:19 +09:00
YeonGyu-Kim 72b3b15f78 Merge pull request #3050 from code-yeongyu/fix/p0-4-tmux-default-isolation
fix: revert tmux default isolation to inline
2026-04-03 18:30:18 +09:00
YeonGyu-Kim 8f449e1627 fix: respect user-configured category model over fallbackChain defaults
When a user configures a custom model for a category (e.g. quick.model),
the hardcoded CATEGORY_MODEL_REQUIREMENTS fallbackChain was overriding it.
This caused the user's model to be ignored and replaced with the default
(e.g. openai/gpt-5.4-mini).

Fix:
- Use userModelOverride directly instead of potentially stale actualModel
- Suppress hardcoded fallbackChain when explicitCategoryModel is provided
- Add regression test verifying user category model takes precedence

Closes #3040
2026-04-03 18:27:26 +09:00
YeonGyu-Kim 706640ace3 fix: use detectShellType() instead of hardcoded 'unix' in non-interactive-env hook
The non-interactive-env hook hardcoded shellType as 'unix', causing
'export' syntax to be used on Windows PowerShell where it doesn't work.
This caused sub-agent infinite loops on Windows as git commands would
fail with 'export: The term export is not recognized' and retry forever.

Fix: use the existing detectShellType() function which correctly detects
PowerShell (via PSModulePath), csh, cmd (win32 fallback), and unix shells.

Updated tests to verify platform-aware shell syntax selection.

Closes #3000
2026-04-03 18:26:24 +09:00
YeonGyu-Kim 5b3541f7aa Clarify doubled context display intent
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-04-03 18:25:42 +09:00
YeonGyu-Kim f34edf9957 Update cached limit monitor expectations
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-04-03 18:14:13 +09:00
YeonGyu-Kim 0e9dbbdc48 Double displayed context window counts
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-04-03 18:14:13 +09:00
YeonGyu-Kim 6dc21b3b7f Fix Claude user rule skipping for disabled hooks
Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
2026-04-03 18:14:12 +09:00