@exodus/xqa 1.15.0 → 1.15.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/xqa.cjs +38 -21
- package/package.json +5 -5
package/dist/xqa.cjs
CHANGED
|
@@ -54299,11 +54299,27 @@ function isTerminal(item) {
|
|
|
54299
54299
|
}
|
|
54300
54300
|
return TERMINAL_STATUSES.has(item.status);
|
|
54301
54301
|
}
|
|
54302
|
+
function isRunning(item) {
|
|
54303
|
+
return item?.status === "running";
|
|
54304
|
+
}
|
|
54302
54305
|
function transitionedIds(state, previous) {
|
|
54303
54306
|
return state.itemOrder.filter((id) => {
|
|
54304
54307
|
return isTerminal(state.items.get(id)) && !isTerminal(previous.items.get(id));
|
|
54305
54308
|
});
|
|
54306
54309
|
}
|
|
54310
|
+
function startedIds(state, previous) {
|
|
54311
|
+
return state.itemOrder.filter((id) => {
|
|
54312
|
+
return isRunning(state.items.get(id)) && !isRunning(previous.items.get(id));
|
|
54313
|
+
});
|
|
54314
|
+
}
|
|
54315
|
+
function renderStarted(itemId, state) {
|
|
54316
|
+
const item = state.items.get(itemId);
|
|
54317
|
+
if (item === void 0) {
|
|
54318
|
+
return "";
|
|
54319
|
+
}
|
|
54320
|
+
return `[xqa] started: ${item.name}
|
|
54321
|
+
`;
|
|
54322
|
+
}
|
|
54307
54323
|
function renderAnnotationLevel(level) {
|
|
54308
54324
|
switch (level) {
|
|
54309
54325
|
case "warning": {
|
|
@@ -54371,12 +54387,16 @@ Total: ${String(total)}, Failed: ${String(failed)}
|
|
|
54371
54387
|
`;
|
|
54372
54388
|
}
|
|
54373
54389
|
function githubCiDecorator({ state, previous, filter }) {
|
|
54390
|
+
const started = startedIds(state, previous);
|
|
54374
54391
|
const ids = transitionedIds(state, previous);
|
|
54375
54392
|
const suiteJustEnded = state.suiteEnded && !previous.suiteEnded;
|
|
54376
|
-
if (ids.length === 0 && !suiteJustEnded) {
|
|
54393
|
+
if (started.length === 0 && ids.length === 0 && !suiteJustEnded) {
|
|
54377
54394
|
return "";
|
|
54378
54395
|
}
|
|
54379
54396
|
let output = "";
|
|
54397
|
+
for (const id of started) {
|
|
54398
|
+
output += renderStarted(id, state);
|
|
54399
|
+
}
|
|
54380
54400
|
for (const id of ids) {
|
|
54381
54401
|
output += renderGroup({ itemId: id, state, filter });
|
|
54382
54402
|
}
|
|
@@ -76102,31 +76122,29 @@ function resolveFreestyleTimeout(item, config3) {
|
|
|
76102
76122
|
}
|
|
76103
76123
|
return config3.QA_EXPLORE_TIMEOUT_SECONDS ?? DEFAULT_FREESTYLE_TIMEOUT_SECONDS2;
|
|
76104
76124
|
}
|
|
76105
|
-
function buildFreestyleExplorerConfig(input) {
|
|
76106
|
-
const { item, context, simulatorUdid } = input;
|
|
76107
|
-
const { config: config3, date: date5, appContext } = context;
|
|
76108
|
-
return {
|
|
76109
|
-
mode: "freestyle",
|
|
76110
|
-
date: date5,
|
|
76111
|
-
mcpServers: createDefaultMcpServers(simulatorUdid),
|
|
76112
|
-
allowedTools: ALLOWED_TOOLS,
|
|
76113
|
-
timeoutMs: resolveFreestyleTimeout(item, config3) * MS_PER_SECOND4,
|
|
76114
|
-
appContext: composeAppContext([buildDeviceInstruction(simulatorUdid), appContext, item.prompt]),
|
|
76115
|
-
buildEnv: config3.QA_BUILD_ENV,
|
|
76116
|
-
cwd: ensureWorkerCwd(simulatorUdid),
|
|
76117
|
-
record: true
|
|
76118
|
-
};
|
|
76119
|
-
}
|
|
76120
76125
|
function buildFreestylePipelineConfig(input) {
|
|
76121
76126
|
const { item, context, signal, simulatorUdid, onEvent } = input;
|
|
76122
|
-
const { xqaDirectory, runId } = context;
|
|
76127
|
+
const { config: config3, xqaDirectory, runId, date: date5, appContext } = context;
|
|
76123
76128
|
return {
|
|
76124
76129
|
outputDir: import_node_path21.default.join(xqaDirectory, "output", item.id),
|
|
76125
76130
|
runId,
|
|
76126
76131
|
simulatorUdid,
|
|
76127
76132
|
signal,
|
|
76128
76133
|
onEvent,
|
|
76129
|
-
explorer:
|
|
76134
|
+
explorer: {
|
|
76135
|
+
mode: "freestyle",
|
|
76136
|
+
date: date5,
|
|
76137
|
+
mcpServers: createDefaultMcpServers(simulatorUdid),
|
|
76138
|
+
allowedTools: ALLOWED_TOOLS,
|
|
76139
|
+
timeoutMs: resolveFreestyleTimeout(item, config3) * MS_PER_SECOND4,
|
|
76140
|
+
appContext: composeAppContext([
|
|
76141
|
+
buildDeviceInstruction(simulatorUdid),
|
|
76142
|
+
appContext,
|
|
76143
|
+
item.prompt
|
|
76144
|
+
]),
|
|
76145
|
+
buildEnv: config3.QA_BUILD_ENV,
|
|
76146
|
+
cwd: ensureWorkerCwd(simulatorUdid)
|
|
76147
|
+
}
|
|
76130
76148
|
};
|
|
76131
76149
|
}
|
|
76132
76150
|
function executeFreestyleItem(input) {
|
|
@@ -76148,8 +76166,7 @@ function buildSpecPipelineConfig(input) {
|
|
|
76148
76166
|
allowedTools: ALLOWED_TOOLS,
|
|
76149
76167
|
appContext: composeAppContext([buildDeviceInstruction(simulatorUdid), appContext]),
|
|
76150
76168
|
buildEnv: config3.QA_BUILD_ENV,
|
|
76151
|
-
cwd: ensureWorkerCwd(simulatorUdid)
|
|
76152
|
-
record: true
|
|
76169
|
+
cwd: ensureWorkerCwd(simulatorUdid)
|
|
76153
76170
|
}
|
|
76154
76171
|
};
|
|
76155
76172
|
}
|
|
@@ -76440,7 +76457,7 @@ function resolveXqaDirectory() {
|
|
|
76440
76457
|
return result.value;
|
|
76441
76458
|
}
|
|
76442
76459
|
var program2 = new Command();
|
|
76443
|
-
program2.name("xqa").description("AI-powered QA agent CLI").version(`${"1.15.
|
|
76460
|
+
program2.name("xqa").description("AI-powered QA agent CLI").version(`${"1.15.2"}${false ? ` (dev build +${"409fb4d"})` : ""}`);
|
|
76444
76461
|
program2.command("init").description("Initialize a new xqa project in the current directory").action(() => {
|
|
76445
76462
|
runInitCommand();
|
|
76446
76463
|
});
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@exodus/xqa",
|
|
3
|
-
"version": "1.15.
|
|
3
|
+
"version": "1.15.2",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"engines": {
|
|
6
6
|
"node": ">=22"
|
|
@@ -26,13 +26,13 @@
|
|
|
26
26
|
"typescript": "^5.8.3",
|
|
27
27
|
"vitest": "^3.2.1",
|
|
28
28
|
"zod": "^3.0.0",
|
|
29
|
-
"@qa-agents/display": "0.0.0",
|
|
30
29
|
"@qa-agents/eslint-config": "0.0.0",
|
|
31
30
|
"@qa-agents/explorer": "0.0.0",
|
|
32
|
-
"@qa-agents/mobile-ios": "0.0.0",
|
|
33
|
-
"@qa-agents/shared": "0.0.0",
|
|
34
31
|
"@qa-agents/pipeline": "0.0.0",
|
|
35
|
-
"@qa-agents/
|
|
32
|
+
"@qa-agents/shared": "0.0.0",
|
|
33
|
+
"@qa-agents/typescript-config": "0.0.0",
|
|
34
|
+
"@qa-agents/mobile-ios": "0.0.0",
|
|
35
|
+
"@qa-agents/display": "0.0.0"
|
|
36
36
|
},
|
|
37
37
|
"dependencies": {
|
|
38
38
|
"ajv": "^8.18.0",
|