Commit Graph

9398 Commits

Author SHA1 Message Date
Hypatia May
c4e9893a87 test(sandbox): cover POSIX no-shebang fallback 2026-08-04 17:10:42 +08:00
Yichen Jiang
e31b7221e7 feat(web): open the local settings file 2026-08-04 16:59:37 +08:00
imccyu
b0b50be64f style(connection): satisfy callback lint 2026-08-04 16:58:40 +08:00
_Kerman
09e909b96b Merge remote-tracking branch 'origin/master' into xtr/react-loop-simplification
# Conflicts:
#	apps/web/tests/snapshots/queue-actions/preserved.expected.md
#	packages/client/runtime/src/client/sessions/session.ts
2026-08-04 16:56:44 +08:00
Hypatia May
666690afe9 fix(sandbox): round 7 align spawn evidence 2026-08-04 16:55:11 +08:00
_Kerman
13fed3721f fix(trajectory): preserve state across history prepends 2026-08-04 16:53:52 +08:00
imccyu
3caa175286 test(connection): use valid mux frames 2026-08-04 16:49:06 +08:00
ZiyaZhang
047ea50987 feat(web): add preview badge to empty hero 2026-08-04 01:46:52 -07:00
imccyu
7f3a2dae91 fix(web): quiesce websocket teardown 2026-08-04 16:42:50 +08:00
creatixchu
70ec51b1ba Merge remote-tracking branch 'origin/master' into worktree/composer-scrollbar-gutter 2026-08-04 16:42:45 +08:00
imccyu
c6d0cbd8de test(web): cover WebSocket downlink races 2026-08-04 16:34:56 +08:00
imccyu
72f82f65c9 Merge remote-tracking branch 'origin/master' into mergebot/pr1389
# Conflicts:
#	apps/web/tests/snapshots/sidebar-scrollbar/geometry.expected.md
#	packages/client/ui-conversation/src/client/chat/MessageIconActions.tsx
#	packages/client/ui-conversation/src/client/chat/message-chrome.ts
2026-08-04 16:33:55 +08:00
imccyu
11bad56fc3 Merge pull request #1396 from deepseek-harness/worktree/sidebar-scrollbar-reveal
feat(web): draw the sidebar's scrollbar only under the pointer
2026-08-04 16:31:56 +08:00
creatixchu
60e4509c1d docs(web): trim the column's gutter comments to contract plus note link 2026-08-04 16:30:45 +08:00
imccyu
98a24a395d docs: refresh third-party notices 2026-08-04 16:25:49 +08:00
imccyu
e9d76dae64 fix(web): address UI polish review feedback 2026-08-04 16:25:09 +08:00
creatixchu
1098dc9836 docs(web): cite the surviving composer scrollport note for the WebKit gutter measurement 2026-08-04 16:21:55 +08:00
imccyu
a36c641db6 chore(docs): refresh WebSocket API catalogs 2026-08-04 16:21:09 +08:00
creatixchu
e49f678614 Merge remote-tracking branch 'origin/master' into worktree/composer-scrollbar-gutter 2026-08-04 16:20:33 +08:00
Hypatia May
fe818862e1 fix(sandbox): round 6 bind spawn provenance 2026-08-04 16:20:04 +08:00
creatixchu
29646074cd Merge origin/master into worktree/sidebar-scrollbar-reveal 2026-08-04 16:19:46 +08:00
creatixchu
d907c8475f fix(web): keep the input card in place across view tabs
The composer seat is one node laid out against two different edges: in Chat it
is a sticky child of the column's scroller and rides its content box, which a
space-consuming scrollbar shortens, while a view declaring a composer overlay
gets an absolutely positioned seat against the padding box, which no bar
reduces. With the transcript scrolling the two tabs disagreed by the bar's
width, so the centred input card moved 4px sideways on every switch — and the
same 4px inside Chat when a growing transcript began to scroll.

