mushuiyu886 and GitHub
0e6561bc2c
fix(docs): search live docs with unrelated invalid config ( #111803 )
2026-07-20 15:49:03 -07:00
7bac63889e
fix(nostr): prefixed targets fail to send ( #110881 )
...
* fix(nostr): prefixed targets send successfully
* fix(nostr): address target normalization review
* fix(nostr): preserve invalid prefixed allowlist tokens
* test(nostr): cover prefixed npub outbound targets
Co-authored-by: 杨浩宇0668001029 <yang.haoyu@xydigit.com >
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-20 04:21:49 -07:00
mushuiyu886 and GitHub
367fe9a42b
fix(chutes): report cache-read pricing from live catalog ( #111253 )
2026-07-19 19:56:42 -07:00
mushuiyu886 and GitHub
a20e08a56e
fix(skills): keep ClawHub search results on one line ( #111441 )
2026-07-19 19:18:54 -07:00
mushuiyu886 and GitHub
c5bc6c3d2d
fix(duckduckgo): preserve words around highlighted matches ( #111460 )
2026-07-19 19:09:09 -07:00
mushuiyu886 and GitHub
34978b5a07
fix(browser): report final URL when opening managed Chrome tabs ( #111374 )
2026-07-19 10:01:42 -07:00
mushuiyu886 and GitHub
a626330a3b
fix(deepinfra): model list fails when HTTP proxy is required ( #111428 )
2026-07-19 09:30:12 -07:00
c3adaa3195
fix(nostr): report relay connections only after they succeed ( #110878 )
...
* fix(nostr): report relay connections only after they succeed
* test(nostr): exercise relay callback during subscription
* test(nostr): reuse resolved account fixture
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-18 18:18:39 -07:00
7abcd6c691
fix(skills): distinguish duplicate ClawHub search results by publisher ( #110903 )
...
* fix(skills): distinguish duplicate search results by publisher
* test(skills): cover owner-qualified search output
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-18 17:27:25 -07:00
9fe92cf5ce
fix(nostr): profile imports no longer crash on invalid fields ( #110684 )
...
* fix(nostr): profile imports no longer crash on invalid fields
* test(nostr): define invalid profile import policy
* test(nostr): cover invalid imported URL types
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-18 17:18:23 -07:00
d411559dfb
fix(acp): reject malformed session list cursors ( #107895 )
...
* fix(acp): reject malformed session list cursors
* fix(session-catalog): validate pagination cursors exactly
Co-authored-by: 杨浩宇0668001029 <yang.haoyu@xydigit.com >
* refactor(session-catalog): align search normalization owner
* refactor(session-catalog): keep parsing helpers private
Co-authored-by: 杨浩宇0668001029 <yang.haoyu@xydigit.com >
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-19 00:38:02 +01:00
2dce9d3012
fix(scripts): retry auth alerts after ntfy rejects delivery ( #110760 )
...
* fix(scripts): retry auth alerts after delivery failure
* test(scripts): cover mixed auth notification outcomes
Co-authored-by: 杨浩宇0668001029 <yang.haoyu@xydigit.com >
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-19 00:10:32 +01:00
4e11da2872
fix(process): UTF-8 command output corrupts at Windows byte limits ( #105274 )
...
* fix(process): preserve byte-capped UTF-8 output on Windows
* fix(process): skip codepage probe for UTF-8 output
Co-authored-by: 杨浩宇0668001029 <yang.haoyu@xydigit.com >
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-18 22:44:12 +01:00
1da345e9d3
fix(mcp): clamp oversized MCP timeouts ( #105784 )
...
* fix(mcp): clamp oversized MCP timeouts
* fix(mcp): centralize timer-safe timeout normalization
Co-authored-by: 杨浩宇0668001029 <yang.haoyu@xydigit.com >
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-18 21:50:19 +01:00
mushuiyu886 and GitHub
331eb0d439
fix(huggingface): discover models when HTTP proxy is required ( #110924 )
2026-07-18 21:31:24 +01:00
5360c75de2
fix(tui): stop Codex login lookup hanging the terminal ( #109452 )
...
* fix(tui): bound Codex CLI lookup
* fix(tui): bound Codex CLI lookup asynchronously
Co-authored-by: 杨浩宇0668001029 <yang.haoyu@xydigit.com >
* style(tui): format Codex auth flow
Co-authored-by: 杨浩宇0668001029 <yang.haoyu@xydigit.com >
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-18 11:34:21 +01:00
adff355caf
fix(plugin-sdk): failed raw channel sends report success ( #109906 )
...
* fix(plugin-sdk): reject failed raw channel sends
* fix(plugin-sdk): preserve raw result helper compatibility
* test(plugin-sdk): cover raw send fallback errors
Co-authored-by: 杨浩宇0668001029 <yang.haoyu@xydigit.com >
* fix(security): bound skill-file audit read via safe reader (restore removed fs dependency) (#110589 )
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-18 11:30:13 +01:00
42e6972d35
fix(opencode): Zen GPT-5.6 models are missing from discovery ( #110405 )
...
* fix(opencode): add Zen GPT-5.6 models
* test(opencode): narrow GPT-5.6 policy fixture
* fix(opencode): align GPT-5.6 thinking levels
Co-authored-by: 杨浩宇0668001029 <yang.haoyu@xydigit.com >
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-18 11:14:05 +01:00
04d7462806
fix(plugin-sdk): attached send results report the configured channel ( #110069 )
...
* fix(plugin-sdk): keep attached channel authoritative
* refactor(plugin-sdk): simplify channel attachment
Co-authored-by: 杨浩宇0668001029 <yang.haoyu@xydigit.com >
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-18 11:10:39 +01:00
mushuiyu886 and GitHub
bfc94ad3c5
fix(nostr): accept uppercase Bech32 keys in setup and DM targeting ( #109878 )
...
* fix(nostr): accept uppercase NSEC and NPUB inputs
* test(nostr): satisfy target resolver type check
2026-07-18 08:13:11 +01:00
mushuiyu886 and GitHub
ac75f0c17a
fix(nostr): relay connection failures no longer report successful publishes ( #110007 )
...
* fix(nostr): fail over relay connection errors
* fix(nostr): preserve pool publish semantics
2026-07-18 07:53:55 +01:00
mushuiyu886 and GitHub
a5cef86b5c
fix(nostr): reject non-object profile imports ( #110330 )
2026-07-18 07:45:10 +01:00
mushuiyu886 and GitHub
f76f06b1ae
fix(nostr): return relay event ids in send receipts ( #110006 )
2026-07-18 07:21:56 +01:00
mushuiyu886 and GitHub
8178cf1038
fix(nostr): preserve reply event context ( #110085 )
2026-07-18 06:57:31 +01:00
8a234980ea
fix(usage-bar): bound numeric verb arguments ( #105297 )
...
* fix(usage-bar): bound numeric verb arguments
* fix(usage-bar): preserve supported fixed precision
* fix(usage-bar): validate fixed precision
Co-authored-by: 杨浩宇0668001029 <yang.haoyu@xydigit.com >
* docs: refresh generated docs map
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-18 02:32:02 +01:00
b42dc72851
fix(discord): Activity OAuth no longer holds failed Discord connections ( #109869 )
...
* fix(discord): avoid Activity OAuth stalls after API rejection
* test(discord): preserve status on cancel failure
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-18 00:24:40 +01:00
3a268c08df
fix(sqlite): stop mount probes blocking database startup ( #109432 )
...
* fix(sqlite): bound fallback mount classification
* test(sqlite): cover mount probe failure policy
* test(sqlite): use tracked mount probe fixtures
* perf(sqlite): keep mount result import type-only
* style(sqlite): format mount probe result
* perf(sqlite): defer mount process module loading
* perf(sqlite): avoid eager mount parser dependency
* refactor(sqlite): isolate lock error detection
* revert: keep sqlite lock errors colocated
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-17 11:41:25 +01:00
7af9358841
fix(push-web): ignore blank VAPID environment overrides ( #109609 )
...
* fix(push-web): ignore blank VAPID environment values
* fix: normalize migrated web push VAPID inputs
Co-authored-by: mushuiyu886 <yang.haoyu@xydigit.com >
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-17 01:48:55 -07:00
f80c4b95ef
fix(canvas): stop stalled Git blocking A2UI builds ( #109476 )
...
* fix(canvas): bound A2UI git input discovery
* build: avoid premature A2UI Git fallback
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-16 23:20:01 -07:00
9ff25ca65f
fix(fleet): reject hexadecimal CPU limits ( #105158 )
...
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-16 18:30:43 -07:00
mushuiyu886 and GitHub
3ba08dbf77
fix(qa): bound process snapshot probes ( #109207 )
2026-07-16 16:54:54 -07:00
91df2d1812
fix(cli): bound container runtime probes ( #109199 )
...
Co-authored-by: Peter Steinberger <steipete@gmail.com >
Co-authored-by: Peter Steinberger <peter@steipete.me >
2026-07-16 16:54:23 -07:00
mushuiyu886 and GitHub
cb47a0b4cc
fix(agents): force-stop stalled tool probes ( #109215 )
2026-07-16 13:31:10 -07:00
mushuiyu886 and GitHub
9edd662741
fix(doctor): force-stop stalled TUI process probes ( #109243 )
2026-07-16 13:17:08 -07:00
mushuiyu886 and GitHub
f25322e2e8
fix(memory-wiki): bound stalled Obsidian CLI calls ( #109232 )
2026-07-16 12:35:02 -07:00
mushuiyu886 and GitHub
576a222da2
fix(codex): preserve split UTF-8 in app-server stderr ( #108335 )
2026-07-16 05:41:56 -07:00
dbdd9c93c0
fix(clawhub): avoid misleading reset hints from malformed headers ( #108815 )
...
* fix(clawhub): reject malformed rate-limit reset hints
* fix(clawhub): enforce unsigned reset seconds
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-16 04:47:36 -07:00
mushuiyu886 and GitHub
4b9c78a674
fix(cron): preserve same-id history across stores ( #108730 )
2026-07-16 03:28:11 -07:00
f771aa54e8
fix(compaction): skip replay-unsafe session sends ( #93293 )
...
* fix(compaction): skip replay-unsafe session sends
* fix(compaction): preserve safe text around session sends
* fix(compaction): narrow replay filtering to sessions_send
Co-authored-by: 杨浩宇0668001029 <yang.haoyu@xydigit.com >
* test(compaction): use review-safe key fixtures
Co-authored-by: 杨浩宇0668001029 <yang.haoyu@xydigit.com >
* test(compaction): use placeholder API key
Co-authored-by: 杨浩宇0668001029 <yang.haoyu@xydigit.com >
* test(compaction): limit fixture cleanup to new cases
Co-authored-by: 杨浩宇0668001029 <yang.haoyu@xydigit.com >
* fix(compaction): preserve completed sessions_send history
Co-authored-by: 杨浩宇0668001029 <yang.haoyu@xydigit.com >
* fix(compaction): preserve unfinished delegated work
Co-authored-by: 杨浩宇0668001029 <yang.haoyu@xydigit.com >
* fix(compaction): detect completion before replay filtering
Co-authored-by: 杨浩宇0668001029 <yang.haoyu@xydigit.com >
* fix(compaction): retain unresolved send status
Co-authored-by: 杨浩宇0668001029 <yang.haoyu@xydigit.com >
* fix(compaction): preserve inert send outcomes
Co-authored-by: 杨浩宇0668001029 <yang.haoyu@xydigit.com >
* fix(compaction): narrow terminal tail type
Co-authored-by: 杨浩宇0668001029 <yang.haoyu@xydigit.com >
* fix(compaction): guard replay input lookup
Co-authored-by: 杨浩宇0668001029 <yang.haoyu@xydigit.com >
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-16 01:46:12 -07:00
6f22ef08a3
fix(tui): preserve emoji in split local shell output ( #108268 )
...
Co-authored-by: Peter Steinberger <peter@steipete.me >
2026-07-15 18:38:09 -07:00
mushuiyu886 and GitHub
f946f45ef1
fix(sessions): preserve UTF-8 across tail reads ( #108151 )
2026-07-15 02:08:58 -07:00
65d55d046b
fix(synology-chat): replies target the wrong user when Unicode nicknames span response chunks ( #108019 )
...
* fix(synology-chat): preserve UTF-8 in user list responses
* refactor(synology-chat): use native response decoding
Co-authored-by: 杨浩宇0668001029 <yang.haoyu@xydigit.com >
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-15 02:02:00 -07:00
646dfd7e76
fix(plugins): preserve state on npm metadata failures ( #107063 )
...
* fix(plugins): preserve state on npm metadata failures
* fix(plugins): harden npm metadata recovery
Co-authored-by: 杨浩宇0668001029 <yang.haoyu@xydigit.com >
* refactor(plugins): adapt metadata errors to installer split
Co-authored-by: 杨浩宇0668001029 <yang.haoyu@xydigit.com >
* fix(plugins): validate preserved npm payloads
Co-authored-by: 杨浩宇0668001029 <yang.haoyu@xydigit.com >
* fix(plugins): satisfy update lint
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-14 22:05:15 -07:00
2b6053c3f9
fix(gateway): prevent malformed Control UI encoding weights from selecting compression ( #107617 )
...
* fix(gateway): reject malformed control ui qvalues
* test(gateway): cover valid encoding qvalues
---------
Co-authored-by: Peter Steinberger <peter@steipete.me >
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-14 13:50:01 -07:00
ef25cefc8e
fix(onepassword): validate audit limit strictly ( #106926 )
...
* fix(onepassword): validate audit limit strictly
* test(onepassword): strengthen audit limit coverage
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-13 21:37:07 -07:00
b7d034d75b
fix(cli): reject noncanonical trajectory export requests ( #105557 )
...
* fix(cli): reject noncanonical trajectory export requests
* fix(cli): preserve encoded request bytes
* style(cli): format trajectory alias tests
* chore: keep trajectory note in PR context
---------
Co-authored-by: Peter Steinberger <peter@steipete.me >
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-13 09:29:41 -07:00
417543b481
fix(agents): reject invalid bundled LSP framing ( #105460 )
...
* fix(agents): reject invalid bundled LSP framing
* fix(agents): reject malformed LSP header lines
Signed-off-by: sallyom <somalley@redhat.com >
---------
Signed-off-by: sallyom <somalley@redhat.com >
Co-authored-by: sallyom <somalley@redhat.com >
2026-07-13 11:43:06 -04:00
ed57c6cd88
fix(agents): honor claude-cli contextTokens setting ( #93198 )
...
* fix: honor claude-cli configured context tokens
* test: cover claude-cli native compaction budget
* test: cover ordinary claude-cli budget persistence
* test: migrate claude-cli budget fixtures to session accessor
* fix(agents): carry CLI provider into context budget
* fix(agents): guard optional CLI context metadata
* fix(agents): align Claude CLI native compaction budget
Co-authored-by: 杨浩宇0668001029 <yang.haoyu@xydigit.com >
* fix(agents): apply selected CLI context cap
Co-authored-by: 杨浩宇0668001029 <yang.haoyu@xydigit.com >
* fix(agents): preserve prepared CLI context budgets
Co-authored-by: 杨浩宇0668001029 <yang.haoyu@xydigit.com >
* fix(agents): resolve prepared CLI context ownership
Co-authored-by: 杨浩宇0668001029 <yang.haoyu@xydigit.com >
* test(agents): type CLI context budget cases
Co-authored-by: 杨浩宇0668001029 <yang.haoyu@xydigit.com >
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-13 01:58:44 -07:00
4200745a98
fix(matrix): handle event decryption errors during sync ( #94416 )
...
Co-authored-by: mushuiyu886 <mushuiyu886@users.noreply.github.com >
2026-07-13 00:32:05 -07:00
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
mushuiyu886 and GitHub
d886059520
fix(line): preserve Unicode boundaries in recipient errors ( #104109 )
2026-07-11 17:03:58 -07:00
mushuiyu886 and GitHub
b2702156ac
fix(agents): preserve UTF-16 boundaries in bootstrap context ( #104423 )
2026-07-11 14:07:47 -07:00
mushuiyu886 and GitHub
1c576a2713
fix(cron): preserve UTF-16 boundaries in exec tails ( #104385 )
2026-07-11 14:04:04 -07:00
92870e5200
fix(agents): preserve UTF-16 boundaries in block chunks ( #104441 )
...
* fix(agents): preserve UTF-16 boundaries in block chunks
* refactor(agents): import UTF-16 helper from leaf module
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-11 10:56:05 -07:00
13817a6108
fix(agents): preserve UTF-16 boundaries in context pruning ( #104404 )
...
Co-authored-by: Vincent Koc <vincentkoc@ieee.org >
2026-07-11 22:26:21 +08:00
f5eacacea5
fix(memory-wiki): stop duplicate bridge imports under polling ( #91828 )
...
* fix(memory-wiki): coalesce concurrent source syncs
Co-authored-by: mushuiyu_xydt <yang.haoyu@xydigit.com >
* test(memory-wiki): track alias fixture cleanup
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-10 19:20:15 -07:00
mushuiyu886 and GitHub
c52f660da0
fix(ui): preserve Unicode boundaries in config diffs ( #103908 )
2026-07-10 22:04:40 +01:00
5bb5e4fb0a
fix(cron): preserve UTF-16 table boundaries ( #103616 )
...
* fix(cron): preserve table Unicode boundaries
* refactor(cron): size table cells by display width
* docs(changelog): credit cron table fix
* fix(cron): sanitize Unicode table cells
* fix(cron): keep table truncation UTF-16 safe
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-10 18:57:15 +01:00
9c9010efca
fix(diagnostics-otel): preserve JSON Unicode boundaries ( #103646 )
...
* fix(diagnostics-otel): preserve JSON Unicode boundaries
* test(diagnostics-otel): consolidate Unicode boundary coverage
* docs(changelog): credit OTEL Unicode fix
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-10 17:42:25 +01:00
8034454568
fix(firecrawl): preserve Unicode in API errors ( #103487 )
...
* fix(firecrawl): preserve error detail Unicode
* test(firecrawl): cover Unicode error boundaries
* test(firecrawl): satisfy bundled lint
* test(firecrawl): streamline Unicode boundary coverage
* docs(changelog): credit Firecrawl Unicode fix
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-10 15:21:04 +01:00
b714fdb3ae
fix(sandbox): keep redacted session keys UTF-16 safe ( #102969 )
...
* fix(sandbox): keep redacted session keys UTF-16 safe
* test(sandbox): cover UTF-16 redaction boundaries
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-09 18:31:21 +01:00
b451d8b5e5
fix(workshop): keep approval target names UTF-16 safe ( #102963 )
...
* fix(workshop): keep approval target names UTF-16 safe
* test(workshop): tighten UTF-16 approval regression
* test(workshop): mirror approval budget exactly
* docs(plugins): correct approval description limit
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-09 18:26:08 +01:00
88acda11b8
fix(nextcloud-talk): keep error snippets UTF-16 safe ( #102949 )
...
* fix(nextcloud-talk): keep error snippets UTF-16 safe
* test(nextcloud-talk): assert exact safe error
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-09 18:21:26 +01:00
813a5da839
fix(media): keep input_file text truncation UTF-16 safe ( #102634 )
...
* fix(media): keep input_file text truncation UTF-16 safe
* test(media): strengthen input file truncation proof
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-09 13:05:14 +01:00
240d350c7f
fix(gateway): finish plugin HTTP responses after post-header failures ( #102125 )
...
* fix(gateway): finish plugin HTTP responses after post-header failures
* test(gateway): satisfy plugin HTTP regression lint
* fix(gateway): skip ending destroyed plugin responses
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-09 09:22:32 +01:00
7daa090935
fix(doctor): keep scrubbed error truncation UTF-16 safe ( #102066 )
...
* fix(doctor): keep scrubbed error truncation UTF-16 safe
* test(doctor): assert exact scrubbed error output
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-09 04:39:15 +01:00
e90bf31829
fix(discord): keep gateway close reasons UTF-16 safe ( #102246 )
...
* fix(discord): keep gateway close reasons UTF-16 safe
* test(discord): assert exact close reason truncation
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-09 04:28:06 +01:00
mushuiyu886 and GitHub
5bdea31c94
fix(browser): keep Playwright truncation UTF-16 safe ( #101761 )
...
* fix(browser): keep Playwright truncation UTF-16 safe
* fix(browser): cover Chrome MCP snapshot truncation
2026-07-07 19:55:52 -07:00
846195c6b0
fix(codex): handle app-server stdio stream errors ( #101505 )
...
Co-authored-by: Vincent Koc <vincentkoc@ieee.org >
2026-07-07 03:41:27 -07:00
92e25df271
fix(agents): avoid repeated item progress snapshots ( #101042 )
...
* fix(agents): avoid repeated item progress snapshots
* chore: align ACP branch with current main
* fix(agents): deduplicate ACP parent progress
* chore: keep release notes in PR context
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
Co-authored-by: Peter Steinberger <peter@steipete.me >
2026-07-07 07:31:13 +01:00
b75fe8102e
fix(acp): preserve runtime option clears ( #101044 )
...
* fix(acp): preserve runtime option clears
* refactor(acp): simplify runtime option clears
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-06 23:12:50 +01:00
8f7d0a36f9
fix(browser): bound client fetch success JSON reads ( #100889 )
...
* fix(browser): bound client fetch success JSON reads
* fix(browser): preserve supported response body sizes
* docs(changelog): note browser response bounds
* chore: keep release changelog owner-only
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-06 20:48:07 +01:00
9042e8020f
fix(memory): fall back to wiki for missing all-corpus reads ( #100904 )
...
* Fix memory_get all supplement fallback
* refactor(memory): use typed missing-read contract
---------
Co-authored-by: Vincent Koc <vincentkoc@ieee.org >
2026-07-06 07:19:51 -07:00
mushuiyu886 and GitHub
806397f0d9
Treat already-compacted CLI compaction as no-op ( #99136 )
2026-07-06 06:34:05 +00:00
08852d2bf7
fix #98107 : Gateway regenerates service-env file on every restart, wiping Telegram bot tokens ( #99124 )
...
* Preserve LaunchAgent env-file SecretRefs
* fix gateway start repair env source preservation
* test(daemon): cover SecretRef ownership cleanup
Co-authored-by: mushuiyu886 <mushuiyu886@users.noreply.github.com >
* fix(daemon): preserve only active SecretRefs
Co-authored-by: 杨浩宇0668001029 <yang.haoyu@xydigit.com >
* chore: defer service SecretRefs changelog
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
Co-authored-by: mushuiyu886 <mushuiyu886@users.noreply.github.com >
2026-07-06 02:24:39 +01:00
6207a4e75b
fix(google): bound OAuth token error response reads ( #99605 )
...
* fix(google): bound OAuth token error response reads
* test(google): consolidate OAuth error cases
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-03 16:00:01 -07:00
mushuiyu886 and GitHub
45f261ff7a
fix(memory-wiki): truncate import insights safely
...
Use the shared UTF-16 safe truncation helper for Memory Wiki import insight summaries and add regression coverage for surrogate-boundary summaries.
2026-06-28 11:19:55 -07:00
891096926e
fix(opencode): restore Zen model catalog ( #92495 )
...
* fix(opencode): restore Zen model catalog
* fix(opencode): restore Zen transport routing
* fix(opencode): broaden Zen fallback catalog
* fix(opencode): correct Zen family routing
* fix(opencode): route Zen MiniMax through Anthropic
* fix(opencode): filter Zen live-only catalog rows
* fix(opencode): route MiniMax through Zen chat completions
* fix(opencode): omit unverified Zen model costs
* fix(opencode): align sampled Zen costs
* fix(opencode): keep Zen cost metadata required
* fix(opencode): keep Zen docs examples resolvable
* fix(opencode): move Zen catalog to provider discovery
* test(opencode): cover Zen discovery cache isolation
* fix(opencode): add Zen GLM-5.2 catalog coverage
* test(opencode): detect Zen catalog drift
Signed-off-by: sallyom <somalley@redhat.com >
---------
Signed-off-by: sallyom <somalley@redhat.com >
Co-authored-by: sallyom <somalley@redhat.com >
2026-06-28 12:32:44 -04:00
f4fa10c2c5
fix(clickclack): bound REST success JSON response reads ( #96970 )
...
* fix(clickclack): bound REST success JSON response reads
* test(clickclack): harden response cap proof
---------
Co-authored-by: Vincent Koc <vincentkoc@ieee.org >
2026-06-27 07:30:32 -07:00
mushuiyu886 and GitHub
6e8f30c0e2
fix(qqbot): bound STT transcription JSON response ( #96968 )
2026-06-27 07:25:29 -07:00
mushuiyu886 and GitHub
5ccfc97b31
fix(google): bound TTS success JSON response reads ( #96984 )
2026-06-27 07:00:36 -07:00
a7bfc06f45
fix(google-media): bound JSON response reads ( #96920 )
...
* fix(google-media): bound JSON response reads
* test(google): relax media response cap assertion
---------
Co-authored-by: Vincent Koc <vincentkoc@ieee.org >
2026-06-27 06:46:58 -07:00
65fec9d787
fix(voice-call): emit canonical session keys ( #89884 )
...
* fix(voice-call): scope generated session keys by agent
* docs(voice-call): document session key canonicalization
* test(voice-call): prove legacy session migration
* fix(voice-call): preserve canonical session ownership
* fix(sessions): isolate opaque nested identities
* fix(voice-call): preserve routing ownership
* fix(voice-call): enforce inbound route direction
* fix(sessions): preserve migration and policy boundaries
* fix(sessions): normalize ambiguous main aliases
* fix(sessions): preserve canonical peer and warning paths
* fix(sessions): exclude mixed-case scoped legacy keys
* fix(sessions): cover first-run plugin migration gaps
* fix(sessions): compare aliased store identities
* fix(sessions): coalesce aliased store ownership
* fix(sessions): defer ambiguous aliased migrations
* fix(sessions): preserve shared migration boundaries
* fix(sessions): preserve opaque peer ownership
* fix(sessions): reject ambiguous ownership shapes
* fix(sessions): preserve transcript rewrite keys
* fix(sessions): close routing and migration ambiguities
* fix(sessions): preserve plugin-owned ACP aliases
* fix(sessions): retain physical store ownership
* fix(sessions): restore configured store owners
* fix(sessions): reject malformed store owners
* fix(sessions): validate ACP store ownership
* fix(sessions): include canonical store owners
* fix(sessions): preserve final store symlinks
* fix(sessions): retain shared row owners
* fix(sessions): close legacy policy gaps
* fix(sessions): preserve aliases across migrations
* fix(sessions): resolve first-run store ownership
* fix(sessions): preserve hostile legacy keys
* fix(sessions): inspect unlisted store owners
* test(doctor): refresh migration harness
* fix(sessions): preserve opaque route segments
* fix(sessions): retain metadata during migration
* fix(sessions): fail closed on store alias uncertainty
* fix(sessions): defer aliased store rewrites
* fix(sessions): retain legacy row owners
* test(sessions): harden migration proof
* fix(sessions): migrate opaque agent keys
* chore(plugin-sdk): refresh API baseline
* fix(voice-call): reuse public routing parser
* fix(sessions): retain readable alias warnings
* fix(sessions): reject opaque nested routes
* fix(sessions): share strict delivery parsing
* test(voice-call): preserve malformed Matrix case
* fix(sessions): reject legacy peer overlap
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-06-27 01:29:58 +01:00
deb0ffdcdf
fix #94040 : [Bug]: nodes approve failed: GatewayClientRequestError: unknown requestId ( #94452 )
...
* fix(nodes): explain unknown approval request ids
* fix(nodes): keep stale request handling CI-clean
* fix(nodes): point stale approve hint at pending command
* fix(nodes): explain stale approval request ids
* fix(nodes): make stale approval guidance reliable
* fix(nodes): preserve stale approval error context
---------
Co-authored-by: openclaw-clownfish[bot] <280122609+openclaw-clownfish[bot]@users.noreply.github.com>
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-06-27 00:40:29 +01:00
a846b879ec
fix(mcp): include image source for screenshot results ( #90902 )
...
* fix(mcp): emit image content with base64 source
* fix(mcp): keep plugin tool images in SDK schema
* test(mcp): exercise image bridge end to end
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-06-27 00:39:40 +01:00
mushuiyu886 and GitHub
5715b55000
fix(openrouter): bound video catalog JSON reads ( #96505 )
2026-06-25 14:17:01 -04:00
杨浩宇0668001029 and Ayaan Zaidi
4bd68aef65
fix(telegram): keep draft preview chunks surrogate-safe
2026-06-25 09:10:07 -07:00
杨浩宇0668001029 and Ayaan Zaidi
242fbf1a67
test(telegram): pass outbound sanitizer payload
2026-06-24 07:13:32 -07:00
杨浩宇0668001029 and Ayaan Zaidi
434d752dd6
fix(telegram): sanitize outbound tool traces
2026-06-24 07:13:32 -07:00
414c250af9
fix #95495 : [Bug]: 2026.6.9 silently relocates memory store with no migration, forcing a full re-embed (1499 files) with zero upgrade-time warning ( #95631 )
...
* fix(memory): import legacy sidecar indexes into agent db
* fix(memory): move legacy sidecar import to doctor migration
* fix(memory): restore sidecar vector rows during doctor migration
* fix(memory): keep legacy sidecar when skipping import
* fix(memory): keep legacy sidecar import within extension boundary
* fix(memory-core): keep legacy sidecar migration retry-safe
* fix(memory-core): backfill sidecar FTS rows
* fix(memory-core): preserve sidecar when vector import defers
* fix(memory-core): cover custom sidecar migrations
* fix(memory-core): keep legacy config migration under doctor
* fix(memory-core): reject sidecar metadata conflicts
* fix(memory-core): keep partial legacy config sidecars
* fix(memory-core): preserve partial config retries
* fix(memory-core): keep partial config task migrations
* fix(memory-core): avoid phantom sidecar agents
* fix(memory-core): reject incomplete sidecar indexes
* fix(memory-core): keep malformed sidecars retryable
* fix(doctor): use canonical state dir for plugin migrations
* fix(memory-core): honor disabled vector sidecar migration
* fix(memory-core): treat provider-none sidecars as fts-only
* fix(memory-core): preserve setup-failed sidecars
* test(memory-core): use non-mutating sort assertions
* test(memory-core): compare sorted chunk ids
* test(memory-core): compare sorted chunk ids
* test(memory-core): stringify sorted chunk ids
* fix(qa): skip chromium bootstrap for explicit browser channels
* fix(qa): skip chromium bootstrap for explicit browser channels
---------
Co-authored-by: Vincent Koc <vincentkoc@ieee.org >
2026-06-24 17:47:44 +08:00
mushuiyu886 and GitHub
01abe0a33d
fix(agents): suggest recovery for unknown tool ids ( #93374 )
...
Merged via squash.
Prepared head SHA: bee84e4eb8
Co-authored-by: mushuiyu886 <266724580+mushuiyu886@users.noreply.github.com >
Co-authored-by: vincentkoc <25068+vincentkoc@users.noreply.github.com >
Reviewed-by: @vincentkoc
2026-06-23 14:20:09 +08:00
wood fish and GitHub
1fc4342a02
fix(ollama): honor memory embedding output dimensionality ( #94811 )
2026-06-22 17:49:43 +00:00
wood fish and GitHub
cb84041cab
fix(ui): render persisted history text blocks ( #93841 )
...
Merged via squash.
Prepared head SHA: bfe4f67ccf
Co-authored-by: mushuiyu886 <266724580+mushuiyu886@users.noreply.github.com >
Co-authored-by: steipete <58493+steipete@users.noreply.github.com >
Reviewed-by: @steipete
2026-06-22 10:07:09 -07:00
wood fish and GitHub
9ce4c92736
fix(gateway): honor remote status probe timeout ( #89859 )
...
Merged via squash.
Prepared head SHA: 056707dbc7
Co-authored-by: mushuiyu886 <266724580+mushuiyu886@users.noreply.github.com >
Co-authored-by: steipete <58493+steipete@users.noreply.github.com >
Reviewed-by: @steipete
2026-06-22 02:44:16 -07:00
mushuiyu_xydt and GitHub
78f948f768
fix(tui): show 0 not ? for fresh-session context tokens in footer ( #94337 )
...
Summary:
- The PR extends TUI session info to carry `totalTokensFresh`, maps fresh missing totals to `0`, and adds a focused regression test for the footer merge path.
- PR surface: Source +15, Tests +38. Total +53 across 4 files.
- Reproducibility: yes. at source level: `chat.history` returns session info with `totalTokensFresh`, but curr ... `null` before footer formatting. I did not run local tests or a live TUI session in this read-only review.
Automerge notes:
- PR branch already contained follow-up commit before automerge: Merge branch 'main' into fix/followup-93798
Validation:
- ClawSweeper review passed for head 43657b52c8 .
- Required merge gates passed before the squash merge.
Prepared head SHA: 43657b52c8
Review: https://github.com/openclaw/openclaw/pull/94337#issuecomment-4737123127
Co-authored-by: 杨浩宇0668001029 <yang.haoyu@xydigit.com >
Co-authored-by: mushuiyu_xydt <yang.haoyu@xydigit.com >
2026-06-19 04:10:08 +00:00
1469441ff4
fix(gateway): send approval route notices with write scope ( #93656 )
...
* fix(gateway): send approval route notices with write scope
* fix(gateway): avoid approval runtime import cycle
* fix(approvals): preserve scoped runtime requests
---------
Co-authored-by: Vincent Koc <25068+vincentkoc@users.noreply.github.com >
2026-06-17 01:19:19 +08:00
杨浩宇0668001029 and Vincent Koc
0fb0c2cb8e
fix(plugins): keep empty session extension pins authoritative
...
Pinned session-extension registries now remain the owner even when empty, preventing later active registry churn from leaking agent-owned extensions into the gateway surface.
2026-06-16 11:36:43 +08:00
杨浩宇0668001029 and Vincent Koc
0e71ce1174
test(plugins): cover session extension registry lifecycle
...
Exercise pinned startup session extensions through WebSocket patching, release cleanup, standalone loading, and active-registry churn.
2026-06-16 11:36:43 +08:00
杨浩宇0668001029 and Vincent Koc
ffa736f713
fix(plugins): satisfy session extension lint
2026-06-16 11:36:43 +08:00
杨浩宇0668001029 and Vincent Koc
b85ae9fb1b
fix(plugins): pin session extension registry
2026-06-16 11:36:43 +08:00