Yichen Jiang
5951d19f58
Merge pull request #2844 from deepseek-harness/fix/turn-error-survives-retry-exhaustion
...
fix(web): render the terminal turn error after same-turn retries exhaust
2026-08-20 22:01:43 +08:00
Yichen Jiang
8905b0a195
test(ui-conversation): drop an unnecessary type assertion in the chip DOM spec
2026-08-20 21:51:24 +08:00
Yichen Jiang
c3e35cbe95
docs(client): align turn-error prose with exhausted-retry rendering
...
Review follow-up: the consumer-facing contract still described the removed
suppression. TurnErrorNode's JSDoc, the client-runtime retry-projection
README section, and the ui-conversation chat-flow section (both languages)
now state that a terminal turn/end error always projects the node, beside
the settled retry chain when retries exhausted, and that only intermediate
failures that scheduled another retry stay retry-notice-only. The recovery
note sheds its remaining cross-turn wording (closed-step boundary, retry
turns, closed failed step/turn) for the same-turn reality.
2026-08-20 21:48:36 +08:00
Yichen Jiang
672cdf9ba1
Merge remote-tracking branch 'origin/master' into fix/turn-error-survives-retry-exhaustion
...
# Conflicts:
# .agents/notes/implemented/architecture/2026-06-21-bounded-llm-request-recovery.i18n.yaml
# .agents/notes/implemented/architecture/2026-06-21-bounded-llm-request-recovery.zh.md
# .agents/notes/implemented/architecture/2026-08-09-client-conversation-node-assembly.i18n.yaml
2026-08-20 21:40:44 +08:00
Yichen Jiang
4fe0db5031
Merge remote-tracking branch 'origin/master' into worktree/web-textarea-refactor-991614
...
# Conflicts:
# packages/client/ui-conversation/README.i18n.yaml
# packages/client/ui-conversation/README.md
# packages/client/ui-conversation/README.zh.md
# packages/client/ui-conversation/tests/skeleton.client.spec.tsx
2026-08-20 21:39:48 +08:00
ihsiang
0864878cd0
Merge pull request #2856 from deepseek-harness/ihsiang/subagent-header-switcher
...
feat(web): refine nested subagent header navigation
2026-08-20 21:31:41 +08:00
yx.zhang
5f7ac9183e
fix(web): address subagent header review findings
2026-08-20 21:12:07 +08:00
pku-xht
8b81d77d54
refactor(subprocess): use mode as fallback warning latch
2026-08-20 20:58:33 +08:00
pku-xht
a160bd55fc
Merge PR1 into native containment
2026-08-20 20:38:46 +08:00
pku-xht
8a99ff7a29
Merge commit '80d7e34e6acd5babf2f1e3e91b8d4534ddc78657' into codex/subprocess-win32-process-primitives
2026-08-20 20:37:37 +08:00
pku-xht
ad44ba547a
test(subagent-acp): explain fallback warning coexistence
2026-08-20 20:35:08 +08:00
yx.zhang
de572dd910
feat(web): refine subagent header switcher
2026-08-20 20:18:55 +08:00
pku-xht
2ee78dd576
Merge commit '10ba2cf9aed8aaf7198bf4a12e1773e1c5dfa627' into codex/subprocess-native-containment
2026-08-20 20:14:03 +08:00
lsdsjy
c71ff384cc
Merge pull request #2808 from deepseek-harness/fix/frontend-static-miss-404
...
fix(frontend-static): return 404 for missing paths
2026-08-20 20:13:23 +08:00
pku-xht
85b8484a95
test(sandbox): remove stale export assertion
2026-08-20 20:13:01 +08:00
lsdsjy
600f3a3110
fix(frontend-static): return 404 for a missing index
2026-08-20 20:03:18 +08:00
pku-xht
6532fff458
test(subagent-acp): allow provider fallback warning
2026-08-20 20:02:57 +08:00
lsdsjy
92723cafeb
fix(frontend-static): return 404 for missing paths
2026-08-20 20:02:11 +08:00
pku-xht
a7b64e24ee
Merge PR1 into native containment
2026-08-20 20:01:20 +08:00
Turtle
ed3ef7acee
Merge pull request #1373 from deepseek-harness/codex/remove-cordis-catalog-line-numbers
...
docs: remove line numbers from subsystem catalog links
2026-08-20 19:57:50 +08:00
Yichen Jiang
f908cf434b
docs: zh-locale links for the composer note after the master merge
2026-08-20 19:56:19 +08:00
pku-xht
a5368680ae
docs(win32-process): keep localized header link valid
2026-08-20 19:53:56 +08:00
Yichen Jiang
0cdb569cf8
Merge remote-tracking branch 'origin/master' into worktree/web-textarea-refactor-991614
...
# Conflicts:
# packages/client/ui-conversation/README.i18n.yaml
# packages/client/ui-conversation/README.zh.md
2026-08-20 19:53:44 +08:00
pku-xht
6db3ed93bf
Merge origin/master into codex/subprocess-win32-process-primitives
2026-08-20 19:49:34 +08:00
Turtle
93a1b569ac
Merge remote-tracking branch 'origin/master' into codex/remove-cordis-catalog-line-numbers
...
# Conflicts:
# docs/subsystems/agent-team.i18n.yaml
# docs/subsystems/approval.i18n.yaml
# docs/subsystems/client-modules.i18n.yaml
# docs/subsystems/client-modules.md
# docs/subsystems/client-modules.zh.md
# docs/subsystems/code-runtime.i18n.yaml
# docs/subsystems/commands.i18n.yaml
# docs/subsystems/commands.md
# docs/subsystems/commands.zh.md
# docs/subsystems/compaction.i18n.yaml
# docs/subsystems/compaction.md
# docs/subsystems/compaction.zh.md
# docs/subsystems/core.i18n.yaml
# docs/subsystems/core.md
# docs/subsystems/core.zh.md
# docs/subsystems/credentials.i18n.yaml
# docs/subsystems/credentials.md
# docs/subsystems/credentials.zh.md
# docs/subsystems/feedback.i18n.yaml
# docs/subsystems/filesystem.i18n.yaml
# docs/subsystems/goal.i18n.yaml
# docs/subsystems/http-server.md
# docs/subsystems/http-server.zh.md
# docs/subsystems/invariants.i18n.yaml
# docs/subsystems/invariants.md
# docs/subsystems/invariants.zh.md
# docs/subsystems/jobs.i18n.yaml
# docs/subsystems/llm-streaming.i18n.yaml
# docs/subsystems/llm-streaming.md
# docs/subsystems/llm-streaming.zh.md
# docs/subsystems/permission-presets.md
# docs/subsystems/permission-presets.zh.md
# docs/subsystems/persistence.i18n.yaml
# docs/subsystems/persistence.md
# docs/subsystems/persistence.zh.md
# docs/subsystems/plan.i18n.yaml
# docs/subsystems/plan.md
# docs/subsystems/plan.zh.md
# docs/subsystems/sandbox.i18n.yaml
# docs/subsystems/sandbox.md
# docs/subsystems/sandbox.zh.md
# docs/subsystems/schedule.i18n.yaml
# docs/subsystems/session-projection.i18n.yaml
# docs/subsystems/session-projection.md
# docs/subsystems/session-projection.zh.md
# docs/subsystems/session-query.i18n.yaml
# docs/subsystems/session-reference.i18n.yaml
# docs/subsystems/session-reference.md
# docs/subsystems/session-reference.zh.md
# docs/subsystems/session-telemetry.md
# docs/subsystems/session-telemetry.zh.md
# docs/subsystems/session-title.i18n.yaml
# docs/subsystems/session.i18n.yaml
# docs/subsystems/session.md
# docs/subsystems/session.zh.md
# docs/subsystems/settings.i18n.yaml
# docs/subsystems/settings.md
# docs/subsystems/settings.zh.md
# docs/subsystems/shell.i18n.yaml
# docs/subsystems/shell.md
# docs/subsystems/shell.zh.md
# docs/subsystems/skills.i18n.yaml
# docs/subsystems/skills.md
# docs/subsystems/skills.zh.md
# docs/subsystems/spill.i18n.yaml
# docs/subsystems/storage.i18n.yaml
# docs/subsystems/subagent.i18n.yaml
# docs/subsystems/subagent.md
# docs/subsystems/subagent.zh.md
# docs/subsystems/subprocess.i18n.yaml
# docs/subsystems/system-prompt.i18n.yaml
# docs/subsystems/system-prompt.md
# docs/subsystems/system-prompt.zh.md
# docs/subsystems/tasks.md
# docs/subsystems/tasks.zh.md
# docs/subsystems/terminal.md
# docs/subsystems/terminal.zh.md
# docs/subsystems/token-meter.i18n.yaml
# docs/subsystems/tools.i18n.yaml
# docs/subsystems/tools.md
# docs/subsystems/tools.zh.md
# docs/subsystems/typert.i18n.yaml
# docs/subsystems/typert.md
# docs/subsystems/typert.zh.md
# docs/subsystems/user-interaction.i18n.yaml
# docs/subsystems/user-questions.i18n.yaml
# docs/subsystems/user-questions.md
# docs/subsystems/user-questions.zh.md
# docs/subsystems/web.i18n.yaml
# docs/subsystems/workflow.i18n.yaml
# docs/subsystems/workflow.md
# docs/subsystems/workflow.zh.md
# docs/subsystems/workspace.i18n.yaml
# docs/subsystems/workspace.md
# docs/subsystems/workspace.zh.md
# packages/typert/generator/tests/cordis-catalog.spec.ts
2026-08-20 19:48:43 +08:00
pku-xht
cd1a8552f7
Merge codex/subprocess-win32-process-primitives into codex/subprocess-native-containment
2026-08-20 19:29:33 +08:00
pku-xht
458ba49815
docs(win32-process): narrow ABI verification claims
2026-08-20 19:28:05 +08:00
pku-xht
e3248cc893
Merge pull request #2708 from deepseek-harness/codex/localized-chinese-doc-links
...
docs(i18n): localize links and fix capability-page targets
2026-08-20 19:28:01 +08:00
pku-xht
e9c095ab4b
Merge codex/subprocess-win32-process-primitives into codex/subprocess-native-containment
2026-08-20 19:18:42 +08:00
pku-xht
ff7a5a042c
docs(win32-process): point ABI verification to its owner
2026-08-20 19:17:03 +08:00
pku-xht
84cbec28e9
Merge remote-tracking branch 'origin/master' into codex/localized-chinese-doc-links
...
# Conflicts:
# .agents/notes/implemented/architecture/2026-06-11-content-block-vocabulary.i18n.yaml
# .agents/notes/implemented/architecture/2026-06-11-content-block-vocabulary.zh.md
# .agents/notes/implemented/architecture/2026-06-18-shared-persistence-write-coordinator.i18n.yaml
# .agents/notes/implemented/architecture/2026-07-10-single-file-executable-sdk-runtime-distribution.i18n.yaml
# .agents/notes/implemented/architecture/2026-07-10-single-file-executable-sdk-runtime-distribution.zh.md
# .agents/notes/implemented/bug-fix/2026-07-29-pnpm-setup-runner-isolation.i18n.yaml
# .agents/notes/implemented/bug-fix/2026-07-29-pnpm-setup-runner-isolation.zh.md
# .agents/notes/implemented/bug-fix/2026-08-18-request-image-payload-bound.i18n.yaml
# .agents/notes/implemented/bug-fix/2026-08-18-request-image-payload-bound.zh.md
# .agents/notes/implemented/feature/2026-07-06-sandbox.i18n.yaml
# .agents/notes/implemented/feature/2026-07-06-sandbox.zh.md
# .agents/notes/implemented/feature/2026-07-16-persistent-pty-sessions.i18n.yaml
# .agents/notes/implemented/feature/2026-07-21-cross-session-references.i18n.yaml
# .agents/notes/implemented/feature/2026-07-21-cross-session-references.zh.md
# .agents/notes/implemented/feature/2026-07-22-web-multimodal-image-input-and-durable-attachments.i18n.yaml
# .agents/notes/implemented/feature/2026-07-22-web-multimodal-image-input-and-durable-attachments.zh.md
# .agents/notes/implemented/feature/2026-07-27-web-subagent-conversations.i18n.yaml
# .agents/notes/implemented/feature/2026-07-31-permission-default-for-new-sessions.i18n.yaml
# .agents/notes/implemented/feature/2026-08-03-web-search-source-scroll.i18n.yaml
# .agents/notes/implemented/feature/2026-08-03-web-search-source-scroll.zh.md
# .agents/notes/implemented/feature/2026-08-04-claude-code-and-codex-subagent-backends.i18n.yaml
# .agents/notes/implemented/feature/2026-08-04-claude-code-and-codex-subagent-backends.zh.md
# .agents/notes/implemented/feature/2026-08-05-agent-teams.i18n.yaml
# .agents/notes/implemented/feature/2026-08-05-agent-teams.zh.md
# .agents/notes/implemented/feature/2026-08-11-workspace-sidebar-order-and-folding.i18n.yaml
# .agents/notes/implemented/feature/2026-08-15-product-subagent-noninteractive-permissions.i18n.yaml
# .agents/notes/implemented/process/2026-07-21-serial-cross-platform-ci-reference.i18n.yaml
# .agents/notes/implemented/process/2026-07-21-serial-cross-platform-ci-reference.zh.md
# .agents/notes/implemented/process/2026-07-22-evidence-based-larger-hosted-runners.i18n.yaml
# .agents/notes/implemented/process/2026-07-22-evidence-based-larger-hosted-runners.zh.md
# .agents/notes/implemented/process/2026-07-23-portable-required-pull-request-ci.i18n.yaml
# .agents/notes/implemented/process/2026-07-23-portable-required-pull-request-ci.zh.md
# .agents/notes/implemented/testing/2026-07-24-web-gui-browser-e2e-lane.i18n.yaml
# .agents/notes/implemented/testing/2026-07-24-web-gui-browser-e2e-lane.zh.md
# .agents/notes/implemented/testing/2026-07-30-web-browser-snapshot-ci-gate.i18n.yaml
# .agents/notes/implemented/testing/2026-07-30-web-browser-snapshot-ci-gate.zh.md
# .agents/notes/proposed/architecture/2026-07-27-session-projection-and-command-log.i18n.yaml
# README.i18n.yaml
# README.zh.md
# docs/architecture.i18n.yaml
# docs/architecture.zh.md
# docs/development.i18n.yaml
# docs/development.zh.md
# docs/persistence-catalog.i18n.yaml
# docs/persistence-catalog.zh.md
# docs/subsystems/README.i18n.yaml
# docs/subsystems/README.zh.md
# docs/subsystems/agent-team.i18n.yaml
# docs/subsystems/agent-team.zh.md
# docs/subsystems/client-modules.i18n.yaml
# docs/subsystems/client-modules.zh.md
# docs/subsystems/commands.i18n.yaml
# docs/subsystems/commands.zh.md
# docs/subsystems/persistence.i18n.yaml
# docs/subsystems/persistence.zh.md
# docs/subsystems/session-reference.i18n.yaml
# docs/tool-catalog.i18n.yaml
# docs/tool-catalog.zh.md
# docs/user/guide/providers.i18n.yaml
# docs/user/guide/providers.zh.md
# packages/README.i18n.yaml
# packages/README.zh.md
# packages/bundle/web-app/README.i18n.yaml
# packages/bundle/web-app/README.zh.md
# packages/client/README.i18n.yaml
# packages/client/README.zh.md
# packages/client/connection/README.i18n.yaml
# packages/client/connection/README.zh.md
# packages/client/ui-conversation/README.i18n.yaml
# packages/client/ui-conversation/README.zh.md
# packages/client/ui-primitives/README.i18n.yaml
# packages/client/ui-primitives/README.zh.md
# packages/client/ui-sidebar/README.i18n.yaml
# packages/client/ui-sidebar/README.zh.md
# packages/client/ui-workspace/README.i18n.yaml
# packages/client/ui-workspace/README.zh.md
# packages/context/README.i18n.yaml
# packages/context/README.zh.md
# packages/core/agent-loop/README.i18n.yaml
# packages/credentials/README.i18n.yaml
# packages/credentials/README.zh.md
# packages/experimental/agent-team/README.i18n.yaml
# packages/experimental/agent-team/README.zh.md
# packages/experimental/tool-agent-team/README.i18n.yaml
# packages/experimental/tool-agent-team/README.zh.md
# packages/host/frontend-static/README.i18n.yaml
# packages/host/frontend-static/README.zh.md
# packages/host/webserver/README.i18n.yaml
# packages/host/webserver/README.zh.md
# packages/interaction/commands/README.i18n.yaml
# packages/interaction/commands/README.zh.md
# packages/plan/plan-mode/README.i18n.yaml
# packages/plan/plan-mode/README.zh.md
# packages/sandbox/sandbox-local/README.i18n.yaml
# packages/sandbox/sandbox-local/README.zh.md
# packages/session/README.i18n.yaml
# packages/session/README.zh.md
# packages/session/session-persistence-sqlite/README.i18n.yaml
# packages/session/session-persistence-sqlite/README.zh.md
# packages/session/session-projection-cache/README.i18n.yaml
# packages/session/session-projection-cache/README.zh.md
# packages/shell/tool-pwsh/README.i18n.yaml
# packages/shell/tool-pwsh/README.zh.md
# packages/subagent/subagent-codex/README.i18n.yaml
# packages/subagent/subagent-codex/README.zh.md
# packages/subagent/subagent/README.i18n.yaml
# packages/subagent/subagent/README.zh.md
# packages/web/tool-web/README.i18n.yaml
# packages/web/tool-web/README.zh.md
# scripts/snapshots/translation-prompt-v4/request-response.expected.json
2026-08-20 19:15:33 +08:00
Yichen Jiang
9b64106e9e
test(web): settle the remaining e2e drive gaps
...
Every consecutive composer send waits out the submit round-trip's
read-only span; the end-of-document caret gesture becomes select-all +
ArrowRight (Cmd/Ctrl+End moves no caret in mac contenteditable), which
lets Lexical's own ancestor scroll walk prove the typing reveal.
2026-08-20 19:05:26 +08:00
pku-xht
1ada79af81
test(subprocess): cover settled scope waits
2026-08-20 18:58:36 +08:00
Yichen Jiang
504a1c6f4b
test(web): null-tolerant textContent length in the perf lane
2026-08-20 18:55:26 +08:00
Yichen Jiang
4f808771ce
test(web): finish the e2e migration to the composer surface
...
textContent/data-placeholder probes replace inputValue/placeholder reads,
evaluate-string selectors move to the composer anchor, queued fills wait
out the submit round-trip's read-only span, and the refreshed aria goldens
drop the hover tooltip the old interaction order happened to capture.
2026-08-20 18:50:59 +08:00
pku-xht
700812811e
Merge codex/subprocess-win32-process-primitives into codex/subprocess-native-containment
2026-08-20 18:45:37 +08:00
pku-xht
7185a62d58
fix(subprocess): harden native runner lifecycle
2026-08-20 18:41:30 +08:00
pku-xht
6d9bc90532
Merge origin/master into codex/subprocess-win32-process-primitives
2026-08-20 18:38:46 +08:00
Yichen Jiang
e920185700
test(web): drive the built-graph snapshot lanes through the editor surface
...
Paste-command text entry (awaiting its microtask commit), data-placeholder
lookup, a scrollIntoView stub for the menu the settled-caret re-track now
opens, and a trailing separator on the bare /plan paste so Enter submits
instead of picking from that menu.
2026-08-20 18:32:44 +08:00
Yichen Jiang
f6fb66a318
docs+build(ui-conversation): lexical composer collateral
...
The client-bundle preset pins the production/development exports condition
(lexical's node-condition file selects its flavor with a top-level await a
CJS bundle cannot carry); the composer carries an explicit aria-label (a
div's data-placeholder does not name it the way a textarea placeholder
did); READMEs, the composer.bar slot doc, and the Agent Note record the
editor architecture; web e2e drives the contenteditable surface.
2026-08-20 18:27:55 +08:00
Yichen Jiang
daaede29a5
fix(ui-conversation): render the terminal turn error after same-turn retries exhaust
...
The turn-error Definition suppressed its node permanently once the owning
turn carried any llm/retry event — a rule from the retired model where a
retry opened a new numbered turn. Retries now run inside the failing turn,
so the suppression hid exactly the exhausted terminal failure it existed
to defer to: spending every transient retry left the conversation with a
neutral collapsed retry row and no error row at all.
Delete the suppression: turn-error matches only turn/start and error-reason
turn/end, and renders whenever its turn recorded a terminal error; the
settled retry chain renders beside it through the separate model-retry
node. The Definition suite now asserts the exhausted-retry error node in
full history, tail-only windows, and after prepending the chain, and a new
keyless live e2e scenario exhausts a scenario-owned two-retry policy and
pins the terminal error row beside the settled retry row (the scaffold
gains replayRetryPolicy so exhaustion runs in milliseconds).
Both stale notes are corrected to the same-turn retry reality, and the new
bug-fix note owns the removal rationale.
2026-08-20 18:19:30 +08:00
Yichen Jiang
aef4e1c9b7
Merge pull request #2509 from deepseek-harness/feat/pi-ai-auth-alignment
...
feat(credentials): abstract credentials service and support OAuth login
2026-08-20 18:08:15 +08:00
Yichen Jiang
7222b066d5
test(ui-conversation): align suites with the editor composer
...
Drive keyboard gestures as real KeyboardEvents at the contenteditable
(Lexical routes them through the command layer), write drafts through the
shell, and probe decorations at their new DOM (chip decorators, styled
claim leaf, hint CSS variable, text-ref entity nodes). jsdom lacks
Selection.modify, so the Backspace-deletes-chip gesture moves to the
browser lane.
2026-08-20 18:06:58 +08:00
Yichen Jiang
b519cb87b0
feat(ui-conversation): lexical composer replaces the textarea stack
...
The editor (shell-owned, per-session) is the draft + chip truth; the
machine slims to the submit plane. Chips are atomic decorator nodes with
NodeKey identity; TokenSpan coordinates ride the detect projection (chip =
one U+FFFC), persistence and InputState.draft ride the clipboard
projection. The mirror/backdrop layers, Safari soft-wrap repair, manual
undo log, boundary occurrence deletion, and clipboard expansion all
retire; the producerless paste-attempt and set-invalid planes go with
them.
2026-08-20 17:58:52 +08:00
Yichen Jiang
30289d6320
chore(release): carry dsh-authorization to the rc.8 family version
2026-08-20 17:58:39 +08:00
Yichen Jiang
564e4d1610
chore(sync): regenerate the module graph after the projection merges
2026-08-20 17:58:39 +08:00
Yichen Jiang
933d1f2ab2
feat(credentials): upgrade the pre-release flat document at boot
...
Internal builds before the versioned layout wrote .credentials.yaml as a flat
mapping; refusing it outright would strand every key stored through the Models
page and fail the next model request. Boot now recognizes exactly that layout
- addressable names over non-empty string scalars, no directives - and
rewrites it under the writer lock, nesting the original lines verbatim under
refs: with the values byte for byte unchanged. Everything the recognizer
declines keeps the loud by-name refusal, a live reload still never migrates,
and the parser continues to read exactly one layout. The migration step
retires with the pre-release stance at the first tagged release.
2026-08-20 17:58:39 +08:00
Yichen Jiang
7d04a0235c
chore(sync): regenerate the event matrix after the command-envelope merge
2026-08-20 17:58:39 +08:00
Yichen Jiang
120097e266
chore(sync): restore the image-budget README merge on llm-pi-ai
2026-08-20 17:58:39 +08:00
Yichen Jiang
fecfabcac4
fix(credentials): name reference update event explicitly
2026-08-20 17:58:39 +08:00