Commit Graph
11797 Commits
Author SHA1 Message Date
CreatixChu a0166eeab8 Merge pull request #1061 from deepseek-harness/worktree/unify-workspace-add
cleanup(web): give adding a Workspace one route
2026-07-31 17:49:38 +08:00
NI0317 c4d88bc25e Merge latest origin/master into feature/tui-first-run-welcome
# Conflicts:
#	apps/cli/README.i18n.yaml
2026-07-31 17:49:03 +08:00
NI0317 346d1e4c74 fix(tui): address onboarding review feedback 2026-07-31 17:47:07 +08:00
imccyu f0989d9cd2 fix(ui-conversation): keep hero visible while a blank session opens
A summary-proven blank session can only land back on the hero, so the
settling phase (visibility:hidden composer seat) blanked the center
column for the whole history round-trip during startup auto-selection.
Exempt such sessions from settling and treat them as hero while loading.
2026-07-31 17:46:17 +08:00
NI0317 d558cb4fd4 feat(cli): even out the shipped tool rosters across both surfaces
The two shipped surfaces offered different tools for no recorded reason:
session checkpoints, tool-result pruning, the goal tools, and Ralph were in
`tui.cordis.yml`; `tool-todo` and web search were in `web.cordis.yml`. Neither
offered session search, a string-replacement editor, or a repeat-tool guard,
though none of the three is surface-specific.

Move the rows that are not surface-specific into `base.cordis.yml` and add
those three. Web search moves there too — the TUI decision the change that
made it a Web default deferred. Both surfaces now assemble the same 27 tools.

This adds only. No row is removed from either surface and no existing row's
configuration is edited: executors, sandbox composition, access defaults,
`tools.mode`, and the workflow tool are exactly what they were. Two rows stay
surface-specific: `tmux-context` (no terminal multiplexer in a browser) and
`session-reference` (its index has one writer owner).

Ship `dsh-mcp-client` as a dependency without a row: the plugin mounts one
server per instance and `command` is required, so a default would name a
third-party server and spawn it outside `ctx.bash` on every launch. The CLI
README carries the YAML for mounting one from a personal config.
2026-07-31 17:45:49 +08:00
Chinesezjc 0be76f5552 Merge remote-tracking branch 'origin/master' into feat/web-cards-toolrow
# Conflicts:
#	packages/client/ui-conversation/README.i18n.yaml
2026-07-31 17:45:31 +08:00
Tianyi Cui 98af0e025a Merge remote-tracking branch 'origin/master' into worktree/retarget-pr948-current-20260731 2026-07-31 17:45:30 +08:00
creatixchu f63d6cf3a4 Merge remote-tracking branch 'origin/master' into worktree/unify-workspace-add 2026-07-31 17:44:16 +08:00
Tianyi Cui 2692d2fef7 Merge commit 'refs/codex/pr948/master-current' into worktree/retarget-pr948-current-20260731
# Conflicts:
#	README.i18n.yaml
#	scripts/snapshots/translation-prompt-v4/request-response.expected.json
2026-07-31 17:44:13 +08:00
Turtle f44bfd2cb8 Merge pull request #1072 from deepseek-harness/codex/remove-cli-tui-wrappers
refactor(cli): call runTui directly for TUI modes
2026-07-31 17:43:15 +08:00
Turtle ef201014d0 Merge remote-tracking branch 'origin/master' into codex/dsh-home-path
# Conflicts:
#	packages/ui/app-boot/README.i18n.yaml
#	packages/ui/app-boot/README.md
#	packages/ui/app-boot/README.zh.md
#	packages/ui/app-boot/src/index.ts
2026-07-31 17:40:48 +08:00
creatixchu 44117cb8f7 Merge remote-tracking branch 'origin/master' into worktree-session-hover-menu-fix
# Conflicts:
#	.agents/notes/implemented/architecture/2026-07-30-client-locale-full-rollout.i18n.yaml
2026-07-31 17:39:51 +08:00
creatixchu 481d3c7076 Merge origin/master into worktree/web-multimodal-image-input
# Conflicts:
#	docs/architecture.i18n.yaml
#	docs/architecture.md
#	docs/architecture.zh.md
#	docs/cordis-catalog/events.md
#	docs/cordis-catalog/services.md
#	docs/core-data-structures/llm-streaming.i18n.yaml
#	docs/event-producer-consumer.md
#	docs/module-graph.md
#	examples/acp-agent/tests/snapshots/cordis-inspect-jsdoc/session.jsonl
#	packages/client/connection/src/client/fixture.ts
#	packages/client/connection/tests/node-half.spec.ts
#	packages/client/ui-conversation/README.i18n.yaml
#	packages/client/ui-conversation/README.md
#	packages/client/ui-conversation/README.zh.md
#	packages/compact/compact-basic/README.i18n.yaml
#	packages/llm/llm/README.i18n.yaml
#	scripts/test-invariants.ts
2026-07-31 17:39:06 +08:00
Chinesezjc b93120a280 Merge remote-tracking branch 'origin/master' into feat/web-cards-toolrow
# Conflicts:
#	packages/client/connection/src/client/fixture.ts
#	packages/client/ui-conversation/README.i18n.yaml
#	packages/client/ui-conversation/src/client/apply.ts
#	packages/client/ui-conversation/src/client/chat/GenericToolCard.tsx
#	packages/client/ui-conversation/src/client/skeleton/DetailsPanel.tsx
#	packages/client/ui-conversation/src/client/toolviews/file-mutation-row.tsx
#	packages/client/ui-conversation/src/client/toolviews/search-row.tsx
#	packages/client/ui-conversation/tests/chat-apply.spec.tsx
#	packages/client/ui-primitives/src/index.ts
2026-07-31 17:38:17 +08:00
Turtle 9146c97d13 review: order detailsDialogWidth consistently across the parallel config lists 2026-07-31 17:35:37 +08:00
ZiyaZhang dc7f3253f6 fix(examples): keep memory configs provider-owned 2026-07-31 02:34:52 -07:00
creatixchu 5ffe1001ae Merge remote-tracking branch 'origin/master' into worktree/unify-workspace-add 2026-07-31 17:33:19 +08:00
CreatixChu aba776b179 Merge pull request #1056 from deepseek-harness/worktree/locale-browser-default
feat(web): open a fresh browser in the language it asks for
2026-07-31 17:32:52 +08:00
creatixchu a1b0e97162 Merge remote-tracking branch 'origin/master' into worktree-session-hover-menu-fix 2026-07-31 17:32:52 +08:00
hypatiamay 23766cd34d Merge pull request #956 from deepseek-harness/fix/web-transcript-projection
fix(web): project the human transcript from append-origin events
2026-07-31 17:32:21 +08:00
Tianyi Cui 0ee3d752fa test(web): smoke Core Web profile tools 2026-07-31 17:31:41 +08:00
Tianyi Cui 5210afb8f0 Merge pull request #1055 from deepseek-harness/feature/gui-welcome-copy-v2
feat(web): update the versioned internal testing notice
2026-07-31 17:30:44 +08:00
ZiyaZhang 07f51593a0 docs(examples): simplify memory onboarding 2026-07-31 02:28:09 -07:00
creatixchu c029f03516 fix(web): reveal the caret when a persisted draft arrives after mount
ConversationSession seeds a stored draft in its own mount effect, and a parent's mount effect runs after its children's — so the unlock effect measured an empty mirror and never ran again for the draft that then appeared, leaving a restored long draft showing its head with the caret at its end. The effect now depends on the draft being non-empty; clearing on send and typing the first character flip it too, where both the focus and the reveal are no-ops. Pre-existing (the old geometry did not scroll for a programmatic value change either), fixed here because the reveal now exists.

