Commit Graph

63923 Commits

Author SHA1 Message Date
Peter Steinberger
eafe2a8d0b refactor: consolidate duplicated plugin state and doctor migration plumbing onto SDK seams (#99850)
* refactor(plugin-sdk): add createPersistentDedupeCache and migrate channel presence caches

* refactor(matrix): adopt SDK approval reaction target store

* refactor(plugin-sdk): share doctor legacy-state migration fs helpers

* refactor(memory-core): dedupe qmd cache entry envelope validation

* chore(plugin-sdk): pin surface budgets for shared dedupe and doctor helpers

* test(matrix): use future approval expiry fixtures for reaction targets

* test(matrix): use future approval expiry fixtures for reaction targets
2026-07-04 01:51:03 -07:00
Peter Steinberger
3d404478b8 fix(discord): hide internal Code Mode wait progress (#99893)
Hide invocation-specific Code Mode wait controls from channel progress while preserving telemetry and visible non-internal tools.
2026-07-04 01:45:50 -07:00
Peter Steinberger
3d6a2216ea feat(codex): share native threads across Codex clients (#99821)
* feat(codex): share native threads across clients

* test(codex): track coexistence temp dirs

* fix(codex): preserve native source on thread forks

* test(codex): use public temp fixtures

* fix(codex): preserve owner context for deferred tools

* fix(codex): forward owner identity to dynamic tools

* fix(codex): forward owner status to harness attempts

* docs(security): document shared Codex home

* docs(security): document shared Codex home

* docs(security): document shared Codex home
2026-07-04 01:43:21 -07:00
Vincent Koc
9a0c9f8395 fix(agents): preserve images on cli fallback (#99891) 2026-07-04 01:29:03 -07:00
Peter Steinberger
55d0d037bf test(codex): expect canonical assistant text blocks in mirrored history
Session ingest has normalized legacy assistant string content into
[{ type: "text" }] blocks since #98908, which updated the core
cli-runner session-history analog but missed this extension file.
The suite only runs in full local runs and the dispatch-only
plugin-prerelease lane, so push/PR CI stayed green while local
scripts/pr prepare-gates failed on any OS.

refs #99857
2026-07-04 09:15:14 +01:00
Vincent Koc
530f6d867f test(ui): isolate chat render mocks 2026-07-04 10:11:31 +02:00
xingzhou
741d9524be fix: outbound recovery can replay already sent replies (#99600)
* fix(outbound): avoid replaying sent recovery deliveries

* fix(outbound): persist recovery send state before ack

Co-authored-by: zhang-guiping <zhang.guiping@xydigit.com>

* fix(outbound): preserve partial send evidence across adapters

* test(line): cover multi-send delivery progress

* fix(outbound): preserve repeated receipt result multiplicity

* test(heartbeat): expect delivery progress callback

---------

Co-authored-by: Peter Steinberger <steipete@gmail.com>
2026-07-04 01:09:12 -07:00
github-actions[bot]
2abad575d2 chore(i18n): refresh native locales 2026-07-04 08:06:04 +00:00
Vincent Koc
2be9e32a59 chore(release): refresh 2026.7.1 beta.2 changelog 2026-07-04 01:03:25 -07:00
Vincent Koc
c61039bead fix(release): preserve target merge PR in changelog ledger 2026-07-04 01:03:21 -07:00
Vincent Koc
1e20f15581 fix(ci): batch i18n locale refresh commits 2026-07-04 00:50:21 -07:00
github-actions[bot]
8f9e1635a1 chore(i18n): refresh native uk locale 2026-07-04 07:50:19 +00:00
github-actions[bot]
305715c725 chore(i18n): refresh native tr locale 2026-07-04 07:49:26 +00:00
github-actions[bot]
531af42246 chore(i18n): refresh native it locale 2026-07-04 07:48:44 +00:00
github-actions[bot]
6bd1a4b89f chore(i18n): refresh native ar locale 2026-07-04 07:47:40 +00:00
github-actions[bot]
43fe5cc890 chore(i18n): refresh native hi locale 2026-07-04 07:47:03 +00:00
github-actions[bot]
4352eaf6ad chore(i18n): refresh native fr locale 2026-07-04 07:45:49 +00:00
Peter Steinberger
384828770b feat: declutter the Control UI shell — reasoning effort slider, borderless composer controls, version out of the sidebar (#99838)
The chat composer's model picker and provider-usage pill become quiet borderless text controls; the reasoning flyout swaps its button list for a discrete Faster–Smarter slider (native range input) with stop dots, filled track, inherited-default marker, ghosted off-scale defaults, live value label, and one-click 'Use default' reset — single-level models render a toggle instead. The persistent sidebar VERSION pill is replaced by a slim connection-status line; the gateway version remains in Settings' Quick Settings footer. Includes review fixes from Codex autoreview (singleton level selectable) and the GitHub Codex review (off-scale default thumb), plus a 40px mobile touch target.

Closes #99837
2026-07-04 00:45:44 -07:00
github-actions[bot]
7838bc82b6 chore(i18n): refresh native ko locale 2026-07-04 07:45:27 +00:00
Ayaan Zaidi
16861088b7 refactor(usage): fold pricing fingerprint check into cache read 2026-07-04 00:44:36 -07:00
Dex
6103b359cb perf(usage): shrink durable usage cache entries
Store the pricing fingerprint once on the cache root and stop persisting redundant filePath/sessionId metadata in each cache entry. Pricing changes still invalidate cached entries before refresh, and v5 caches rebuild through the schema version bump.

Fixes #99511

Co-authored-by: weco.ai <noreply@weco.ai>
2026-07-04 00:44:36 -07:00
github-actions[bot]
9eb1a05c49 chore(i18n): refresh native ja-JP locale 2026-07-04 07:44:13 +00:00
github-actions[bot]
4381c29494 chore(i18n): refresh native es locale 2026-07-04 07:43:53 +00:00
github-actions[bot]
2dc7bd19cb chore(i18n): refresh native de locale 2026-07-04 07:42:31 +00:00
github-actions[bot]
4997802eb0 chore(i18n): refresh native pt-BR locale 2026-07-04 07:42:17 +00:00
github-actions[bot]
db72ffd5d4 chore(i18n): refresh native zh-TW locale 2026-07-04 07:40:47 +00:00
github-actions[bot]
dd050bc5f8 chore(i18n): refresh native zh-CN locale 2026-07-04 07:40:36 +00:00
Josh
e43c72954a Polish iOS onboarding and chat critique fixes (#99243)
* fix(ios): polish onboarding and empty chat

Co-authored-by: Josh <17843332+jcooley8@users.noreply.github.com>

* fix(ios): correlate pending chat echoes

* fix(ios): ship localized chat starters

* fix(ios): preserve chat echo identity

* fix(ios): adopt late correlated chat echoes

* fix(ios): reconcile reused chat runs

* fix(ios): preserve transformed chat history

---------

Co-authored-by: Peter Steinberger <steipete@gmail.com>
2026-07-04 00:38:56 -07:00
Vincent Koc
c4083e32f5 fix(ci): allow jsonl socket boundary helper 2026-07-04 09:34:54 +02:00
Vincent Koc
d226afbc5c test(telegram): type inbound body fixture 2026-07-04 09:19:04 +02:00
Jason (Json)
cccc856b82 fix: reject incompatible Node 23 runtimes (#99832)
* fix: reject incompatible Node 23 runtimes

* fix: repair installer CI coverage

* docs: clarify supported Node ranges

* fix: fail closed on unreadable runtime versions

---------

Co-authored-by: Peter Steinberger <steipete@gmail.com>
2026-07-04 00:03:49 -07:00
Ayaan Zaidi
a845c0e93e fix(telegram): carry inbound addressing fact 2026-07-04 00:03:14 -07:00
Ayaan Zaidi
f48ff25b3b fix(telegram): unify rich plain fallback 2026-07-03 23:57:08 -07:00
Ayaan Zaidi
5c83b74235 fix(telegram): normalize outbound rich html 2026-07-03 23:57:08 -07:00
Vincent Koc
29814252e8 fix(config): restrict config paths to own properties (#99846)
Co-authored-by: zenglingbiao <zeng.lingbiao@xydigit.com>
2026-07-03 23:52:52 -07:00
Sachintha Bhashitha
02b529a8cc fix(line): truncate outbound altText, location, menu, and code fields on code point boundaries (#98994)
* fix(line): truncate outbound altText, location, menu, and code fields on code-point boundaries

* fix(line): use safe truncation for receipt card altText

* fix(line): count rich menu limits by grapheme

---------

Co-authored-by: Vincent Koc <vincentkoc@ieee.org>
2026-07-03 23:46:13 -07:00
Vincent Koc
03fafe2364 fix(agents): preserve fallback tool-call hints (#99851) 2026-07-03 23:42:05 -07:00
Peter Steinberger
a07b4bed79 fix: stop rubber-band bounce of the Control UI shell in the Mac app web view (#99830)
The Control UI is an app shell: inner panes scroll, the root never should. macOS WKWebView (Mac app dashboard window) and desktop Safari still rubber-band the root scroller, so the whole UI bounced up and down whenever content fit the viewport. Apply overscroll-behavior: none to html/body globally instead of only in standalone PWA mode, and drop the now-redundant standalone-mode declaration.
2026-07-03 23:39:32 -07:00
Vincent Koc
cafbd745c1 fix(gateway): preserve legacy reseed attachments (#99839) 2026-07-03 23:24:49 -07:00
Vincent Koc
d71a24f3a4 fix(mac): share Swift packaging preflight 2026-07-04 08:00:15 +02:00
Josh Avant
57513baa27 fix(config): preserve recovery state during config-health migration (#99728)
* fix(config): reconcile legacy config health state

* fix(config): reconcile legacy config health state

---------

Co-authored-by: Josh Lehman <josh@martian.engineering>
2026-07-03 22:59:24 -07:00
ZOOWH
9aa4250c58 fix(cli): hide synthetic Claude reseed prompts (#99653)
Co-authored-by: Vincent Koc <vincentkoc@ieee.org>
2026-07-03 22:56:06 -07:00
cxbAsDev
c6ed9d8d06 fix(ssh-tunnel): handle spawn error to prevent unhandled rejection crash (#99800)
* fix(ssh-tunnel): handle spawn error to prevent unhandled rejection crash

When /usr/bin/ssh is missing (ENOENT), spawn() emits an async 'error'
event. Without a handler, the unhandled error crashes the process
and the Promise.race hangs until timeout. Forward the spawn error
into the rejection path so tunnel setup fails gracefully.

Co-Authored-By: Claude <noreply@anthropic.com>

* fix(ssh-tunnel): add missing localPortPreferred in test call

Co-Authored-By: Claude <noreply@anthropic.com>

* fix(ssh-tunnel): avoid failed-spawn cleanup delay

---------

Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: Vincent Koc <vincentkoc@ieee.org>
2026-07-03 22:55:09 -07:00
cxbAsDev
3b37fe1de4 fix(supervisor): suppress unhandled stream errors on child stdout/stderr (#99802)
* fix(supervisor): suppress unhandled stream errors on child stdout/stderr

Child process stdout and stderr streams can emit 'error' events
(EPIPE, resource limits, I/O errors) that crash the process when
no listener is attached. Add noop error handlers to prevent crashes
while preserving normal data/end/close event flow.

Co-Authored-By: Claude <noreply@anthropic.com>

* test(supervisor): add regression test for stream error suppression

Co-Authored-By: Claude <noreply@anthropic.com>

* fix(supervisor): guard child stream errors during setup

---------

Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: Vincent Koc <vincentkoc@ieee.org>
2026-07-03 22:49:12 -07:00
cxbAsDev
1b84316a91 fix(mcp): suppress unhandled error on stderr pipe in stdio transport (#99803)
* fix(mcp): suppress unhandled error on stderr pipe in stdio transport

When child.stderr is piped to stderrStream without an error
handler, a stream-level error (EPIPE, I/O failure) crashes the
process. Add a noop error handler before the pipe, consistent
with the error handlers already present on stdin and stdout.

Co-Authored-By: Claude <noreply@anthropic.com>

* test(mcp): add regression test for stderr pipe error suppression

Co-Authored-By: Claude <noreply@anthropic.com>

* fix(mcp): report stderr stream errors

* fix(mcp): report stderr stream errors

---------

Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: Vincent Koc <vincentkoc@ieee.org>
2026-07-03 22:42:12 -07:00
zengLingbiao
acdaf8ae31 fix(markdown-core): use Object.hasOwn instead of in operator in parseFrontmatterBlock (#99129)
* fix(markdown-core): use Object.hasOwn instead of in operator in parseFrontmatterBlock

* test(markdown-core): add regression test for prototype-named null frontmatter keys

* style(markdown-core): fix unbound-method lint in regression test

---------

Co-authored-by: Vincent Koc <vincentkoc@ieee.org>
2026-07-03 22:39:25 -07:00
github-actions[bot]
b68e2e701a chore(i18n): refresh native sv locale 2026-07-04 05:29:11 +00:00
github-actions[bot]
63aa909216 chore(i18n): refresh native ru locale 2026-07-04 05:27:32 +00:00
github-actions[bot]
72a3b712af chore(i18n): refresh native fa locale 2026-07-04 05:27:14 +00:00
github-actions[bot]
d066a81d22 chore(i18n): refresh native nl locale 2026-07-04 05:25:47 +00:00