Commit Graph
6246 Commits
Author SHA1 Message Date
can1357 afc4f3c1fe Merge pull request #2581 from camopy/codex/avoid-placeholder-crash-before-theme-init
fix(coding-agent): avoid placeholder crash before theme init

Resolved CHANGELOG conflict: 15.13.0 was re-opened into [Unreleased] on
main, so the fix entry goes under the existing [Unreleased] Fixed section
rather than resurrecting the released 15.13.0 heading.
2026-06-14 20:44:03 +02:00
can1357 5da4ab6085 Merge remote-tracking branch 'origin/farm/ed9bea08/isolate-settings-parallel-tests' 2026-06-14 20:35:38 +02:00
roboomp d142652fbe style: bun run fix 2026-06-14 18:26:27 +00:00
roboomp 805fbfbad8 fix(coding-agent): isolated parallel-test races on the Settings singleton
Two CustomEditor/streaming-preview tests timed out under bun test --parallel
because they reset+reinitialised the process-global Settings singleton in
beforeEach. 50+ other test files do the same dance, so under parallelism the
proxy points at whichever instance won the latest race rather than the one
under test (issue #2582).

- Added CustomEditor#magicKeywordsEnabledOverride: an instance-level test/host
  injection that short-circuits the global lookup at the read site.
  Production wiring still reads from Settings.
- Switched the magic-keyword shimmer-disabled test to set
  magicKeywordsEnabledOverride directly instead of mutating the singleton.
- Removed the gratuitous reset+init from the 'streaming tool call preview
  height (bounded across renderers)' describe -- bash/ssh/eval pending
  previews never read settings.*; only initTheme() (idempotent) is kept.

Fixes #2582
2026-06-14 18:26:20 +00:00
can1357 687487385b test(coding-agent): drop tts/stt worker tests; harden timing-bound tests
The tts/stt suite spawns sherpa-onnx worker subprocesses that hang on the
headless CI runner (zero-output stall → SIGTERM), and the resulting event-loop
starvation tipped real-time TUI tests (streaming-preview, custom-editor shimmer,
ask timeouts) past bun's 5s default. Remove the tts/stt tests and give the
timing-sensitive tests an explicit 30s timeout.
2026-06-14 20:18:09 +02:00
Paulo Camopy bf345d9920 fix(coding-agent): avoid placeholder crash before theme init 2026-06-14 14:45:25 -03:00
can1357 c362976ac5 test(coding-agent/core): consolidated python executor session lifecycle tests
- Added a lifecycle test case verifying executePython retries execution with a fresh kernel when the prior session kernel dies during run.
- Removed the now-redundant python-executor-session.test.ts file that defined session lifecycle tests.
2026-06-14 19:04:18 +02:00
can1357 6325de72f8 test(coding-agent): drop flaky task pending preview height test 2026-06-14 19:03:29 +02:00
can1357 7e8122000a chore: bump version to 15.13.0 2026-06-14 18:21:59 +02:00
can1357 2b436f222a chore: update changelogs 2026-06-14 18:21:35 +02:00
Can BölükandGitHub 6eb57448c5 Merge pull request #2444 from 381181295/extension-approval-lifecycle
feat(coding-agent): emit tool approval lifecycle events
2026-06-14 18:16:36 +02:00
can1357 9e18d3fbb0 Merge branch 'main' into farm/a4aed75b/npm-plugin-load-deps 2026-06-14 18:13:29 +02:00
can1357 fd4bdf77fc docs(agent): updated AGENTS.md changelog review guidance wording
- Updated AGENTS.md to state that changelog section order and formatting should not be flagged in reviews or PRs.

Closes #2377
Closes #2379
Closes #2380
Closes #2381
Closes #2382
Closes #2383
Closes #2384
Closes #2410
Closes #2432
Closes #2449
Closes #2451
Closes #2452
Closes #2456
Closes #2457
Closes #2466
Closes #2487
2026-06-14 17:57:10 +02:00
can1357 3709ae0ca9 Merge PR #2451: fix(coding-agent): preserve discovered context windows 2026-06-14 17:54:50 +02:00
can1357 e28269c235 docs(changelog): move vLLM discovery entries to [Unreleased]
Rebasing onto current main landed both the coding-agent and catalog
vLLM entries under the released [15.12.6] section. Per AGENTS.md, new
entries go under [Unreleased] and released sections are immutable, so
the release tooling would otherwise miss them.

Addresses review feedback on #2451.
2026-06-14 17:50:16 +02:00
Gerben Meijerandcan1357 4a6eec624b fix(coding-agent): preserve vLLM discovered context windows
Read vLLM max_model_len and OpenAI-compatible context_length metadata during model discovery, route providers.vllm.baseUrl into built-in discovery before cached models exist, and avoid sending local placeholder bearer tokens.

Scope the vLLM model cache to the discovery base URL so endpoint changes refetch immediately, and add focused regression coverage for configured and built-in vLLM discovery.
2026-06-14 17:50:16 +02:00
can1357 80c2004ac9 Merge PR #2466: fix(config): prefer context_length from API in model discovery 2026-06-14 17:44:57 +02:00
can1357 da26651129 Merge PR #2432: fix(coding-agent): report local rpc prompt completion 2026-06-14 17:44:29 +02:00
can1357 091c452dd1 Merge PR #2377: fix(coding-agent): derive bundled self root from dist path 2026-06-14 17:44:28 +02:00
can1357 ae0898e3a5 Merge PR #2456: fix(coding-agent): attach clipboard image on stale screenshot paste path 2026-06-14 17:44:28 +02:00
can1357 884cfefe9c Merge PR #2449: fix(discovery): follow symlinked extension packages 2026-06-14 17:44:28 +02:00
can1357 b0ab7ed28c Merge PR #2410: feat(extensions): expose model resolve() and family() via ctx.models 2026-06-14 17:44:28 +02:00
can1357 edb1fc206b fix(coding-agent): keep single Unreleased changelog entry after rebase
Rebasing onto main replayed the branch's changelog history across main's
diverged changelog, duplicating the RPC prompt-completion note and
injecting stray entries/headers into the released [15.12.4] section.
Reset the changelog to main's content with exactly one entry under
[Unreleased] -> Added, per AGENTS.md (released sections are immutable).

Addresses review feedback on #2432.
2026-06-14 17:37:00 +02:00
can1357 8bad22bd9d docs(coding-agent): move Win+Shift+S paste entry under [Unreleased]
The rebase landed the changelog entry inside the already-released
[15.12.4] section because its #2429 anchor was moved there when that
release was cut. Relocate it to [Unreleased] -> Fixed per changelog
convention.

Addresses review feedback on #2456.
2026-06-14 17:36:27 +02:00
art-wiedzminandcan1357 53a7253fbb docs(coding-agent): add CHANGELOG entry for Win+Shift+S clipboard paste fallback 2026-06-14 17:33:17 +02:00
art-wiedzminandcan1357 e31926e698 fix(coding-agent/modes): fall back to clipboard image when pasted screenshot path is missing 2026-06-14 17:33:17 +02:00
can1357 8e7a2fac97 chore: update changelogs 2026-06-14 17:32:28 +02:00
Kormákurandcan1357 b7e8599ef8 Move RPC changelog note to Unreleased 2026-06-14 17:30:38 +02:00
Kormákurandcan1357 c805514c75 fix(coding-agent): gate rpc extension turn tracking on send success 2026-06-14 17:30:37 +02:00
Kormákurandcan1357 1b7fd189bb fix(coding-agent): trim rpc prompt completion scope 2026-06-14 17:30:37 +02:00
Kormákurandcan1357 e2cd316f33 fix(coding-agent): complete local rpc prompts 2026-06-14 17:30:37 +02:00
Kormákurandcan1357 b59ea8e344 fix(coding-agent): handle queued rpc extension messages 2026-06-14 17:30:37 +02:00
Kormákurandcan1357 27105c99a9 fix(coding-agent): track extension-triggered rpc turns 2026-06-14 17:30:37 +02:00
Kormákurandcan1357 a19d5a35fc fix(coding-agent): mark rpc skill prompts as agent work 2026-06-14 17:30:37 +02:00
Kormákurandcan1357 d418467715 fix(coding-agent): report local rpc prompt completion 2026-06-14 17:30:36 +02:00
can1357 bcde055998 test(config): cover non-positive context_length fallback and satisfy formatter
Add a proxy-discovery regression: a `context_length: 0` upstream value
must be rejected by `toPositiveNumberOrUndefined` and fall back to the
default window. Raw `??` would have pinned it at 0 (nullish coalescing
does not skip 0), so this guards the should-fix the helper was added for.

Also apply biome formatting to the discovery change (collapse the
multiline `contextWindow:` expression, drop a trailing space) and the new
tests so `biome check` passes — the PR as submitted failed the formatter.

Addresses review feedback on #2466.
2026-06-14 17:30:20 +02:00
can1357 20c4052996 fix(config): relocate context_length changelog entry to coding-agent package
The PR added its `### Fixed` entry to packages/agent/CHANGELOG.md
(@oh-my-pi/pi-agent-core), but the change lives in the coding-agent
package (packages/coding-agent/src/config/model-discovery.ts). Per
AGENTS.md the changelog entry belongs in the touched package under
`## [Unreleased]`; the rebase also wedged the misplaced entry inside the
already-released `## [15.12.6]` section. Move it to
packages/coding-agent/CHANGELOG.md and restore packages/agent unchanged.

Addresses review feedback on #2466.
2026-06-14 17:30:20 +02:00
Nicolas Lorinandcan1357 87c9e77dbe fix(config): prefer context_length from API in model discovery
Updated model discovery to use `context_length` reported by the API when available, falling back to bundled reference data and default. Added `context_length` field to parsed model response and modified context window assignment logic.
2026-06-14 17:30:20 +02:00
can1357 f4734e1940 Merge PR #2487: fix(coding-agent): route MCP connecting banner through the render tree 2026-06-14 17:29:38 +02:00
can1357 c8541c5bec fix(coding-agent): move bundled-self-root changelog entry to [Unreleased]
The rebase replayed the entry against its old context anchor, which has
since shipped in the released [15.11.7] section, so the new line landed
inside published release history. Relocate it under [Unreleased] / Fixed
per the changelog convention.

Addresses review feedback on #2377.
2026-06-14 17:26:24 +02:00
SUPREMEandcan1357 1f17347b31 test(discovery): cover linked index entrypoints 2026-06-14 17:25:54 +02:00
SUPREMEandcan1357 12ef9b11a9 fix(discovery): follow symlinked extension packages 2026-06-14 17:25:53 +02:00
Asaf Mahlevandcan1357 d12ed9135b fix(changelog): place ctx.models entry under [Unreleased] 2026-06-14 17:24:48 +02:00
Asaf Mahlevandcan1357 57ea171859 address #2406 review: full-priority role resolve, family JSDoc, catalog changelog, role + canonical tests 2026-06-14 17:24:48 +02:00
Asaf Mahlevandcan1357 3c53218e19 feat(extensions): add read-only ctx.models query facade
Expose `ctx.models` to extensions: list() / current() / resolve(spec) /
family(model). Lets extension tools select models the same way core does
(settings-backed aliases, match preferences, canonical-identity family
classification) without reaching into the mutable registry.

- types.ts: ExtensionModelQuery interface + `models` on ExtensionContext
- model-api.ts: createExtensionModelQuery facade
- runner.ts: thread optional Settings; build `models` in createContext()
- sdk.ts + agent-session.ts + extension-ui-controller.ts: pass settings / build models on the direct context literals
- catalog identity: modelFamilyToken() — coarse canonical-backed lineage token
- docs + changelog + tests

Implements #2406.
2026-06-14 17:24:48 +02:00
metaphoricsandcan1357 8e21f4b41d fix(coding-agent): route MCP connecting banner through the render tree
Deferred MCP discovery wrote 'Connecting to MCP servers: …' straight to process.stderr while the TUI owned the terminal, overdrawing the chat input box border. onMCPConnecting now emits McpConnectingEvent on the mcp:connecting channel; InteractiveMode subscribes and renders it via showStatus (status container), mirroring the LSP-startup pattern. New mcp/startup-events.ts holds the channel, type, and formatMCPConnectingMessage.
2026-06-14 17:24:21 +02:00
oldschoolaandcan1357 425ad24274 test(coding-agent): drive ACP /move test with os.tmpdir(); drop duplicate changelog line 2026-06-14 17:24:13 +02:00
oldschoolaandcan1357 afe3209528 docs(coding-agent): move ACP /move test note to Unreleased 2026-06-14 17:24:13 +02:00
oldschoolaandcan1357 ed8df083fa test(coding-agent): make ACP /move path assertion portable on Windows 2026-06-14 17:24:13 +02:00
jiwangyihaoandcan1357 c47718a6b5 fix(coding-agent): derive bundled self root from dist path 2026-06-14 17:24:07 +02:00