Commit Graph
7104 Commits
Author SHA1 Message Date
Dudu-0223 fbfc91bcba test(cli): follow agent names in profile e2e expectations 2026-11-02 15:12:56 +08:00
Dudu-0223 ff563d07e0 feat(subagent): name subagents in their creator catalog
Models coordinate subagents through send_message, interrupt_agent, list_agents,
and Team task owners, but every one of those addressed a member by a
36-character Session id. Each new child now has a name, unique among its
creator's children, recorded as a field of the subagent/catalog entry the
creator already appends (payload version 3).

The Session id stays the only execution identity for routing, authorization,
persistence, task ownership, and navigation. A name is a model-facing
reference: 1-32 lower-case letters, digits, or hyphens starting with a letter,
never `lead`, so a UUID never parses as one. Omission selects the first free
`agent-N`; an explicit duplicate or invalid name fails before startup. The
creator reserves the name synchronously at admission and releases it when the
catalog entry commits or startup fails, so no second write, rollback protocol,
or optional naming service exists.

The root is `lead`, and a descendant's full name is its path from the root
without a `lead/` prefix, such as `reviewer/checker`. Sibling-unique segments
make full names tree-unique without a root registry, and cold resume rebuilds
a member's path from the catalogs along its creation chain. A member below an
unnamed historical creator keeps its Session id as its name. resolveName()
reads only the catalogs along the path and grants no authority.

