qwen-code/scripts
Shaojin Wen a703a76ae2
test(managed-agent): add the FG13c Hook owner-restart fault gates (#14449) (#14490)
* test(managed-agent): add the FG13c Hook owner-restart fault gates (#14449)

* test(managed-agent): tighten the FG13c hook fault gates after audit

* test(managed-agent): address the FG13c review findings

* test(managed-agent): settle the FG13c harness-kill hook after a Turn cancel

* test(managed-agent): address the FG13c review census

* test(managed-agent): reconcile the FG13c hook before the terminal wait

* test(managed-agent): tighten the FG13c fresh-prompt reconcile after audit

* test(managed-agent): drop the stale SIGTERM claim from the FG13c fixture

* test(managed-agent): settle the FG13c Harness-kill Hook via the Harness status route

The public prompt cannot trigger reconciliation: the control plane's
active-Turn gate answers 409 in insertTurnCommand before any Harness
dispatch, and the cancelled Turn never leaves CANCELLING. Re-attach the
Session to the replacement Harness with the passive recovery load and
read the operation through the authenticated hooks/operations route,
which asks the record's original runtimeSessionId and settles it from
the receipt the worker still holds.

* test(managed-agent): pin the FG13c kill window and the settled owner

The Harness-kill cell could pass without proving anything if the Hook
had already allowed before the kill: the old Harness would have settled
the record and the status read would see a terminal one. Hold longer and
refuse to kill while an allow is already on disk. Assert after
settlement that the binding still names the same worker and generation,
which is what the design claims.

* test(managed-agent): reuse the replacement attachment instead of forcing a load

A Session the coordinator already attached is resident with a Hook-pending
Turn, so a second passive load of it is refused with takeover_unsupported;
the forced call sat outside the wait and exited the cell before the status
route could run. Probe the status route first, reuse whatever attachment
serves it, and ask for a passive re-attach only on 404, at most once a
second.

* test(managed-agent): keep a refused re-attach inside the wait

untilAsserted retries an AssertionError, not a RuntimeException, so a
takeover_unsupported refusal would still have exited the cell. Swallow it
at the call site and report the message on the assertion instead.

* test(managed-agent): send the Harness contract headers on the Hook status probe

Every /session route runs the hosted-harness contract middleware, so the
status probe needs X-Qwen-Harness-Protocol-Version and the boot id of the
process it is talking to. The identity now carries both from the attachment
ref, and a stale generation counts as an attachment that cannot serve the
route, like a missing Session.

---------

Co-authored-by: 易良 <1204183885@qq.com>
2026-10-18 13:03:10 +08:00
..
codemod feat(opentui): bundle assets, CI matrix and parity tooling (Batch 7) (#10770) 2026-09-02 08:36:20 +00:00
installation fix(standalone): pin @lydell/node-pty-linux-arm64 and fail release on missing prebuilds (#12649) 2026-09-25 04:38:07 +00:00
lib refactor(ci): extract release workflow scripts (#11165) 2026-09-08 07:09:09 +00:00
sandbox-prototype feat(core): Add Landlock execution fallback (#12278) 2026-09-29 03:45:46 +00:00
sandbox-runtime feat(core): Route runtime tools through bwrap (#12269) 2026-09-20 23:41:24 +00:00
startup-benchmark perf(cli): keep running in place when env files only hold model credentials (#12680) 2026-09-25 10:13:38 +00:00
tests test(managed-agent): add the FG13c Hook owner-restart fault gates (#14449) (#14490) 2026-10-18 13:03:10 +08:00
tui-parity fix(cli): bound short OpenTUI scroll dialogs (MYWO-3, MYWO-7) (#14034) 2026-10-14 05:50:41 +00:00
acp-http-smoke.mjs feat(daemon): merge daemon-mode feature batch into main (#4490) 2026-06-12 00:34:49 +08:00
assert-release-version.mjs refactor(build,release): Use pnpm workspace builds and publishing (#12400) 2026-09-21 15:38:36 +00:00
audit-runtime-critical.js ci: keep the critical-audit gate honest when npm cannot answer (#7743) 2026-07-26 06:59:13 +00:00
benchmark-api-latency.mjs ci: make the Prettier lane a real gate (#11117) 2026-09-07 00:44:01 +00:00
build-hosted-installation-assets.js fix(installer): auto-detect SYSTEM account and default PATH scope to machine (#4903) 2026-06-10 21:02:10 +08:00
build-standalone-release.js fix(release): retry transient standalone runtime downloads (#11870) (#11879) 2026-09-21 08:23:58 +00:00
build.js fix(build): re-apply the ink patch when install skipped lifecycle scripts (#14170) 2026-10-14 10:03:12 +00:00
build_landlock_run.mjs feat(core): Add Landlock execution fallback (#12278) 2026-09-29 03:45:46 +00:00
build_package.js fix(build): clean stale outputs before tsc --build to prevent TS5055 (#4453) 2026-05-23 23:06:31 +08:00
build_sandbox.js ci(pnpm): install with pnpm everywhere and retire package-lock.json (#11859) 2026-09-20 02:11:25 +00:00
build_vscode_companion.js Sync upstream Gemini-CLI v0.8.2 (#838) 2025-10-23 09:27:04 +08:00
check-build-status.js fix(cli): scope startup warnings to dev sessions (#8456) 2026-08-29 13:22:34 +00:00
check-contract-open-prs.js refactor(managed-agent): Consolidate server and broker sources (#14277) 2026-10-16 00:28:58 +00:00
check-contract-version.js ci(sdk-java): stop the API contract version from regressing or stalling (#13804) (#13808) 2026-10-10 05:43:18 +00:00
check-core-subpath-exports.mjs perf(cli): import core modules directly instead of the package root (#10957) 2026-09-06 11:21:50 +00:00
check-desktop-isolation.js chore(desktop): rename packages/desktop-shell to packages/desktop (#12653) 2026-09-25 05:41:25 +00:00
check-failsafe-reports.js test(managed-agent): Run the EventTransport fault matrix against two nodes (MQ3) (#14242) 2026-10-15 04:34:45 +00:00
check-flyway-migrations.js feat(managed-agent): consolidate persistence into a 32-table baseline (#14069) 2026-10-14 00:58:38 +00:00
check-flyway-open-prs.js refactor(managed-agent): Consolidate server and broker sources (#14277) 2026-10-16 00:28:58 +00:00
check-i18n.ts fix(cli): localize approval mode UI labels (#6592) 2026-07-11 00:07:03 +00:00
check-lockfile.js ci(pnpm): install with pnpm everywhere and retire package-lock.json (#11859) 2026-09-20 02:11:25 +00:00
check-serve-fast-path-bundle.js refactor(serve): separate ACP control plane and channel harness (#11916) 2026-09-16 07:24:11 +00:00
check-tui-dep-direction.mjs feat(cli): OpenTUI migration infra batch — locked deps, dependency-direction arch check, framework-neutral streaming model (#10134) 2026-08-28 02:44:46 +00:00
clean-package-build-artifacts.js feat(channels): add IMAP and SMTP email channel (#12939) 2026-10-03 02:54:25 +00:00
clean.js feat(desktop): Add desktop app package with Qwen ACP SDK integration (#3778) 2026-06-11 21:57:20 +08:00
cli-entry.js feat(managed-agent): Add SSH Tool Runtime support (#14318) 2026-10-16 18:18:04 +00:00
contract-version-utils.js refactor(managed-agent): Consolidate server and broker sources (#14277) 2026-10-16 00:28:58 +00:00
copy-browser-use-assets.js feat(browser-use): add Chrome Native Messaging relay (#11242) 2026-09-18 05:50:24 +00:00
copy_bundle_assets.js feat(browser-use): add Chrome Native Messaging relay (#11242) 2026-09-18 05:50:24 +00:00
copy_files.js feat(browser-use): add Chrome Native Messaging relay (#11242) 2026-09-18 05:50:24 +00:00
create-standalone-package.js feat(mods): run experimental headless Mod commands (#13843) 2026-10-10 16:52:23 +00:00
create_alias.sh fix: ambiguous literals (#461) 2025-08-27 15:23:21 +08:00
daemon-dev.js feat(serve): add workspace-scoped Skills runtime (#10697) 2026-09-05 08:03:24 +00:00
dev.js feat(agents): add local workspace-agent collaboration (#11206) 2026-09-29 16:04:14 +00:00
esbuild-shims.js perf(cli): code-split lowlight to cut startup V8 parse cost (#4070) 2026-05-15 17:26:18 +08:00
export-omni-trajectory.js feat(omni): integrate multimodal media pipeline into main (#12019) 2026-09-16 12:15:45 +00:00
flyway-migration-utils.js refactor(managed-agent): Consolidate server and broker sources (#14277) 2026-10-16 00:28:58 +00:00
generate-changelog.js feat(release): user-facing bilingual digest for release notes (#9216) 2026-08-17 00:12:04 +00:00
generate-git-commit-info.js # 🚀 Sync Gemini CLI v0.2.1 - Major Feature Update (#483) 2025-09-01 14:48:55 +08:00
generate-model-catalog.ts feat(core): resolve model limits and modalities from a models.dev catalog (#11959) 2026-10-02 14:39:11 +00:00
generate-release-notes.js ci(sdk-java): guard Flyway version uniqueness and watch red main runs (#12965) 2026-10-02 06:49:12 +00:00
generate-settings-schema.ts feat(goal): stop a Goal at a turn or an active-time budget (#11457) 2026-09-11 01:01:02 +00:00
get-release-version.js refactor(ci): extract release workflow scripts (#11165) 2026-09-08 07:09:09 +00:00
keep-manifest-layout.js fix(release): keep manifest layout when bumping versions (#12487) 2026-09-23 02:54:57 +00:00
lint.js fix(ci): fail yamllint and shellcheck lanes loudly on an empty git file list (#12650) 2026-10-05 12:44:27 +00:00
local_telemetry.js Merge tag 'v0.3.0' into chore/sync-gemini-cli-v0.3.0 2025-09-11 16:26:56 +08:00
managed-agent-dev.js refactor(managed-agent): Consolidate server and broker sources (#14277) 2026-10-16 00:28:58 +00:00
measure-flicker.mjs ci: make the Prettier lane a real gate (#11117) 2026-09-07 00:44:01 +00:00
package-managed-agent-reference.mjs refactor(managed-agent): Consolidate server and broker sources (#14277) 2026-10-16 00:28:58 +00:00
pnpm-package.js perf(dev): add pnpm worktree bootstrap foundation (#10449) 2026-09-08 03:07:40 +00:00
pre-commit.js Sync upstream Gemini-CLI v0.8.2 (#838) 2025-10-23 09:27:04 +08:00
prepare-package.js fix(release): raise the npm package unpacked-size budget to 160 MiB (#14060) (#14066) 2026-10-13 14:44:35 +00:00
prepare.js feat(web-shell): git status chip, visual working-tree diff, and sidebar git status (#7054) 2026-07-18 10:06:07 +00:00
pty-e2e.sh feat(opentui): bundle assets, CI matrix and parity tooling (Batch 7) (#10770) 2026-09-02 08:36:20 +00:00
release-packages.mjs refactor(build,release): Use pnpm workspace builds and publishing (#12400) 2026-09-21 15:38:36 +00:00
release-script-utils.js ci(sdk-java): guard Flyway version uniqueness and watch red main runs (#12965) 2026-10-02 06:49:12 +00:00
review-audit-layers.mts feat(review): cover modeled-system defect layers in the reverse audit (#8956) 2026-08-12 18:15:11 +00:00
rocketmq-lite-broker.sh test(managed-agent): Run the EventTransport fault rows against a real RocketMQ broker (MQ2d) (#14109) 2026-10-14 06:50:19 +00:00
run-java-daemon-sdk-e2e.ts ci: reduce SDK Java runner queueing (#8441) 2026-08-03 16:21:05 +00:00
run-managed-agent-server-e2e.ts ci(sdk-java): run the Hosted failover arms in their own job (#14467) 2026-10-17 14:48:59 +00:00
sandbox_command.js fix(cli): Harden settings failures and sandbox command streams (#13140) 2026-10-03 12:02:48 +00:00
sdk-node-exporter-stub.js chore(deps): Clear high-severity CVE baseline and harden the security gate (#9584) 2026-08-21 07:43:32 +00:00
setup-worktree.js chore(pnpm): scope build approvals, pin the ACP zod peer, add a freshness lane (#11797) 2026-09-14 04:45:19 +00:00
sign-release.sh feat(cli): add standalone auto-update support (#4629) 2026-06-04 22:53:12 +08:00
start.js fix(cli): scope startup warnings to dev sessions (#8456) 2026-08-29 13:22:34 +00:00
telemetry.js feat(core): support QWEN_HOME env var to customize config directory (#2953) 2026-05-09 15:51:52 +08:00
telemetry_gcp.js fix(mcp): update OAuth client names and improve MCP commands 2026-02-08 10:46:48 +08:00
telemetry_utils.js feat(core): support QWEN_HOME env var to customize config directory (#2953) 2026-05-09 15:51:52 +08:00
test-rewind-e2e.sh fix(test): update rewind E2E Test 1 assertion after isRealUserTurn fix (#3622) 2026-04-26 06:49:42 +08:00
test-windows-paths.js chore: consistently import node modules with prefix (#3013) 2025-08-25 20:11:27 +00:00
tmux-compare.sh feat(opentui): bundle assets, CI matrix and parity tooling (Batch 7) (#10770) 2026-09-02 08:36:20 +00:00
unused-keys-only-in-locales.json feat: add /diff command and git diff statistics utility (#3491) 2026-05-10 11:15:59 +08:00
upload-aliyun-oss-assets.js ci: host PR evidence outside Git (#9985) 2026-08-29 04:36:57 +00:00
verify-capture.mjs refactor!: retire @qwen-code/webui (#9812) 2026-09-05 09:13:54 +00:00
verify-installation-release.js feat(release): add gated bun/OpenTUI preview flavor to standalone releases (#10814) 2026-09-02 12:01:56 +00:00
version.js fix(release): keep manifest layout when bumping versions (#12487) 2026-09-23 02:54:57 +00:00
vitest-global-setup.js feat(channels): add IMAP and SMTP email channel (#12939) 2026-10-03 02:54:25 +00:00
workspaces.js refactor(build,release): Use pnpm workspace builds and publishing (#12400) 2026-09-21 15:38:36 +00:00