mirror of
https://github.com/openclaw/openclaw.git
synced 2026-06-06 14:01:24 +08:00
Summary: - This PR adds opt-in first-parent merge-head diff-base handling for CI changed-scope, changed-lanes, and OpenGrep PR scans, plus synthetic merge coverage and small lint/type cleanups. - PR surface: Source +6, Tests +204, Config +1, Other +179. Total +390 across 15 files. - Reproducibility: yes. The synthetic merge tests and PR body live-ref proof show the stale payload-base path can include main-only files, and first-parent mode narrows it to PR-owned paths. Automerge notes: - PR branch already contained follow-up commit before automerge: fix(ci): update workflow guard expectations - PR branch already contained follow-up commit before automerge: fix(ci): resolve plugin guardrail lint failures - PR branch already contained follow-up commit before automerge: fix(ci): preserve plugin run context typing - PR branch already contained follow-up commit before automerge: fix(ci): scope PR merge diff checks to first parent Validation: - ClawSweeper review passed for head40235e8c3d. - Required merge gates passed before the squash merge. Prepared head SHA:40235e8c3dReview: https://github.com/openclaw/openclaw/pull/90287#issuecomment-4621155576 Co-authored-by: Mason Huang <masonxhuang@tencent.com> Co-authored-by: clawsweeper <274271284+clawsweeper[bot]@users.noreply.github.com> Co-authored-by: clawsweeper[bot] <274271284+clawsweeper[bot]@users.noreply.github.com> Approved-by: hxy91819 Co-authored-by: hxy91819 <8814856+hxy91819@users.noreply.github.com>
29 lines
732 B
TypeScript
29 lines
732 B
TypeScript
export type ChangedScope = {
|
|
runNode: boolean;
|
|
runMacos: boolean;
|
|
runAndroid: boolean;
|
|
runWindows: boolean;
|
|
runSkillsPython: boolean;
|
|
runChangedSmoke: boolean;
|
|
runControlUiI18n: boolean;
|
|
};
|
|
|
|
export type InstallSmokeScope = {
|
|
runFastInstallSmoke: boolean;
|
|
runFullInstallSmoke: boolean;
|
|
};
|
|
|
|
export function detectChangedScope(changedPaths: string[]): ChangedScope;
|
|
export function detectInstallSmokeScope(changedPaths: string[]): InstallSmokeScope;
|
|
export function listChangedPaths(
|
|
base: string,
|
|
head?: string,
|
|
cwd?: string,
|
|
preferMergeHeadFirstParent?: boolean,
|
|
): string[];
|
|
export function writeGitHubOutput(
|
|
scope: ChangedScope,
|
|
outputPath?: string,
|
|
installSmokeScope?: InstallSmokeScope,
|
|
): void;
|