Commit Graph
9063 Commits
Author SHA1 Message Date
can1357 ab48f43783 Merge PR #6888: fix(ttsr): flag text-source inference for unlisted file extensions (@roboomp) 2026-07-29 23:08:24 +02:00
can1357 b5ad903788 fix(ttsr): exclude deleted patch text from matcher digest
(cherry picked from commit b4812365368368a5706131c3ff1ecd52fd64662d)
2026-07-29 23:08:24 +02:00
can1357 3a61aa727f fix(coding-agent): keep Advisor retry sleep on Bun
(cherry picked from commit 31b9090f901b520b57d5dacec3f8c7dba271decc)
2026-07-29 23:08:23 +02:00
can1357 8c45df1cdd Merge PR #6883: fix(coding-agent): scope Advisor cost to the active session (@paolomazzitti) 2026-07-29 23:08:23 +02:00
can1357 7338be4d67 Merge PR #6845: fix(launch): isolate legacy xterm replay (@usr-bin-roygbiv) 2026-07-29 23:08:22 +02:00
can1357 2c99f2f2e8 fix(git): preserve effective character locale
(cherry picked from commit ef7abf60ad1b80642ba1731e043f8eeb82c6a6aa)
2026-07-29 23:08:21 +02:00
usr-bin-roygbivandcan1357 8b81b1c0a0 fix(launch): preserve logs on replay failure
(cherry picked from commit 2bebc32a05553e75edef16f71218fa2bfbfc1f77)
2026-07-29 23:08:21 +02:00
usr-bin-roygbivandcan1357 77e90e458d fix(launch): reject early replay worker exits
(cherry picked from commit d5bbebb22485a118c5efb690ec40033583a38d81)
2026-07-29 23:08:21 +02:00
usr-bin-roygbivandcan1357 4436038127 fix(launch): isolate legacy xterm replay
(cherry picked from commit 47baab894a224f3354085b4794337a211d3cf5c8)
2026-07-29 23:08:21 +02:00
can1357 3bce6527b3 Merge PR #6842: fix(git): force stable locale for non-interactive commands (@rolando439) 2026-07-29 23:08:20 +02:00
Rolando Diazandcan1357 b1c3ba8b8e fix(git): preserve UTF-8 locale for gh subprocesses
(cherry picked from commit e703aa00892b4589baa6c9dcb5f3ab2a3afb1662)
2026-07-29 23:08:20 +02:00
Rolando Diazandcan1357 62cffde87a fix(git): treat empty LC_CTYPE as unset
(cherry picked from commit 02364899ad23031d0ffe47be574ed547e249efa5)
2026-07-29 23:08:20 +02:00
Rolando Diazandcan1357 6ddea85d07 fix(git): preserve inherited UTF-8 character locale
(cherry picked from commit 4d51427cf144dd6415ee3b61158b5650011a796e)
2026-07-29 23:08:19 +02:00
Rolando Diazandcan1357 a38160e245 fix(git): preserve UTF-8 locale for child processes
(cherry picked from commit f7c46ea55fb016daf6c34ecadf87443dadc61047)
2026-07-29 23:08:19 +02:00
Rolando Diazandcan1357 fc093871c0 fix(git): force stable locale for non-interactive commands
(cherry picked from commit 29afa4c859ec89db5b6d3101495eb505cf85cb36)
2026-07-29 23:08:19 +02:00
can1357 2be93e7c84 fix(coding-agent): filter disabled MCP completions
(cherry picked from commit 33886ad9691cf4d330cf1a645e19cae7681c8e94)
2026-07-29 23:07:53 +02:00
can1357 0617ff6e80 Merge PR #6454: feat(coding-agent): autocomplete MCP server names in /mcp subcommands (@Mathews-Tom) 2026-07-29 23:07:52 +02:00
Paolo Mazzitti 3c7233af44 fix(coding-agent): scope advisor cost to active session 2026-07-29 07:18:48 +00:00
roboomp 43534b25bc fix(ttsr): flag text-source inference for unlisted file extensions
`omp ttsr test <file>` inferred the match source from the path extension
against a hardcoded allowlist (`SOURCE_FILE_EXT`); a supplied source file
whose extension was absent silently fell through to the text (prose)
context, where tool-scoped rules can never match. The result was a false
negative indistinguishable from a non-matching regex, contradicting the
documented "a positional that resolves to a file defaults to tool/edit
context" contract.

