qwen-code/packages/cli/src/services
jinye c4859627a7
Some checks are pending
E2E Tests / E2E Test (Linux) - sandbox:docker (push) Waiting to run
E2E Tests / E2E Test (Linux) - sandbox:none (push) Waiting to run
E2E Tests / E2E Test - macOS (push) Waiting to run
E2E Tests / cron-interactive E2E (nightly) (push) Waiting to run
E2E Tests / web-shell Browser Regression (push) Waiting to run
SDK Java / ubuntu-latest / Java 11 (push) Waiting to run
SDK Java / ubuntu-latest / Java 17 (push) Waiting to run
SDK Java / macos-latest / Java 21 (push) Waiting to run
SDK Java / ubuntu-latest / Java 21 (push) Waiting to run
SDK Java / windows-latest / Java 21 (push) Waiting to run
SDK Java / Real daemon E2E / Java 11 (push) Waiting to run
feat(serve): Hot-reload workspace trust changes (#7268)
* feat(serve): hot-reload workspace trust changes

Rebuild workspace runtime generations when trust policy changes, fail closed across daemon routes, and expose reconciliation status to SDK and Web Shell clients.

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>

* codex: address PR review feedback (#7268)

Document the trust hot-reload capability and reuse the daemon environment fallback so the serve process environment guard remains satisfied.

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>

* fix(cli): cache workspace trust status snapshots

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>

* fix: address trust reload race regressions

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>

* fix(serve): avoid repeated runtime containment

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>

* fix(serve): harden workspace generation boundaries

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>

* fix(serve): restore stale session owner fallback

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>

* fix(serve): preserve workspace metadata across trust reloads

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>

* fix(serve): align hot-reload trust semantics

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>

* fix(serve): stop git-state watcher on dispose only, fix git chip test (#7268)

beginDrain stopped the git-state watcher but cancelDrain had no way to
restart it, leaving the watcher disposed until the next lazy poll.
disposeRuntime already stops git-state when the drain is committed, so
the beginDrain stop was redundant — remove it.

Also fix the WorkspaceSection git chip test that broke when the trigger
changed from <button> to <span role="button"> inside DropdownMenuTrigger:
use closest('[role="button"]') and interact with the dropdown menu item.

* fix(serve): address review feedback on trust polling and setValue assertion (#7268)

* fix(cli): correct daemon trust policy settings precedence and drain continuation (#7268)

* fix(serve): address review feedback on fork cleanup, persist simplification, sync guard, and a11y (#7268)

* fix(serve): assert before mutate in setValue, add pre-mutation guard, trust-before-generation ordering (#7268)

* fix(serve): honor system defaults in trust policy

Apply the documented settings precedence to daemon folder trust evaluation and keep workspaces outside configured trust rules fail-closed.

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>

* fix(serve): preserve managed scratch trust during reloads

Keep daemon-created scratch workspaces trusted across policy reloads while retaining controlled-root validation, and reject trust mutations that cannot apply to these fixed-trust runtimes.

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>

* fix(serve): guard auth provider persistence by generation

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>

* refactor(serve): remove Web Shell trust UI

Keep this PR focused on daemon and SDK trust reconciliation; the Web Shell integration can follow separately.

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>

* fix(sdk): restore workspace trust bundle budget

Preserve the merge-only browser bundle allowance required by the additive workspace trust v2 SDK surface after rebasing.

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>

* fix(cli): handle trusted folder write failures

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>

* fix(cli): keep capabilities available during trust reload

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>

* fix(cli): address review feedback for workspace trust hot reload (#7268)

Drop the closed generation guard before retrying dynamic workspace
runtime creation so the retried runtime starts with a fresh, open guard
instead of inheriting the one closed during the abandoned attempt. Make
the /workspace/reload trust reconcile fire-and-forget with a swallowed
rejection (failures are reported separately), reuse sendGenerationClosedError
for the memory write error path, and assert the subagent deletion commit
boundary once before unlinking so a closed generation fails atomically.
Add coverage for the blocked-entry deep health probe and the /session/:id/cd
generation-close-during-flight path.

* fix(serve): close trust reload cleanup gaps

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>

* fix(serve): use fire-and-forget for trust reconcile in workspace-qualified reload (#7268)

* fix(serve): address review feedback on generation guard and trust reconciler (#7268)

* fix(serve): use shared helpers for untrusted/generation-closed responses (#7268)

* fix(serve): continue cleanup after drain commit errors

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>

* fix(cli): retry transient trust policy disappearance

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>

* fix(serve): align status provider trust default with route-level check (#7268)

* fix(serve): clean up worktree on generation guard abort (#7268)

* fix(cli): guard tool and skill settings commits

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>

* test(cli): add discriminating persistent-ENOENT test for trust policy read (#7268)

* fix(serve): close runtime generation gaps

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>

* fix(serve): preserve scheduled task cap errors

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>

* fix(serve): address review feedback on trust reconciler, settings guard, and route simplification (#7268)

* fix(serve): preserve containment retry semantics

Restore the last verified trust-reconciliation and generation-guard behavior after the automated review fix marked an unconfirmed disposal as contained and removed per-scope commit checks. Defer the remaining late-round suggestions to avoid expanding the PR.

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>

---------

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
Co-authored-by: qwen-code-ci-bot <qwen-code-ci-bot@users.noreply.github.com>
Co-authored-by: Qwen Code Bot <qwen-code-bot@users.noreply.github.com>
Co-authored-by: Qwen Autofix <qwen-autofix@alibaba-inc.com>
Co-authored-by: Qwen Code Autofix <qwen-code-autofix@users.noreply.github.com>
2026-07-25 08:43:07 +00:00
..
insight fix(cli): measure insight days and hours in local time everywhere (#7670) 2026-07-24 15:41:13 +00:00
prompt-processors feat(core): respect configurable agent ignore files (#4653) 2026-06-23 10:44:37 +08:00
test-commands feat: add extension for gemini and claude 2026-01-07 11:06:17 +08:00
tips feat(tui): Ctrl+O frozen transcript view and unified tool output rendering (#5666) 2026-07-09 23:40:29 +00:00
BuiltinCommandLoader.test.ts feat: extension file reload — watch for plugin changes and hot-reload runtime (#6347) 2026-07-08 11:16:21 +00:00
BuiltinCommandLoader.ts feat(cli): add /learn command for user-initiated skill creation (#6440) 2026-07-15 05:30:38 +00:00
BundledSkillLoader.test.ts feat(review): capture untracked files, resolve anchors from snippets, and gate posting in code (#6771) 2026-07-13 16:51:18 +00:00
BundledSkillLoader.ts feat(review): capture untracked files, resolve anchors from snippets, and gate posting in code (#6771) 2026-07-13 16:51:18 +00:00
command-factory.test.ts feat(cli): core built-in i18n coverage (#3871) 2026-05-10 22:35:03 +08:00
command-factory.ts refactor(cli): revert dynamic slash command LLM translation (#4145) 2026-05-15 16:01:16 +08:00
command-migration-tool.test.ts fix(core): serialize migrated command descriptions as YAML (#5321) 2026-06-19 03:36:59 +08:00
command-migration-tool.ts fix(cli): replace all emoji with Unicode text symbols in TUI rendering (#5999) 2026-06-30 15:18:01 +00:00
commandMetadata.test.ts feat(workflows): finish Dynamic Workflows port — resume, saved workflows, keyword trigger, notifications (#4721) (#5600) 2026-06-22 19:13:14 +08:00
commandMetadata.ts feat(workflows): finish Dynamic Workflows port — resume, saved workflows, keyword trigger, notifications (#4721) (#5600) 2026-06-22 19:13:14 +08:00
CommandService.test.ts feat(skills): support user-invocable frontmatter (#5037) 2026-06-13 06:09:23 +08:00
CommandService.ts feat(skills): support user-invocable frontmatter (#5037) 2026-06-13 06:09:23 +08:00
commandUtils.test.ts feat(cli): Phase 2 — slash command multi-mode expansion, ACP fixes, and UX improvements (#3377) 2026-04-22 19:12:44 +08:00
commandUtils.ts feat(cli): Phase 2 — slash command multi-mode expansion, ACP fixes, and UX improvements (#3377) 2026-04-22 19:12:44 +08:00
FileCommandLoader-extension.test.ts feat(cli): core built-in i18n coverage (#3871) 2026-05-10 22:35:03 +08:00
FileCommandLoader-markdown.test.ts feat(cli): add argument-hint support for slash commands (#3593) 2026-04-27 08:29:50 +08:00
FileCommandLoader.test.ts feat(cli): core built-in i18n coverage (#3871) 2026-05-10 22:35:03 +08:00
FileCommandLoader.ts feat(extensions): add i18n support for extension displayName and description (#5289) 2026-06-18 09:31:50 +00:00
markdown-command-parser.test.ts feat(cli): add argument-hint support for slash commands (#3593) 2026-04-27 08:29:50 +08:00
markdown-command-parser.ts feat(cli): add argument-hint support for slash commands (#3593) 2026-04-27 08:29:50 +08:00
McpPromptLoader.test.ts fix(cli): map positional args to optional MCP prompt parameters (#7317) 2026-07-20 22:36:21 +00:00
McpPromptLoader.ts fix(cli): map positional args to optional MCP prompt parameters (#7317) 2026-07-20 22:36:21 +00:00
notificationService.test.ts feat(hooks): support terminal sequence notifications (#4895) 2026-06-10 11:25:38 +08:00
notificationService.ts feat(cli): add OSC notification support for iTerm2, Kitty, and Ghostty (#3562) 2026-04-27 20:28:07 +08:00
prompt-stash.test.ts feat(cli): add project-scoped prompt stash (#6709) 2026-07-11 10:36:06 +00:00
prompt-stash.ts feat(cli): add project-scoped prompt stash (#6709) 2026-07-11 10:36:06 +00:00
review-worktree-lease.test.ts fix(review): make agent launches and cleanup resilient (#7259) 2026-07-21 01:21:35 +00:00
review-worktree-lease.ts fix(review): make agent launches and cleanup resilient (#7259) 2026-07-21 01:21:35 +00:00
saved-workflow-loader.test.ts feat(serve): Add daemon workspace voice and control APIs (#5765) 2026-06-24 23:48:57 +00:00
saved-workflow-loader.ts feat(workflows): finish Dynamic Workflows port — resume, saved workflows, keyword trigger, notifications (#4721) (#5600) 2026-06-22 19:13:14 +08:00
setup-github.test.ts feat(serve): Hot-reload workspace trust changes (#7268) 2026-07-25 08:43:07 +00:00
setup-github.ts feat(serve): Hot-reload workspace trust changes (#7268) 2026-07-25 08:43:07 +00:00
skill-args-file.test.ts feat(review): capture untracked files, resolve anchors from snippets, and gate posting in code (#6771) 2026-07-13 16:51:18 +00:00
skill-args-file.ts feat(review): capture untracked files, resolve anchors from snippets, and gate posting in code (#6771) 2026-07-13 16:51:18 +00:00
SkillCommandLoader.test.ts feat(review): capture untracked files, resolve anchors from snippets, and gate posting in code (#6771) 2026-07-13 16:51:18 +00:00
SkillCommandLoader.ts feat(review): capture untracked files, resolve anchors from snippets, and gate posting in code (#6771) 2026-07-13 16:51:18 +00:00
types.ts Explict imports & exports with type modifier (#3774) 2025-08-25 22:04:53 +00:00
voice-keyterms.ts feat(cli): support a user-configurable keyterms file for voice dictation (#5817) 2026-06-25 08:32:04 +00:00
voice-model.ts feat(core): add configurable image generation models (#7607) 2026-07-24 09:03:18 +00:00
voice-service.test.ts feat(serve): Add workspace-qualified Voice (#6839) 2026-07-14 03:42:58 +00:00
voice-service.ts feat(serve): Add workspace-qualified Voice (#6839) 2026-07-14 03:42:58 +00:00
voice-settings.ts feat(serve): Add daemon workspace voice and control APIs (#5765) 2026-06-24 23:48:57 +00:00
voice-transcriber.ts feat(serve): Add workspace-qualified Voice (#6839) 2026-07-14 03:42:58 +00:00