The column now reserves its scrollbar gutter unconditionally and states the
overlay branch a scroll container on the same axes, so both states measure
against the same width.
2026-08-04 16:13:52 +08:00
imccyu
828cb2ae20 Merge pull request #1345 from deepseek-harness/feat/turn-running-time
feat/turn-running-time
2026-08-04 16:11:32 +08:00
imccyu
8b4ddfe60c feat(web): move connection downlinks to WebSocket 2026-08-04 16:07:35 +08:00
Hypatia May
293fac9421 fix(sandbox): round 5 harden spawn attribution 2026-08-04 16:06:54 +08:00
imccyu
b9f4e46462 Merge remote-tracking branch 'origin/master' into mergebot/pr1389
# Conflicts:
#	packages/client/ui-workspace/src/client/WorkspaceBrowser.module.css
2026-08-04 16:06:38 +08:00
imccyu
3be257ba1d fix(web): preserve polish accessibility contracts 2026-08-04 16:04:26 +08:00
imccyu
ad03ccbd7a Merge branch 'master' into feat/turn-running-time 2026-08-04 16:03:31 +08:00
imccyu
b4a4f337e4 test(client): derive retry timing expectation 2026-08-04 16:02:19 +08:00
imccyu
cc435a9c0c fix(web): use exact turn boundaries for run time 2026-08-04 15:55:07 +08:00
_Kerman
f5c599d0ca Merge remote-tracking branch 'origin/master' into xtr/react-loop-simplification 2026-08-04 15:49:22 +08:00
_Kerman
d5527da905 Merge remote-tracking branch 'origin/master' into xtr/react-loop-simplification
# Conflicts:
#	.agents/notes/implemented/feature/2026-07-28-web-terminal-card.i18n.yaml
#	.agents/notes/implemented/feature/2026-07-28-web-terminal-card.md
#	.agents/notes/implemented/feature/2026-07-28-web-terminal-card.zh.md
#	.agents/notes/implemented/feature/2026-07-30-search-render-card.i18n.yaml
#	.agents/notes/implemented/feature/2026-07-30-search-render-card.md
#	.agents/notes/implemented/feature/2026-07-30-search-render-card.zh.md
#	.agents/notes/implemented/feature/2026-07-30-web-read-card.i18n.yaml
#	.agents/notes/implemented/feature/2026-07-30-web-read-card.md
#	.agents/notes/implemented/feature/2026-07-30-web-read-card.zh.md
#	.agents/notes/implemented/feature/2026-07-30-web-result-card.i18n.yaml
#	.agents/notes/implemented/feature/2026-07-30-web-result-card.md
#	.agents/notes/implemented/feature/2026-07-30-web-result-card.zh.md
2026-08-04 15:49:07 +08:00
CreatixChu
1be3a65857 Merge pull request #1057 from deepseek-harness/worktree/composer-caret-binding
fix(web): bind the composer's caret to its glyphs with one scrollport
2026-08-04 15:48:39 +08:00
creatixchu
86514f2921 Merge origin/master into worktree/sidebar-scrollbar-reveal
#1381 landed the bar's horizontal position; this branch decides when it is
drawn. The e2e keeps both scenarios and the golden carries both palettes'
pointer-state readings alongside the new edge-offset lines.
2026-08-04 15:46:53 +08:00
creatixchu
10ce8d8a45 fix(web): decide the sidebar's pointer leave by geometry, and tighten the gate
Review findings from the first round:

- ui-settings renders its full-viewport panel as a fixed-position DESCENDANT
  of the sidebar column, so `pointerleave` never fires when the pointer moves
  onto it and the bars stayed drawn after it closed. Leaving is now decided
  against the column's box from a document-level pointermove that exists only
  while the bars are drawn; the element's own leave stays for the pointer that
  leaves the window.
- The rebind gate judges the rule rather than each declaration, so a pair that
  mixes `transparent` with an l2 hover no longer passes, and the elevation
  half compares whole values instead of token shape.
- Hiding no longer exempts a sheet from the elevated-surface rebind check.
- The e2e polls the reveal before reading a colour for the golden, and pins
  that a pointerless scroll draws no thumb.
2026-08-04 15:42:39 +08:00
creatixchu
398ab58a69 Merge remote-tracking branch 'origin/master' into worktree/composer-caret-binding 2026-08-04 15:40:27 +08:00
imccyu
bcf595f41c Merge pull request #1370 from deepseek-harness/codex/fix-headless-sigint
fix(cli): bound telemetry shutdown and honor repeated signals
2026-08-04 15:38:11 +08:00
fz
eaf5b879c6 fix(docs): remove stale TUI source references 2026-08-04 15:25:30 +08:00
imccyu
2a828f09da Merge remote-tracking branch 'origin/master' into feat/turn-running-time 2026-08-04 15:22:28 +08:00
fz
193d918856 Merge remote-tracking branch 'origin/master' into codex/fix-headless-sigint
# Conflicts:
#	apps/cli/README.i18n.yaml
#	apps/cli/README.md
#	apps/cli/README.zh.md
#	apps/cli/config/base.cordis.yml
2026-08-04 15:18:48 +08:00
creatixchu
ef2fbdfc19 fix(web): preserve focus when restoring drafts 2026-08-04 15:12:11 +08:00
_Kerman
0606a0b981 Merge remote-tracking branch 'origin/master' into xtr/react-loop-simplification 2026-08-04 15:10:07 +08:00
_Kerman
a04037479b test(web): await stopped queue state 2026-08-04 15:09:55 +08:00
creatixchu
a030397aca feat(web): draw the sidebar's scrollbar only under the pointer
The session list overflows after a handful of sessions, and its scrollbar
was drawn permanently in a column that is at rest most of the time.

SidebarRoot now tracks the pointer over the whole column and rebinds
ui-theme's scrollbar indirection pair to `transparent` while it is
outside, keeping the thumb for 2s after the pointer leaves so it does not
blink out on the way past. Rebinding colour leaves the list's
`scrollbar-gutter: stable` reservation in force, so revealing the bar
moves no row.

ui-theme's gate now states the widened contract: a rebind targets an -l2
token pair or `transparent`, and nothing else.
2026-08-04 15:05:32 +08:00
_Kerman
099edf1f4b Merge pull request #1381 from deepseek-harness/xtr/sidebar-session-spacing
fix(web): tighten sidebar session spacing
2026-08-04 15:04:19 +08:00
_Kerman
d238a865b9 Merge remote-tracking branch 'origin/master' into xtr/react-loop-simplification 2026-08-04 15:01:31 +08:00
_Kerman
ca36f671a7 test(session): align crash checkpoint order 2026-08-04 15:01:22 +08:00
_Kerman
369fad9faf fix(web): inset sidebar scrollbar by 2px 2026-08-04 14:56:30 +08:00
imccyu
9f33f1d652 Merge pull request #1391 from deepseek-harness/worktree-tsx-map
fix(client): correct sourcemap in devtools
2026-08-04 14:56:08 +08:00
_Kerman
19206db7bf test(session): cover extensible turn endings 2026-08-04 14:55:57 +08:00