Commit Graph
560 Commits
Author SHA1 Message Date
creatixchu 681cf973e2 fix(release): verify helper CLI execution on clean checkouts 2026-11-03 17:29:37 +08:00
creatixchu 41beadfa2a fix(release): verify helper producers and preserve rerun artifacts 2026-11-03 17:09:19 +08:00
creatixchu 3f579d45eb fix(release): bind helper builds to the Actions run commit 2026-11-03 15:49:44 +08:00
creatixchu 0ea2846c3e fix(release): keep explicit helper reuse in the publish form 2026-11-03 15:36:49 +08:00
creatixchu 447e1b88aa docs(release): preserve the existing tag-check description 2026-11-03 15:27:24 +08:00
creatixchu 8454ed9771 docs(release): shorten CUA reuse input labels 2026-11-03 15:26:36 +08:00
creatixchu aa035e6845 feat(release): reuse CUA helper builds with matching source bytes 2026-11-03 15:05:26 +08:00
winewill 3c46127816 Merge remote-tracking branch 'origin/master' into feat/desktop-update-channels 2026-11-03 13:20:42 +08:00
imccyuandimccyu 07f2b259e7 ci: run the merge checks on release branches, and fix the ptc-script-imports fixture (#7732)
* ci: run the merge checks on release branches too

All three `Policy` workflows filtered on `master`, so a pull request into `release/dsh-*`
got no `Master Change` and no `Pre-Merge Check`, and its review check only refreshed when
somebody submitted a review. The checks already take their base branch from the event, so
the filters now name the release branches as well.

* ci: limit the release branch filter to x.y.z

`release/dsh-*` also matched prerelease branches such as `release/dsh-0.1.2-alpha.4`;
the filter now spells the version digits, so only `release/dsh-x.y.z` counts.

* test(snapshot): carry the subagent identity section into the ptc-script-imports scenario

The runtime context gained a `subagent:identity` section and every session fixture but
this one was regenerated, so replay failed with a mismatch on the added section.

(cherry picked from commit c7a4119965cb26c69fd8fccbfd703c7d73351742)

---------

Co-authored-by: imccyu <[email protected]>
2026-11-02 20:12:14 +08:00
creatixchu 4ac71ed747 Merge master with separate development helper identity 2026-11-02 14:55:17 +08:00
winewill d2bd3f3893 feat(desktop): rename stable update channel consistently 2026-11-02 14:27:21 +08:00
imccyu 93e28b1418 Merge pull request #7581 from deepseek-harness/fix/merge-approve-jobs
ci: decide the review verdict in one Approve Check job
2026-10-30 16:15:02 +08:00
creatixchu 02e307aef5 Merge permission guide into the desktop helper packaging branch 2026-10-30 10:47:59 +08:00
winewill c2cda0bdd7 Merge origin/master into feat/desktop-update-channels 2026-10-29 15:27:08 +08:00
winewill 6d0a5f0f12 refactor(desktop): isolate updater qualification and gate dependency versions 2026-10-29 15:23:41 +08:00
creatixchu fc1ed8c1cd fix(desktop): verify only the Computer Use helper bundle and stage it only when shipped
Limit the no-resign exemption to the staged helper so LibreOffice's
unsigned bundle keeps per-file signing, verify the helper's ticket and
Gatekeeper acceptance, stage it after the configuration check only for
sources that ship the bundle, and report a missing helper by path.

Refs #7514
2026-10-29 13:27:42 +08:00
LogosVeritas 09eac50a14 Merge master into feat/python-sdk-slash-commands 2026-10-29 12:59:36 +08:00
creatixchu 6137225576 fix(desktop): ship the notarized Computer Use helper in macOS packages
Build and stage the helper before packaging, keep its bundle unpacked
outside app.asar, verify it instead of re-signing its files, and let the
provider open the unpacked copy.

Refs #7514
2026-10-29 12:56:32 +08:00
winewill 9743690280 test(desktop): qualify update channel switching on Windows CI 2026-10-28 19:24:21 +08:00
CreatixChu c6f3dff031 Merge pull request #7420 from deepseek-harness/feat/cua-desktop-delivery
feat(cua): 支持 Desktop 按需安装与授权
2026-10-28 16:20:24 +08:00
LogosVeritas 9976a87e97 Merge master into feat/python-sdk-slash-commands 2026-10-28 16:14:33 +08:00
creatixchu f0b4345c88 test(cua): verify retained helper tarballs and guide partial release retries 2026-10-28 15:48:10 +08:00
creatixchu e2bcf1b2f1 feat(cua): reuse verified helper artifacts from selected packaging attempts 2026-10-28 15:09:55 +08:00
winewill b2a7d2ec95 ci(windows): remove optional packaging build root 2026-10-28 14:33:13 +08:00
creatixchu 077ec64ac2 Merge remote-tracking branch 'origin/master' into feat/cua-desktop-delivery
# Conflicts:
#	apps/web/tests/preview-boot.e2e.ts
#	packages/client/ui-plugin-manager/README.i18n.yaml
#	scripts/tests/ci-release-selfhosted.spec.ts
#	snapshots/web/creation-recommendations/session.v4.jsonl
2026-10-28 14:08:20 +08:00
imccyu 18bd83bf88 fix(ci): repair Wine heap budget and release workflow tests (#7438)
* fix(ci): budget Wine client heap and align release assertions

* fix(release): restore hosted publication runners

* fix(ci): split Wine client checks and strengthen dispatch tests

* docs: remove Wine diagnostic instruction from AGENTS
2026-10-28 11:22:35 +08:00
imccyu 7509c174d9 fix(build): serialize release builds and give Client checks 8 GiB (#7435)
* fix(build): serialize publication and raise client aggregate heap

* docs: refresh development guide translation pairing

* fix(release): align pack runner and allow explicit tag-check bypass
2026-10-28 01:58:28 +08:00
imccyu 18a559e7dd fix(ci): deepen the pre-merge fetch when the time window strands the merge base 2026-10-27 23:01:19 +08:00
creatixchu e6adfaeab2 Merge remote-tracking branch 'origin/feat/cua-helper-permissions' into feat/cua-desktop-delivery
# Conflicts:
#	snapshots/web/creation-recommendations/session.v4.jsonl
2026-10-27 18:20:31 +08:00
creatixchu dbd881ab46 feat(cua): deliver notarized helpers through on-demand plugin installation 2026-10-27 17:07:25 +08:00
imccyu 3ddacfd725 fix(ci): narrow the version scan and keep a crashing check inside its mode
The scan now reads exactly the manifests the release tooling rewrites, names
every directory and file it cannot read, and refuses an empty corpus; the
command takes the root it checks so the exit code is tested, and the workflow
reports a crashed check as a warning in report mode.
2026-10-26 23:51:18 +08:00
imccyu 1e433706f4 refactor(ci): run the pre-merge steps as one ordered list
Each step is a spawn whose stdio reaches the job log, the first failure stops
the list, and the script decides from CHECK_MODE whether to annotate as an
error or a warning, so the workflow only calls it.
2026-10-26 23:24:20 +08:00
imccyu a518d10c95 fix(ci): keep the pre-merge check's failures honest
The missing-script branch now fails in block mode instead of passing, the shell
block parses, the version walk refuses a directory it cannot read or one that
holds no manifest, the install is watched before anything else can throw, and a
spec runs `bash -n` over every Policy shell block.
2026-10-26 23:12:29 +08:00
imccyu c3998dde7c feat(ci): run one script for the merged tree in the pre-merge check
`Policy / Pre-Merge Check` now runs `scripts/pre-merge-check.ts` under plain
Node and knows nothing else about the merged tree. That script installs the
dependencies, checks that every released manifest carries the root version
while the install runs, and builds the Host and Client contracts, reporting
which step failed.
2026-10-26 22:54:02 +08:00
winewill a578ca435f feat(desktop): add Intel Mac packaging workflow and align forms 2026-10-26 14:17:58 +08:00
imccyuandimccyu df469ea6ff fix(ci): keep the pre-merge check green in report mode (#7311)
* fix(ci): keep the pre-merge check off the report-mode failures

* fix(ci): fail the pre-merge check in block mode without a base commit

* fix(ci): report every pre-merge failure the way its mode asks

The merge step now separates a base commit it cannot fetch from a merge it
cannot do, both failures print an annotation, and a spec pins the mode
wiring of the three Policy workflows.

* test(ci): type the Policy workflow assertions

---------

Co-authored-by: imccyu <[email protected]>
2026-10-26 13:39:57 +08:00
imccyu 762418208a Merge pull request #7097 from deepseek-harness/worktree-ciapprove
feat(ci): run the merge checks from deepseek-harness-check
2026-10-26 12:16:11 +08:00
LogosVeritas 5771a93f2e fix(sdk): harden command examples and run wheel regressions 2026-10-26 10:19:06 +08:00
imccyu b9266aefd6 Merge pull request #7094 from deepseek-harness/worktree/ci-schedule
ci: cut PR check latency across the slow lanes
2026-10-24 14:58:40 +08:00
winewill 0c3d6a1368 Merge remote-tracking branch 'origin/master' into perf/desktop-packaging-integration
# Conflicts:
#	.github/workflows/ci-windows.yml
#	apps/desktop/windows-signing/README.i18n.yaml
2026-10-23 17:10:54 +08:00
winewill 46ce2b61e0 Merge remote-tracking branch 'origin/master' into perf/desktop-packaging-integration
# Conflicts:
#	docs/development.i18n.yaml
#	scripts/build.spec.ts
2026-10-23 16:53:18 +08:00
winewill a43a4bb9ee fix(desktop): supervise optional Windows runner network process 2026-10-23 15:50:31 +08:00
winewill 6c5d7c918a fix(desktop): address packaging review follow-ups 2026-10-22 19:08:45 +08:00
Chinesezjc f48596d2f7 Merge pull request #6863 from deepseek-harness/fix/weighted-approval-app-check
feat(ci): publish the approval decision label from a dedicated approval App
2026-10-22 16:47:28 +08:00
Chinesezjc 1e25d64a2e fix(ci): select decision runs by the publishing app
The App token cannot update a run the job token created and vice versa, so
selecting runs by `app.slug === 'github-actions'` missed every App run: each
phase created another run, a published App success was never revoked, and a
head with an older job-token run made the App patch fail. Select runs by the
publishing app slug instead, pass `vars.DSH_APPROVAL_APP_SLUG`, and set the
external_id marker on the setup-phase run too.

Cover the App-owned update and the job-run coexistence, and align the note with
the measured earliest-suite rule and the App slug variable.
2026-10-22 16:31:01 +08:00
winewill 863a731f3f Merge master and retain packaging priority check in Windows CI 2026-10-22 13:13:05 +08:00
winewill 59b24da527 fix(ci): pin Windows packaging helpers to workflow revision 2026-10-22 13:08:12 +08:00
imccyu 1276a8e13a ci: split pull-request CI into Linux, Windows, and Python workflows (#6898)
* ci: run native Windows PR jobs in a separate workflow

GitHub re-runs failed jobs only after a whole run finishes, so slow Windows jobs blocked re-running failed Linux jobs. CI Windows now owns the native Windows jobs and the Windows x64 Python runtime target, with its own required 'windows checks passed' verdict.

Refs #6893

* ci: run Python PR jobs in a separate workflow

Python rarely fails while the Windows lanes run long, so the Python SDK suite and the Linux/Windows x64 runtime matrix move into CI Python. The three pull-request workflows can now be re-run without waiting for each other, and branch protection gains "python checks passed" beside the existing verdicts.

Refs #6893

* docs: record the three PR verdicts in the failover runbook

* test: pin the shared environment across the PR workflows

* test: read the python SDK lane from CI Python

* test(sdk): parse session JSONL frames in the keyless smoke

Node 24.19 returned only the first frame of a concatenated zstd log, so the single JSON.parse saw just the header; 24.22 returns every frame and the JSONL body broke the parse. Read frames explicitly and select the main session by its header so both versions agree.
2026-10-22 04:09:35 +00:00
winewill 5110ca9153 perf(desktop): integrate Windows packaging and align compression defaults 2026-10-22 11:21:41 +08:00
winewill eda31bfc29 perf(windows): store installer uploads without recompression 2026-10-21 19:35:40 +08:00