- Emit an explanatory note when a resolvable file path is supplied and the
  source is inferred as `text`, pointing at `--source tool --tool edit`.
  Surfaced in both text and `--json` output via `TestReport.inferenceNote`.
- Extend the allowlist with the .NET family and other common source
  languages (cs, razor, cshtml, fs, fsx, vb, sh, bash, sql, zig, dart,
  scala, ex, exs, proto, tf).

Left the fall-through default itself unchanged (inverting the test is a
behaviour change and a maintainer call).

Fixes #6887
2026-07-28 10:35:31 +00:00
can1357 a10fe079ce fix(coding-agent): suppressed credential disable tombstones for active accounts
- Update isActionableDisable in usage-cli.ts to accept active accounts and check identity matches.
- Suppress credential disable tombstones when an active account exists for the same provider and identity.
- Add test coverage for suppressing tombstones when active accounts share the same identity.
2026-07-28 11:47:08 +02:00
can1357 b778617178 chore: reformat + rewrite changelogs 2026-07-28 11:19:34 +02:00
can1357 ef13efc1ab Merge PR #6750: perf(coding-agent): load HTML export assets on first use (@usr-bin-roygbiv) 2026-07-28 10:59:38 +02:00
can1357 c7b10c3340 Merge PR #6763: fix(cli): preserve live task-isolation sandboxes on worktree clear (@roboomp) 2026-07-28 10:59:37 +02:00
can1357 ac6cd57bd4 Merge PR #6820: fix(coding-agent): preserve parent todos in vibe mode (@Iron-Ham) 2026-07-28 10:59:37 +02:00
can1357 be0e593428 Merge PR #6880: fix(session): preserve auto-thinking level on classifier failure (@roboomp) 2026-07-28 10:59:37 +02:00
can1357 2b759b89e3 Merge PR #6838: fix(session): attribute user bang executions in advisor transcripts (@roboomp) 2026-07-28 10:59:36 +02:00
can1357 83dc01eb79 Merge PR #6823: fix(cli): wrap streaming-phase download timeout with friendly message (@roboomp) 2026-07-28 10:59:36 +02:00
can1357 84a7937325 docs(tools): note the literal-path escape in the selector-list guard
The guard now probes the full target before refusing, so an existing file
named like a selector list stays writable. Say so in the CHANGELOG entry
and the readSelectorListMisfire doc comment.
2026-07-28 10:59:36 +02:00
can1357 c66fac2ddd fix(tools): let an existing literal selector-list filename stay writable
Probe the full target with probeLiteralPathExists before classifying it as a
mis-dispatched read-selector list, matching the single-selector guard, so an
existing POSIX file like 'report:1-2;archive:3-4' can still be overwritten.
2026-07-28 10:59:36 +02:00
can1357 fefccc4acb Merge PR #6811: fix(tools): refuse write targets shaped as a read-selector list (@roboomp) 2026-07-28 10:59:36 +02:00
can1357 f464c9b168 Merge PR #6829: fix(cli): purge completed async jobs on /new (@roboomp) 2026-07-28 10:59:36 +02:00
can1357 d1de4658aa fix(discovery): warn when a plugin mcpServers pointer names a missing file 2026-07-28 10:59:35 +02:00
can1357 b6bd241943 Merge PR #6873: fix(discovery): honor plugin MCP manifest pointers (@roboomp) 2026-07-28 10:59:35 +02:00
can1357 04fad069aa Merge PR #6853: fix(launch): treat restarting daemon as settled in broker #settle (@roboomp) 2026-07-28 10:59:35 +02:00
can1357 a0e53f73c0 Merge PR #6848: fix(coding-agent): restore isRetryableAssistantError in legacy pi-ai shim (@roboomp) 2026-07-28 10:59:35 +02:00
can1357 f6438eb2a5 Merge PR #6862: fix(coding-agent): bridge isContextOverflow in legacy pi-ai shim (@roboomp) 2026-07-28 10:59:34 +02:00
can1357 6269e0a53d Merge PR #6874: fix(acp): hide internal Hub messages (@roboomp) 2026-07-28 10:59:34 +02:00
can1357 5f24d8e670 Merge PR #6861: fix(settings): hide excluded web search providers (@roboomp) 2026-07-28 10:59:34 +02:00
can1357 6596e68236 Merge PR #6605: fix(tui): restore GitHub refs in slash arguments (@roboomp) 2026-07-28 10:59:34 +02:00
can1357 a4f4b3766f fix(coding-agent): budget Ask markdown against padded block width
The symmetric-padding change shrank the framed-block content width to
outputBlockContentWidth(width); the Ask renderer still pre-rendered its
question/result Markdown at the old width-2 budget, so maximal-width rows
re-wrapped inside the block and spilled a trailing fragment row.
2026-07-28 10:59:33 +02:00
can1357 05e98891f0 Merge PR #6833: fix(tui): wrapped Markdown list and output block layout (@usr-bin-roygbiv) 2026-07-28 10:59:33 +02:00
can1357 315fb784e5 Merge PR #6818: fix(cli): set kernel process name via prctl on linux (@roboomp) 2026-07-28 10:58:58 +02:00
can1357 56ea3bf8ee feat(coding-agent/cleanse): implemented cleanse command and workflow execution
- Add `omp cleanse` command and workflow execution infrastructure.
- Implement project file discovery, automatic checker execution, and multi-format diagnostic parsing.
- Provide subagent dispatch, session runtime, and task balancing with bin packing.
- Include comprehensive tests for diagnostic parsing and orchestration loops.
2026-07-28 10:22:17 +02:00
roboomp 5d9cbf19e6 fix(session): preserved auto-thinking level on classifier failure
- Kept the last successfully classified effort when a later classification fails.
- Added regression coverage for the success-then-failure transition.

