Commit Graph
5144 Commits
Author SHA1 Message Date
can1357 cdc9970d9e Merge PR #2682: feat(coding-agent): re-inject eager task/todo nudges after compaction
Re-inject eager task/todo reminders after compaction (reminder-only, no forced tool_choice; issue #2681). Supersedes #2686. Known follow-up: shake-strategy compaction may duplicate a surviving prelude.
2026-06-16 14:52:42 +02:00
can1357 aa848034c6 Merge PR #2702: fix(ai): unwrap thinking envelopes in raw dumps
Unwrap literal <thinking> envelopes in the render-layer raw dumps (issue #2700). Includes review test 222562ecb2 (render-layer regression coverage). Orthogonal to #2698 (provider-source layer).
2026-06-16 14:52:42 +02:00
can1357 c68e84bec8 Merge PR #2704: fix(tool): default Windows bash children to UTF-8
Default Windows bash child processes to a UTF-8 locale; win32-gated so POSIX behavior is byte-identical, and existing user LANG/LC_* values are preserved.
2026-06-16 14:52:41 +02:00
can1357 0c3154039b Merge PR #2734: fix(coding-agent): load GitHub Copilot instruction rules
Load .github/instructions/*.instructions.md as rules. Includes review fix c509a5d59c: split comma-separated applyTo via parseCSV and treat **/* as an always-apply glob.
2026-06-16 14:52:40 +02:00
can1357 9e6f6b2862 Merge PR #2745: fix(cli): speed up exit shutdown handlers
Run session_shutdown extension handlers concurrently under one shared cap instead of serially; each handler keeps its full per-handler timeout budget.
2026-06-16 14:52:40 +02:00
can1357 ef13d40854 Merge PR #2746: fix(cli): list linked local plugins
Union plugins/package.json dependencies with the lockfile so linked local plugins appear in list() and are not treated as orphans by doctor() (issue #2742). Supersedes #2743 (which left doctor() deleting linked entries).
2026-06-16 14:52:40 +02:00
can1357 90e6b7d91f Merge PR #2772: fix(coding-agent): route MuPDF warnings to logger
Route MuPDF WASM print/printErr warnings to logger.debug instead of console.error/the TUI (issue #2766). NOTE: duplicates #2768 for the same issue; merged as the more complete fix (ships an end-to-end regression test) - close #2768.
2026-06-16 14:52:40 +02:00
can1357 c509a5d59c fix(coding-agent): honor comma-separated and **/* Copilot applyTo globs
GitHub documents applyTo as a single comma-separated string (e.g.
"**/*.ts,**/*.tsx") and treats both ** and **/* as all-files. The rule
loader kept the whole CSV value as one glob and missed **/* for
always-apply. Split applyTo via parseCSV and include **/* as all-files.

Addresses review feedback on #2734.
2026-06-16 14:23:50 +02:00
metaphoricsandcan1357 c0ceef7af2 feat(coding-agent): re-inject eager task/todo nudges after compaction
The first-message eager-task / eager-todo preludes are the oldest messages in a
session, so auto-compaction summarizes them away and the agent silently loses the
delegate-via-tasks / phased-todo guidance mid-work. Re-assert those reminders on
the auto-continuation turn that follows a compaction.

- Widen #createEagerTaskPrelude / #createEagerTodoPrelude to accept
  `string | undefined`; `undefined` (post-compaction) skips only the
  first-message and prompt-suffix gates, keeping the mode / agent-kind /
  plan-mode / surviving-todo / active-tool gates intact.
- Reminder-only post-compaction: the todo nudge never attaches a forced `todo`
  tool_choice on the resumed turn (forcing a tool after a mid-turn compaction
  would override the agent's in-flight action).
- Add #buildPostCompactionEagerNudges() and prepend its output on the single
  #scheduleAutoContinuePrompt continuation hook. All three call sites are
  willRetry-safe, so overflow/incomplete retry recoveries never carry the nudge.

Op: extend
2026-06-16 14:22:51 +02:00
roboomp 9b2ec0fa74 fix(coding-agent): routed mupdf warnings to logger
Installed the MuPDF WASM print hooks before markit-ai can import mupdf, preserving recoverable PDF warnings in the file logger instead of terminal stderr.\n\nAdded a regression test with a tagged PDF Screen annotation that previously reached console.error while conversion still succeeded.\n\nFixes #2766
2026-06-16 11:30:54 +00:00
roboomp 4c336543d5 fix(cli): preserved linked plugin doctor state
Taught plugin doctor to treat lockfile-only plugins with node_modules entries as installed instead of orphaned.

Added coverage for plugin doctor --fix after linking a local plugin without package dependencies.

Fixes #2742
2026-06-16 05:17:24 +00:00
roboomp 7244e21b73 fix(cli): listed linked local plugins
Included lockfile-only linked plugins when building plugin list output so local symlink installs are visible after successful link operations.

Added regression coverage for plugin link followed by plugin list --json.

Fixes #2742
2026-06-16 05:02:20 +00:00
roboomp df510d3b1d fix(cli): sped up exit shutdown handlers
Run session_shutdown extension handlers concurrently under the existing shutdown cap so /exit and /quit do not wait one full timeout per hanging extension.

Fixes #2736
2026-06-16 04:49:58 +00:00
roboomp 063ce1ba00 fix(coding-agent): loaded github instruction rules
Added GitHub Copilot instruction-file discovery to the github rule provider path, mapping applyTo frontmatter into always-apply or glob-scoped rules and avoiding duplicate always-apply prompt content when context imports the same file.\n\nFixes #2731
2026-06-16 02:30:58 +00:00
ryjm c2a14a0afc fix(ast): infer extensionless Emacs init files 2026-06-15 18:58:55 -07:00
ryjm 18f11f5bfc feat(ast): add Emacs Lisp tree-sitter support
Register tree-sitter-elisp in the shared AST language registry so
.el files infer the emacs-lisp grammar across blockRangeAt,
summarizeCode, astGrep/astEdit, and native aliases.

This fixes edit-tool block operations on top-level Emacs Lisp forms
instead of returning unsupported-language block errors.

- Add canonical emacs-lisp aliases and .el extension inference.
- Teach summaries to fold Lisp forms without grouping arbitrary lists.
- Map .el rendering and highlighting aliases through coding-agent/native.
- Cover defun, ERT, use-package, with-eval-after-load, pcase,
  summary, astMatch, astEdit, and edit-tool insertion paths.
- Document the language and update package changelogs.
2026-06-15 18:41:24 -07:00
roboomp 7dda4441e1 fix(tool): respected windows lc locale env
Treat inherited LC_* category locale variables as ownership of the locale group before adding LANG or LC_ALL defaults.

Fixes #2701
2026-06-15 21:38:32 +00:00
roboomp 6ad2b0cd2f fix(tool): preserved windows utf-8 env groups
Skipped UTF-8 defaults for an entire Windows locale or Python encoding group when inherited or per-command env already defines one variable in that group.

Fixes #2701
2026-06-15 21:27:46 +00:00
roboomp e4ab780345 fix(tool): defaulted windows bash children to utf-8
Added Windows-only UTF-8 defaults for non-interactive bash child process environments when the inherited env does not already define encoding or locale values.

Added regression coverage for missing, inherited, per-command, and non-Windows env behavior.

Fixes #2701
2026-06-15 21:18:46 +00:00
roboomp e904585060 fix(ai): preserved sibling thinking envelopes
Parsed literal thinking envelopes independently before transcript rendering so interleaved thinking blocks do not collapse into one malformed wrapper. Added advisor raw dump regression coverage for sibling literal thinking blocks.\n\nFixes #2700
2026-06-15 21:05:08 +00:00
roboomp a0481ac070 fix(ai): unwrapped thinking envelopes in raw dumps
Normalized dialect thinking rendering so stored thinking content that already carries literal thinking tags is unwrapped before transcript serialization. Added advisor raw dump regression coverage.\n\nFixes #2700
2026-06-15 20:44:39 +00:00
can1357 8c4561cd82 fix: remove verification requirement from task 2026-06-15 21:26:15 +02:00
can1357 3c5e32f21b fix(coding-agent): made advisor toggle session-local and refreshed the status line
- SetAdvisorEnabled now used settings.override for advisor.enabled when enabling or disabling, keeping advisor toggles session-local.
- /advisor on|off handlers now called refreshStatusLine after each toggle, and the status line updates immediately in the UI.
- A regression test was added to assert setAdvisorEnabled invokes override with both values and does not call set.
2026-06-15 21:20:07 +02:00
can1357 b1c0243bab fix(coding-agent): fixed advisor auto-resume suppression for user interruptions
- Passed USER_INTERRUPT_LABEL through abort paths in collab, ACP, RPC, runtime, and SDK flows.
- Added userInitiated to synthetic continue inputs and session prompt calls.
- Suppressed advisor auto-resume during user aborts and preserved queued concerns.
- Cleared suppression on user prompts and reclaimed parked advisor cards on abort settle.
2026-06-15 20:51:56 +02:00
can1357 0331a86955 fix(coding-agent/config): added missing ui.group setting for plan.defaultOnStartup schema
- Added the missing `ui.group` property to the `plan.defaultOnStartup` setting schema entry.
- Recorded the fix in the coding-agent changelog under the Fixed section.
2026-06-15 19:54:32 +02:00
can1357 edb83bd37b feat(coding-agent): filtered non-partial poll previews to show only settled jobs
- Added a list-mode flag to job rendering and used it to keep background job listing behavior distinct.
- Filtered non-partial poll call results to exclude running jobs and return no output when only running jobs remain.
- Added tests covering partial rendering, poll-based filtering, and list/cancel paths for the updated preview behavior.
2026-06-15 19:46:43 +02:00
can1357 013ff7f3ab Merge PR #2482: feat(irc): proactive coordination suggestions 2026-06-15 19:46:15 +02:00
can1357 39d819e8b9 Merge PR #2237: fix(coding-agent): handle legacy plugin config settings 2026-06-15 19:46:15 +02:00
can1357 15184332b8 Merge PR #1173: feat(marketplace): prefer .omp-plugin/marketplace.json catalog path 2026-06-15 19:46:14 +02:00
can1357 dcdfb581cb Merge PR #1942: Add /review PR URL support 2026-06-15 19:46:14 +02:00
can1357 336f1a8b16 Merge PR #2626: fix(coding-agent): open isolated subagent sessions in worktree cwd 2026-06-15 19:46:14 +02:00
can1357 d1ce0f93b5 Merge PR #2664: feat(coding-agent/agents): enriched designer, reviewer, and task agent prompts 2026-06-15 19:46:14 +02:00
can1357 b7a6a5e44c Merge PR #2651: fix(coding-agent): hide plugin skills from slash commands 2026-06-15 19:46:13 +02:00
can1357 ea1a4edb4e Merge PR #1890: feat(coding-agent): add plan.defaultOnStartup to launch new sessions in plan mode 2026-06-15 19:46:13 +02:00
can1357 fefbd8a5f9 Merge PR #2611: Add web search provider exclusions 2026-06-15 19:46:13 +02:00
can1357 9622da4597 Merge PR #2400: feat(tui): Zellij and WezTerm pane fallbacks for terminal session continuity 2026-06-15 19:46:12 +02:00
can1357 7c7dd3f633 Merge PR #2662: feat(coding-agent/eval): added return_handle to agent() for DAG handle piping 2026-06-15 19:46:12 +02:00
can1357 ec752d77e8 Merge PR #1983: feat(discovery): GitHub Copilot user-global instructions, env dirs, and prompts (#1913, #1915, #1916) 2026-06-15 19:46:12 +02:00
can1357 be4bf81cb4 Merge PR #2688: fix(github): refresh stale issue and pr views 2026-06-15 19:46:12 +02:00
can1357 af99ba4406 Merge PR #2687: fix(agent): stop retrying interrupted tool streams 2026-06-15 19:46:11 +02:00
can1357 fcde870bc0 Merge PR #2636: Add Umans AI Coding Plan provider 2026-06-15 19:46:11 +02:00
roboomp 55000301be fix(agent): preserved classifier refusal fallback
Checked structured classifier refusals before the interrupted-output retry guard so provider refusals with explanatory content still use the configured fallback path.

Fixes #2683
2026-06-15 15:48:06 +00:00
roboomp a2e2a675dc fix(github): preserved aborts during cache refresh
Re-throw ToolAbortError from soft-expired issue and PR synchronous refreshes instead of falling back to stale cached content.

Cover the abort path in github-cache tests.

Fixes #2684
2026-06-15 15:43:48 +00:00
can1357 9ba66ef7e7 feat(coding-agent/session): added tool intent comments to tool call history output
- Added an includeToolIntent option to session history formatting to control intent comments.
- Updated tool call rendering to prefix call lines with a leading comment when the tool argument contains a non-empty intent field.
- Enabled intent rendering in advisor history updates and added tests for intent-on and intent-off output paths.
2026-06-15 17:27:15 +02:00
roboomp 47fb727582 fix(github): refreshed stale issue and pr views
Refresh soft-expired issue and PR view cache rows synchronously before returning content, while keeping PR diff rows on stale-first refresh semantics.

Add stale fallback warnings when a live refresh fails and cover the cache/protocol behavior in tests.

Fixes #2684
2026-06-15 15:25:54 +00:00
can1357 dbf4c734fc feat(coding-agent): added advisor backlog sync and end-of-turn callback support
- Added awaited `onTurnEnd` and `setOnTurnEnd` wiring for turn-end callbacks.
- Added `advisor.syncBacklog` settings (off/1/3/5) and documented 30-second catch-up caps.
- Fixed advisor runtime backlog handling with failure counters, waiters, and retry requeue.
- Updated agent sessions to enqueue advisor updates on turn end and removed direct `turn_end` branch logic.
2026-06-15 17:25:04 +02:00
roboomp 25069ea594 fix(agent): stopped retrying interrupted tool streams
Prevented auto-retry from regenerating write calls after a provider stream timeout has already exposed assistant content or tool-call arguments.

Fixes #2683
2026-06-15 15:24:38 +00:00
can1357 1524f7fb01 feat(coding-agent): added WATCHDOG.md discovery and advisor startup behavior updates
- Added discovery of local, user, and ancestor `WATCHDOG.md` files via `discoverWatchdogFiles`.
- Appended discovered watchdog prompts to advisor system prompts during session setup.
- Added protocol startup defaults that force `advisor.enabled` and `advisor.subagents` false.
- Handled `maintainContext` failures and drained pending updates before token estimation.
2026-06-15 17:13:35 +02:00
can1357 ecccff62f3 fix(coding-agent/advisor): fixed collapsed advisor notes to wrap instead of two-line truncation
- Removed the collapsed-mode truncation branch that forced advisor message cards to restrict bodies to two lines.
- Added a regression test covering long collapsed advisor notes to ensure they wrap at narrow widths instead of being cut short.
- Updated the package changelog to document the collapsed advisor note wrapping fix.
2026-06-15 16:54:20 +02:00
can1357 c6fd50b8e6 feat(coding-agent): added advisor context auto-maintenance with safer replay and compaction
- Added advisor context maintenance hook and token estimation before prompting for auto-upkeep.
- Added re-prime replay handling to reset advisor context and recover deferred prompts.
- Implemented session-level context compaction with model promotion and snapcompact-first fallback summarization.
- Surfaced advisor settings in the model tab and updated advisor system guidance text.
2026-06-15 16:49:21 +02:00