@doksi/mcp 0.1.1 → 0.1.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.
@@ -1,5 +1,6 @@
1
1
  import type { AddTargetInput, RunTestsInput, SearchWorkspaceInput, TestDefinition, WorkspaceItemInput } from "./types.js";
2
2
  export declare class DoksiApiClient {
3
+ private readonly rootUrl;
3
4
  private readonly baseUrl;
4
5
  private readonly apiKey;
5
6
  private readonly cache;
@@ -7,6 +8,7 @@ export declare class DoksiApiClient {
7
8
  constructor(baseUrl: string, apiKey: string);
8
9
  invalidateCache(): void;
9
10
  private request;
11
+ private reportRequest;
10
12
  private putToUploadUrl;
11
13
  searchWorkspace(input: SearchWorkspaceInput): Promise<unknown>;
12
14
  getWorkspaceItem(input: WorkspaceItemInput): Promise<unknown>;
@@ -30,5 +32,36 @@ export declare class DoksiApiClient {
30
32
  runTests(input: RunTestsInput): Promise<unknown>;
31
33
  getRun(runId: string): Promise<unknown>;
32
34
  getResult(resultId: string): Promise<unknown>;
35
+ getLiveResultState(input: {
36
+ resultId: string;
37
+ includeScreenshot?: boolean;
38
+ limit?: number;
39
+ }): Promise<unknown>;
40
+ getLiveResultActions(input: {
41
+ resultId: string;
42
+ limit?: number;
43
+ afterSequence?: number;
44
+ beforeSequence?: number;
45
+ }): Promise<unknown>;
46
+ getResultIssues(resultId: string): Promise<unknown>;
47
+ getResultActions(resultId: string): Promise<unknown>;
48
+ getResultNetwork(resultId: string): Promise<unknown>;
49
+ searchResultLogs(input: {
50
+ resultId: string;
51
+ type?: "all" | "network" | "logcat";
52
+ levels?: string;
53
+ q?: string;
54
+ before?: number;
55
+ limit?: number;
56
+ }): Promise<unknown>;
57
+ getResultActivity(resultId: string): Promise<unknown>;
58
+ waitForResult(input: {
59
+ runId?: string;
60
+ resultId?: string;
61
+ maxWaitSeconds?: number;
62
+ pollSeconds?: number;
63
+ maxResults?: number;
64
+ includeLiveState?: boolean;
65
+ }): Promise<unknown>;
33
66
  stopRun(runId: string): Promise<unknown>;
34
67
  }
@@ -3,12 +3,14 @@ import { basename, extname } from "path";
3
3
  import JSZip from "jszip";
4
4
  import { DoksiApiError } from "./types.js";
5
5
  export class DoksiApiClient {
6
+ rootUrl;
6
7
  baseUrl;
7
8
  apiKey;
8
9
  cache = new Map();
9
10
  cacheTtlMs = 30_000;
10
11
  constructor(baseUrl, apiKey) {
11
- this.baseUrl = `${baseUrl.replace(/\/+$/, "")}/external/doksi-mcp`;
12
+ this.rootUrl = baseUrl.replace(/\/+$/, "");
13
+ this.baseUrl = `${this.rootUrl}/external/doksi-mcp`;
12
14
  this.apiKey = apiKey;
13
15
  }
14
16
  invalidateCache() {
@@ -38,6 +40,20 @@ export class DoksiApiClient {
38
40
  }
39
41
  return value;
40
42
  }
43
+ async reportRequest(resultId, path, params) {
44
+ const search = new URLSearchParams();
45
+ for (const [key, value] of Object.entries(params ?? {})) {
46
+ if (value !== undefined && value !== "")
47
+ search.set(key, String(value));
48
+ }
49
+ const suffix = search.toString() ? `?${search.toString()}` : "";
50
+ const url = `${this.rootUrl}/external/report/result/${encodeURIComponent(resultId)}${path}${suffix}`;
51
+ const response = await fetch(url);
52
+ if (!response.ok) {
53
+ throw new DoksiApiError(response.status, await response.text(), url);
54
+ }
55
+ return await response.json();
56
+ }
41
57
  async putToUploadUrl(uploadUrl, bytes, contentType) {
42
58
  const response = await fetch(uploadUrl, {
43
59
  method: "PUT",
@@ -142,10 +158,119 @@ export class DoksiApiClient {
142
158
  return result;
143
159
  }
144
160
  async getRun(runId) {
145
- return this.request("GET", `/runs/${encodeURIComponent(runId)}`, undefined, { cache: true });
161
+ return this.request("GET", `/runs/${encodeURIComponent(runId)}`);
146
162
  }
147
163
  async getResult(resultId) {
148
- return this.request("GET", `/results/${encodeURIComponent(resultId)}`, undefined, { cache: true });
164
+ return this.request("GET", `/results/${encodeURIComponent(resultId)}`);
165
+ }
166
+ async getLiveResultState(input) {
167
+ const params = new URLSearchParams();
168
+ if (input.includeScreenshot)
169
+ params.set("includeScreenshot", "true");
170
+ if (input.limit)
171
+ params.set("limit", String(input.limit));
172
+ const suffix = params.toString() ? `?${params.toString()}` : "";
173
+ return this.request("GET", `/results/${encodeURIComponent(input.resultId)}/live${suffix}`);
174
+ }
175
+ async getLiveResultActions(input) {
176
+ const params = new URLSearchParams();
177
+ if (input.limit)
178
+ params.set("limit", String(input.limit));
179
+ if (input.afterSequence !== undefined)
180
+ params.set("afterSequence", String(input.afterSequence));
181
+ if (input.beforeSequence !== undefined)
182
+ params.set("beforeSequence", String(input.beforeSequence));
183
+ const suffix = params.toString() ? `?${params.toString()}` : "";
184
+ return this.request("GET", `/results/${encodeURIComponent(input.resultId)}/live-actions${suffix}`);
185
+ }
186
+ async getResultIssues(resultId) {
187
+ return this.reportRequest(resultId, "/issues");
188
+ }
189
+ async getResultActions(resultId) {
190
+ return this.reportRequest(resultId, "/actions");
191
+ }
192
+ async getResultNetwork(resultId) {
193
+ return this.reportRequest(resultId, "/relevant-network");
194
+ }
195
+ async searchResultLogs(input) {
196
+ return this.reportRequest(input.resultId, "/telemetry/list", {
197
+ type: input.type,
198
+ levels: input.levels,
199
+ q: input.q,
200
+ before: input.before,
201
+ limit: input.limit,
202
+ });
203
+ }
204
+ async getResultActivity(resultId) {
205
+ return this.reportRequest(resultId, "/telemetry/activity");
206
+ }
207
+ async waitForResult(input) {
208
+ const maxWaitSeconds = clamp(input.maxWaitSeconds ?? 45, 5, 55);
209
+ const pollSeconds = clamp(input.pollSeconds ?? 10, 5, 30);
210
+ const maxResults = clamp(input.maxResults ?? 10, 1, 20);
211
+ const deadline = Date.now() + maxWaitSeconds * 1000;
212
+ const timeline = [];
213
+ const startedAt = Date.now();
214
+ let run;
215
+ let results = [];
216
+ let timedOut = false;
217
+ while (true) {
218
+ if (input.runId)
219
+ run = await this.getRun(input.runId);
220
+ const runModel = run?.run ?? run;
221
+ const resultIds = [...new Set([
222
+ ...(input.resultId ? [input.resultId] : []),
223
+ ...(runModel?.resultIds ?? []),
224
+ ])].slice(0, maxResults);
225
+ if (resultIds.length) {
226
+ results = await Promise.all(resultIds.map(async (resultId) => {
227
+ try {
228
+ const response = await this.getResult(resultId);
229
+ return response?.result ?? response;
230
+ }
231
+ catch (error) {
232
+ return { id: resultId, status: "unknown", error: error instanceof Error ? error.message : String(error) };
233
+ }
234
+ }));
235
+ }
236
+ timeline.push({
237
+ atSeconds: Math.round((Date.now() - startedAt) / 1000),
238
+ runStatus: runStatusText(runModel),
239
+ resultStatuses: results.length
240
+ ? results.map(result => `${result.id}:${result.status ?? "unknown"}/${result.evidenceStatus ?? "unknown"}`).join(", ")
241
+ : "no results yet",
242
+ });
243
+ const allReady = results.length > 0 && results.every(result => !isExecutingStatus(result.status) && isFinalEvidenceStatus(result.evidenceStatus));
244
+ if (allReady)
245
+ break;
246
+ if (Date.now() >= deadline) {
247
+ timedOut = true;
248
+ break;
249
+ }
250
+ await sleep(pollSeconds * 1000);
251
+ }
252
+ let liveState;
253
+ const focusResult = results[0];
254
+ if (input.includeLiveState !== false && focusResult?.id) {
255
+ try {
256
+ liveState = await this.getLiveResultState({ resultId: focusResult.id, limit: 5 });
257
+ }
258
+ catch {
259
+ liveState = undefined;
260
+ }
261
+ }
262
+ return {
263
+ run: run?.run ?? run,
264
+ results,
265
+ focusResultId: focusResult?.id,
266
+ liveState,
267
+ timeline,
268
+ elapsedSeconds: Math.round((Date.now() - startedAt) / 1000),
269
+ timedOut,
270
+ next: timedOut
271
+ ? `Call wait_for_result again with ${focusResult?.id ? `resultId=${focusResult.id}` : `runId=${input.runId}`}.`
272
+ : `Call get_result with resultId=${focusResult?.id}.`,
273
+ };
149
274
  }
150
275
  async stopRun(runId) {
151
276
  const result = await this.request("POST", `/runs/${encodeURIComponent(runId)}/stop`);
@@ -153,6 +278,23 @@ export class DoksiApiClient {
153
278
  return result;
154
279
  }
155
280
  }
281
+ function sleep(ms) {
282
+ return new Promise(resolve => setTimeout(resolve, ms));
283
+ }
284
+ function clamp(value, min, max) {
285
+ return Math.min(Math.max(Math.floor(value), min), max);
286
+ }
287
+ function isExecutingStatus(status) {
288
+ return status === "queued" || status === "starting" || status === "running";
289
+ }
290
+ function isFinalEvidenceStatus(status) {
291
+ return status === "final" || status === "failed";
292
+ }
293
+ function runStatusText(run) {
294
+ const counts = run?.resultCountsByStatus ?? {};
295
+ const entries = Object.entries(counts);
296
+ return entries.length ? entries.map(([status, count]) => `${status}:${count}`).join(",") : undefined;
297
+ }
156
298
  async function prepareAndroidUpload(filePath) {
157
299
  const extension = extname(filePath).toLowerCase();
158
300
  const bytes = await readFile(filePath);
@@ -1 +1 @@
1
- {"version":3,"file":"api-client.js","sourceRoot":"","sources":["../src/api-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AACzC,OAAO,KAAK,MAAM,OAAO,CAAC;AAS1B,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAS3C,MAAM,OAAO,cAAc;IACR,OAAO,CAAS;IAChB,MAAM,CAAS;IACf,KAAK,GAAG,IAAI,GAAG,EAA+B,CAAC;IAC/C,UAAU,GAAG,MAAM,CAAC;IAErC,YAAY,OAAe,EAAE,MAAc;QACzC,IAAI,CAAC,OAAO,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,qBAAqB,CAAC;QACnE,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAED,eAAe;QACb,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;IACrB,CAAC;IAEO,KAAK,CAAC,OAAO,CACnB,MAAc,EACd,IAAY,EACZ,IAAc,EACd,UAA+B,EAAE;QAEjC,MAAM,QAAQ,GAAG,GAAG,MAAM,IAAI,IAAI,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,IAAI,IAAI,CAAC,EAAE,CAAC;QACrE,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;YAClB,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAA8B,CAAC;YAClE,IAAI,GAAG,IAAI,GAAG,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE;gBAAE,OAAO,GAAG,CAAC,KAAK,CAAC;QAC1D,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO,GAAG,IAAI,EAAE,EAAE;YACrD,MAAM;YACN,OAAO,EAAE;gBACP,aAAa,EAAE,UAAU,IAAI,CAAC,MAAM,EAAE;gBACtC,cAAc,EAAE,kBAAkB;aACnC;YACD,GAAG,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC9D,CAAC,CAAC;QAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,IAAI,aAAa,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,QAAQ,CAAC,IAAI,EAAE,EAAE,GAAG,IAAI,CAAC,OAAO,GAAG,IAAI,EAAE,CAAC,CAAC;QAC5F,CAAC;QAED,MAAM,KAAK,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAM,CAAC;QAC3C,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;YAClB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;QAC/E,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,KAAK,CAAC,cAAc,CAAC,SAAiB,EAAE,KAAa,EAAE,WAAmB;QAChF,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,SAAS,EAAE;YACtC,MAAM,EAAE,KAAK;YACb,OAAO,EAAE,EAAE,cAAc,EAAE,WAAW,EAAE;YACxC,IAAI,EAAE,KAA4B;SACnC,CAAC,CAAC;QACH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,2BAA2B,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;QACjE,CAAC;IACH,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,KAA2B;QAC/C,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;QACrC,IAAI,KAAK,CAAC,MAAM;YAAE,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;QACrD,IAAI,KAAK,CAAC,KAAK;YAAE,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;QAC1D,IAAI,KAAK,CAAC,IAAI;YAAE,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;QACvD,IAAI,KAAK,CAAC,KAAK,EAAE,MAAM;YAAE,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QACpE,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAChE,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,aAAa,MAAM,EAAE,EAAE,SAAS,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IAChF,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,KAAyB;QAC9C,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,UAAU,kBAAkB,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,kBAAkB,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,EAAE,SAAS,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACrI,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,KAAmF;QAClG,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,WAAW,EAAE,KAAK,CAAC,CAAC;QAC9D,IAAI,CAAC,eAAe,EAAE,CAAC;QACvB,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,KAAuC;QACvD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,aAAa,EAAE,KAAK,CAAC,CAAC;QAChE,IAAI,CAAC,eAAe,EAAE,CAAC;QACvB,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,KAAqB;QACnC,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;YACnB,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,IAAI,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC;YACjF,MAAM,QAAQ,GAAG,MAAM,oBAAoB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YAC5D,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAyC,MAAM,EAAE,qBAAqB,EAAE;gBACvG,IAAI;gBACJ,QAAQ,EAAE,SAAS;gBACnB,IAAI,EAAE,KAAK,CAAC,YAAY;aACzB,CAAC,CAAC;YACH,MAAM,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,SAAS,EAAE,QAAQ,CAAC,KAAK,EAAE,iBAAiB,CAAC,CAAC;YAC/E,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,UAAU,EAAE;gBACpD,IAAI;gBACJ,OAAO,EAAE,MAAM,CAAC,OAAO;gBACvB,QAAQ,EAAE,SAAS;gBACnB,IAAI,EAAE,KAAK,CAAC,YAAY;aACzB,CAAC,CAAC;YACH,IAAI,CAAC,eAAe,EAAE,CAAC;YACvB,OAAO,MAAM,CAAC;QAChB,CAAC;QAED,IAAI,KAAK,CAAC,GAAG,EAAE,CAAC;YACd,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,UAAU,EAAE;gBACpD,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,GAAG;gBAC7B,GAAG,EAAE,KAAK,CAAC,GAAG;gBACd,QAAQ,EAAE,KAAK,CAAC,QAAQ,IAAI,KAAK;gBACjC,IAAI,EAAE,KAAK,CAAC,YAAY;aACzB,CAAC,CAAC;YACH,IAAI,CAAC,eAAe,EAAE,CAAC;YACvB,OAAO,MAAM,CAAC;QAChB,CAAC;QAED,MAAM,IAAI,KAAK,CAAC,qEAAqE,CAAC,CAAC;IACzF,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,KAA6D;QACpF,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,IAAI,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QACxD,MAAM,SAAS,GAAG,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC;QACpD,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,IAAI,eAAe,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QACnE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAyC,MAAM,EAAE,4BAA4B,EAAE;YAC9G,QAAQ;YACR,QAAQ;YACR,SAAS;SACV,CAAC,CAAC;QACH,MAAM,KAAK,GAAG,MAAM,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAC7C,MAAM,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,SAAS,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;QAC7D,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,iBAAiB,EAAE;YAC3D,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,QAAQ;YACR,QAAQ;YACR,SAAS;YACT,MAAM,EAAE,QAAQ;SACjB,CAAC,CAAC;QACH,IAAI,CAAC,eAAe,EAAE,CAAC;QACvB,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,KAAuB;QACvC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,QAAQ,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QAC/D,IAAI,CAAC,eAAe,EAAE,CAAC;QACvB,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,KAAuB;QACvC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,QAAQ,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QAChE,IAAI,CAAC,eAAe,EAAE,CAAC;QACvB,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,KAAoB;QACjC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;QAC1D,IAAI,CAAC,eAAe,EAAE,CAAC;QACvB,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,KAAa;QACxB,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,SAAS,kBAAkB,CAAC,KAAK,CAAC,EAAE,EAAE,SAAS,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IAC/F,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,QAAgB;QAC9B,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,YAAY,kBAAkB,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACrG,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,KAAa;QACzB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,SAAS,kBAAkB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACrF,IAAI,CAAC,eAAe,EAAE,CAAC;QACvB,OAAO,MAAM,CAAC;IAChB,CAAC;CACF;AAED,KAAK,UAAU,oBAAoB,CAAC,QAAgB;IAClD,MAAM,SAAS,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,CAAC;IAClD,MAAM,KAAK,GAAG,MAAM,QAAQ,CAAC,QAAQ,CAAC,CAAC;IACvC,IAAI,SAAS,KAAK,MAAM;QAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IAC3C,IAAI,SAAS,KAAK,MAAM,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;IACzE,CAAC;IAED,MAAM,GAAG,GAAG,IAAI,KAAK,EAAE,CAAC;IACxB,GAAG,CAAC,IAAI,CAAC,qBAAqB,EAAE,KAAK,CAAC,CAAC;IACvC,OAAO,EAAE,KAAK,EAAE,MAAM,GAAG,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,WAAW,EAAE,SAAS,EAAE,kBAAkB,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC;AAC9H,CAAC;AAED,SAAS,eAAe,CAAC,QAAgB;IACvC,QAAQ,OAAO,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC;QACxC,KAAK,MAAM;YACT,OAAO,UAAU,CAAC;QACpB,KAAK,OAAO;YACV,OAAO,kBAAkB,CAAC;QAC5B,KAAK,MAAM;YACT,OAAO,YAAY,CAAC;QACtB,KAAK,MAAM;YACT,OAAO,WAAW,CAAC;QACrB,KAAK,MAAM,CAAC;QACZ,KAAK,OAAO;YACV,OAAO,YAAY,CAAC;QACtB,KAAK,MAAM;YACT,OAAO,iBAAiB,CAAC;QAC3B,KAAK,MAAM;YACT,OAAO,iBAAiB,CAAC;QAC3B;YACE,OAAO,0BAA0B,CAAC;IACtC,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"api-client.js","sourceRoot":"","sources":["../src/api-client.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,19 @@ export declare function textResult(text: string): {
4
4
  text: string;
5
5
  }[];
6
6
  };
7
+ export declare function textAndImageResult(text: string, image?: {
8
+ dataBase64?: string;
9
+ mimeType?: string;
10
+ }): {
11
+ content: ({
12
+ type: "text";
13
+ text: string;
14
+ } | {
15
+ type: "image";
16
+ data: string;
17
+ mimeType: string;
18
+ })[];
19
+ };
7
20
  export declare function errorResult(error: unknown): {
8
21
  content: {
9
22
  type: "text";
@@ -11,6 +24,12 @@ export declare function errorResult(error: unknown): {
11
24
  }[];
12
25
  isError: true;
13
26
  };
27
+ export declare function resultNotReadyResult(error: unknown, resultId: string): {
28
+ content: {
29
+ type: "text";
30
+ text: string;
31
+ }[];
32
+ };
14
33
  export declare function rawOrProse(rawJson: boolean | undefined, data: unknown, formatter: (data: any) => string): {
15
34
  content: {
16
35
  type: "text";
@@ -27,5 +46,13 @@ export declare function formatArtifactFileUploaded(data: any): string;
27
46
  export declare function formatTestsChanged(data: any, verb: "Created" | "Updated"): string;
28
47
  export declare function formatRunStarted(data: any): string;
29
48
  export declare function formatRun(data: any): string;
49
+ export declare function formatWaitForResult(data: any): string;
30
50
  export declare function formatResult(data: any): string;
51
+ export declare function formatLiveResultState(data: any): string;
52
+ export declare function formatLiveResultActions(data: any): string;
31
53
  export declare function formatStopRun(data: any): string;
54
+ export declare function formatResultIssues(data: any): string;
55
+ export declare function formatResultActions(data: any): string;
56
+ export declare function formatResultNetwork(data: any): string;
57
+ export declare function formatResultLogs(data: any): string;
58
+ export declare function formatResultActivity(data: any): string;
@@ -2,14 +2,26 @@ import { DoksiApiError } from "./types.js";
2
2
  export function textResult(text) {
3
3
  return { content: [{ type: "text", text }] };
4
4
  }
5
+ export function textAndImageResult(text, image) {
6
+ const content = [{ type: "text", text }];
7
+ if (image?.dataBase64 && image.mimeType) {
8
+ content.push({ type: "image", data: image.dataBase64, mimeType: image.mimeType });
9
+ }
10
+ return { content };
11
+ }
5
12
  export function errorResult(error) {
6
13
  return {
7
14
  content: [{ type: "text", text: humanError(error) }],
8
15
  isError: true,
9
16
  };
10
17
  }
18
+ export function resultNotReadyResult(error, resultId) {
19
+ if (!isResultNotCompletedError(error))
20
+ return errorResult(error);
21
+ return textResult(`Result ${resultId} is not completed yet, so final evidence is not ready.\n\nNext: call wait_for_result with resultId=${resultId}.`);
22
+ }
11
23
  export function rawOrProse(rawJson, data, formatter) {
12
- return textResult(rawJson ? JSON.stringify(data) : formatter(data));
24
+ return textResult(rawJson ? JSON.stringify(sanitizeForRaw(data)) : formatter(data));
13
25
  }
14
26
  export function humanError(error) {
15
27
  if (error instanceof DoksiApiError) {
@@ -27,8 +39,14 @@ function parseErrorBody(body) {
27
39
  return body;
28
40
  }
29
41
  }
42
+ function isResultNotCompletedError(error) {
43
+ if (!(error instanceof DoksiApiError))
44
+ return false;
45
+ return error.statusCode === 409 && parseErrorBody(error.responseBody).toLowerCase().includes("result is not yet completed");
46
+ }
30
47
  export function formatWorkspace(data) {
31
48
  const sections = data?.sections ?? {};
49
+ const cursors = data?.cursors ?? {};
32
50
  const lines = ["Workspace context:"];
33
51
  appendList(lines, "Tests", sections.tests, formatTestLine);
34
52
  appendList(lines, "Runs", sections.runs, formatRunLine);
@@ -37,7 +55,12 @@ export function formatWorkspace(data) {
37
55
  appendList(lines, "Categories", sections.categories, formatCategoryLine);
38
56
  appendList(lines, "Artifact files", sections.artifactFiles, formatArtifactFileLine);
39
57
  lines.push("");
40
- lines.push(`Next: use IDs above with create_tests, run_tests, or get_workspace_item. For more, repeat search_workspace with skip=${Number(data?.skip ?? 0) + Number(data?.limit ?? 20)}.`);
58
+ const more = Object.entries(cursors)
59
+ .filter(([, cursor]) => cursor?.hasMore)
60
+ .map(([section, cursor]) => `${section} skip=${cursor.nextSkip}`);
61
+ lines.push("Next: use an ID above with get_workspace_item when you need detail.");
62
+ if (more.length)
63
+ lines.push(`More: repeat search_workspace with the relevant kind and ${more.join("; ")}.`);
41
64
  return lines.join("\n");
42
65
  }
43
66
  export function formatWorkspaceItem(data) {
@@ -58,7 +81,7 @@ ${item.description ?? ""}
58
81
  Expectation:
59
82
  ${item.expectation ?? ""}
60
83
 
61
- Next: update with update_tests or run with run_tests.`;
84
+ Next: call run_tests with test id ${item.id} when ready.`;
62
85
  }
63
86
  if (kind === "accounts") {
64
87
  const fields = Object.keys(item.nonSensitiveFields ?? {}).join(", ") || "only secret fields, hidden";
@@ -92,11 +115,14 @@ Size: ${item.sizeBytes ?? 0} bytes.
92
115
 
93
116
  Next: use file id ${item.id} in a file parameter artifact.`;
94
117
  }
118
+ if (kind === "results") {
119
+ return formatResult({ result: item, includeContext: true, includeInstructions: true });
120
+ }
95
121
  return keyValueSummary(`Workspace ${kind}`, item);
96
122
  }
97
123
  export function formatAccountCreated(data) {
98
124
  const account = data?.account;
99
- return `Created account "${account?.name}" with id ${account?.id}.\n\nVisible fields: ${Object.keys(account?.nonSensitiveFields ?? {}).join(", ") || "none"}. Secrets are stored but not returned.\n\nNext: use account id ${account?.id} in run_tests or test artifacts when a specific account is required.`;
125
+ return `Created account "${account?.name}" with id ${account?.id}.\n\nVisible fields: ${Object.keys(account?.nonSensitiveFields ?? {}).join(", ") || "none"}. Secrets are stored but not returned.\n\nNext: use account id ${account?.id} in run_tests when a specific account is required.`;
100
126
  }
101
127
  export function formatCategoryCreated(data) {
102
128
  const category = data?.category;
@@ -124,18 +150,154 @@ export function formatTestsChanged(data, verb) {
124
150
  export function formatRunStarted(data) {
125
151
  const run = data?.run;
126
152
  const resultIds = run?.resultIds ?? [];
127
- return `Started run ${run?.id} (${run?.runId ?? "no short id"}) with ${data?.requestedSessions ?? run?.sessionsCount ?? 0} requested session${(data?.requestedSessions ?? 0) === 1 ? "" : "s"}.\n\nFirst session id: ${data?.firstSessionId ?? "pending"}.\nResult ids: ${resultIds.length ? resultIds.join(", ") : "results are still being created"}.\n\nNext: poll get_run with run id ${run?.id}.`;
153
+ return `Started run ${run?.id} (${run?.runId ?? "no short id"}) with ${data?.requestedSessions ?? run?.sessionsCount ?? 0} requested session${(data?.requestedSessions ?? 0) === 1 ? "" : "s"}.\n\n${formatRunContext(run)}\n\nFirst session id: ${data?.firstSessionId ?? "pending"}.\nResult ids: ${resultIds.length ? resultIds.join(", ") : "results are still being created"}.\n\nNext: call wait_for_result with runId=${run?.id}.`;
128
154
  }
129
155
  export function formatRun(data) {
130
156
  const run = data?.run ?? data;
131
157
  const counts = run?.resultCountsByStatus ?? {};
132
158
  const countText = Object.keys(counts).length ? Object.entries(counts).map(([k, v]) => `${k}: ${v}`).join(", ") : "no results yet";
133
- return `Run ${run?.id} (${run?.runId ?? "no short id"}): ${countText}.\n\nResult ids: ${(run?.resultIds ?? []).join(", ") || "none yet"}.\nNext: call get_result for a completed or failed result id.`;
159
+ const results = (run?.results ?? []).slice(0, 10).map((result) => `${result.testName ?? result.testId ?? "unknown test"} -> result ${result.id} (${result.status ?? "unknown"})`);
160
+ const liveResults = (run?.results ?? []).filter((result) => isExecutingStatus(result.status));
161
+ const lines = [
162
+ `Run ${run?.id} (${run?.runId ?? "no short id"}): ${countText}.`,
163
+ "",
164
+ formatRunContext(run),
165
+ "",
166
+ `Result ids: ${(run?.resultIds ?? []).join(", ") || "none yet"}.`,
167
+ ];
168
+ if (results.length)
169
+ lines.push("Results:", ...results);
170
+ if (liveResults.length) {
171
+ lines.push(`Next: call wait_for_result with runId=${run?.id}.`);
172
+ }
173
+ else if ((run?.resultIds ?? []).length) {
174
+ lines.push(`Next: call get_result with resultId=${(run?.resultIds ?? [])[0]}.`);
175
+ }
176
+ else {
177
+ lines.push("Next: poll get_run again shortly; results are still being created.");
178
+ }
179
+ return lines.join("\n");
180
+ }
181
+ export function formatWaitForResult(data) {
182
+ const results = data?.results ?? [];
183
+ const run = data?.run;
184
+ const statusLines = results.map((result) => {
185
+ const evidence = result.evidenceStatus ?? "unknown";
186
+ const suffix = result.evidenceCaution ? ` (${result.evidenceCaution})` : "";
187
+ return `${result.id}: ${result.status ?? "unknown"}, evidence ${evidence}${suffix}`;
188
+ });
189
+ const lines = [
190
+ data?.timedOut
191
+ ? `Wait timed out after ${data?.elapsedSeconds ?? "unknown"}s.`
192
+ : `Wait finished after ${data?.elapsedSeconds ?? "unknown"}s.`,
193
+ ];
194
+ if (run?.id)
195
+ lines.push(`Run: ${run.id} (${run.runId ?? "no short id"}).`);
196
+ if (statusLines.length)
197
+ lines.push("Results:", ...statusLines);
198
+ if (data?.liveState) {
199
+ lines.push("", "Focused live state:", formatLiveResultState({ ...data.liveState, suppressNext: true }));
200
+ }
201
+ if ((data?.timeline ?? []).length) {
202
+ const last = data.timeline.slice(-5).map((entry) => `${entry.atSeconds}s: ${entry.resultStatuses}`).join(" | ");
203
+ lines.push("", `Timeline: ${last}`);
204
+ }
205
+ lines.push("", `Next: ${data?.next ?? "Call get_result for the focused result."}`);
206
+ return lines.join("\n");
134
207
  }
135
208
  export function formatResult(data) {
136
209
  const result = data?.result ?? data?.item ?? data;
137
- const summary = result?.extendedSummary?.summary ?? result?.summary ?? "No summary yet.";
138
- return `Result ${result?.id} for test ${result?.testId}: ${result?.status}.\n\nSummary: ${summary}\n\nIssues: ${result?.issuesCount ?? 0}.\nNavigation session: ${result?.navigationSessionId ?? "none"}.`;
210
+ const status = String(result?.status ?? "");
211
+ const isLive = ["queued", "starting", "running"].includes(status);
212
+ const summary = resultSummaryText(result, isLive ? "No summary yet; this result is still in progress." : "No summary yet.");
213
+ const test = result?.test ?? {};
214
+ const includeContext = data?.includeContext === true;
215
+ const includeInstructions = data?.includeInstructions === true;
216
+ const instructions = result?.agentInstructions ?? {};
217
+ const workflow = Array.isArray(instructions.workflow) && instructions.workflow.length
218
+ ? instructions.workflow
219
+ : [
220
+ "Review the test description and expectation before judging the run.",
221
+ "Cross-reference issues, actions, relevant network traffic, and logs.",
222
+ "Return the likely root cause, useful evidence, confidence, and a proposed fix.",
223
+ ];
224
+ const tools = Array.isArray(instructions.mcpTools) && instructions.mcpTools.length
225
+ ? instructions.mcpTools
226
+ : ["get_result_issues", "get_result_actions", "get_result_network", "search_result_logs", "get_result_activity"];
227
+ const lines = [
228
+ `Result ${result?.id} for test ${test?.name ? `"${test.name}"` : result?.testId}: ${result?.status}.`,
229
+ `Evidence: ${result?.evidenceStatus ?? result?.analysisStatus ?? "unknown"}${result?.evidenceReady === false ? " (not final yet)" : ""}.`,
230
+ "",
231
+ `Summary: ${summary}`,
232
+ "",
233
+ `Issues: ${result?.issuesCount ?? 0}${result?.evidenceReady === false ? " (provisional)" : ""}.`,
234
+ `Navigation session: ${result?.navigationSessionId ?? "none"}.`,
235
+ ];
236
+ if (result?.evidenceCaution)
237
+ lines.push(`Note: ${result.evidenceCaution}`);
238
+ if (includeContext && (test?.description || test?.expectation)) {
239
+ lines.push("", "Test context:");
240
+ if (test.description)
241
+ lines.push(`Description: ${test.description}`);
242
+ if (test.expectation)
243
+ lines.push(`Expectation: ${test.expectation}`);
244
+ }
245
+ if (includeInstructions) {
246
+ lines.push("", "Agent instructions:");
247
+ workflow.forEach((step, index) => lines.push(`${index + 1}. ${step}`));
248
+ lines.push("", "Evidence tools:");
249
+ tools.forEach((tool) => lines.push(`${tool} resultId=${result?.id}`));
250
+ }
251
+ lines.push("", resultNextLine(result));
252
+ return lines.join("\n");
253
+ }
254
+ export function formatLiveResultState(data) {
255
+ const actions = data?.latestActions ?? [];
256
+ const screen = data?.currentScreen ?? {};
257
+ const lines = [
258
+ `Live result ${data?.resultId}: ${data?.status ?? "unknown"}.`,
259
+ `Navigation session: ${data?.navigationSessionId ?? "none"} (${data?.navigationSessionStatus ?? "unknown"}).`,
260
+ `Actions shown: ${data?.actionsShown ?? actions.length}${data?.moreActionsAvailable ? " (more older actions available)" : ""}.`,
261
+ screen.lastActionSequence !== undefined ? `Action cursor: afterSequence=${screen.lastActionSequence}.` : "Action cursor: none yet.",
262
+ "",
263
+ `Current screen: ${screenSummaryText(screen.summary) || "No screen summary available yet."}`,
264
+ `Screenshot: ${screen.screenshotIncluded ? "included in this tool response" : screen.screenshotAvailable ? "available; call with includeScreenshot=true to attach it" : "not available yet"}.`,
265
+ ];
266
+ if (actions.length) {
267
+ lines.push("", `Latest action${actions.length === 1 ? "" : "s"}:`);
268
+ actions.forEach((action) => lines.push(formatActionLine(action)));
269
+ }
270
+ if (!data?.suppressNext)
271
+ lines.push("", `Next: ${data?.next ?? "Poll again if the result is still running."}`);
272
+ return lines.join("\n");
273
+ }
274
+ export function formatLiveResultActions(data) {
275
+ const actions = data?.actions ?? [];
276
+ if (!actions.length) {
277
+ return `No live actions found for result ${data?.resultId}.\n\nNext: ${data?.next ?? "Poll again shortly if the result is still running."}`;
278
+ }
279
+ const lines = [
280
+ `Live actions for result ${data?.resultId}: ${data?.actionsShown ?? actions.length} shown${data?.moreActionsAvailable ? " (more available)" : ""} (${data?.status ?? "unknown"}).`,
281
+ `Navigation session: ${data?.navigationSessionId ?? "none"} (${data?.navigationSessionStatus ?? "unknown"}).`,
282
+ data?.lastSequence !== undefined ? `Action cursor: afterSequence=${data.lastSequence}.` : "Action cursor: none yet.",
283
+ "",
284
+ ];
285
+ actions.forEach((action) => lines.push(formatActionLine(action)));
286
+ lines.push("", `Next: ${data?.next ?? "Poll again for newer actions."}`);
287
+ return lines.join("\n");
288
+ }
289
+ function resultNextLine(result) {
290
+ const resultId = result?.id ?? result?.resultId;
291
+ const status = String(result?.status ?? "").toLowerCase();
292
+ const evidenceStatus = result?.evidenceStatus ?? result?.analysisStatus;
293
+ const evidenceReady = result?.evidenceReady === true ||
294
+ isFinalEvidenceStatus(evidenceStatus) ||
295
+ (result?.evidenceReady !== false && evidenceStatus === undefined && !isExecutingStatus(status));
296
+ if (isExecutingStatus(status) || !evidenceReady)
297
+ return `Next: call wait_for_result with resultId=${resultId}.`;
298
+ if ((result?.issuesCount ?? 0) > 0 || status === "failed" || status === "error")
299
+ return `Next: call get_result_issues with resultId=${resultId}.`;
300
+ return "Next: done.";
139
301
  }
140
302
  function keyValueSummary(title, item) {
141
303
  if (!item || typeof item !== "object")
@@ -157,7 +319,76 @@ function keyValueSummary(title, item) {
157
319
  return lines.join("\n");
158
320
  }
159
321
  export function formatStopRun(data) {
160
- return `Stopped ${data?.stopped ?? 0} of ${data?.total ?? 0} active result${(data?.total ?? 0) === 1 ? "" : "s"}.\n\nFailed result ids: ${(data?.failedIds ?? []).join(", ") || "none"}.`;
322
+ return `Stopped ${data?.stopped ?? 0} of ${data?.total ?? 0} active result${(data?.total ?? 0) === 1 ? "" : "s"}.\n\nStopped result ids: ${(data?.stoppedIds ?? []).join(", ") || "none"}.\nStop failures: ${(data?.failedIds ?? []).join(", ") || "none"}.`;
323
+ }
324
+ export function formatResultIssues(data) {
325
+ const issues = data?.issues ?? [];
326
+ if (!issues.length)
327
+ return `No issues were reported for this result.`;
328
+ const blocking = issues.filter((issue) => severityRank(issue.severity ?? issue.status) >= severityRank("medium"));
329
+ const lines = [
330
+ `${data?.count ?? issues.length} issue${(data?.count ?? issues.length) === 1 ? "" : "s"} reported.`,
331
+ blocking.length
332
+ ? `${blocking.length} may need attention before treating the run as clean.`
333
+ : "All reported issues are low severity; treat them as non-blocking unless they matter to the PRD.",
334
+ ];
335
+ issues.slice(0, 10).forEach((issue, index) => {
336
+ lines.push(`${index + 1}. ${issue.title ?? issue.name ?? issue.type ?? issue.id} - ${issue.severity ?? issue.status ?? "unknown"}`);
337
+ const detail = issue.description ?? issue.summary ?? issue.message;
338
+ if (detail)
339
+ lines.push(` ${compact(detail)}`);
340
+ });
341
+ if (issues.length > 10)
342
+ lines.push(`Showing 10 of ${issues.length}.`);
343
+ return lines.join("\n");
344
+ }
345
+ export function formatResultActions(data) {
346
+ const actions = data?.actions ?? [];
347
+ if (!actions.length)
348
+ return "No actions were captured for this result.";
349
+ const lines = [`${data?.count ?? actions.length} action${(data?.count ?? actions.length) === 1 ? "" : "s"} captured. Showing first ${Math.min(10, actions.length)}:`];
350
+ actions.slice(0, 10).forEach((action, index) => {
351
+ lines.push(`${index + 1}. #${action.sequence ?? index} ${action.action ?? action.type ?? "action"} (${action.status ?? "unknown"}): ${compactSentence(action.description ?? action.statusText ?? action.dd ?? "")}`);
352
+ });
353
+ if (actions.length > 10)
354
+ lines.push("Next: use rawJson only if you need the full action list.");
355
+ return lines.join("\n");
356
+ }
357
+ export function formatResultNetwork(data) {
358
+ const summary = data?.summary ?? {};
359
+ const requests = data?.requests ?? [];
360
+ const lines = [
361
+ `Network summary: ${summary.totalRequests ?? "unknown"} requests, ${summary.failedRequests ?? "unknown"} failed, ${summary.avgResponseTimeMs !== undefined ? `${summary.avgResponseTimeMs}ms` : "unknown"} avg.`,
362
+ ];
363
+ if (!requests.length) {
364
+ lines.push("No curated relevant network requests were found.");
365
+ return lines.join("\n");
366
+ }
367
+ lines.push(`Relevant requests (${requests.length}):`);
368
+ requests.slice(0, 10).forEach((request, index) => {
369
+ lines.push(`${index + 1}. ${request.method ?? request.request?.method ?? ""} ${shortUrl(request.url ?? request.request?.url ?? request.host ?? "request")} -> ${request.statusCode ?? request.response?.statusCode ?? request.status ?? "unknown"}`);
370
+ const detail = request.reason ?? request.summary ?? request.error ?? request.responseBodyPreview;
371
+ if (detail)
372
+ lines.push(` ${compact(detail)}`);
373
+ });
374
+ return lines.join("\n");
375
+ }
376
+ export function formatResultLogs(data) {
377
+ const entries = data?.entries ?? [];
378
+ if (!entries.length)
379
+ return "No matching log entries found.";
380
+ const lines = [`${data?.count ?? entries.length} matching log entr${(data?.count ?? entries.length) === 1 ? "y" : "ies"}. nextBefore=${data?.nextBefore ?? "none"}, hasMore=${Boolean(data?.hasMore)}.`];
381
+ entries.slice(0, 20).forEach((entry, index) => {
382
+ const level = entry.level ?? entry.Level ?? entry.severity ?? entry.type ?? entry.direction ?? "log";
383
+ const message = logEntryMessage(entry);
384
+ lines.push(`${index + 1}. row ${entry.rowId ?? "?"} [${level}] ${compact(message)}`);
385
+ });
386
+ return lines.join("\n");
387
+ }
388
+ export function formatResultActivity(data) {
389
+ const resources = data?.resources ?? [];
390
+ const network = data?.network ?? [];
391
+ return `Activity summary: ${resources.length} resource sample${resources.length === 1 ? "" : "s"} and ${network.length} network bucket${network.length === 1 ? "" : "s"}.\n\nNext: use rawJson if you need chart-ready CPU, heap, and network-rate series.`;
161
392
  }
162
393
  function appendList(lines, title, items, formatter) {
163
394
  if (!items?.length)
@@ -187,4 +418,200 @@ function formatCategoryLine(category, index) {
187
418
  function formatArtifactFileLine(file, index) {
188
419
  return `${index + 1}. ${file.fileName} - id ${file.id} - ${file.status ?? "ready"} - ${file.sizeBytes ?? 0} bytes`;
189
420
  }
421
+ function formatActionLine(action) {
422
+ const base = `#${action.sequence ?? "?"} ${action.action ?? "action"} (${action.status ?? "unknown"}): ${compactSentence(action.description ?? action.statusText ?? "")}`;
423
+ const screen = action.screenSummary ? ` Screen: ${screenSummaryText(action.screenSummary)}` : "";
424
+ const images = action.afterImageAvailable || action.beforeImageAvailable ? " Screenshots captured." : "";
425
+ return `${base}${screen}${images}`;
426
+ }
427
+ function isExecutingStatus(status) {
428
+ return status === "queued" || status === "starting" || status === "running";
429
+ }
430
+ function isFinalEvidenceStatus(status) {
431
+ const value = String(status ?? "").toLowerCase();
432
+ return value === "final" || value === "ready" || value === "complete" || value === "completed" || value === "failed" || value === "error";
433
+ }
434
+ function screenSummaryText(value) {
435
+ const raw = String(value ?? "")
436
+ .replace(/\\n/g, "\n")
437
+ .replace(/\\"/g, "\"")
438
+ .replace(/\\,/g, ",")
439
+ .replace(/\\\./g, ".")
440
+ .replace(/\r/g, "")
441
+ .trim();
442
+ if (!raw)
443
+ return "";
444
+ const lines = raw.split("\n").map(line => line.trim()).filter(Boolean);
445
+ const pageLine = lines.find(line => /^Page:/i.test(line));
446
+ const statusLabels = quotedLabels(raw).filter(label => /^Done in\b/i.test(label));
447
+ const labels = quotedLabels(pageLine ?? raw)
448
+ .filter(label => !/^Done in\b/i.test(label))
449
+ .slice(0, 8);
450
+ const changes = [];
451
+ if (/Page content swapped/i.test(raw))
452
+ changes.push("page content changed");
453
+ const added = raw.match(/Added\s+(\d+)\s+element/i) ?? raw.match(/Now available \((\d+) new interactive/i);
454
+ if (added?.[1])
455
+ changes.push(`${added[1]} new element${added[1] === "1" ? "" : "s"}`);
456
+ const removed = raw.match(/Removed\s+(\d+)\s+element/i);
457
+ if (removed?.[1])
458
+ changes.push(`${removed[1]} removed`);
459
+ const changed = raw.match(/Changed\s+(\d+)\s+element/i);
460
+ if (changed?.[1])
461
+ changes.push(`${changed[1]} changed`);
462
+ const parts = [];
463
+ if (statusLabels.length)
464
+ parts.push(`Status: ${statusLabels.join(", ")}`);
465
+ if (pageLine)
466
+ parts.push(cleanPageLine(pageLine));
467
+ if (labels.length)
468
+ parts.push(`Visible: ${labels.join(", ")}`);
469
+ if (changes.length)
470
+ parts.push(`Changes: ${changes.join(", ")}`);
471
+ return parts.length ? parts.join(". ") : compact(raw);
472
+ }
473
+ function quotedLabels(value) {
474
+ const labels = [...value.matchAll(/"([^"]{1,100})"/g)]
475
+ .map(match => normalizeLabel(match[1]))
476
+ .filter(Boolean);
477
+ return [...new Set(labels)];
478
+ }
479
+ function cleanPageLine(value) {
480
+ return value
481
+ .replace(/"([^"]{1,100})"/g, (_match, label) => `"${normalizeLabel(label)}"`)
482
+ .replace(/^Page:\s*/i, "Page: ");
483
+ }
484
+ function normalizeLabel(value) {
485
+ const trimmed = value.replace(/\\/g, "").replace(/\s+/g, " ").trim();
486
+ if (!trimmed)
487
+ return "";
488
+ const half = trimmed.slice(0, trimmed.length / 2);
489
+ if (trimmed.length % 2 === 0 && half && half === trimmed.slice(trimmed.length / 2))
490
+ return half;
491
+ return trimmed.length > 60 ? `${trimmed.slice(0, 57)}...` : trimmed;
492
+ }
493
+ function severityRank(value) {
494
+ switch (String(value ?? "").toLowerCase()) {
495
+ case "critical": return 4;
496
+ case "high": return 3;
497
+ case "medium": return 2;
498
+ case "low": return 1;
499
+ default: return 0;
500
+ }
501
+ }
502
+ function shortUrl(value) {
503
+ const text = String(value ?? "");
504
+ try {
505
+ const url = new URL(text);
506
+ const path = `${url.pathname}${url.search ? "?..." : ""}`;
507
+ return `${url.hostname}${path}`;
508
+ }
509
+ catch {
510
+ return compact(text);
511
+ }
512
+ }
513
+ function logEntryMessage(entry) {
514
+ const value = entry.url ?? entry.path ?? entry.message ?? entry.content ?? entry.summary;
515
+ if (typeof value === "string" && /^https?:\/\//i.test(value))
516
+ return shortUrl(value);
517
+ return String(value ?? JSON.stringify(entry).slice(0, 220));
518
+ }
519
+ function resultSummaryText(result, fallback) {
520
+ const candidates = [
521
+ result?.extendedSummary?.summary,
522
+ result?.summary,
523
+ result?.extendedSummary,
524
+ ];
525
+ for (const candidate of candidates) {
526
+ const text = summaryValueText(candidate);
527
+ if (text)
528
+ return text;
529
+ }
530
+ return fallback;
531
+ }
532
+ function summaryValueText(value) {
533
+ if (typeof value === "string")
534
+ return value.trim() || undefined;
535
+ if (!value || typeof value !== "object")
536
+ return undefined;
537
+ const title = typeof value.title === "string" ? value.title.trim() : "";
538
+ const description = typeof value.description === "string" ? value.description.trim() : "";
539
+ if (title && description)
540
+ return `${title}: ${description}`;
541
+ if (description)
542
+ return description;
543
+ if (title)
544
+ return title;
545
+ for (const key of ["summary", "result", "message", "pointsOfInterest"]) {
546
+ const nested = summaryValueText(value[key]);
547
+ if (nested)
548
+ return nested;
549
+ }
550
+ return undefined;
551
+ }
552
+ function formatRunContext(run) {
553
+ const context = run?.executionContext ?? {};
554
+ const tests = (context.tests ?? []).filter((test) => test?.id || test?.name);
555
+ const targets = (context.targets ?? []).filter((target) => target?.id || target?.name);
556
+ const accounts = context.accountIds ?? [];
557
+ const parts = [];
558
+ if (tests.length)
559
+ parts.push(`Tests: ${tests.slice(0, 5).map((test) => `${test.name ?? test.id}${test.resultId ? ` -> ${test.resultId}` : ""}`).join(", ")}`);
560
+ if (targets.length)
561
+ parts.push(`Targets: ${targets.slice(0, 5).map((target) => `${target.name ?? target.id}${target.id ? ` (${target.id})` : ""}`).join(", ")}`);
562
+ if (accounts.length)
563
+ parts.push(`Accounts: ${accounts.join(", ")}`);
564
+ return parts.length ? parts.join("\n") : "Execution context: not available yet.";
565
+ }
566
+ function sanitizeForRaw(value, seen = new WeakSet()) {
567
+ if (value === null || value === undefined)
568
+ return value;
569
+ if (typeof value === "string") {
570
+ if (value.startsWith("data:image/"))
571
+ return "[redacted image data]";
572
+ if (value.includes("X-Amz-Signature="))
573
+ return "[redacted signed URL]";
574
+ if (value.length > 10_000)
575
+ return `${value.slice(0, 10_000)}...[truncated ${value.length - 10_000} chars]`;
576
+ return value;
577
+ }
578
+ if (typeof value !== "object")
579
+ return value;
580
+ if (seen.has(value))
581
+ return "[circular]";
582
+ seen.add(value);
583
+ if (Array.isArray(value))
584
+ return value.map(item => sanitizeForRaw(item, seen));
585
+ const out = {};
586
+ for (const [key, nested] of Object.entries(value)) {
587
+ const lower = key.toLowerCase();
588
+ const shouldRedact = ["password", "secret", "token", "apikey", "authorization", "uploadurl", "logsstoreurl", "currentimageurl", "beforeimageurl", "afterimageurl", "imageurl", "iburl", "iaurl"].some(fragment => lower.includes(fragment)) ||
589
+ lower === "database64" ||
590
+ lower === "screenshot";
591
+ if (shouldRedact) {
592
+ out[key] = "[redacted]";
593
+ }
594
+ else {
595
+ out[key] = sanitizeForRaw(nested, seen);
596
+ }
597
+ }
598
+ return out;
599
+ }
600
+ function compact(value) {
601
+ return String(value ?? "").replace(/\s+/g, " ").trim().slice(0, 300);
602
+ }
603
+ function compactSentence(value) {
604
+ const text = String(value ?? "").replace(/\s+/g, " ").trim();
605
+ if (text.length <= 300)
606
+ return text;
607
+ const slice = text.slice(0, 300);
608
+ const sentenceEnd = Math.max(slice.lastIndexOf(". "), slice.lastIndexOf("! "), slice.lastIndexOf("? "));
609
+ if (sentenceEnd >= 120)
610
+ return `${slice.slice(0, sentenceEnd + 1).trim()}`;
611
+ const comma = Math.max(slice.lastIndexOf(", "), slice.lastIndexOf("; "), slice.lastIndexOf(": "));
612
+ if (comma >= 160)
613
+ return `${slice.slice(0, comma).trim()}...`;
614
+ const space = slice.lastIndexOf(" ");
615
+ return `${slice.slice(0, space > 120 ? space : 300).trim()}...`;
616
+ }
190
617
  //# sourceMappingURL=formatters.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"formatters.js","sourceRoot":"","sources":["../src/formatters.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"formatters.js","sourceRoot":"","sources":["../src/formatters.ts"],"names":[],"mappings":"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"}
package/dist/resources.js CHANGED
@@ -26,7 +26,7 @@ export function registerResources(server, client) {
26
26
  }));
27
27
  registerItemResource(server, client, "test", "doksi://tests/{test_id}", "tests", formatWorkspaceItem);
28
28
  registerItemResource(server, client, "run", "doksi://runs/{run_id}", "runs", (data) => formatRun({ run: data.item }));
29
- registerItemResource(server, client, "result", "doksi://results/{result_id}", "results", (data) => formatResult({ result: data.item }));
29
+ registerItemResource(server, client, "result", "doksi://results/{result_id}", "results", (data) => formatResult({ result: data.item, includeContext: true, includeInstructions: true }));
30
30
  registerItemResource(server, client, "target", "doksi://targets/{target_id}", "targets", formatWorkspaceItem);
31
31
  registerItemResource(server, client, "artifact_file", "doksi://artifact-files/{file_id}", "artifact-files", formatWorkspaceItem);
32
32
  }
@@ -1 +1 @@
1
- {"version":3,"file":"resources.js","sourceRoot":"","sources":["../src/resources.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resources.js","sourceRoot":"","sources":["../src/resources.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAkB,MAAM,yCAAyC,CAAC;AAE3F,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAEhG,MAAM,UAAU,iBAAiB,CAAC,MAAiB,EAAE,MAAsB;IACzE,MAAM,GAAG,GAAG,MAAa,CAAC;IAE1B,GAAG,CAAC,gBAAgB,CAClB,mBAAmB,EACnB,2BAA2B,EAC3B;QACE,KAAK,EAAE,yBAAyB;QAChC,WAAW,EAAE,gFAAgF;QAC7F,QAAQ,EAAE,YAAY;KACvB,EACD,KAAK,EAAE,GAAQ,EAAE,EAAE,CAAC,CAAC;QACnB,QAAQ,EAAE,CAAC;gBACT,GAAG,EAAE,GAAG,CAAC,IAAI;gBACb,QAAQ,EAAE,YAAY;gBACtB,IAAI,EAAE,eAAe,CAAC,MAAM,MAAM,CAAC,eAAe,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;aACnE,CAAC;KACH,CAAC,CACH,CAAC;IAEF,GAAG,CAAC,gBAAgB,CAClB,wBAAwB,EACxB,gCAAgC,EAChC;QACE,KAAK,EAAE,8BAA8B;QACrC,WAAW,EAAE,kEAAkE;QAC/E,QAAQ,EAAE,eAAe;KAC1B,EACD,KAAK,EAAE,GAAQ,EAAE,EAAE,CAAC,CAAC;QACnB,QAAQ,EAAE,CAAC;gBACT,GAAG,EAAE,GAAG,CAAC,IAAI;gBACb,QAAQ,EAAE,eAAe;gBACzB,IAAI,EAAE,oBAAoB,EAAE;aAC7B,CAAC;KACH,CAAC,CACH,CAAC;IAEF,oBAAoB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,yBAAyB,EAAE,OAAO,EAAE,mBAAmB,CAAC,CAAC;IACtG,oBAAoB,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,uBAAuB,EAAE,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IACtH,oBAAoB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,6BAA6B,EAAE,SAAS,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,YAAY,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,mBAAmB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IACzL,oBAAoB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,6BAA6B,EAAE,SAAS,EAAE,mBAAmB,CAAC,CAAC;IAC9G,oBAAoB,CAAC,MAAM,EAAE,MAAM,EAAE,eAAe,EAAE,kCAAkC,EAAE,gBAAgB,EAAE,mBAAmB,CAAC,CAAC;AACnI,CAAC;AAED,SAAS,oBAAoB,CAC3B,MAAiB,EACjB,MAAsB,EACtB,IAAY,EACZ,QAAgB,EAChB,IAAiE,EACjE,SAAgC;IAE/B,MAAc,CAAC,gBAAgB,CAC9B,IAAI,EACJ,IAAI,gBAAgB,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,EACnD;QACE,KAAK,EAAE,SAAS,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE;QACxC,WAAW,EAAE,kBAAkB,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,WAAW;QAChE,QAAQ,EAAE,YAAY;KACvB,EACD,KAAK,EAAE,GAAQ,EAAE,SAAkC,EAAE,EAAE;QACrD,MAAM,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;QACrD,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;QACzD,OAAO;YACL,QAAQ,EAAE,CAAC;oBACT,GAAG,EAAE,GAAG,CAAC,IAAI;oBACb,QAAQ,EAAE,YAAY;oBACtB,IAAI,EAAE,SAAS,CAAC,IAAI,CAAC;iBACtB,CAAC;SACH,CAAC;IACJ,CAAC,CACF,CAAC;AACJ,CAAC;AAED,SAAS,oBAAoB;IAC3B,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;qIAyB4H,CAAC;AACtI,CAAC"}
package/dist/tools.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { z } from "zod";
2
- import { errorResult, formatAccountCreated, formatArtifactFileUploaded, formatCategoryCreated, formatResult, formatRun, formatRunStarted, formatStopRun, formatTargetCreated, formatTestsChanged, formatWorkspace, formatWorkspaceItem, rawOrProse, } from "./formatters.js";
2
+ import { errorResult, formatAccountCreated, formatArtifactFileUploaded, formatCategoryCreated, formatLiveResultActions, formatLiveResultState, formatResult, formatResultActions, formatResultActivity, formatResultIssues, formatResultLogs, formatResultNetwork, formatRun, formatRunStarted, formatStopRun, formatTargetCreated, formatTestsChanged, formatWaitForResult, formatWorkspace, formatWorkspaceItem, rawOrProse, resultNotReadyResult, textAndImageResult, } from "./formatters.js";
3
3
  const rawJson = z.boolean().optional().describe("Return compact JSON text instead of the default natural-language response.");
4
4
  const priority = z.string().optional().describe("Priority: low, medium, high, critical. Severity aliases like major/minor are accepted.");
5
5
  const artifact = z.unknown().describe("Doksi artifact object. Use parameter/account artifacts only on tests; run_tests supplies target artifacts.");
@@ -148,7 +148,7 @@ export function registerTools(server, client) {
148
148
  }
149
149
  });
150
150
  mcp.registerTool("run_tests", {
151
- description: "Run one or many tests on a target. Target is run-level; account and parameter overrides are optional. Use get_run to poll and get_result for details.",
151
+ description: "Run one or many tests on a target. Target is run-level; account and parameter overrides are optional. Use wait_for_result next for the easiest agent workflow.",
152
152
  inputSchema: {
153
153
  testIds: z.array(z.string()).min(1),
154
154
  targetId: z.string(),
@@ -170,7 +170,7 @@ export function registerTools(server, client) {
170
170
  }
171
171
  });
172
172
  mcp.registerTool("get_run", {
173
- description: "Poll a Doksi run by id. Use this after run_tests until results complete.",
173
+ description: "Poll a Doksi run by id. For normal agent workflows, prefer wait_for_result after run_tests so evidence finality is handled for you.",
174
174
  inputSchema: {
175
175
  runId: z.string(),
176
176
  rawJson,
@@ -184,21 +184,166 @@ export function registerTools(server, client) {
184
184
  return errorResult(error);
185
185
  }
186
186
  });
187
+ mcp.registerTool("wait_for_result", {
188
+ description: "Wait briefly for a run or result to leave queued/running state and for post-run evidence to become final. Repeat this tool instead of doing manual sleep/poll loops.",
189
+ inputSchema: {
190
+ runId: z.string().optional().describe("Run id from run_tests. Use this to wait for all results in a run, up to maxResults."),
191
+ resultId: z.string().optional().describe("Specific result id to wait for. Use with runId for multi-result runs when focusing one result."),
192
+ maxWaitSeconds: z.number().int().min(5).max(55).optional().describe("Maximum time to wait in this tool call. Defaults to 45 seconds to avoid MCP client timeouts."),
193
+ pollSeconds: z.number().int().min(5).max(30).optional().describe("Polling interval. Defaults to 10 seconds."),
194
+ maxResults: z.number().int().min(1).max(20).optional().describe("Maximum result ids to track when waiting on a run. Defaults to 10."),
195
+ includeLiveState: z.boolean().optional().describe("Include focused live state in the final response. Defaults to true."),
196
+ rawJson,
197
+ },
198
+ }, async (input) => {
199
+ try {
200
+ if (!input.runId && !input.resultId)
201
+ throw new Error("Provide runId or resultId.");
202
+ const data = await client.waitForResult(input);
203
+ return rawOrProse(input.rawJson, data, formatWaitForResult);
204
+ }
205
+ catch (error) {
206
+ return errorResult(error);
207
+ }
208
+ });
187
209
  mcp.registerTool("get_result", {
188
- description: "Fetch concise details for one result. Use this for failures, incomplete sessions, or completed results that need evidence.",
210
+ description: "Fetch concise details for one result, including evidence finality and the next recommended tool. Defaults to a short polling-friendly response.",
189
211
  inputSchema: {
190
212
  resultId: z.string(),
213
+ includeContext: z.boolean().optional().describe("Include test description and expectation. Defaults to false to keep repeated polling concise."),
214
+ includeInstructions: z.boolean().optional().describe("Include full agent instructions and evidence tool list. Defaults to false; set true when preparing a final diagnosis."),
191
215
  rawJson,
192
216
  },
193
217
  }, async (input) => {
194
218
  try {
195
219
  const data = await client.getResult(input.resultId);
196
- return rawOrProse(input.rawJson, data, formatResult);
220
+ return rawOrProse(input.rawJson, data, (d) => formatResult({
221
+ ...d,
222
+ includeContext: input.includeContext,
223
+ includeInstructions: input.includeInstructions,
224
+ }));
225
+ }
226
+ catch (error) {
227
+ return errorResult(error);
228
+ }
229
+ });
230
+ mcp.registerTool("get_live_result_state", {
231
+ description: "Inspect a running or recently active result: status, navigation session status, latest actions, current screen summary, and optionally the current device screenshot. Pass includeScreenshot=true only when the caller needs visual inspection.",
232
+ inputSchema: {
233
+ resultId: z.string(),
234
+ limit: z.number().int().min(1).max(10).optional().describe("How many latest actions to include in the state summary."),
235
+ includeScreenshot: z.boolean().optional().describe("Attach the current device screenshot as image content. Defaults to false to keep calls fast."),
236
+ rawJson,
237
+ },
238
+ }, async (input) => {
239
+ try {
240
+ const data = await client.getLiveResultState(input);
241
+ if (input.rawJson)
242
+ return rawOrProse(true, data, formatLiveResultState);
243
+ return textAndImageResult(formatLiveResultState(data), input.includeScreenshot ? data?.screenshot : undefined);
197
244
  }
198
245
  catch (error) {
199
246
  return errorResult(error);
200
247
  }
201
248
  });
249
+ mcp.registerTool("get_live_result_actions", {
250
+ description: "Inspect recent or new actions for a running result without fetching the full completed-result timeline. Use afterSequence to poll only newer actions.",
251
+ inputSchema: {
252
+ resultId: z.string(),
253
+ limit: z.number().int().min(1).max(50).optional(),
254
+ afterSequence: z.number().int().min(0).optional().describe("Return actions with sequence greater than this value."),
255
+ beforeSequence: z.number().int().min(0).optional().describe("Page older actions with sequence less than this value."),
256
+ rawJson,
257
+ },
258
+ }, async (input) => {
259
+ try {
260
+ const data = await client.getLiveResultActions(input);
261
+ return rawOrProse(input.rawJson, data, formatLiveResultActions);
262
+ }
263
+ catch (error) {
264
+ return errorResult(error);
265
+ }
266
+ });
267
+ mcp.registerTool("get_result_issues", {
268
+ description: "Fetch concise issue evidence for a Doksi result. Use after get_result when a run failed or has issueCount > 0.",
269
+ inputSchema: {
270
+ resultId: z.string(),
271
+ rawJson,
272
+ },
273
+ }, async (input) => {
274
+ try {
275
+ const data = await client.getResultIssues(input.resultId);
276
+ return rawOrProse(input.rawJson, data, formatResultIssues);
277
+ }
278
+ catch (error) {
279
+ return resultNotReadyResult(error, input.resultId);
280
+ }
281
+ });
282
+ mcp.registerTool("get_result_actions", {
283
+ description: "Fetch the captured action timeline for a Doksi result, summarized for debugging. Use to understand what the agent did before a failure.",
284
+ inputSchema: {
285
+ resultId: z.string(),
286
+ rawJson,
287
+ },
288
+ }, async (input) => {
289
+ try {
290
+ const data = await client.getResultActions(input.resultId);
291
+ return rawOrProse(input.rawJson, data, formatResultActions);
292
+ }
293
+ catch (error) {
294
+ return resultNotReadyResult(error, input.resultId);
295
+ }
296
+ });
297
+ mcp.registerTool("get_result_network", {
298
+ description: "Fetch curated relevant network evidence for a Doksi result. Use before searching all logs when the failure may involve API calls.",
299
+ inputSchema: {
300
+ resultId: z.string(),
301
+ rawJson,
302
+ },
303
+ }, async (input) => {
304
+ try {
305
+ const data = await client.getResultNetwork(input.resultId);
306
+ return rawOrProse(input.rawJson, data, formatResultNetwork);
307
+ }
308
+ catch (error) {
309
+ return resultNotReadyResult(error, input.resultId);
310
+ }
311
+ });
312
+ mcp.registerTool("search_result_logs", {
313
+ description: "Search or page merged logcat and network telemetry for a Doksi result. Keep limits small; use q/type/levels to narrow evidence quickly.",
314
+ inputSchema: {
315
+ resultId: z.string(),
316
+ type: z.enum(["all", "network", "logcat"]).optional(),
317
+ levels: z.string().optional().describe("Comma-separated logcat severities: V,D,I,W,E,F."),
318
+ q: z.string().optional().describe("Server-side text search over telemetry payloads."),
319
+ before: z.number().int().min(0).optional().describe("Use nextBefore from the prior response to page older entries."),
320
+ limit: z.number().int().min(1).max(50).optional(),
321
+ rawJson,
322
+ },
323
+ }, async (input) => {
324
+ try {
325
+ const data = await client.searchResultLogs(input);
326
+ return rawOrProse(input.rawJson, data, formatResultLogs);
327
+ }
328
+ catch (error) {
329
+ return resultNotReadyResult(error, input.resultId);
330
+ }
331
+ });
332
+ mcp.registerTool("get_result_activity", {
333
+ description: "Fetch chart-ready activity evidence for a Doksi result: CPU, heap, request-rate, latency, and error-rate buckets.",
334
+ inputSchema: {
335
+ resultId: z.string(),
336
+ rawJson,
337
+ },
338
+ }, async (input) => {
339
+ try {
340
+ const data = await client.getResultActivity(input.resultId);
341
+ return rawOrProse(input.rawJson, data, formatResultActivity);
342
+ }
343
+ catch (error) {
344
+ return resultNotReadyResult(error, input.resultId);
345
+ }
346
+ });
202
347
  mcp.registerTool("stop_run", {
203
348
  description: "Stop active or queued results in a Doksi run.",
204
349
  inputSchema: {
package/dist/tools.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"tools.js","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tools.js","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@doksi/mcp",
3
- "version": "0.1.1",
3
+ "version": "0.1.2",
4
4
  "description": "MCP server for creating, managing, and running Doksi tests",
5
5
  "type": "module",
6
6
  "bin": {
package/version.txt CHANGED
@@ -1 +1 @@
1
- 1782840898
1
+ 1782864829