Also from review: the golden's paste goes back to a block NOT ending in a newline, so the collapsed branch keeps a real engine under it while the standalone case owns the after-newline branch; the shared line-height rule names the reveal as its third consumer.
2026-07-31 17:26:29 +08:00
Tianyi Cui 6cab262f00 Merge commit 'refs/codex/pr956/master-live' into worktree/retarget-pr956-current-20260731
# Conflicts:
#	packages/client/ui-conversation/README.i18n.yaml
#	packages/client/ui-conversation/README.zh.md
2026-07-31 17:25:49 +08:00
creatixchu f566ed66a2 Merge remote-tracking branch 'origin/master' into worktree/unify-workspace-add 2026-07-31 17:25:12 +08:00
creatixchu 4e3d059dd4 Merge remote-tracking branch 'origin/master' into worktree/locale-browser-default 2026-07-31 17:23:39 +08:00
Chinesezjc 4276a7386f fix(web-cards): restore AT status text, guard file-link keys, add read docs
Address review of the ToolRow card refactor:
- ToolRow renders a visually-hidden run-state label (row.running/failed/stopped
  locale keys) so a running/failed/interrupted row is not a colour-only signal;
  the StateDot and the sweep are both aria-hidden. Restores the stopped-state
  text assertion in diff-card.spec at the ToolRow layer.
- The file-link button stops Enter/Space from bubbling to DisclosureRow's
  whole-row keydown, which would preventDefault the key and toggle expand
  instead of opening the file (the keyboard analogue of the click stopPropagation).
- search-row passes output={model.output} unconditionally, matching the other
  three card rows (ToolRow renders the card over the output when present).
- Assert locale: 'conversation' in the search/web/diff registration tests.
- Add the read render-intent paragraph to the ui-conversation README and a
  ReadBlock atom entry + Read section to ui-primitives (both languages).
