mirror of
https://github.com/openclaw/openclaw.git
synced 2026-07-14 11:06:08 +00:00
* test: wire Control UI suite into CI, fix its broken tests, drop dead harness surface
- fix 7 Control UI tests broken on main: module-mock factories are unreliable
under isolate:false shared workers; use RealtimeTalkSession prototype spies
and real jsdom storage instead (chat-realtime, chat-pull-requests)
- add gated checks-ui CI job (runUiTests changed-scope output): chromium
provisioning, lint:ui:no-raw-window-open, pnpm --dir ui test; ~30s on a
4vcpu runner, runs only when ui-affecting paths change
- add weekly node22-compat workflow exercising the supported lower Node bound
with the same command set as the dispatch-only ci.yml job
- delete the unreachable channels entry in EXTENSION_TEST_CONFIG_ROUTES and
the never-populated extensionRoutedChannelTestFiles override machinery
(born empty in 2ccb5cff22); resolved globs are provably identical
- guard run-vitest.mjs hardcoded path maps with existence tests so renames
cannot silently drop extended stall watchdogs
- remove unenforced coverage thresholds; test:coverage is informational, docs
updated (reference/test, help/testing, plugins/sdk-testing)
Closes #104321
* test: pin OPENCLAW_CI_RUN_UI_TESTS in the manifest env expectation
* test(ui): capture the realtime start spy instead of referencing the unbound prototype method
* test(ui): raise ui vitest timeouts for real-browser layout tests on small CI runners
49 lines
1.2 KiB
TypeScript
49 lines
1.2 KiB
TypeScript
export type ChangedScope = {
|
|
runNode: boolean;
|
|
runMacos: boolean;
|
|
runIosBuild: boolean;
|
|
runAndroid: boolean;
|
|
runWindows: boolean;
|
|
runSkillsPython: boolean;
|
|
runChangedSmoke: boolean;
|
|
runControlUiI18n: boolean;
|
|
runUiTests: boolean;
|
|
};
|
|
|
|
export type InstallSmokeScope = {
|
|
runFastInstallSmoke: boolean;
|
|
runFullInstallSmoke: boolean;
|
|
};
|
|
|
|
export type NodeFastScope = {
|
|
runFastOnly: boolean;
|
|
runPluginContracts: boolean;
|
|
runCiRouting: boolean;
|
|
};
|
|
|
|
export type ChangedScopeArgs = {
|
|
base: string;
|
|
head: string;
|
|
mergeHeadFirstParent: boolean;
|
|
};
|
|
|
|
export function detectChangedScope(changedPaths: string[]): ChangedScope;
|
|
export function shouldRunNativeI18n(changedPaths: string[]): boolean;
|
|
export function detectNodeFastScope(changedPaths: string[]): NodeFastScope;
|
|
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,
|
|
nodeFastScope?: NodeFastScope,
|
|
runNativeI18n?: boolean,
|
|
): void;
|
|
|
|
export function parseArgs(argv: string[]): ChangedScopeArgs;
|