Commit Graph

67425 Commits

Author SHA1 Message Date
maweibin
cb5fc0ea8a docs(backup): enumerate volatile archive exclusions (#99007)
Co-authored-by: 0668000787 <ma.weibin@xydigit.com>
2026-07-12 20:14:12 -07:00
mushuiyu886
cf0b80bf7e fix(gateway): clamp MCP loopback body timeout (#105769)
* fix(gateway): clamp MCP loopback body timeout

* test(gateway): keep stalled request auth strict

* test(gateway): name loopback request auth

* test(gateway): scope overflow auth fixture

---------

Co-authored-by: Peter Steinberger <steipete@gmail.com>
2026-07-12 20:13:59 -07:00
Peter Steinberger
7761022048 fix(ui): explain skipped cron runs (#105858) 2026-07-12 20:05:11 -07:00
lzw112
ee17fd32b3 fix: strip mixed-case Nextcloud Talk target prefixes (#105818) 2026-07-12 20:00:43 -07:00
Vincent Koc
08ab604a1e refactor(discord): remove model picker barrel (#105908) 2026-07-13 10:59:59 +08:00
morluto
5f46433d62 fix(ui): bound stale-chunk recovery probes (#105795) 2026-07-12 19:59:12 -07:00
Peter Steinberger
d49acffa5e refactor(infra): consolidate retry scheduling (#105789)
* refactor(infra): consolidate retry scheduling

* fix(build): wire shared retry package

* fix(build): resolve retry package in source graphs

* fix(infra): keep retry adapter dependency-free
2026-07-12 19:58:55 -07:00
Peter Steinberger
dce8eed0b9 ci(deadcode): restore enforced unused-export ratchet (#105826)
* ci(deadcode): restore export ratchet

* chore(deadcode): refresh export baseline

* refactor(sessions): remove obsolete patch writer

* refactor(deadcode): classify current export residue

* fix(deadcode): preserve exported signature types

* chore(deadcode): sync export baseline after rebase

* chore(deadcode): classify pairing test exports

* fix(ci): refresh plugin SDK declaration budget
2026-07-12 19:58:38 -07:00
Peter Steinberger
c3dbaf4375 refactor: split hot TypeScript modules and add LOC ratchet (#105894)
* refactor: split high-churn agent and chat modules

* ci: enforce TypeScript LOC ratchet

* ci: anchor LOC baseline updates to merge base

* test: cover LOC ratchet check plans

* chore: refresh TypeScript LOC baseline
2026-07-12 19:57:42 -07:00
xingzhou
fb48df4a0f fix(claude-cli): max-turn stops omit run and recovery context (#94130)
* fix(anthropic): handle max_turns stop reason and surface retry-limit details to users

* fix(anthropic): classify max_turns as length-limited

* fix(anthropic): preserve max_turns diagnostics

* fix(anthropic): preserve max_turns side-effect warning

* fix(claude-cli): max-turn stops omit run and recovery context

* fix(claude-cli): preserve max-turn terminal boundaries

* refactor(claude-cli): centralize terminal error conversion

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

* fix(claude-cli): warn before retrying max-turn failures

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

* fix(claude-cli): preserve max-turn stops through wrappers

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

* fix(claude-cli): prioritize terminal max-turn output

---------

Co-authored-by: 张贵萍 <zhangguiping@zhangguipingdeMac-mini.local>
Co-authored-by: Peter Steinberger <steipete@gmail.com>
2026-07-12 19:57:34 -07:00
Peter Steinberger
e119d050e5 feat(ui): make the sidebar agent chip body the menu trigger (#105861)
* feat(ui): make the sidebar agent chip body the menu trigger

The footer chip's big name/avatar area now opens the agent menu directly
and the chevron toggle button is removed. New-session plus stays as the
only trailing action; the unread dot moves onto the chip body.

* chore(ui): prune removed agentChip.openConversation key from locale bundles

* fix(ui): keep the agent name in the chip menu trigger accessible name
2026-07-12 19:57:31 -07:00
Peter Steinberger
1beb0ead13 fix(i18n): align Apple wrapper contract (#105864) 2026-07-12 19:50:06 -07:00
Peter Steinberger
2186cdf36e fix(i18n): restore Text(title) wrapper contract for settings accessibility labels
0aabf56242 relaxed the wrapper contract to .accessibilityLabel(title) while
the same pattern stayed in RAW_LOCALIZATION_BYPASSES, and #105859 then
restored Text(title) in SettingsProTabSections.swift, leaving main's
apple-app-i18n guard failing in both directions. Revert the contract to the
original required pattern; both guard tables validate against current main.
2026-07-12 19:47:54 -07:00
Peter Steinberger
34bbd3820b test(ui): stabilize chat hover browser timeout 2026-07-12 22:44:54 -04:00
Vincent Koc
f26793ca54 refactor(qa-lab): trim process metric parser exports (#105891) 2026-07-13 10:42:29 +08:00
qingminlong
0e15a5d994 fix(pdf): reject unsafe page numbers before analysis (#105315)
* fix(pdf): reject unsafe page numbers before analysis

* test(pdf): bound unsafe page range regression
2026-07-12 19:38:55 -07:00
Peter Steinberger
a9761ab5af test(ui): align composer footer inset assertions with centered chip padding
PR #105866 split the footer block inset evenly (calc(inset/2) top/bottom)
but left chat-responsive.browser.test.ts asserting the full inset, breaking
checks-ui on main.
2026-07-12 19:35:06 -07:00
Peter Steinberger
c81ae0412c fix(ios): localize Settings accessibility labels (#105859)
* fix(ios): preserve localized accessibility labels

* chore(i18n): refresh native source inventory
2026-07-12 19:33:27 -07:00
Vincent Koc
e9e7d385e0 refactor(plugin-runtime): trim task facade exports (#105878) 2026-07-13 10:25:52 +08:00
Ayaan Zaidi
0aabf56242 chore(i18n): track accessibilityLabel(title) wrapper contract
5e9bc0916f switched two SettingsProTabSections accessibility labels
from .accessibilityLabel(Text(title)) to .accessibilityLabel(title);
title is LocalizedStringKey so lookup stays localized, but the wrapper
contract in apple-app-i18n.ts still required the old spelling and the
tooling shard only runs on PRs, so main broke silently.
2026-07-13 07:46:38 +05:30
Peter Steinberger
38e636542d fix(gateway): keep watch logs visible in tmux 2026-07-13 03:14:49 +01:00
Peter Steinberger
2f756c70a6 fix(ui): center composer footer controls between divider and card edge (#105866)
* fix(ui): center composer footer controls between divider and card edge

* docs: add PR number to composer footer changelog entry
2026-07-12 19:13:17 -07:00
Ayaan Zaidi
c029d997a9 chore(i18n): resync native inventory line metadata
Direct iOS/Android commits on main shifted source line numbers without
running the path-filtered native-i18n job, so `native:i18n:check` fails
on any PR that touches a native path. Metadata-only resync; entry count
unchanged (4200).
2026-07-13 07:42:52 +05:30
Vincent Koc
afb282ee68 refactor(infra): trim Windows firewall exports (#105856) 2026-07-13 10:06:10 +08:00
Peter Steinberger
c3ee86a068 refactor(browser): localize internal support types (#105839) 2026-07-12 18:59:01 -07:00
Peter Steinberger
58e8440190 fix(docs-i18n): reject leaked placeholder variants 2026-07-12 21:53:44 -04:00
Peter Steinberger
024b7d5aa8 refactor(pairing): store channel pairing state in SQLite (#105802)
* refactor(pairing): move channel state to SQLite

* fix(pairing): preserve doctor and SDK contracts

* fix(pairing): break SQLite storage import cycle

* fix(pairing): keep SQLite types outside SDK graph
2026-07-12 18:53:38 -07:00
Vincent Koc
818eca2c09 fix(ios): coalesce automatic overview refreshes 2026-07-13 03:53:15 +02:00
Vincent Koc
918745ed21 docs(changelog): note native app reliability fixes 2026-07-13 03:53:15 +02:00
Vincent Koc
5e9bc0916f fix(ios): harden gateway and watch state handling 2026-07-13 03:53:15 +02:00
Vincent Koc
b9d53d3cce fix(android): keep disconnected nodes offline 2026-07-13 03:53:15 +02:00
Peter Steinberger
6eae468d45 feat(ui): scope the sidebar sessions list to the chip-selected agent (#105832)
* feat(ui): scope the sidebar sessions list to the selected agent

* fix(ui): render the target agent's cached sessions during a chip switch

* fix(ui): key the sessions list off the chip-selected agent
2026-07-12 18:43:11 -07:00
Peter Steinberger
cba79b4aaa fix(slack): suppress room event typing indicators (#105813)
* fix(slack): suppress room event typing indicators

* fix(slack): suppress room event typing indicators
2026-07-12 18:41:49 -07:00
Vincent Koc
8091292e3e refactor(infra): trim advertised host exports (#105834) 2026-07-13 09:40:34 +08:00
Peter Steinberger
43901be298 refactor(agents): trim embedded helper dead exports (#105815)
* refactor(agents): trim embedded helper exports

* chore(deadcode): refresh export baseline

* chore(deadcode): sync export baseline

* chore(deadcode): reconcile export baseline
2026-07-12 18:34:45 -07:00
Peter Steinberger
3613b83c6c refactor(browser): trim private Playwright exports (#105794)
* refactor(browser): trim private Playwright exports

* chore(deadcode): refresh export baseline

* chore(deadcode): refresh current baseline

* chore(deadcode): refresh latest baseline
2026-07-12 18:30:34 -07:00
qingminlong
60ca7565a7 fix(discord): omit invalid component accent colors (#105387)
* fix(discord): omit invalid component accent colors

* test(discord): cover accent color boundaries

* docs: keep release notes in PR context

---------

Co-authored-by: Peter Steinberger <steipete@gmail.com>
2026-07-12 18:25:49 -07:00
Peter Steinberger
a63aec8bf8 test: remove more avoidable waits (#105816) 2026-07-12 18:24:13 -07:00
Vincent Koc
f1a64741b5 refactor(plugins): trim registry exports (#105812) 2026-07-13 09:16:54 +08:00
Peter Steinberger
6aca7ca48f improve: start Gateway and first agent turn faster (#105801)
* perf(gateway): streamline cold startup and first turn

* test(gateway): cover startup fast-path contracts
2026-07-12 18:16:18 -07:00
Peter Steinberger
3616fba951 fix(gateway): make hot reload transactional (#105289)
* fix(gateway): make hot reload transactional

Replace partial reload side effects with a deferred transaction that publishes config, secrets, auth, and subsystem state together, and drains in-flight reload work before shutdown.

Co-authored-by: LZY3538 <293718838+LZY3538@users.noreply.github.com>

* fix(auth): preserve state-only credential ownership

Keep derived runtime snapshots in place for main-store state mutations so order refreshes do not look like credential replacement.

* fix(gateway): close reload transaction gaps

* fix(gateway): close merged reload gaps

* chore: move reload note to PR context

* fix(gateway): exclude restart emission root

---------

Co-authored-by: LZY3538 <293718838+LZY3538@users.noreply.github.com>
2026-07-12 18:16:15 -07:00
NIO
c93f87756a fix(qqbot): reject unsafe mention patterns (#102976)
Co-authored-by: Peter Steinberger <steipete@gmail.com>
2026-07-12 18:14:01 -07:00
Peter Steinberger
a948168690 fix(ui): restore logs auto-follow when re-enabled (#105809) 2026-07-12 18:13:09 -07:00
Vincent Koc
4afcbea5c5 test(sqlite): harden compaction and restore reliability proof (#105811)
* test(sqlite): chain compaction and restore reliability proof

* test(sqlite): bound reliability stress storage

* test(sqlite): monitor transient WAL growth
2026-07-13 09:09:21 +08:00
Peter Steinberger
774d5249cc test: eliminate unchecked TypeScript casts (#105804) 2026-07-12 18:08:26 -07:00
Peter Steinberger
f9d7aa286e refactor(sessions): reduce accessor boundary debt (#105786)
* refactor(sessions): publish rewrite updates through accessor

* refactor(sessions): patch suspensions through accessor

* refactor(acp): clarify accessor-backed session loads

* test(sessions): ratchet accessor boundary debt

* fix(sessions): preserve file-backed rewrite notifications

* test(sessions): retain file-backed rewrite debt

* fix(sessions): preserve transcript rewrite update identity

* test(sessions): restore rewrite debt baseline
2026-07-12 18:07:55 -07:00
Vincent Koc
6c88469110 refactor(msteams): remove obsolete sso invoke stack (#105799) 2026-07-13 08:59:08 +08:00
Vincent Koc
5c49055293 fix(release): allow larger plugin publication manifests (#105800) 2026-07-13 08:55:23 +08:00
Peter Steinberger
fe0a6db2b4 fix(slack): warn on disabled channel drops (#105790) 2026-07-12 17:50:14 -07:00
Peter Steinberger
462edb3373 fix(ui): scope usage insights to active filters (#105792) 2026-07-12 17:46:54 -07:00