- Update the grep fixture sample lines to the post-refactor SearchRow shape.
Refresh the code-mode-round, steering, and search-card goldens for the added
status text and updated sample lines.
2026-07-31 17:23:14 +08:00
Turtle aeff8f6397 Merge remote-tracking branch 'origin/master' into codex/remove-cli-tui-wrappers 2026-07-31 17:20:11 +08:00
Turtle 70597eefc4 refactor(cli): call runTui directly for TUI modes 2026-07-31 17:20:03 +08:00
Tianyi Cui 7e07d0179d Merge pull request #799 from deepseek-harness/codex/status-bar-token-metrics
feat(web): show durable token usage and context occupancy
2026-07-31 17:17:44 +08:00
Tianyi Cui ab6d77a12d Merge remote-tracking branch 'origin/master' into fix/web-transcript-projection
# Conflicts:
#	apps/web/tests/queue-actions.e2e.ts
#	packages/client/ui-conversation/README.i18n.yaml
#	packages/client/ui-conversation/src/client/chat/MessageItem.tsx
2026-07-31 17:17:00 +08:00
Tianyi Cui 26c5e18b14 fix(notices): validate SPDX expressions strictly 2026-07-31 17:16:37 +08:00
Tianyi Cui c7a04a10f9 fix(notices): derive first-party Python projects 2026-07-31 17:16:37 +08:00
Tianyi Cui 76e9bcbba0 fix(notices): parse Python manifests as TOML 2026-07-31 17:16:37 +08:00
creatixchu 8b5c3946da docs: keep the approval-panel cap note current with the composer's scrollport
This PR moved the 14-line cap declaration off the auto-grow mirror and onto the box that scrolls the draft, and retargeted the approval scenario's cap probe from the textarea to that box. The sibling note stated both as they were; implemented notes have to state what shipped, in the change that ships it.
2026-07-31 17:15:47 +08:00
creatixchu 8b00482d7c fix(web): harden multimodal draft and storage lifecycle 2026-07-31 17:15:08 +08:00
NI0317 9f1d9196eb Merge remote-tracking branch 'origin/master' into feature/gui-welcome-copy-v2 2026-07-31 17:11:41 +08:00
creatixchu 8f67db4676 Merge remote-tracking branch 'origin/master' into worktree/locale-browser-default 2026-07-31 17:11:05 +08:00
Hypatia May e5232adcf3 Merge remote-tracking branch 'origin/master' into worktree/pr799-merge-20260731-final
# Conflicts:
#	packages/client/ui-conversation/README.i18n.yaml
2026-07-31 17:10:25 +08:00
Chinesezjc bcec49606b test(web): refresh e2e goldens for collapsed card rows
The seeded-history, web-search-round, and message-actions aria goldens showed
the read/search cards inline; with the ToolRow refactor the card is collapsed
behind an expandable row button, so the goldens now record the collapsed row
shape (the card body appears only on expand, which these rounds do not click).
2026-07-31 17:09:51 +08:00
creatixchu e25683b26d Merge remote-tracking branch 'origin/master' into worktree-session-hover-menu-fix
# Conflicts:
#	packages/client/ui-primitives/README.i18n.yaml
2026-07-31 17:09:44 +08:00
ZiyaZhang e2fb026dee docs(examples): clarify reference memory limits 2026-07-31 02:08:35 -07:00
Chinesezjc c6b770e681 Merge pull request #986 from deepseek-harness/feat/web-search-card
feat(web): render grep/glob output as a search card
2026-07-31 17:07:21 +08:00
imccyu 499a6e9c85 Merge pull request #1028 from deepseek-harness/pr/dump-config
feat(cli): dsh --dump-config / --dump-default-config print the composed config tree
2026-07-31 17:06:55 +08:00
NI0317 978f61f9e7 docs(onboarding): document telemetry opt-out 2026-07-31 17:05:30 +08:00
creatixchu 1008ca865b fix(web): reveal a caret that sits after a newline, where the engines disagree
A caret straight after a newline is on a line with nothing to measure — the shape a trailing-newline draft ends in. chromium returns no client rects at all for the collapsed position (an all-zero box, which sent the reveal upward instead), firefox reports the line above, WebKit the right one. Measure the newline the caret just left and step one line down: all three then land on 649 of 652 with the caret's line at 315 inside the 336px box. The browser case now pastes a newline-terminated block, and fails 'expected 0 to be greater than 0' without the rule.
2026-07-31 17:03:55 +08:00
Hypatia May 1974825381 Merge remote-tracking branch 'origin/master' into worktree/pr799-merge-20260731-final
# Conflicts:
#	packages/client/ui-conversation/README.i18n.yaml
2026-07-31 17:02:46 +08:00
Chinesezjc b38677d41f Merge remote-tracking branch 'origin/master' into feat/web-search-card
# Conflicts:
#	packages/client/ui-conversation/README.i18n.yaml
2026-07-31 17:01:53 +08:00
Hypatia May f817c62baa test(web): refresh search stats golden after master merge 2026-07-31 17:01:16 +08:00