From 91d31197be75a51355dd65353f3e63de4cd0c766 Mon Sep 17 00:00:00 2001 From: Peter Steinberger Date: Mon, 20 Apr 2026 13:24:45 +0100 Subject: [PATCH] ci: run architecture check before release --- .agents/skills/openclaw-release-maintainer/SKILL.md | 2 ++ .github/workflows/ci.yml | 3 +-- .github/workflows/openclaw-npm-release.yml | 5 +++++ docs/reference/RELEASING.md | 2 ++ 4 files changed, 10 insertions(+), 2 deletions(-) diff --git a/.agents/skills/openclaw-release-maintainer/SKILL.md b/.agents/skills/openclaw-release-maintainer/SKILL.md index ed887dc78b6..f2f1422a797 100644 --- a/.agents/skills/openclaw-release-maintainer/SKILL.md +++ b/.agents/skills/openclaw-release-maintainer/SKILL.md @@ -64,6 +64,7 @@ Use this skill for release and publish-time workflow. Keep ordinary development Before tagging or publishing, run: ```bash +pnpm check:architecture pnpm build pnpm ui:build pnpm release:check @@ -108,6 +109,7 @@ node --import tsx scripts/openclaw-npm-postpublish-verify.ts - Always validate the OpenClaw npm release path before creating the tag. - Default release checks: - `pnpm check` + - `pnpm check:architecture` - `pnpm build` - `pnpm ui:build` - `pnpm release:check` diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index fa6f0bf124b..6e0fb79bb12 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -1289,8 +1289,7 @@ jobs: run_check "ui:i18n:check" pnpm ui:i18n:check fi run_check "gateway-watch-regression" pnpm test:gateway:watch-regression - run_check "check:import-cycles" pnpm check:import-cycles - run_check "check:madge-import-cycles" pnpm check:madge-import-cycles + run_check "check:architecture" pnpm check:architecture ;; *) echo "Unsupported additional check group: $ADDITIONAL_CHECK_GROUP" >&2 diff --git a/.github/workflows/openclaw-npm-release.yml b/.github/workflows/openclaw-npm-release.yml index 9d173ff7cdd..0ee021f9c94 100644 --- a/.github/workflows/openclaw-npm-release.yml +++ b/.github/workflows/openclaw-npm-release.yml @@ -110,6 +110,11 @@ jobs: OPENCLAW_LOCAL_CHECK: "0" run: pnpm check + - name: Check architecture + env: + OPENCLAW_LOCAL_CHECK: "0" + run: pnpm check:architecture + - name: Build run: pnpm build diff --git a/docs/reference/RELEASING.md b/docs/reference/RELEASING.md index 639e4a5270e..b498a0f0808 100644 --- a/docs/reference/RELEASING.md +++ b/docs/reference/RELEASING.md @@ -37,6 +37,8 @@ OpenClaw has three public release lanes: ## Release preflight +- Run `pnpm check:architecture` before release preflight so the broader import + cycle and architecture boundary checks are green outside the faster local gate - Run `pnpm build && pnpm ui:build` before `pnpm release:check` so the expected `dist/*` release artifacts and Control UI bundle exist for the pack validation step