mirror of
https://github.com/openclaw/openclaw.git
synced 2026-04-28 04:28:58 +02:00
fix: avoid changed gate lint self-lock
This commit is contained in:
@@ -50,6 +50,9 @@ Docs: https://docs.openclaw.ai
|
||||
|
||||
### Fixes
|
||||
|
||||
- Tooling/check:changed: pass parent heavy-check lock markers to lint lanes so
|
||||
`pnpm check:changed` no longer waits on its own `lint:extensions` child.
|
||||
Thanks @steipete.
|
||||
- Plugins/Bonjour: stop the gateway from crash-looping on `CIAO PROBING CANCELLED` when the mDNS watchdog cancels a stuck probe. Restores the rejection-handler wiring dropped during the bonjour plugin migration and shares unhandled-rejection state across module instances so plugin-staged copies of `openclaw/plugin-sdk/runtime` register into the same handler set the host consults. Especially affects Docker on macOS, where mDNS probing reliably hits the watchdog. Thanks @troyhitch.
|
||||
- Google Meet: report pinned Chrome nodes as offline or missing capabilities in
|
||||
setup/join diagnostics, keep inaccessible nodes out of auto-selection, and
|
||||
|
||||
@@ -68,6 +68,7 @@ export function createChangedCheckPlan(result, options = {}) {
|
||||
}
|
||||
};
|
||||
const addTypecheck = (name, args) => add(name, args, createSparseTsgoSkipEnv(baseEnv));
|
||||
const addLint = (name, args) => add(name, args, baseEnv);
|
||||
|
||||
add("conflict markers", ["check:no-conflict-markers"]);
|
||||
|
||||
@@ -109,7 +110,7 @@ export function createChangedCheckPlan(result, options = {}) {
|
||||
|
||||
if (runAll) {
|
||||
addTypecheck("typecheck all", ["tsgo:all"]);
|
||||
add("lint", ["lint"]);
|
||||
addLint("lint", ["lint"]);
|
||||
add("runtime import cycles", ["check:import-cycles"]);
|
||||
return {
|
||||
commands,
|
||||
@@ -135,16 +136,16 @@ export function createChangedCheckPlan(result, options = {}) {
|
||||
}
|
||||
|
||||
if (lanes.core || lanes.coreTests) {
|
||||
add("lint core", ["lint:core"]);
|
||||
addLint("lint core", ["lint:core"]);
|
||||
}
|
||||
if (lanes.extensions || lanes.extensionTests) {
|
||||
add("lint extensions", ["lint:extensions"]);
|
||||
addLint("lint extensions", ["lint:extensions"]);
|
||||
}
|
||||
if (lanes.tooling) {
|
||||
add("lint scripts", ["lint:scripts"]);
|
||||
addLint("lint scripts", ["lint:scripts"]);
|
||||
}
|
||||
if (lanes.apps) {
|
||||
add("lint apps", ["lint:apps"]);
|
||||
addLint("lint apps", ["lint:apps"]);
|
||||
}
|
||||
|
||||
if (lanes.core || lanes.extensions) {
|
||||
|
||||
@@ -122,6 +122,19 @@ describe("scripts/changed-lanes", () => {
|
||||
});
|
||||
});
|
||||
|
||||
it("runs changed-check lint lanes under the parent heavy-check lock", () => {
|
||||
const result = detectChangedLanes(["extensions/discord/src/index.ts"]);
|
||||
const plan = createChangedCheckPlan(result, { env: { PATH: "/usr/bin" } });
|
||||
const lintCommand = plan.commands.find((command) => command.args[0] === "lint:extensions");
|
||||
|
||||
expect(lintCommand?.env).toMatchObject({
|
||||
OPENCLAW_OXLINT_SKIP_LOCK: "1",
|
||||
OPENCLAW_TEST_HEAVY_CHECK_LOCK_HELD: "1",
|
||||
OPENCLAW_TSGO_HEAVY_CHECK_LOCK_HELD: "1",
|
||||
PATH: "/usr/bin",
|
||||
});
|
||||
});
|
||||
|
||||
it("routes core test-only changes to core test lanes only", () => {
|
||||
const result = detectChangedLanes(["src/shared/string-normalization.test.ts"]);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user