Peter Steinberger
e052d122d6
fix(ui): make scrollbars contextual ( #107349 )
2026-07-14 03:06:28 -07:00
Peter Steinberger
ee472357cb
refactor(msteams): use Express listen errors
2026-07-14 03:06:11 -07:00
Peter Steinberger
693d4f8fa3
test: avoid unrelated runtime discovery in agent runner tests ( #107354 )
2026-07-14 03:05:45 -07:00
Peter Steinberger
8ea5ee2f17
refactor(terminal): unify bounded buffers ( #107337 )
...
* refactor(terminal): unify bounded buffers
* refactor(terminal): tighten buffer closure
* refactor(terminal): keep buffer policy private
2026-07-14 03:04:37 -07:00
Peter Steinberger
ac4fd2ad42
refactor(media): use qrcode buffer renderer
2026-07-14 02:59:19 -07:00
Peter Steinberger
d8f705c0a2
refactor(skills): trim internal exports ( #107353 )
...
* refactor(skills): trim internal exports
* test(skills): derive mismatch fixture type
2026-07-14 02:58:34 -07:00
Alix-007
a9c70f3956
fix(twitch): time out Helix user resolution lookups ( #105883 )
...
* fix(twitch): time out Helix user resolution lookups
* test(twitch): satisfy resolver lint guards
* test(twitch): satisfy resolver account typing
* test(twitch): prove resolver recovery after timeout
* test(twitch): use explicit credential placeholder
* chore(changelog): defer Twitch note to release
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-14 02:56:39 -07:00
Peter Steinberger
d79573d457
fix: avoid redundant image-model calls for vision agents ( #107311 )
...
* fix: route native image inspection directly
* fix: narrow image fallback route
* style: satisfy image tool size ratchet
* test: align image fallback auth coverage
* fix: complete native image routing
2026-07-14 02:54:34 -07:00
Peter Steinberger
cd7290bc29
fix(discord): show only agent status in progress drafts ( #107338 )
...
* fix(discord): show agent status only in progress drafts
* test(discord): preserve explicit progress label expectation
* test(telegram): update default progress label fixtures
* test(ui): use supported hidden-label assertions
2026-07-14 02:52:01 -07:00
Peter Steinberger
673b163b72
refactor(cli): use Commander native APIs
2026-07-14 02:45:52 -07:00
xingzhou
8acbf209cd
fix(gateway): prevent broken emoji in WebSocket log IDs ( #105001 )
...
* fix(gateway): preserve Unicode in WebSocket log IDs
* test(gateway): cover UTF-16-safe log IDs
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-14 02:41:55 -07:00
Peter Steinberger
103d9ceb5e
refactor(secrets): trim internal exports ( #107342 )
2026-07-14 02:38:46 -07:00
Peter Steinberger
88e5dc1219
refactor(oc-path): reuse YAML path resolution
2026-07-14 02:33:33 -07:00
Dallin Romney
561cf56c53
refactor(workboard): share control ui contract ( #102271 )
...
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-14 02:33:22 -07:00
Peter Steinberger
92cca9343e
feat(linux): headless node device capabilities (camera, location, notifications) ( #107193 )
...
* feat(linux): add node device capabilities
* fix(linux-node): actionable pending-approval error + node-host advertise integration test
* fix(linux-node): map geoclue access-denied to LOCATION_DISABLED; floor camera maxWidth to avoid zero-height scale
* fix(linux-node): clamp small camera maxWidth to 2 instead of default
* docs(linux-node): clarify where-am-i -t is a process timeout, not update throttle
* refactor(gateway): extract legacy-node filter + rejection hint to fit LOC ratchet; docs-map + deadcode baseline
* fix(gateway): drop now-unused DEFAULT_DANGEROUS_NODE_COMMANDS import after hint extraction
* test(node-host): drop imports orphaned by removed error-code test
2026-07-14 02:30:36 -07:00
snowzlmbot
e8ad0466ff
fix: render assistant transcript headers safely ( #99404 )
...
* fix: render assistant transcript headers safely
Co-authored-by: snowzlmbot <293528334+snowzlmbot@users.noreply.github.com >
* fix(markdown): nest crossing annotation spans
* fix(markdown): protect final transport projections
* refactor(markdown): split transcript render ownership
* test(ui): cover assistant transcript render flag
* refactor(markdown): keep transcript helpers private
* docs(changelog): note assistant transcript headers
* chore(plugin-sdk): refresh transcript annotation baseline
* fix(markdown): harden final transcript projections
* docs(changelog): defer transcript note to release
* refactor(markdown): centralize HTML tokenization
* fix(markdown): satisfy lint gates
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
Co-authored-by: snowzlmbot <293528334+snowzlmbot@users.noreply.github.com >
2026-07-14 02:25:37 -07:00
Peter Steinberger
b89f6df6b8
refactor(net): share Undici fetch normalization
2026-07-14 02:22:28 -07:00
Peter Steinberger
b54a455e38
test(zalo): prove poll backoff cancellation
2026-07-14 02:21:25 -07:00
NIO
cc76dc1d8f
fix(zalo): make poll error backoff abort-aware
2026-07-14 02:21:25 -07:00
Peter Steinberger
d87aea2b83
test(auto-reply): accelerate fallback coverage ( #107316 )
2026-07-14 02:21:21 -07:00
SL4N
275cc7fd8f
fix(sessions): disk budget counts unremovable *.migrated sidecars and evicts live sessions instead ( #107238 )
...
* fix(sessions): exclude migration archives from disk budget
Co-authored-by: SL4N <272086617+SL4N@users.noreply.github.com >
* refactor(sessions): keep disk budget scan bounded
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
Co-authored-by: SL4N <272086617+SL4N@users.noreply.github.com >
2026-07-14 02:19:08 -07:00
Peter Steinberger
31a845875d
refactor(qa-matrix): trim internal exports ( #107331 )
2026-07-14 02:18:24 -07:00
Peter Steinberger
7ab879b45c
refactor(net): consolidate Undici runtime loading
2026-07-14 02:11:05 -07:00
Peter Steinberger
22d30bee2b
test(zalo): narrow message adapter fixture ( #107326 )
2026-07-14 02:09:12 -07:00
Peter Steinberger
4893523d69
refactor(oc-path): trim internal exports ( #107321 )
2026-07-14 02:03:58 -07:00
SL4N
45e651314c
fix(cron): retry session lifecycle claim conflicts ( #107236 )
...
Co-authored-by: Peter Steinberger <steipete@gmail.com >
Co-authored-by: SL4N <272086617+SL4N@users.noreply.github.com >
2026-07-14 02:02:39 -07:00
Peter Steinberger
4ab40c621a
refactor(sqlite): use Kysely compile helpers
2026-07-14 02:01:04 -07:00
Peter Steinberger
c0e0be041a
fix: retain who said what across group chat turns ( #107025 )
...
* fix(sessions): preserve group sender context across turns
* refactor(sessions): isolate sender replay boundary
* refactor(sessions): adapt sender replay to session boundary
* fix(agent): align sender context boundary projections
* fix(agent): retain queued sender transcript pairs
* fix(agent): forward sender boundary through session runtime
* fix(agent): preserve sender boundary invariants
* fix(agent): correlate persisted sender turns
* test(agent): satisfy sender correlation lint
* fix(agent): retain sender on persisted retries
* test(agent): type persisted retry harness
* fix(agent): match textless sender turns exactly
* refactor(agent): keep session guard within LOC budget
2026-07-14 01:58:29 -07:00
Peter Steinberger
d169dc4a12
feat(ui): hover preview of latest tasks on the running-tasks status row ( #107297 )
...
* feat(ui): add hover preview popover to running-tasks status row
* chore(ui-mock): exercise finished tasks and status-preview overflow in background-tasks mock
* refactor(ui): move status row into chat-background-tasks-status module (LOC ratchet)
* test(ui): add statusRowId to background-tasks props fixtures
* chore(i18n): record statusPreviewMore fallback baseline
* chore(i18n): sync locale bundles for statusPreviewMore
2026-07-14 01:57:30 -07:00
Peter Steinberger
4341d85268
refactor(google): use GenAI runtime enums
2026-07-14 01:51:34 -07:00
Peter Steinberger
cbfad474a6
refactor(zalo): trim internal exports ( #107312 )
2026-07-14 01:51:09 -07:00
QiuYuang
9d1a75df2d
fix(googlechat): bound auth transporter fetches ( #106178 )
...
* fix(googlechat): bound auth transporter fetches
* fix(googlechat): compose auth fetch deadlines
Co-authored-by: 毛宇豪0668001457 <mao.yuhao@xydigit.com >
Co-authored-by: 0668000787 <ma.weibin@xydigit.com >
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
Co-authored-by: 毛宇豪0668001457 <mao.yuhao@xydigit.com >
Co-authored-by: 0668000787 <ma.weibin@xydigit.com >
2026-07-14 01:50:15 -07:00
Dallin Romney
54d31a1306
refactor(qa): share Matrix flows across drivers ( #101253 )
2026-07-14 01:48:30 -07:00
Peter Steinberger
625d859938
test(ci): harden scheduled release probes ( #107272 )
...
* test(ci): harden scheduled release probes
* docs(agents): record testbox warmup failure
* test(wizard): avoid Promise executor return
2026-07-14 01:48:10 -07:00
Peter Steinberger
69e2282c46
test(wizard): satisfy promise executor lint ( #107301 )
2026-07-14 01:44:26 -07:00
Peter Steinberger
1e62d1f001
refactor(file-transfer): trim internal exports ( #107307 )
2026-07-14 01:43:19 -07:00
Peter Steinberger
03a8a7dd17
refactor(json): share JSON5 fallback parsing
2026-07-14 01:35:48 -07:00
Peter Steinberger
f8fb478e4c
refactor(ollama): trim internal exports ( #107296 )
2026-07-14 01:32:48 -07:00
Peter Steinberger
eb7e32d2a2
refactor(llm): parse retry units with ms
2026-07-14 01:23:46 -07:00
Peter Steinberger
89f53f1c38
fix(terminal): keystrokes typed while a terminal opens are lost; node PTY relay lifecycle races ( #107214 )
...
* fix(terminal): harden node PTY relay and terminal session lifecycle
Pin node relay invokes to the authorized node connection (ROUTE_CHANGED
guard), stop node-side input writes to settled/dead PTYs, finalize
sessions on resize failure like write failure, keep surrogate pairs
intact across scrollback and relay prelude truncation, bound the relay
pre-registration output buffer, and buffer Control UI keystrokes typed
while terminal.open/attach is in flight so slow node-relay opens no
longer drop input. Correct the terminal.data seq doc to its real
contract and pin seq monotonicity, seq-gap bounds, input coercion, and
runner event routing with new tests.
* refactor(terminal): extract startup input buffer and fix CI findings
Move Control UI startup input buffering into terminal-startup-input.ts
(LOC budget), drop a stale session-manager comment, remove a map
spread, and fix test typings for event frames and typed mock access.
2026-07-14 01:22:22 -07:00
Peter Steinberger
2444cc2f37
refactor(openshell): trim internal exports ( #107291 )
2026-07-14 01:20:03 -07:00
wahaha1223
b58e0875ed
fix(voice-call): show ngrok errors when startup output is fragmented ( #107122 )
...
* fix(voice-call): preserve split ngrok startup errors across stderr chunks
* fix(voice-call): bound split ngrok error tail
---------
Co-authored-by: Peter Steinberger <steipete@gmail.com >
2026-07-14 01:16:10 -07:00
Peter Steinberger
f20089c569
fix: route heavy changed checks remotely ( #107282 )
2026-07-14 01:15:58 -07:00
Peter Steinberger
16ff48c729
refactor(time): trust pretty-ms defaults
2026-07-14 01:15:43 -07:00
Peter Steinberger
47d37804a8
improve(ui): catch i18n catalog drift locally ( #107253 )
...
* ci(ui): verify i18n catalogs locally
* fix(ui): preserve scoped i18n sync errors
* refactor(ui): share i18n raw-copy verifier
* test(ui): cover i18n lint gate
* fix(ui): route lint threads to oxlint
2026-07-14 01:12:36 -07:00
Peter Steinberger
3d15bf513e
fix(onepassword): preserve pending tool authorization ( #107275 )
...
* fix(onepassword): preserve pending tool authorization
* refactor(onepassword): consume pending authorization in helper
* chore: defer release note generation
2026-07-14 01:12:04 -07:00
Peter Steinberger
da9f974886
fix(cli): adopt native Clack prompt contracts
2026-07-14 01:10:19 -07:00
Peter Steinberger
bb6874fddf
feat(sessions): upstream liveness for adopted catalog sessions ( #107009 )
2026-07-14 01:09:05 -07:00
Peter Steinberger
473753001a
refactor(google-meet): trim internal exports ( #107284 )
2026-07-14 01:07:06 -07:00
Peter Steinberger
5bcee076a5
refactor(channels): deprecate the never-consumed group intro hint adapter ( #107252 )
...
* refactor(channels): deprecate the never-consumed group intro hint adapter
* chore(channels): compress the intro-hint deprecation note to satisfy the size ratchet
2026-07-14 01:06:13 -07:00