Vincent Koc
a4b8ec7890
fix(ci): require fresh untrusted Crabbox leases
2026-07-31 22:28:20 +08:00
Vincent Koc
c630e4aec3
fix(ci): restore Crabbox routing type contracts
2026-07-31 22:28:20 +08:00
Vincent Koc
89e4ef2ab7
fix(ci): preserve routing failure diagnostics
2026-07-31 22:28:20 +08:00
Vincent Koc
3cf0de893e
fix(ci): clarify broker recovery guidance
2026-07-31 22:28:20 +08:00
Vincent Koc
6eea564450
fix(ci): preserve original provider intent
2026-07-31 22:28:20 +08:00
Vincent Koc
11edc89613
fix(ci): harden direct cloud exemptions
2026-07-31 22:28:20 +08:00
Vincent Koc
adf07590f1
fix(ci): enforce workload provider eligibility
2026-07-31 22:28:20 +08:00
Vincent Koc
702de1a196
fix(ci): scope direct cloud overrides
2026-07-31 22:28:20 +08:00
Vincent Koc
fe08359ca8
fix(ci): preserve explicit provider overrides
2026-07-31 22:28:20 +08:00
Vincent Koc
67bde2fc3f
fix(ci): keep workload routing broker-only
2026-07-31 22:28:20 +08:00
Vincent Koc
dca99ee4f2
fix(ci): preserve explicit direct cloud commands
2026-07-31 22:28:20 +08:00
Vincent Koc
c2e5b3a67c
feat(ci): add workload-aware Crabbox routing
2026-07-31 22:28:20 +08:00
Peter Steinberger
a0cc7d11fb
fix(scripts): restore Testbox lease claims to the originating repo after delegated runs ( #110869 )
...
* fix(scripts): restore Testbox lease claims to the originating repo after delegated runs
Delegated Blacksmith Testbox runs execute from throwaway sparse-sync checkouts, so Crabbox stamps retained lease claims with that temporary cwd. Restore only claims still pointing at the child checkout after the run on both success and failure, preserving foreign claims and every other field. This repairs the post-run artifact instead of weakening the pre-run ownership guard.
* fix(scripts): restore claims for delegated runs that create retained leases
2026-07-18 19:49:04 +01:00
Peter Steinberger
4187dff99a
fix(testbox): honor explicit changed-gate base
2026-07-18 09:21:31 +01:00
Peter Steinberger
48eebe090f
fix(testing): make changed-gate bundles self-contained
2026-07-13 19:03:31 -07:00
Peter Steinberger
4645a850d5
fix(testing): omit changed-gate history from bundles
2026-07-13 18:50:35 -07:00
Peter Steinberger
9668b668c5
fix(testing): preserve changed-gate diagnostics
2026-07-13 18:50:35 -07:00
Peter Steinberger
c4c72aa086
fix(testing): reset reused changed-gate worktrees
2026-07-13 18:50:35 -07:00
Peter Steinberger
5c7e1341ab
fix: fail crabbox lease-claim refusals ( #104789 )
2026-07-11 16:44:47 -07:00
Peter Steinberger
d0152d71b4
improve(tooling): unblock scripts/pr landings and clarify crabbox fast failures ( #104658 )
...
* improve(pr): trust origin/main-matching wrappers when the canonical checkout is parked elsewhere
* improve(crabbox): hint at lease expiry when reused-lease runs fail fast
* fix(pr): pin the wrapper trust anchor to the remote-tracking ref
2026-07-11 12:47:07 -07:00
Vincent Koc
c47ceb0f3d
improve(release): reuse exact-SHA validation evidence ( #104162 )
...
* perf(release): share changelog verification snapshots
* perf(release): reuse exact-SHA validation evidence
* feat(release): checkpoint candidate workflow state
* feat(release): watch CI transitions compactly
* fix(testbox): rotate stale reusable leases
* refactor(release): move CI verifier into scripts
* fix(release): preserve verifier executable mode
* fix(testbox): force noninteractive remote hydration
* perf(testbox): skip sync for proven clean heads
* fix(testbox): keep changed gates synchronized
* fix(testbox): isolate git state probes
* fix(testbox): isolate wrapper git commands
* fix(testbox): preserve git command contracts
* fix(release): validate reused SHA evidence
* fix(release): resume serialized plugin selections
* fix(testbox): sync source on every lease reuse
* fix(release): verify from trusted workflow checkout
* fix(release): gate evidence reuse on trusted lineage
* fix(release): support legacy verifier checkouts
* fix(testbox): export CI across shell snippets
* fix(release): revalidate reused evidence before publish
* fix(release): reject untrusted reuse before lookup
* fix(release): reuse SHA-pinned root evidence
* fix(ci): allow unreleased notes in QA packages
* fix(release): satisfy script lint contracts
* fix(release): handle Unicode workflow refs safely
2026-07-11 12:48:27 +08:00
Peter Steinberger
83ebbcb3ac
fix(crabbox): retry cold metadata probes so a slow run --help does not block validation ( #102159 )
...
The wrapper probes `crabbox --version` and `crabbox run --help` once each with a
snappy 5s timeout to enumerate providers before delegating. A cold Crabbox — the
first call right after a version bump, or one on a loaded machine — can exceed
that timeout while rendering `run --help` (52KB, emitted on stderr in 0.36) or
doing first-run init, and can emit nothing on that first call. When that happens
both guards fire and hard-exit the wrapper ("selected binary failed basic
--version/--help sanity checks" or "could not parse provider list from --help;
refusing to run"), which blocks ALL remote validation (`pnpm check:changed`,
remote `pnpm test` lanes) even though the binary is fine.
Retry each metadata probe once with a generous 20s timeout when the first attempt
is killed or returns empty. The warm path is unchanged (one ~instant probe); only
a slow/empty first probe pays for the retry, after which the sanity/provider-list
guards judge the recovered result. Add a regression test: a fake Crabbox whose
`run --help` is slower than the default probe timeout (and, like 0.36, writes help
to stderr) is now recovered by the retry instead of hard-failing.
2026-07-08 12:53:48 +01:00
Peter Steinberger
2723628dd9
perf(test): unit-test crabbox provider aliases
2026-07-06 14:52:53 -04:00
Peter Steinberger
1f484a8dbd
test: speed up and stabilize full suite
2026-07-05 08:00:23 -04:00
Shakker
c53dbcaf4d
fix: surface delegated Testbox proof status
2026-06-27 23:53:53 +01:00
Vincent Koc
e4763b0631
fix(crabbox): bootstrap WSL2 package proof
2026-06-24 20:18:01 +08:00
Vincent Koc
4d034639ad
fix(crabbox): require Xcode for macOS proof
2026-06-24 09:01:42 +08:00
Vincent Koc
252673d5b1
fix(qa): bootstrap raw macos package scripts
2026-06-23 22:51:04 +02:00
Vincent Koc
ca5905eb90
fix(crabbox): reclaim sparse reused leases
2026-06-23 10:09:38 +02:00
Vincent Koc
dcb6b0dd6f
fix(ci): restore macOS and Windows QA gates
...
Restores Azure native Windows hydrated node_modules bootstrap, fixes the macOS settings SwiftFormat drift, and stabilizes lifecycle process-group CI proof.
Proof:
- `tbx_01kvrpr5kfc58wdnakx2zkc4k6`: `corepack pnpm test:serial test/scripts/plugin-lifecycle-measure.test.ts` passed.
- `tbx_01kvrpvcrmsxgyb886pa127qq3`: `OPENCLAW_TESTBOX=1 ... corepack pnpm check:changed` passed.
- `tbx_01kvrpzpafmp27tyb4tg9yvwvz`: touched-file `format:check` passed.
- PR CI `27988226071` passed, including `macos-node`, `macos-swift`, and `checks-node-compact-small-whole-2`.
2026-06-23 06:38:27 +08:00
Vincent Koc
d5d9a8256d
fix(crabbox): route native Windows hydrate jobs
2026-06-23 04:34:03 +08:00
Vincent Koc
77f4e45c35
fix(scripts): support npm node command shims
2026-06-22 13:16:33 +02:00
Vincent Koc
d48dcc664b
fix(scripts): use requested platform for shim checks
2026-06-22 13:16:33 +02:00
Vincent Koc
54d24cd956
fix(scripts): preserve node command shim arguments on Windows
2026-06-22 13:16:32 +02:00
Vincent Koc
f0afbd7e32
fix(crabbox): preflight macOS Swift toolchain
2026-06-22 16:34:57 +08:00
Vincent Koc
6c4028e073
fix(scripts): resolve Windows cmd shim launcher
2026-06-21 11:15:14 +02:00
Vincent Koc
4341cf24cc
fix(crabbox): detect node-wrapped changed gates
2026-06-20 21:19:03 +02:00
Vincent Koc
141fb2b119
fix(crabbox): bootstrap macOS stdin shell scripts
2026-06-20 19:44:40 +02:00
Vincent Koc
64b6488f6c
fix(crabbox): bootstrap env-option macOS stdin scripts
2026-06-20 19:39:05 +02:00
Vincent Koc
2454acc287
fix(crabbox): bound macos bun bootstrap fetches
2026-06-20 18:38:00 +02:00
Vincent Koc
fce5db415b
fix(crabbox): bound macos node bootstrap downloads
2026-06-20 18:33:48 +02:00
Vincent Koc
99d8549de6
fix(crabbox): always mark shell changed gates as remote
2026-06-20 16:04:05 +02:00
Vincent Koc
e65619dd0c
fix(crabbox): clean wrapper child trees on parent signal
2026-06-20 13:52:34 +02:00
Vincent Koc
61ee4ffdfc
fix(scripts): guard reused testbox keys
2026-06-20 05:35:10 +02:00
Vincent Koc
74ad4f592a
fix(ci): route Windows proof away from Linux Testbox
2026-06-18 22:09:58 +02:00
Vincent Koc
7ef85bfb1d
fix(crabbox): refresh stale changed-gate git metadata
2026-06-18 19:23:59 +02:00
Vincent Koc
8b34b8537a
fix(crabbox): bootstrap bun on aws macos
2026-06-18 19:06:31 +02:00
Vincent Koc
3576d1e967
fix(testbox): reject unsafe Crabbox version tuples
2026-06-16 23:12:17 +02:00
Vincent Koc
6da2d6ac5a
fix(crabbox): bootstrap absolute macOS env pnpm
2026-06-16 04:59:05 +02:00
Vincent Koc
db194a6887
fix(crabbox): detect direct env changed gates
2026-06-16 04:40:09 +02:00