openclaw/.github
Peter Steinberger 571d5367f1
test(ci): run the preflight manifest from the owner-exported harness
Since #161534 the preflight "Build CI manifest" step runs
.ci-harness/scripts/ci-build-manifest.mjs, but checkout_harness did not
export it, so every pull_request preflight failed until 6c07ebfaf4
added it to preflight_scripts. No test caught the gap: every existing
test builds .ci-harness by hand from all of scripts/lib, and the
dependency-free manifest test ran the builder from the repository path
where every sibling exists.

The dependency-free manifest test now runs the builder from a harness
exported by the real owner.py checkout_harness for the preflight kind
(real git ls-files and checkout-index over a fixture index staged from
the checkout), and asserts that every .ci-harness path referenced by a
preflight step's run or uses exists in that export. It is skipped on
Windows, where the owner launches python rather than python3.

Also drop the preflight clause 6c07ebfaf4 added to the different-SHA
sparse branch: checkout() calls checkout_harness for preflight only when
HEAD equals WORKFLOW_SHA, so that branch is unreachable for preflight.
ci.yml is regenerated with scripts/generate-ci-git-owner.mts (399,898
bytes, under the 480,000-byte guard).

Proof (Blacksmith Testbox): full ci-workflow-guards (145 passed) and
ci-git-owner (159 passed) suites; the owner's tuple without the builder
fails with "Missing preflight harness paths: scripts/ci-build-manifest.mjs",
and without release-version.mjs fails with ERR_MODULE_NOT_FOUND for
.ci-harness/scripts/lib/release-version.mjs; oxfmt and the
test/scripts tsgo project pass. The changed test costs about 0.95 s
(3-4 s wall with --maxWorkers=1, +0.3 s over the repo-path version).
2026-09-29 22:32:20 -07:00
..
actions test(ci): run the preflight manifest from the owner-exported harness 2026-09-29 22:32:20 -07:00
codeql perf(plugins): reuse prepared source SDK alias facts (#150622) 2026-09-16 23:54:50 -07:00
codex/prompts refactor: split release changelogs and synchronize docs mirrors (#145464) 2026-09-11 21:19:18 -07:00
crabbox fix(perf): isolate external evaluator from candidate runtime (#144162) 2026-09-11 21:09:08 +08:00
images/live-media-runner
instructions fix(runtime): require Node builds with lossless SQLite reads (#140672) 2026-09-07 10:31:31 -07:00
ISSUE_TEMPLATE
pr-proof fix(openai): prioritize ChatGPT sign-in and clarify auth choices (#157792) 2026-09-24 23:10:32 -07:00
release fix(release): bump the Vercel CLI tooling undici override to 6.28.1 (GHSA-rfgv-xxqx-mfg5) (#161418) 2026-09-29 23:21:58 +00:00
workflows test(ci): run the preflight manifest from the owner-exported harness 2026-09-29 22:32:20 -07:00
actionlint.yaml chore(ios): simplify store release workflow (#160791) 2026-09-28 19:00:37 -05:00
CODEOWNERS feat(ci): split security review into maintainer and SecOps tiers (#152415) 2026-09-18 23:39:46 -05:00
dependabot.yml
labeler.yml feat(slack-huddles): join Slack huddles as a signed-in Slack user (#159879) 2026-09-28 17:34:03 -07:00
package-trusted-sources.json
pull_request_template.md docs: require UI screenshots in chat and PR (#147263) 2026-09-13 11:41:44 -07:00
retired-sticky-disks.json
security-review-policy.yml feat(ci): split security review into maintainer and SecOps tiers (#152415) 2026-09-18 23:39:46 -05:00
zizmor.yml