Fixes #6877
2026-07-28 08:06:17 +00:00
usr-bin-roygbiv a28ca5a268 fix(tui): honor padded markdown width budgets 2026-07-28 07:41:59 +00:00
roboomp 0c04e86efd fix(acp): kept hub job-wait results visible
Only a peer-scoped wait (from, no ids) is internal messaging; bare and ids waits settle on background-job delivery whose snapshot is the job result.

Fixes #6872
2026-07-28 07:34:49 +00:00
roboomp b38472b111 fix(acp): hid internal hub messages
Prevented internal Hub send, inbox, list, and non-process wait calls from crossing ACP, including xd:// routing and replayed sessions.
Preserved Hub process-control calls.

Fixes #6872
2026-07-28 07:26:52 +00:00
roboomp 4f63e4e521 fix(discovery): honored inline plugin MCP manifest maps
Treated an object-valued mcpServers manifest field as the server map, rooting relative stdio paths at the plugin root, so plugins declaring servers inline no longer fell through to .mcp.json.

Fixes #6871
2026-07-28 07:24:49 +00:00
roboomp 8f31a123d6 fix(discovery): honored plugin MCP manifest pointers
Resolved mcpServers file pointers from OMP and Claude plugin manifests before the conventional root config fallback.

Updated marketplace installer documentation for runtime symlink and lockfile registration.

Fixes #6871
2026-07-28 07:12:46 +00:00
usr_bin_roygbiv f32dd6eff4 Fix wrapped Markdown list and output block layout 2026-07-28 07:06:31 +00:00