Tools, runtime-authored text, and the Web client consume names: delegation
takes an optional name and returns { kind, subagentId, name }; send_message and
interrupt_agent take `agent`; list_agents rows carry name, status, and
description; Team task results report the owner's name while storage keeps
ownerId; identity runtime context, message framing, and settlement notices use
full names. Recorded sessions, CLI and Web expectations, the Python runtime
snapshots, bilingual docs, an upgrade guide, and an Agent Note follow.
2026-11-02 14:58:32 +08:00
Dudu-0223andimccyu 0487699ae4 feat(subagent): share ID-based identity and collaboration guidance (#7519)
* feat(subagent): share identity and collaboration guidance

* fix(subagent): complete shared guidance snapshot expectations

* fix(subagent): match task descriptions to the user language

* refactor(subagent): retain shared guidance with Session ids

* test(subagent): recognize parent ids in shared identity

* Checkpoint ID collaboration guidance generated expectations

* Preserve historical Web schema sidecars

* fix(test-support): preserve job references during snapshot refresh

* test(subagent): refresh ID-only collaboration guidance outputs

* fix(subagent): rely on list_agents tool description

* fix(subagent): keep collaboration guidance consistent with live identity

* test(team): parse parent identity from shared guidance

* test(subagent): address parent from shared identity context

* test(subagent): refresh compiled Web guidance snapshots

* test(subagent): refresh browser collaboration context fixtures

* docs(subagent): attribute required identity to standard controls

* fix(subagent): clarify collaboration identity prompts

* test(subagent): remove duplicate PowerShell collaboration context

* refactor(subagent): match unavailable-root errors by name and code

---------

Co-authored-by: imccyu <[email protected]>
2026-10-31 22:38:07 +08:00
Yifffan a1c3458e12 Merge pull request #7504 from deepseek-harness/feat-agent-teamwork-ui-polish
feat(web): improve agent collaboration panels and tool receipts
2026-10-31 11:10:03 +08:00
Dudu-0223 56e79b50ea Merge branch 'codex/stack-review-6288' into codex/stack-review-7504 2026-10-31 10:41:09 +08:00
Dudu-0223 82095d7f04 Merge branch 'codex/stack-review-6285' into codex/stack-review-6288 2026-10-31 10:40:47 +08:00
Dudu-0223 fe9cd80b28 revert: remove follow-up CI repairs 2026-10-31 10:40:31 +08:00
Dudu-0223 908005191d Merge branch 'codex/stack-review-6288' into codex/stack-review-7504 2026-10-31 00:15:31 +08:00
Dudu-0223 8e5fa7bd24 Merge branch 'codex/stack-review-6285' into codex/stack-review-6288 2026-10-31 00:14:38 +08:00
Dudu-0223 b6a75e1f54 fix(ci): stabilize Goal clocks and dependency restoration 2026-10-31 00:09:40 +08:00
Dudu-0223 127923cfec fix(client): expose complete subagent labels and total counts 2026-10-30 23:46:02 +08:00
Magolor d9ed1e4e28 feat(schedule): unify task creation and editing (#7567)
* feat(schedule): unify task creation and editing

* refactor(schedule): remove obsolete editor helper exports

* fix(schedule): address unified editor review

* fix(schedule): avoid a conflict notice during save refresh

* test(schedule): use unified editor in zoom picker checks

* fix(schedule): preserve drafts through conflict recovery

* docs(schedule): match the linked-session control labels

* fix(schedule): restore the latest linked session after conflicts

* docs(schedule): clarify unsaved draft lifetime

* fix(schedule): align conflict feedback with the detail layout

* fix(schedule): fit editors to pane width and guide empty fields

* fix(schedule): preserve task list and complete field examples

* fix(schedule): keep required-field feedback in the editor

* fix(schedule): align editor content and action gutters

* fix(schedule): wrap localized actions in narrow editors
2026-10-30 20:19:47 +08:00
Yudong Han 02578b3cce Merge pull request #7629 from deepseek-harness/fix/revert-4484-display-dollar
revert(ui-primitives): 撤回 #4484 的多行美元公式解析
2026-10-30 17:43:58 +08:00
Magolor 3d8c0d4941 test(web): isolate plugin configuration from local credentials (#7614)
* test(web): isolate plugin config from local credentials

* test(web): preserve provider defaults in config fixtures
2026-10-30 17:24:55 +08:00
Dudu-0223 9bc99d7e02 test(web): make subagent ID clipping fixture deterministic 2026-10-30 17:04:21 +08:00
Dudu-0223 d37b3d98f5 test(web): align collaboration fixtures with panel presentation 2026-10-30 16:57:28 +08:00
Dudu-0223 61e219d546 Merge branch 'refactor/restack-id-ui' into refactor/restack-id-polish 2026-10-30 16:38:14 +08:00
Dudu-0223 b71bb26890 test(web): scope sidebar fold actions to the child row 2026-10-30 16:37:29 +08:00
Dudu-0223 9656ecb162 Merge commit '0f434d505aba1220d92015d61cc64e39442f6304' into refactor/restack-id-polish 2026-10-30 16:04:30 +08:00
Dudu-0223 59689da92d test(team): assert ID-only headless collaboration records 2026-10-30 15:57:35 +08:00
imccyu ea9912523d Merge pull request #7619 from deepseek-harness/worktree/forge-local-changes-independent
fix(web): keep local changes visible alongside pull requests
2026-10-30 15:49:46 +08:00
CreatixChu 490c6fdd92 Merge pull request #7557 from deepseek-harness/feat/cua-permission-guide
feat(cua): 补齐 macOS 系统权限申请与应用拖入引导
2026-10-30 15:48:02 +08:00
Dudu-0223 454374be98 Merge current master through ID-only Team UI into polish 2026-10-30 15:16:28 +08:00
Dudu-0223 43c4919f86 merge: refresh ID-only Team UI from core master updates 2026-10-30 15:13:05 +08:00
Dudu-0223 71676cbc21 Merge master into the ID-only subagent and Team core 2026-10-30 14:57:57 +08:00
Dudu-0223 dcc3bde068 test(ui): refresh ID-only teamwork and subagent expectations 2026-10-30 14:52:15 +08:00
Dudu-0223 6766a694fc Merge refreshed ID-only Team base into UI polish 2026-10-30 14:40:43 +08:00
Jiawei Song 847c738e1f Merge pull request #7559 from deepseek-harness/feat/apply-patch-default-on
feat(fs): ship apply_patch on and the observation policy off
2026-10-30 14:40:35 +08:00
Dudu-0223 b5fed8ca06 test(team): refresh ID-only UI and session snapshots 2026-10-30 14:37:04 +08:00
Dudu-0223 5a052d6767 Merge ID-only Team base into agent teamwork UI polish 2026-10-30 14:32:55 +08:00
Yichen Jiang da51975dfb fix(web): keep local changes visible alongside pull requests 2026-10-30 14:29:54 +08:00
Dudu-0223 0eb1bb52e2 refactor(team): keep session UI and task tools keyed by IDs 2026-10-30 14:25:27 +08:00
Yichen Jiang 04b0b190f0 Merge pull request #7603 from deepseek-harness/worktree/forge-diff-tree-order
fix(forge): align diff file order with the file tree
2026-10-30 14:18:14 +08:00
yudshj 1d9c0ab757 revert(markdown): remove PR #4484 display-dollar parser
Revert PR #4484 (merge b9bdd062c8f), retaining later Windows-path and GFM changes. Its display-dollar rules are replaced by upstream math parsing with bounded invalid-block recovery in the next commit.
2026-10-30 14:16:26 +08:00
creatixchu a9a4c73e91 test(cua): expect provider-owned settings recovery copy 2026-10-30 14:15:51 +08:00
imccyu 945006c984 perf(session): send one projection frame per committed event (#7587)
* perf(session): send one projection frame per committed event

* fix(session): deliver keys changed before a drive failure; address review

* perf(session): carry projection frame changes as key and val entries
2026-10-30 14:14:03 +08:00
imccyu 8c2f5d85b2 fix(ui-conversation): keep the docked composer seat stable (#7591)
* fix(ui-conversation): keep the docked composer seat stable

The active composer seat now keeps one stacking rank (z-index 9) in every
state, a direct compositing reason (will-change: transform), the scroll
floor without relying on a View to fill the column (margin-top: auto), and
no scroll-anchoring role. Composer tooltips portal to the body because the
seat is the containing block for fixed descendants. The width handle keeps
z-index 0 while dragging.

The docked statistics row reserves one reading's height before its
projections arrive, and the header without a Session keeps the blank
Session's 40px row on every platform so both Hero states center the input
card at the same height.

Fixes #7590

* docs(ui-conversation): state the composer fixed-overlay contract

Composer-hosted slots now document that fixed overlays must portal to the
document body, because the docked composer is their containing block; the
client slot catalog is regenerated from that JSDoc. The README also records
that gutter tables cover a captured width-handle drag and that the
composer's backdrop blur is verified only in Chromium. Local comments note
the grayscale text antialiasing of the permanent composer layer, why the
statistics row uses a minimum height, why the sessionless header keeps an
empty title row, and that the Hero offset test assumes the default plugins.

Refs #7590

* docs(ui-conversation): state the back-to-bottom offset as geometry

The composer and back-to-bottom stacking comments now state the resting
16px gap instead of claiming the control never overlaps the input card.

Refs #7590
2026-10-30 12:36:21 +08:00
creatixchu cbbf9d86a1 fix(cua): preserve settings recovery and validate current application metadata 2026-10-30 12:26:20 +08:00
imccyu 12e47f5974 docs(ui-conversation): state the composer fixed-overlay contract
Composer-hosted slots now document that fixed overlays must portal to the
document body, because the docked composer is their containing block; the
client slot catalog is regenerated from that JSDoc. The README also records
that gutter tables cover a captured width-handle drag and that the
composer's backdrop blur is verified only in Chromium. Local comments note
the grayscale text antialiasing of the permanent composer layer, why the
statistics row uses a minimum height, why the sessionless header keeps an
empty title row, and that the Hero offset test assumes the default plugins.

Refs #7590
2026-10-30 12:13:03 +08:00
Yichen Jiang 1e578f1304 fix(forge): align diff file order with the file tree 2026-10-30 11:57:50 +08:00
Dudu-0223 1e44387042 fix(subagent): render creation receipts from persisted metadata 2026-10-30 11:47:39 +08:00
Feiyu XiaandZrs000 5f01833f80 fix(client): align floating panels with the visual viewport (#6666)
* fix(ui-primitives): keep tall menus inside the mobile viewport

* fix(client): anchor model picker with Floating UI

Use Floating UI for fixed model-menu placement and automatic viewport updates. Preserve top-end alignment and defer automatic focus until placement is ready. Guard asynchronous results across updates and menu teardown.

* fix(client): preserve menu blur under pinned group titles

Keep the current provider title outside the native scroll viewport so
model rows cannot bleed through during fast scrolling. Preserve the
enclosing menu fill and backdrop filter, and update both model pickers,
lifecycle tests and ARIA goldens.

Validation: doc-sync, full build, final type checks, focused lint and
all 12 model-picker browser checks pass. The full unit run has 42,597
passing tests and four failures in unchanged gateway, third-party-
notices and Inspector tests. The Inspector case passes in isolation.

* fix(client): stabilize floating panels during browser zoom

* fix(client): keep portal menus aligned during Safari zoom

* fix(client): commit floating menu positions before paint

* fix(client): unify floating panel positioning

* fix(client): validate grouped menu headings

* fix(client): hide inactive pinned menu headings

* test(client): await floating menu layout across consumers

* test(ui-chat): await folded reply menu positioning

* test(client): align current consumers with asynchronous panel layout

* fix(client): prevent mobile model search focus zoom

* refactor(client): inject mobile device state from layout

* fix(client): keep anchored panel layout synchronous

* fix(client): address panel review coverage and documentation

* fix(client): keep viewport changes focused on iOS zoom

* fix(client): cover anchored panel lifecycle and scrollbar colors

* fix(client): preserve zoomed model menu scrolling and alignment

* fix(client): hide empty model menus and stabilize viewport pan tests

* test(web): use native wheel input for zoomed viewport panning

* fix(client): keep automation pickers scrollable when zoomed

* fix(client): allow horizontal gestures across clock columns

* fix(client): ellipsize overflowing floating-panel labels

* test(web): make clock overflow fixture independent of system fonts

---------

Co-authored-by: Zrs000 <[email protected]>
2026-10-30 11:33:46 +08:00
creatixchu a3d098d310 refactor(cua): refresh page permissions on user activity instead of polling 2026-10-30 10:50:41 +08:00
imccyu af4bddbc59 fix(ui-conversation): keep the docked composer seat stable
The active composer seat now keeps one stacking rank (z-index 9) in every
state, a direct compositing reason (will-change: transform), the scroll
floor without relying on a View to fill the column (margin-top: auto), and
no scroll-anchoring role. Composer tooltips portal to the body because the
seat is the containing block for fixed descendants. The width handle keeps
z-index 0 while dragging.

The docked statistics row reserves one reading's height before its
projections arrive, and the header without a Session keeps the blank
Session's 40px row on every platform so both Hero states center the input
card at the same height.

Fixes #7590
2026-10-30 02:23:24 +08:00
imccyu 6397b4e59c Merge pull request #7556 from deepseek-harness/fix/mobile-sidebar-title
fix(web): 稳定手机端右侧栏切换时的会话标题布局
2026-10-29 23:54:15 +08:00
sjw1231 cc2718bede fix(fs): address review of the shipped mutation defaults
A new Agent Note owns the shipped defaults and the original apply_patch note
keeps its opt-in decision with a supersession link; the policy README, the
tool-catalog note, the filesystem page, and the fs group README state the
current defaults without evaluation figures. The PTC overlay sets
`applyPatch: false` so the SDK and Desktop PTC tool sets match without a
parity exception; the fixed-budget compaction scenarios pin the tool set in
their live patches too; the apply-patch composition drops its no-op override.
The upgrade guide scopes the change to base-backed profiles, the README
refusal example is one every composition can produce, the integration suite
names its deployments by guard, and the keyless SDK smoke edits a file the
model never read through the shipped profile.
2026-10-29 21:19:14 +08:00
Yichen Jiang babf1f6612 Merge master into worktree/sync-dsh-0.2.1-rc.5-to-master 2026-10-29 21:14:24 +08:00
creatixchu 0588356f62 feat(cua): present a native permission guide beside System Settings 2026-10-29 20:48:53 +08:00
Yichen Jiang 31cfe2aafe release(dsh): 0.2.1-rc.5 2026-10-29 20:42:48 +08:00
creatixchu 7acc94869e refactor(desktop): use the validated application resource discriminator 2026-10-29 19:39:06 +08:00