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