mirror of
https://github.com/openclaw/openclaw.git
synced 2026-07-23 20:21:11 +00:00
* perf(ci): bind sticky dependency disk into test shards * chore(ci): restore workflow guard coverage * perf(ci): skip pnpm install on exact sticky hits * fix(ci): require stock layout for sticky dependencies * perf(ci): bypass pnpm for test shard launches * fix(ci): declare direct shard runner command * fix(ci): bypass pnpm in warm shard builds * fix(ci): invalidate sticky deps on pnpm config * ci: document sticky failure guard
47 lines
1.1 KiB
TypeScript
47 lines
1.1 KiB
TypeScript
export type ShardTargetPlan = {
|
|
kind: "target";
|
|
name: string;
|
|
target: string;
|
|
};
|
|
|
|
export type ShardGroupPlan = {
|
|
kind: "group";
|
|
name: string;
|
|
plan: {
|
|
configs: string[];
|
|
env?: Record<string, unknown> | null;
|
|
includePatterns?: string[] | null;
|
|
shard_name?: string;
|
|
};
|
|
};
|
|
|
|
export type ShardPlan = ShardTargetPlan | ShardGroupPlan;
|
|
|
|
export function resolveShardPlans(env?: Record<string, string | undefined>): ShardPlan[];
|
|
|
|
export function buildChildEnv(
|
|
entry: ShardPlan,
|
|
baseEnv: Record<string, string | undefined>,
|
|
scratchDir: string,
|
|
index: number,
|
|
): Record<string, string | undefined>;
|
|
|
|
export function resolveShardChildCommand(
|
|
args: string[],
|
|
nodeExecPath?: string,
|
|
): { command: string; args: string[] };
|
|
|
|
export function runShardPlans(
|
|
plans: ShardPlan[],
|
|
options?: {
|
|
concurrency?: number;
|
|
env?: Record<string, string | undefined>;
|
|
runChild?: (
|
|
args: string[],
|
|
childEnv: Record<string, string | undefined>,
|
|
label: string,
|
|
) => Promise<number>;
|
|
scratchDir?: string;
|
|
},
|
|
): Promise<number>;
|