@midscene/core 1.16.1 → 1.16.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.
Files changed (64) hide show
  1. package/dist/es/agent/utils.mjs +4 -4
  2. package/dist/es/agent/utils.mjs.map +1 -1
  3. package/dist/es/ai-model/models/auto-glm/parser.mjs +1 -1
  4. package/dist/es/ai-model/models/auto-glm/parser.mjs.map +1 -1
  5. package/dist/es/ai-model/models/kimi.mjs +1 -1
  6. package/dist/es/ai-model/models/kimi.mjs.map +1 -1
  7. package/dist/es/ai-model/service-caller/call-ai.mjs +10 -1
  8. package/dist/es/ai-model/service-caller/call-ai.mjs.map +1 -1
  9. package/dist/es/ai-model/service-caller/openai/call-openai.mjs +7 -2
  10. package/dist/es/ai-model/service-caller/openai/call-openai.mjs.map +1 -1
  11. package/dist/es/ai-model/shared/model-locate-result/errors.mjs +1 -1
  12. package/dist/es/ai-model/shared/model-locate-result/errors.mjs.map +1 -1
  13. package/dist/es/ai-model/shared/model-locate-result/parse.mjs +6 -2
  14. package/dist/es/ai-model/shared/model-locate-result/parse.mjs.map +1 -1
  15. package/dist/es/device/index.mjs +9 -8
  16. package/dist/es/device/index.mjs.map +1 -1
  17. package/dist/es/report-generator.mjs +3 -3
  18. package/dist/es/report-generator.mjs.map +1 -1
  19. package/dist/es/report-html-template.mjs +1 -1
  20. package/dist/es/test-run-report.mjs.map +1 -1
  21. package/dist/es/test-runner/reporting/merge-report.mjs +3 -1
  22. package/dist/es/test-runner/reporting/merge-report.mjs.map +1 -1
  23. package/dist/es/test-runner/reporting/metrics.mjs +39 -2
  24. package/dist/es/test-runner/reporting/metrics.mjs.map +1 -1
  25. package/dist/es/utils.mjs +1 -1
  26. package/dist/lib/agent/utils.js +2 -2
  27. package/dist/lib/agent/utils.js.map +1 -1
  28. package/dist/lib/ai-model/models/auto-glm/parser.js +1 -1
  29. package/dist/lib/ai-model/models/auto-glm/parser.js.map +1 -1
  30. package/dist/lib/ai-model/models/kimi.js +1 -1
  31. package/dist/lib/ai-model/models/kimi.js.map +1 -1
  32. package/dist/lib/ai-model/service-caller/call-ai.js +10 -1
  33. package/dist/lib/ai-model/service-caller/call-ai.js.map +1 -1
  34. package/dist/lib/ai-model/service-caller/openai/call-openai.js +7 -2
  35. package/dist/lib/ai-model/service-caller/openai/call-openai.js.map +1 -1
  36. package/dist/lib/ai-model/shared/model-locate-result/errors.js +1 -1
  37. package/dist/lib/ai-model/shared/model-locate-result/errors.js.map +1 -1
  38. package/dist/lib/ai-model/shared/model-locate-result/parse.js +6 -2
  39. package/dist/lib/ai-model/shared/model-locate-result/parse.js.map +1 -1
  40. package/dist/lib/device/index.js +9 -8
  41. package/dist/lib/device/index.js.map +1 -1
  42. package/dist/lib/report-generator.js +2 -2
  43. package/dist/lib/report-generator.js.map +1 -1
  44. package/dist/lib/report-html-template.js +1 -1
  45. package/dist/lib/test-run-report.js.map +1 -1
  46. package/dist/lib/test-runner/reporting/merge-report.js +3 -1
  47. package/dist/lib/test-runner/reporting/merge-report.js.map +1 -1
  48. package/dist/lib/test-runner/reporting/metrics.js +39 -2
  49. package/dist/lib/test-runner/reporting/metrics.js.map +1 -1
  50. package/dist/lib/utils.js +1 -1
  51. package/dist/types/ai-model/models/auto-glm/parser.d.ts.map +1 -1
  52. package/dist/types/ai-model/service-caller/openai/call-openai.d.ts.map +1 -1
  53. package/dist/types/ai-model/shared/model-locate-result/errors.d.ts +1 -1
  54. package/dist/types/ai-model/shared/model-locate-result/errors.d.ts.map +1 -1
  55. package/dist/types/ai-model/shared/model-locate-result/parse.d.ts.map +1 -1
  56. package/dist/types/device/index.d.ts +7 -7
  57. package/dist/types/device/index.d.ts.map +1 -1
  58. package/dist/types/test-run-report.d.ts +4 -1
  59. package/dist/types/test-run-report.d.ts.map +1 -1
  60. package/dist/types/test-runner/parser/types.d.ts +5 -0
  61. package/dist/types/test-runner/parser/types.d.ts.map +1 -1
  62. package/dist/types/test-runner/reporting/merge-report.d.ts.map +1 -1
  63. package/dist/types/test-runner/reporting/metrics.d.ts.map +1 -1
  64. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"test-run-report.js","sources":["webpack/runtime/define_property_getters","webpack/runtime/has_own_property","webpack/runtime/make_namespace_object","../../src/test-run-report.ts"],"sourcesContent":["__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n }\n }\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","export const TEST_RUN_REPORT_SCRIPT_TYPE = 'midscene_test_run_dump';\n\nexport type TestRunReportRunStatus = 'success' | 'failed';\nexport type TestRunReportCaseStatus = TestRunReportRunStatus | 'not-run';\nexport type TestRunReportStepPhase =\n | 'beforeAll'\n | 'beforeEach'\n | 'steps'\n | 'afterEach'\n | 'afterAll';\n\n/**\n * A JSON-safe value prepared for display in a Midscene Test report.\n *\n * Paths use JSONPath-like notation rooted at `$`. The path arrays are kept\n * beside the value so the UI never presents redacted or truncated data as if\n * it were complete.\n */\nexport interface TestRunReportValue {\n value: unknown;\n truncatedPaths?: string[];\n redactedPaths?: string[];\n}\n\nexport interface TestRunReportError {\n format?: 'midscene-error';\n name: string;\n message: string;\n stack?: string;\n code?: string;\n details?: TestRunReportValue;\n cause?: TestRunReportError;\n errors?: TestRunReportError[];\n truncated?: boolean;\n}\n\nexport interface TestRunReportOperationReference {\n operationId: string;\n scopeId?: string;\n stepId?: string;\n node?: string;\n}\n\n/** Immutable observation; late completion remains in the operation journal. */\nexport interface TestRunReportCleanup {\n status: 'not-required' | 'completed' | 'pending' | 'failed';\n capturedAt: string;\n operationId?: string;\n blockingOperations?: TestRunReportOperationReference[];\n error?: TestRunReportError;\n}\n\nexport interface TestRunReportRetryDecision {\n scope: 'case' | 'document';\n retryCount: number;\n attemptIndex: number;\n decision: 'retry' | 'stop';\n reason:\n | 'passed'\n | 'attempt-failed'\n | 'budget-exhausted'\n | 'cleanup-pending'\n | 'cleanup-failed'\n | 'operation-pending'\n | 'fatal-error'\n | 'interrupted'\n | 'bail'\n | 'infrastructure-error';\n}\n\nexport interface TestRunReportPhaseResult {\n status: 'success' | 'failed' | 'not-run' | 'not-required';\n plannedStepCount: number;\n executedStepCount: number;\n}\n\nexport interface TestRunReportHostError {\n phase:\n | 'setup'\n | 'execution'\n | 'cleanup'\n | 'report'\n | 'publication'\n | 'observer';\n error: TestRunReportError;\n}\n\nexport interface TestRunReportDiagnostic {\n level: 'warning' | 'error';\n code:\n | 'agent-detail-unresolved'\n | 'agent-detail-unavailable'\n | 'large-report'\n | 'run-infrastructure-error'\n | 'agent-source-unavailable'\n | 'source-without-executions';\n message: string;\n scopeId?: string;\n executionId?: string;\n sourcePaths?: string[];\n stepId?: string;\n error?: TestRunReportError;\n}\n\nexport interface TestRunReportMetrics {\n modelCallCount: number;\n modelTimeMs: number;\n promptTokens: number;\n cachedInputTokens: number;\n completionTokens: number;\n totalTokens: number;\n collection?: {\n status: 'complete' | 'partial' | 'unknown';\n expectedExecutionCount: number;\n capturedExecutionCount: number;\n reasons: string[];\n fields?: Record<\n 'modelCallCount' | 'modelTimeMs' | 'totalTokens',\n 'complete' | 'partial' | 'unknown'\n >;\n };\n}\n\nexport interface TestRunReportSnapshotCollection {\n status: 'complete' | 'partial';\n /** Native dump cutoff before I/O; observation time for partial live sources. */\n capturedAt: string;\n reason?: string;\n}\n\nexport interface TestRunReportAgentDetail {\n reportId: string;\n executionId: string;\n}\n\n/** Operation facts are independent of Agent dump IDs and report snapshots. */\nexport interface TestRunReportOperationEvent {\n operationId: string;\n operationKind: 'node' | 'resource' | 'acquisition' | 'cleanup' | 'readiness';\n kind:\n | 'started'\n | 'cancel-requested'\n | 'settled'\n | 'runner-returned'\n | 'cleanup-deferred';\n at: string;\n stepId?: string;\n scopeId?: string;\n node?: string;\n status?: 'success' | 'failed' | 'not-run';\n /** True only when the actual operation has not settled at Runner return. */\n pending?: boolean;\n error?: TestRunReportError;\n blockingOperations?: TestRunReportOperationReference[];\n}\n\nexport interface TestRunReportPlannedStep {\n id: string;\n phase: TestRunReportStepPhase;\n stepIndex: number;\n node: string;\n title?: string;\n input: TestRunReportValue;\n inputMode: 'template' | 'resolved';\n timeoutMs?: number;\n continueOnError: boolean;\n}\n\nexport interface TestRunReportCasePlan {\n caseId: string;\n name: string;\n caseIndex: number;\n selected: boolean;\n tags: string[];\n onFailure?: 'continue' | 'stop-document';\n beforeEach: TestRunReportPlannedStep[];\n steps: TestRunReportPlannedStep[];\n afterEach: TestRunReportPlannedStep[];\n}\n\n/** A safe snapshot collected before resource acquisition, independent of attempts. */\nexport interface TestRunReportDocumentPlan {\n documentId: string;\n sourcePath: string;\n sourceYaml?: TestRunReportValue;\n retry: { scope: 'case' | 'document'; count: number };\n beforeAll: TestRunReportPlannedStep[];\n cases: TestRunReportCasePlan[];\n afterAll: TestRunReportPlannedStep[];\n}\n\ninterface TestRunReportStepBase {\n id: string;\n planStepId?: string;\n phase: TestRunReportStepPhase;\n stepIndex: number;\n node: string;\n title?: string;\n continuedAfterError: boolean;\n /** Time spent waiting for a cancelled operation before this Step started. */\n waitForPreviousOperationMs?: number;\n input?: TestRunReportValue;\n output?: {\n summary?: string;\n data?: TestRunReportValue;\n };\n error?: TestRunReportError;\n agentDetails?: TestRunReportAgentDetail[];\n agentDetailDiagnostic?: string;\n /** Usage survives even when screenshots or execution detail storage fails. */\n metrics?: TestRunReportMetrics;\n evidenceCollection?: {\n status: 'complete' | 'partial' | 'unknown';\n /** The missing source also prevented independent usage recovery. */\n modelUsageUnavailable?: boolean;\n capturedAt?: string;\n errors?: TestRunReportError[];\n };\n operations?: { capturedAt: string; events: TestRunReportOperationEvent[] };\n}\n\nexport type TestRunReportStep = TestRunReportStepBase &\n (\n | {\n status: TestRunReportRunStatus;\n startedAt: string;\n endedAt: string;\n durationMs: number;\n notRunReason?: never;\n blockedBy?: never;\n }\n | {\n status: 'not-run';\n notRunReason: string;\n blockedBy?: string;\n startedAt?: never;\n endedAt?: never;\n durationMs?: never;\n }\n );\n\nexport interface TestRunReportAttempt {\n attemptId: string;\n attemptIndex: number;\n status: TestRunReportRunStatus;\n executionStatus?: TestRunReportCaseStatus;\n phases?: Partial<Record<TestRunReportStepPhase, TestRunReportPhaseResult>>;\n cleanup?: TestRunReportCleanup;\n pendingOperations?: TestRunReportOperationReference[];\n retryDecision?: TestRunReportRetryDecision;\n startedAt: string;\n endedAt: string;\n durationMs: number;\n beforeEach: TestRunReportStep[];\n steps: TestRunReportStep[];\n afterEach: TestRunReportStep[];\n teardownErrors?: TestRunReportError[];\n hostErrors?: TestRunReportHostError[];\n /** Report groups available for scope-level fallback browsing. */\n scopeReportIds?: string[];\n}\n\nexport interface TestRunReportCase {\n plan?: TestRunReportCasePlan;\n caseId: string;\n name: string;\n caseIndex: number;\n status: TestRunReportCaseStatus;\n notRunReason?: string;\n attempts: TestRunReportAttempt[];\n}\n\nexport interface TestRunReportDocument {\n plan?: TestRunReportDocumentPlan;\n documentId: string;\n /** Logical file identity when separate invocations need distinct UI IDs. */\n logicalDocumentId?: string;\n documentRunId?: string;\n attemptIndex?: number;\n sourcePath: string;\n status: TestRunReportRunStatus;\n executionStatus?: TestRunReportCaseStatus;\n phases?: Partial<Record<TestRunReportStepPhase, TestRunReportPhaseResult>>;\n cleanup?: TestRunReportCleanup;\n pendingOperations?: TestRunReportOperationReference[];\n retryDecision?: TestRunReportRetryDecision;\n startedAt?: string;\n endedAt?: string;\n durationMs?: number;\n beforeAll: TestRunReportStep[];\n cases: TestRunReportCase[];\n afterAll: TestRunReportStep[];\n teardownErrors?: TestRunReportError[];\n hostErrors?: TestRunReportHostError[];\n /** Report groups available for scope-level fallback browsing. */\n scopeReportIds?: string[];\n /** Whole-file invocation history; Cases aggregate their own attempts. */\n attempts?: Omit<TestRunReportDocument, 'cases' | 'attempts'>[];\n}\n\nexport interface TestRunReportCollectionError {\n sourcePath: string;\n error: TestRunReportError;\n}\n\nexport interface TestRunReportProjectLifecycle {\n status: TestRunReportRunStatus;\n startedAt: string;\n endedAt: string;\n durationMs: number;\n setupError?: TestRunReportError;\n teardownErrors?: TestRunReportError[];\n cleanup?: TestRunReportCleanup;\n pendingOperations?: TestRunReportOperationReference[];\n}\n\nexport interface TestRunReportProject {\n plans?: readonly TestRunReportDocumentPlan[];\n projectId: string;\n name: string;\n /** Display identity, also supports legacy custom interface adapters. */\n platform?: string;\n status: TestRunReportRunStatus;\n retry: number;\n lifecycle?: TestRunReportProjectLifecycle;\n documents: TestRunReportDocument[];\n collectionErrors: TestRunReportCollectionError[];\n}\n\nexport interface TestRunReportSummary {\n total: number;\n passed: number;\n failed: number;\n notRun: number;\n filtered: number;\n collectionErrors: number;\n documentFailures: number;\n projectFailures: number;\n}\n\nexport interface TestRunReportDump {\n schemaVersion: 1;\n kind: 'test-runner';\n runId: string;\n status: TestRunReportRunStatus;\n startedAt: string;\n endedAt: string;\n durationMs: number;\n summary: TestRunReportSummary;\n metrics: TestRunReportMetrics;\n executionMetrics?: Record<string, TestRunReportMetrics>;\n projects: TestRunReportProject[];\n diagnostics?: TestRunReportDiagnostic[];\n operationLogs?: { path: string; snapshotAt: string }[];\n}\n\nexport interface TestRunReportSource {\n /** Resource/report scope that owns this Midscene Agent source. */\n scopeId: string;\n /** Absolute path identifying the Midscene Agent report. */\n sourcePath: string;\n /** Current Agent dump JSON; when present, HTML is not parsed for execution data. */\n dumpPath?: string;\n collection?: TestRunReportSnapshotCollection;\n}\n\nexport interface IndexedTestRunReportSource {\n reportId: string;\n scopeId: string;\n sourcePath: string;\n executionIds: string[];\n collection?: TestRunReportSnapshotCollection;\n}\n\nexport interface TestRunReportSourceIndex {\n sources: IndexedTestRunReportSource[];\n metrics: TestRunReportMetrics;\n executionMetrics?: Record<string, TestRunReportMetrics>;\n /** Usage from readable sources, before applying source-availability diagnostics. */\n capturedMetrics?: TestRunReportMetrics;\n diagnostics?: TestRunReportDiagnostic[];\n}\n\nexport interface AssembleTestRunReportOptions {\n outputDir: string;\n /** File or directory name without an extension. */\n reportFileName: string;\n sources: readonly TestRunReportSource[];\n buildRunnerDump(index: TestRunReportSourceIndex): TestRunReportDump;\n overwrite?: boolean;\n}\n"],"names":["__webpack_require__","definition","key","Object","obj","prop","Symbol","TEST_RUN_REPORT_SCRIPT_TYPE"],"mappings":";;;IAAAA,oBAAoB,CAAC,GAAG,CAAC,UAASC;QACjC,IAAI,IAAIC,OAAOD,WACR,IAAGD,oBAAoB,CAAC,CAACC,YAAYC,QAAQ,CAACF,oBAAoB,CAAC,CAAC,UAASE,MACzEC,OAAO,cAAc,CAAC,UAASD,KAAK;YAAE,YAAY;YAAM,KAAKD,UAAU,CAACC,IAAI;QAAC;IAGzF;;;ICNAF,oBAAoB,CAAC,GAAG,CAACI,KAAKC,OAAUF,OAAO,SAAS,CAAC,cAAc,CAAC,IAAI,CAACC,KAAKC;;;ICClFL,oBAAoB,CAAC,GAAG,CAAC;QACxB,IAAG,AAAkB,eAAlB,OAAOM,UAA0BA,OAAO,WAAW,EACrDH,OAAO,cAAc,CAAC,UAASG,OAAO,WAAW,EAAE;YAAE,OAAO;QAAS;QAEtEH,OAAO,cAAc,CAAC,UAAS,cAAc;YAAE,OAAO;QAAK;IAC5D;;;;;;;ACNO,MAAMI,8BAA8B"}
1
+ {"version":3,"file":"test-run-report.js","sources":["webpack/runtime/define_property_getters","webpack/runtime/has_own_property","webpack/runtime/make_namespace_object","../../src/test-run-report.ts"],"sourcesContent":["__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n }\n }\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","import type { ReportModelUsageSummary } from './report-stats';\n\nexport const TEST_RUN_REPORT_SCRIPT_TYPE = 'midscene_test_run_dump';\n\nexport type TestRunReportRunStatus = 'success' | 'failed';\nexport type TestRunReportCaseStatus = TestRunReportRunStatus | 'not-run';\nexport type TestRunReportStepPhase =\n | 'beforeAll'\n | 'beforeEach'\n | 'steps'\n | 'afterEach'\n | 'afterAll';\n\n/**\n * A JSON-safe value prepared for display in a Midscene Test report.\n *\n * Paths use JSONPath-like notation rooted at `$`. The path arrays are kept\n * beside the value so the UI never presents redacted or truncated data as if\n * it were complete.\n */\nexport interface TestRunReportValue {\n value: unknown;\n truncatedPaths?: string[];\n redactedPaths?: string[];\n}\n\nexport interface TestRunReportError {\n format?: 'midscene-error';\n name: string;\n message: string;\n stack?: string;\n code?: string;\n details?: TestRunReportValue;\n cause?: TestRunReportError;\n errors?: TestRunReportError[];\n truncated?: boolean;\n}\n\nexport interface TestRunReportOperationReference {\n operationId: string;\n scopeId?: string;\n stepId?: string;\n node?: string;\n}\n\n/** Immutable observation; late completion remains in the operation journal. */\nexport interface TestRunReportCleanup {\n status: 'not-required' | 'completed' | 'pending' | 'failed';\n capturedAt: string;\n operationId?: string;\n blockingOperations?: TestRunReportOperationReference[];\n error?: TestRunReportError;\n}\n\nexport interface TestRunReportRetryDecision {\n scope: 'case' | 'document';\n retryCount: number;\n attemptIndex: number;\n decision: 'retry' | 'stop';\n reason:\n | 'passed'\n | 'attempt-failed'\n | 'budget-exhausted'\n | 'cleanup-pending'\n | 'cleanup-failed'\n | 'operation-pending'\n | 'fatal-error'\n | 'interrupted'\n | 'bail'\n | 'infrastructure-error';\n}\n\nexport interface TestRunReportPhaseResult {\n status: 'success' | 'failed' | 'not-run' | 'not-required';\n plannedStepCount: number;\n executedStepCount: number;\n}\n\nexport interface TestRunReportHostError {\n phase:\n | 'setup'\n | 'execution'\n | 'cleanup'\n | 'report'\n | 'publication'\n | 'observer';\n error: TestRunReportError;\n}\n\nexport interface TestRunReportDiagnostic {\n level: 'warning' | 'error';\n code:\n | 'agent-detail-unresolved'\n | 'agent-detail-unavailable'\n | 'large-report'\n | 'run-infrastructure-error'\n | 'agent-source-unavailable'\n | 'source-without-executions';\n message: string;\n scopeId?: string;\n executionId?: string;\n sourcePaths?: string[];\n stepId?: string;\n error?: TestRunReportError;\n}\n\nexport interface TestRunReportMetrics {\n /** Actual models observed in usage records, independent of configured defaults. */\n models?: ReportModelUsageSummary[];\n modelCallCount: number;\n modelTimeMs: number;\n promptTokens: number;\n cachedInputTokens: number;\n completionTokens: number;\n totalTokens: number;\n collection?: {\n status: 'complete' | 'partial' | 'unknown';\n expectedExecutionCount: number;\n capturedExecutionCount: number;\n reasons: string[];\n fields?: Record<\n 'modelCallCount' | 'modelTimeMs' | 'totalTokens',\n 'complete' | 'partial' | 'unknown'\n > &\n Partial<\n Record<\n 'promptTokens' | 'completionTokens',\n 'complete' | 'partial' | 'unknown'\n >\n >;\n };\n}\n\nexport interface TestRunReportSnapshotCollection {\n status: 'complete' | 'partial';\n /** Native dump cutoff before I/O; observation time for partial live sources. */\n capturedAt: string;\n reason?: string;\n}\n\nexport interface TestRunReportAgentDetail {\n reportId: string;\n executionId: string;\n}\n\n/** Operation facts are independent of Agent dump IDs and report snapshots. */\nexport interface TestRunReportOperationEvent {\n operationId: string;\n operationKind: 'node' | 'resource' | 'acquisition' | 'cleanup' | 'readiness';\n kind:\n | 'started'\n | 'cancel-requested'\n | 'settled'\n | 'runner-returned'\n | 'cleanup-deferred';\n at: string;\n stepId?: string;\n scopeId?: string;\n node?: string;\n status?: 'success' | 'failed' | 'not-run';\n /** True only when the actual operation has not settled at Runner return. */\n pending?: boolean;\n error?: TestRunReportError;\n blockingOperations?: TestRunReportOperationReference[];\n}\n\nexport interface TestRunReportPlannedStep {\n id: string;\n phase: TestRunReportStepPhase;\n stepIndex: number;\n node: string;\n title?: string;\n input: TestRunReportValue;\n inputMode: 'template' | 'resolved';\n timeoutMs?: number;\n continueOnError: boolean;\n}\n\nexport interface TestRunReportCasePlan {\n caseId: string;\n name: string;\n caseIndex: number;\n selected: boolean;\n tags: string[];\n onFailure?: 'continue' | 'stop-document';\n beforeEach: TestRunReportPlannedStep[];\n steps: TestRunReportPlannedStep[];\n afterEach: TestRunReportPlannedStep[];\n}\n\n/** A safe snapshot collected before resource acquisition, independent of attempts. */\nexport interface TestRunReportDocumentPlan {\n documentId: string;\n sourcePath: string;\n sourceYaml?: TestRunReportValue;\n retry: { scope: 'case' | 'document'; count: number };\n beforeAll: TestRunReportPlannedStep[];\n cases: TestRunReportCasePlan[];\n afterAll: TestRunReportPlannedStep[];\n}\n\ninterface TestRunReportStepBase {\n id: string;\n planStepId?: string;\n phase: TestRunReportStepPhase;\n stepIndex: number;\n node: string;\n title?: string;\n continuedAfterError: boolean;\n /** Time spent waiting for a cancelled operation before this Step started. */\n waitForPreviousOperationMs?: number;\n input?: TestRunReportValue;\n output?: {\n summary?: string;\n data?: TestRunReportValue;\n };\n error?: TestRunReportError;\n agentDetails?: TestRunReportAgentDetail[];\n agentDetailDiagnostic?: string;\n /** Usage survives even when screenshots or execution detail storage fails. */\n metrics?: TestRunReportMetrics;\n evidenceCollection?: {\n status: 'complete' | 'partial' | 'unknown';\n /** The missing source also prevented independent usage recovery. */\n modelUsageUnavailable?: boolean;\n capturedAt?: string;\n errors?: TestRunReportError[];\n };\n operations?: { capturedAt: string; events: TestRunReportOperationEvent[] };\n}\n\nexport type TestRunReportStep = TestRunReportStepBase &\n (\n | {\n status: TestRunReportRunStatus;\n startedAt: string;\n endedAt: string;\n durationMs: number;\n notRunReason?: never;\n blockedBy?: never;\n }\n | {\n status: 'not-run';\n notRunReason: string;\n blockedBy?: string;\n startedAt?: never;\n endedAt?: never;\n durationMs?: never;\n }\n );\n\nexport interface TestRunReportAttempt {\n attemptId: string;\n attemptIndex: number;\n status: TestRunReportRunStatus;\n executionStatus?: TestRunReportCaseStatus;\n phases?: Partial<Record<TestRunReportStepPhase, TestRunReportPhaseResult>>;\n cleanup?: TestRunReportCleanup;\n pendingOperations?: TestRunReportOperationReference[];\n retryDecision?: TestRunReportRetryDecision;\n startedAt: string;\n endedAt: string;\n durationMs: number;\n beforeEach: TestRunReportStep[];\n steps: TestRunReportStep[];\n afterEach: TestRunReportStep[];\n teardownErrors?: TestRunReportError[];\n hostErrors?: TestRunReportHostError[];\n /** Report groups available for scope-level fallback browsing. */\n scopeReportIds?: string[];\n}\n\nexport interface TestRunReportCase {\n plan?: TestRunReportCasePlan;\n caseId: string;\n name: string;\n caseIndex: number;\n status: TestRunReportCaseStatus;\n notRunReason?: string;\n attempts: TestRunReportAttempt[];\n}\n\nexport interface TestRunReportDocument {\n plan?: TestRunReportDocumentPlan;\n documentId: string;\n /** Logical file identity when separate invocations need distinct UI IDs. */\n logicalDocumentId?: string;\n documentRunId?: string;\n attemptIndex?: number;\n sourcePath: string;\n status: TestRunReportRunStatus;\n executionStatus?: TestRunReportCaseStatus;\n phases?: Partial<Record<TestRunReportStepPhase, TestRunReportPhaseResult>>;\n cleanup?: TestRunReportCleanup;\n pendingOperations?: TestRunReportOperationReference[];\n retryDecision?: TestRunReportRetryDecision;\n startedAt?: string;\n endedAt?: string;\n durationMs?: number;\n beforeAll: TestRunReportStep[];\n cases: TestRunReportCase[];\n afterAll: TestRunReportStep[];\n teardownErrors?: TestRunReportError[];\n hostErrors?: TestRunReportHostError[];\n /** Report groups available for scope-level fallback browsing. */\n scopeReportIds?: string[];\n /** Whole-file invocation history; Cases aggregate their own attempts. */\n attempts?: Omit<TestRunReportDocument, 'cases' | 'attempts'>[];\n}\n\nexport interface TestRunReportCollectionError {\n sourcePath: string;\n error: TestRunReportError;\n}\n\nexport interface TestRunReportProjectLifecycle {\n status: TestRunReportRunStatus;\n startedAt: string;\n endedAt: string;\n durationMs: number;\n setupError?: TestRunReportError;\n teardownErrors?: TestRunReportError[];\n cleanup?: TestRunReportCleanup;\n pendingOperations?: TestRunReportOperationReference[];\n}\n\nexport interface TestRunReportProject {\n plans?: readonly TestRunReportDocumentPlan[];\n projectId: string;\n name: string;\n /** Display identity, also supports legacy custom interface adapters. */\n platform?: string;\n status: TestRunReportRunStatus;\n retry: number;\n lifecycle?: TestRunReportProjectLifecycle;\n documents: TestRunReportDocument[];\n collectionErrors: TestRunReportCollectionError[];\n}\n\nexport interface TestRunReportSummary {\n total: number;\n passed: number;\n failed: number;\n notRun: number;\n filtered: number;\n collectionErrors: number;\n documentFailures: number;\n projectFailures: number;\n}\n\nexport interface TestRunReportDump {\n schemaVersion: 1;\n kind: 'test-runner';\n runId: string;\n status: TestRunReportRunStatus;\n startedAt: string;\n endedAt: string;\n durationMs: number;\n summary: TestRunReportSummary;\n metrics: TestRunReportMetrics;\n executionMetrics?: Record<string, TestRunReportMetrics>;\n projects: TestRunReportProject[];\n diagnostics?: TestRunReportDiagnostic[];\n operationLogs?: { path: string; snapshotAt: string }[];\n}\n\nexport interface TestRunReportSource {\n /** Resource/report scope that owns this Midscene Agent source. */\n scopeId: string;\n /** Absolute path identifying the Midscene Agent report. */\n sourcePath: string;\n /** Current Agent dump JSON; when present, HTML is not parsed for execution data. */\n dumpPath?: string;\n collection?: TestRunReportSnapshotCollection;\n}\n\nexport interface IndexedTestRunReportSource {\n reportId: string;\n scopeId: string;\n sourcePath: string;\n executionIds: string[];\n collection?: TestRunReportSnapshotCollection;\n}\n\nexport interface TestRunReportSourceIndex {\n sources: IndexedTestRunReportSource[];\n metrics: TestRunReportMetrics;\n executionMetrics?: Record<string, TestRunReportMetrics>;\n /** Usage from readable sources, before applying source-availability diagnostics. */\n capturedMetrics?: TestRunReportMetrics;\n diagnostics?: TestRunReportDiagnostic[];\n}\n\nexport interface AssembleTestRunReportOptions {\n outputDir: string;\n /** File or directory name without an extension. */\n reportFileName: string;\n sources: readonly TestRunReportSource[];\n buildRunnerDump(index: TestRunReportSourceIndex): TestRunReportDump;\n overwrite?: boolean;\n}\n"],"names":["__webpack_require__","definition","key","Object","obj","prop","Symbol","TEST_RUN_REPORT_SCRIPT_TYPE"],"mappings":";;;IAAAA,oBAAoB,CAAC,GAAG,CAAC,UAASC;QACjC,IAAI,IAAIC,OAAOD,WACR,IAAGD,oBAAoB,CAAC,CAACC,YAAYC,QAAQ,CAACF,oBAAoB,CAAC,CAAC,UAASE,MACzEC,OAAO,cAAc,CAAC,UAASD,KAAK;YAAE,YAAY;YAAM,KAAKD,UAAU,CAACC,IAAI;QAAC;IAGzF;;;ICNAF,oBAAoB,CAAC,GAAG,CAACI,KAAKC,OAAUF,OAAO,SAAS,CAAC,cAAc,CAAC,IAAI,CAACC,KAAKC;;;ICClFL,oBAAoB,CAAC,GAAG,CAAC;QACxB,IAAG,AAAkB,eAAlB,OAAOM,UAA0BA,OAAO,WAAW,EACrDH,OAAO,cAAc,CAAC,UAASG,OAAO,WAAW,EAAE;YAAE,OAAO;QAAS;QAEtEH,OAAO,cAAc,CAAC,UAAS,cAAc;YAAE,OAAO;QAAK;IAC5D;;;;;;;ACJO,MAAMI,8BAA8B"}
@@ -416,7 +416,9 @@ function mergeTestRunReportDumps(sources, metrics, runId, rawExecutionMetrics) {
416
416
  fields: Object.fromEntries([
417
417
  'modelCallCount',
418
418
  'modelTimeMs',
419
- 'totalTokens'
419
+ 'totalTokens',
420
+ 'promptTokens',
421
+ 'completionTokens'
420
422
  ].map((field)=>{
421
423
  const states = [
422
424
  ...collections.map((value)=>value?.fields?.[field] ?? value?.status ?? 'unknown'),
@@ -1 +1 @@
1
- {"version":3,"file":"test-runner/reporting/merge-report.js","sources":["webpack/runtime/define_property_getters","webpack/runtime/has_own_property","webpack/runtime/make_namespace_object","../../../../src/test-runner/reporting/merge-report.ts"],"sourcesContent":["__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n }\n }\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","import type {\n TestRunReportCleanup,\n TestRunReportDocument,\n TestRunReportDump,\n TestRunReportError,\n TestRunReportHostError,\n TestRunReportMetrics,\n TestRunReportOperationReference,\n TestRunReportStep,\n} from '../../test-run-report';\nimport type { ReportFileAttributes } from '../../types';\nimport { sumTestRunReportMetrics } from './metrics';\n\nfunction remapError(\n error: TestRunReportError,\n id: (value: string) => string,\n): TestRunReportError {\n const remapReferences = (value: unknown): unknown => {\n if (!value || typeof value !== 'object' || Array.isArray(value))\n return value;\n const result = { ...value } as Record<string, unknown>;\n for (const key of [\n 'blockedByStepId',\n 'stepId',\n 'scopeId',\n 'caseId',\n 'runId',\n 'documentId',\n 'documentRunId',\n ])\n if (typeof result[key] === 'string') result[key] = id(result[key]);\n return result;\n };\n let details = error.details;\n // Only framework-owned details contain report links. Do not rewrite matching\n // property names in custom errors or arbitrary nested business data.\n if (\n details &&\n [\n 'RESOURCE_RECOVERY_TIMEOUT',\n 'RESOURCE_CLEANUP_DEFERRED',\n 'NODE_SCOPE_TEARDOWN_ERROR',\n 'REPORT_SNAPSHOT_FAILED',\n 'CASE_EXECUTION_FAILED',\n 'WORKFLOW_DOCUMENT_EXECUTION_FAILED',\n ].includes(error.code ?? '')\n ) {\n const value = remapReferences(details.value);\n if (value && typeof value === 'object' && !Array.isArray(value)) {\n const mapped = value as Record<string, unknown>;\n for (const key of ['blockingOperations', 'diagnostics'])\n if (Array.isArray(mapped[key]))\n mapped[key] = mapped[key].map(remapReferences);\n }\n details = { ...details, value };\n }\n return {\n ...error,\n ...(details ? { details } : {}),\n ...(error.cause ? { cause: remapError(error.cause, id) } : {}),\n ...(error.errors\n ? { errors: error.errors.map((item) => remapError(item, id)) }\n : {}),\n };\n}\n\nexport interface MergeTestRunReportSource {\n reportId: string;\n sourcePath: string;\n attributes: ReportFileAttributes;\n dump?: TestRunReportDump;\n timing?: { startedAt: string; endedAt: string; durationMs: number };\n}\n\nfunction agentReportAsTestRun(\n source: MergeTestRunReportSource,\n): Pick<TestRunReportDump, 'status' | 'summary' | 'projects'> &\n Partial<\n Pick<\n TestRunReportDump,\n 'startedAt' | 'endedAt' | 'diagnostics' | 'operationLogs'\n >\n > {\n const { attributes, reportId } = source;\n const status =\n attributes.testStatus === 'skipped'\n ? 'not-run'\n : attributes.testStatus === 'passed'\n ? 'success'\n : 'failed';\n const failed = status === 'failed';\n return {\n status: failed ? 'failed' : 'success',\n ...source.timing,\n summary: {\n total: 1,\n passed: status === 'success' ? 1 : 0,\n failed: failed ? 1 : 0,\n notRun: status === 'not-run' ? 1 : 0,\n filtered: 0,\n collectionErrors: 0,\n documentFailures: 0,\n projectFailures: 0,\n },\n projects: [\n {\n projectId: 'agent-report',\n name: attributes.testTitle,\n platform: 'agent',\n status: failed ? 'failed' : 'success',\n retry: 0,\n collectionErrors: [],\n documents: [\n {\n documentId: 'agent-report',\n sourcePath: source.sourcePath,\n status: failed ? 'failed' : 'success',\n beforeAll: [],\n afterAll: [],\n scopeReportIds: [reportId],\n cases: [\n {\n caseId: attributes.testId,\n name: attributes.testTitle,\n caseIndex: 0,\n status,\n attempts:\n status === 'not-run' || !source.timing\n ? []\n : [\n {\n attemptId: 'agent-report',\n attemptIndex: 0,\n status,\n ...source.timing,\n beforeEach: [],\n steps: [],\n afterEach: [],\n scopeReportIds: [reportId],\n },\n ],\n },\n ],\n },\n ],\n },\n ],\n };\n}\n\nfunction retainHostFailure(\n source: MergeTestRunReportSource,\n): TestRunReportDump | undefined {\n const dump = source.dump;\n if (\n !dump ||\n dump.status === 'failed' ||\n !['failed', 'timedOut', 'interrupted'].includes(\n source.attributes.testStatus,\n )\n )\n return dump;\n\n const message = `Host test \"${source.attributes.testTitle}\" finished with status \"${source.attributes.testStatus}\".`;\n const projectIndex = dump.projects.length - 1;\n const project = dump.projects[projectIndex];\n const documentIndex = (project?.documents.length ?? 0) - 1;\n const document = project?.documents[documentIndex];\n const afterHost = <\n T extends Omit<TestRunReportDocument, 'cases' | 'attempts'>,\n >(\n value: T,\n ): T => ({\n ...value,\n status: 'failed',\n afterAll: [\n ...value.afterAll,\n {\n id: `${value.documentRunId ?? value.documentId}:host-result`,\n phase: 'afterAll',\n stepIndex: value.afterAll.length,\n node: 'runner:host-result',\n status: 'failed',\n continuedAfterError: false,\n startedAt: value.endedAt ?? dump.endedAt,\n endedAt: value.endedAt ?? dump.endedAt,\n durationMs: 0,\n error: { name: 'HostTestError', message },\n },\n ],\n });\n // The enclosing test can fail after YAML succeeds. Record that outcome at\n // the file boundary instead of changing successful actions or Case attempts.\n return {\n ...dump,\n status: 'failed',\n summary: {\n ...dump.summary,\n ...(document\n ? { documentFailures: dump.summary.documentFailures + 1 }\n : { projectFailures: dump.summary.projectFailures + 1 }),\n },\n projects: dump.projects.map((item, index) =>\n index !== projectIndex\n ? item\n : {\n ...item,\n status: 'failed',\n documents: item.documents.map((value, index) =>\n index !== documentIndex\n ? value\n : {\n ...afterHost(value),\n ...(value.attempts\n ? {\n attempts: value.attempts.map((attempt, index) =>\n index === value.attempts!.length - 1\n ? afterHost(attempt)\n : attempt,\n ),\n }\n : {}),\n },\n ),\n },\n ),\n diagnostics: [\n ...(dump.diagnostics ?? []),\n {\n level: 'error',\n code: 'run-infrastructure-error',\n message,\n },\n ],\n };\n}\n\nexport function mergeTestRunReportDumps(\n sources: readonly MergeTestRunReportSource[],\n metrics: TestRunReportMetrics,\n runId: string,\n rawExecutionMetrics?: Record<string, TestRunReportMetrics>,\n): TestRunReportDump {\n const dumps = sources.map((source) => {\n if (\n source.dump &&\n (!Number.isFinite(Date.parse(source.dump.startedAt)) ||\n !Number.isFinite(Date.parse(source.dump.endedAt)) ||\n Date.parse(source.dump.endedAt) < Date.parse(source.dump.startedAt))\n )\n throw new Error(\n `Invalid execution timestamps in Midscene Test report: ${source.sourcePath}`,\n );\n const dump = retainHostFailure(source) ?? agentReportAsTestRun(source);\n const id = (value: string) => `${source.reportId}:${value}`;\n const error = (value: TestRunReportError) => remapError(value, id);\n const scopeErrors = <\n T extends {\n setupError?: TestRunReportError;\n teardownErrors?: TestRunReportError[];\n hostErrors?: TestRunReportHostError[];\n },\n >(\n value: T,\n ): T => ({\n ...value,\n ...(value.setupError ? { setupError: error(value.setupError) } : {}),\n ...(value.teardownErrors\n ? { teardownErrors: value.teardownErrors.map(error) }\n : {}),\n ...(value.hostErrors\n ? {\n hostErrors: value.hostErrors.map((host) => ({\n ...host,\n error: error(host.error),\n })),\n }\n : {}),\n });\n const reference = (\n value: TestRunReportOperationReference,\n ): TestRunReportOperationReference => ({\n ...value,\n ...(value.stepId ? { stepId: id(value.stepId) } : {}),\n ...(value.scopeId ? { scopeId: id(value.scopeId) } : {}),\n });\n const cleanup = (value: TestRunReportCleanup | undefined) =>\n value\n ? {\n ...value,\n ...(value.error ? { error: error(value.error) } : {}),\n ...(value.blockingOperations\n ? { blockingOperations: value.blockingOperations.map(reference) }\n : {}),\n }\n : undefined;\n const scopeReports = (reportIds: string[] | undefined) =>\n reportIds?.length ? [source.reportId] : reportIds;\n const step = (value: TestRunReportStep): TestRunReportStep => {\n const result: TestRunReportStep = {\n ...value,\n id: id(value.id),\n ...(value.error ? { error: error(value.error) } : {}),\n ...(value.evidenceCollection\n ? {\n evidenceCollection: {\n ...value.evidenceCollection,\n ...(value.evidenceCollection.errors\n ? { errors: value.evidenceCollection.errors.map(error) }\n : {}),\n },\n }\n : {}),\n ...(value.operations\n ? {\n operations: {\n ...value.operations,\n events: value.operations.events.map((event) => ({\n ...event,\n ...(event.error ? { error: error(event.error) } : {}),\n ...(event.stepId ? { stepId: id(event.stepId) } : {}),\n ...(event.scopeId ? { scopeId: id(event.scopeId) } : {}),\n ...(event.blockingOperations\n ? {\n blockingOperations:\n event.blockingOperations.map(reference),\n }\n : {}),\n })),\n },\n }\n : {}),\n ...(value.agentDetails\n ? {\n agentDetails: value.agentDetails.map((detail) => ({\n ...detail,\n reportId: source.reportId,\n })),\n }\n : {}),\n };\n if (result.status === 'not-run' && result.blockedBy)\n result.blockedBy = id(result.blockedBy);\n return result;\n };\n const documentScope = <\n T extends Omit<TestRunReportDocument, 'cases' | 'attempts'>,\n >(\n value: T,\n ): T => ({\n ...scopeErrors(value),\n ...(value.cleanup ? { cleanup: cleanup(value.cleanup) } : {}),\n ...(value.pendingOperations\n ? { pendingOperations: value.pendingOperations.map(reference) }\n : {}),\n documentId: id(value.documentId),\n ...(value.logicalDocumentId\n ? { logicalDocumentId: id(value.logicalDocumentId) }\n : {}),\n ...(value.documentRunId\n ? { documentRunId: id(value.documentRunId) }\n : {}),\n beforeAll: value.beforeAll.map(step),\n afterAll: value.afterAll.map(step),\n scopeReportIds: scopeReports(value.scopeReportIds),\n });\n // A file can already contain a merged run. Namespace hierarchy IDs while\n // keeping execution IDs stable: the latter also deduplicate shared snapshots.\n return {\n ...dump,\n projects: dump.projects.map((project) => ({\n ...project,\n projectId: id(project.projectId),\n collectionErrors: project.collectionErrors.map((item) => ({\n ...item,\n error: error(item.error),\n })),\n ...(project.lifecycle\n ? {\n lifecycle: {\n ...scopeErrors(project.lifecycle),\n ...(project.lifecycle.cleanup\n ? { cleanup: cleanup(project.lifecycle.cleanup) }\n : {}),\n ...(project.lifecycle.pendingOperations\n ? {\n pendingOperations:\n project.lifecycle.pendingOperations.map(reference),\n }\n : {}),\n },\n }\n : {}),\n documents: project.documents.map((document) => ({\n ...documentScope(document),\n ...(document.attempts\n ? { attempts: document.attempts.map(documentScope) }\n : {}),\n cases: document.cases.map((testCase) => ({\n ...testCase,\n caseId: id(testCase.caseId),\n attempts: testCase.attempts.map((attempt) => ({\n ...scopeErrors(attempt),\n attemptId: id(attempt.attemptId),\n ...(attempt.cleanup ? { cleanup: cleanup(attempt.cleanup) } : {}),\n ...(attempt.pendingOperations\n ? {\n pendingOperations: attempt.pendingOperations.map(reference),\n }\n : {}),\n beforeEach: attempt.beforeEach.map(step),\n steps: attempt.steps.map(step),\n afterEach: attempt.afterEach.map(step),\n scopeReportIds: scopeReports(attempt.scopeReportIds),\n })),\n })),\n })),\n })),\n diagnostics: dump.diagnostics?.map((diagnostic) => ({\n ...diagnostic,\n ...(diagnostic.error ? { error: error(diagnostic.error) } : {}),\n ...(diagnostic.scopeId ? { scopeId: id(diagnostic.scopeId) } : {}),\n ...(diagnostic.stepId ? { stepId: id(diagnostic.stepId) } : {}),\n })),\n };\n });\n // A report without recorded timestamps contributes outcomes, not the time\n // at which an unrelated merge command happened to run.\n const recordedTimes = dumps.flatMap((dump) =>\n dump.startedAt && dump.endedAt\n ? [{ start: Date.parse(dump.startedAt), end: Date.parse(dump.endedAt) }]\n : [],\n );\n if (!recordedTimes.length)\n throw new Error(\n 'Cannot merge Midscene Test reports without recorded execution timestamps.',\n );\n const startedAt = new Date(\n Math.min(...recordedTimes.map((time) => time.start)),\n ).toISOString();\n const endedAt = new Date(\n Math.max(...recordedTimes.map((time) => time.end)),\n ).toISOString();\n const summary = {\n total: 0,\n passed: 0,\n failed: 0,\n notRun: 0,\n filtered: 0,\n collectionErrors: 0,\n documentFailures: 0,\n projectFailures: 0,\n };\n for (const dump of dumps) {\n for (const key of Object.keys(summary) as (keyof typeof summary)[])\n summary[key] += dump.summary[key];\n }\n const diagnostics = dumps.flatMap((dump) => dump.diagnostics ?? []);\n const executionMetrics: Record<string, TestRunReportMetrics> = Object.assign(\n {},\n rawExecutionMetrics,\n ...sources.map((source) => source.dump?.executionMetrics),\n );\n if (rawExecutionMetrics)\n metrics = sumTestRunReportMetrics([\n metrics,\n ...Object.entries(executionMetrics)\n .filter(([id]) => !rawExecutionMetrics[id])\n .map(([, value]) => value),\n ]);\n else if (sources.every((source) => source.dump?.executionMetrics))\n metrics = sumTestRunReportMetrics(Object.values(executionMetrics));\n const collections = sources.flatMap((source) =>\n source.dump ? [source.dump.metrics.collection] : [],\n );\n const incomplete =\n metrics.collection?.status === 'partial' ||\n metrics.collection?.status === 'unknown' ||\n collections.some((collection) => collection?.status !== 'complete');\n const collection = {\n status: (incomplete\n ? metrics.modelCallCount > 0 ||\n collections.some(\n (value) =>\n value?.status === 'complete' || value?.status === 'partial',\n )\n ? 'partial'\n : 'unknown'\n : 'complete') as 'complete' | 'partial' | 'unknown',\n expectedExecutionCount: collections.reduce(\n (count, value) => count + (value?.expectedExecutionCount ?? 0),\n 0,\n ),\n capturedExecutionCount: collections.reduce(\n (count, value) => count + (value?.capturedExecutionCount ?? 0),\n 0,\n ),\n reasons: [\n ...(metrics.collection?.reasons ?? []),\n ...new Set(\n collections.flatMap(\n (value) =>\n value?.reasons ?? [\n 'Model metric collection status is unavailable in a source report.',\n ],\n ),\n ),\n ],\n fields: Object.fromEntries(\n (['modelCallCount', 'modelTimeMs', 'totalTokens'] as const).map(\n (field) => {\n const states = [\n ...collections.map(\n (value) => value?.fields?.[field] ?? value?.status ?? 'unknown',\n ),\n ...(metrics.collection?.fields\n ? [metrics.collection.fields[field]]\n : []),\n ];\n return [\n field,\n states.every((state) => state === 'complete')\n ? 'complete'\n : states.every((state) => state === 'unknown')\n ? 'unknown'\n : 'partial',\n ];\n },\n ),\n ) as NonNullable<NonNullable<TestRunReportMetrics['collection']>['fields']>,\n };\n return {\n schemaVersion: 1,\n kind: 'test-runner',\n runId,\n status: dumps.some((dump) => dump.status === 'failed')\n ? 'failed'\n : 'success',\n startedAt,\n endedAt,\n durationMs: Math.max(0, Date.parse(endedAt) - Date.parse(startedAt)),\n summary,\n metrics: { ...metrics, collection },\n ...(Object.keys(executionMetrics).length ? { executionMetrics } : {}),\n projects: dumps.flatMap((dump) => dump.projects),\n ...(dumps.some((dump) => dump.operationLogs?.length)\n ? { operationLogs: dumps.flatMap((dump) => dump.operationLogs ?? []) }\n : {}),\n ...(diagnostics.length ? { diagnostics } : {}),\n };\n}\n"],"names":["__webpack_require__","definition","key","Object","obj","prop","Symbol","remapError","error","id","remapReferences","value","Array","result","details","mapped","item","agentReportAsTestRun","source","attributes","reportId","status","failed","retainHostFailure","dump","message","projectIndex","project","documentIndex","document","afterHost","index","attempt","mergeTestRunReportDumps","sources","metrics","runId","rawExecutionMetrics","dumps","Number","Date","Error","scopeErrors","host","reference","cleanup","undefined","scopeReports","reportIds","step","event","detail","documentScope","testCase","diagnostic","recordedTimes","startedAt","Math","time","endedAt","summary","diagnostics","executionMetrics","sumTestRunReportMetrics","collections","incomplete","collection","count","Set","field","states","state"],"mappings":"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"}
1
+ {"version":3,"file":"test-runner/reporting/merge-report.js","sources":["webpack/runtime/define_property_getters","webpack/runtime/has_own_property","webpack/runtime/make_namespace_object","../../../../src/test-runner/reporting/merge-report.ts"],"sourcesContent":["__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n }\n }\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","import type {\n TestRunReportCleanup,\n TestRunReportDocument,\n TestRunReportDump,\n TestRunReportError,\n TestRunReportHostError,\n TestRunReportMetrics,\n TestRunReportOperationReference,\n TestRunReportStep,\n} from '../../test-run-report';\nimport type { ReportFileAttributes } from '../../types';\nimport { sumTestRunReportMetrics } from './metrics';\n\nfunction remapError(\n error: TestRunReportError,\n id: (value: string) => string,\n): TestRunReportError {\n const remapReferences = (value: unknown): unknown => {\n if (!value || typeof value !== 'object' || Array.isArray(value))\n return value;\n const result = { ...value } as Record<string, unknown>;\n for (const key of [\n 'blockedByStepId',\n 'stepId',\n 'scopeId',\n 'caseId',\n 'runId',\n 'documentId',\n 'documentRunId',\n ])\n if (typeof result[key] === 'string') result[key] = id(result[key]);\n return result;\n };\n let details = error.details;\n // Only framework-owned details contain report links. Do not rewrite matching\n // property names in custom errors or arbitrary nested business data.\n if (\n details &&\n [\n 'RESOURCE_RECOVERY_TIMEOUT',\n 'RESOURCE_CLEANUP_DEFERRED',\n 'NODE_SCOPE_TEARDOWN_ERROR',\n 'REPORT_SNAPSHOT_FAILED',\n 'CASE_EXECUTION_FAILED',\n 'WORKFLOW_DOCUMENT_EXECUTION_FAILED',\n ].includes(error.code ?? '')\n ) {\n const value = remapReferences(details.value);\n if (value && typeof value === 'object' && !Array.isArray(value)) {\n const mapped = value as Record<string, unknown>;\n for (const key of ['blockingOperations', 'diagnostics'])\n if (Array.isArray(mapped[key]))\n mapped[key] = mapped[key].map(remapReferences);\n }\n details = { ...details, value };\n }\n return {\n ...error,\n ...(details ? { details } : {}),\n ...(error.cause ? { cause: remapError(error.cause, id) } : {}),\n ...(error.errors\n ? { errors: error.errors.map((item) => remapError(item, id)) }\n : {}),\n };\n}\n\nexport interface MergeTestRunReportSource {\n reportId: string;\n sourcePath: string;\n attributes: ReportFileAttributes;\n dump?: TestRunReportDump;\n timing?: { startedAt: string; endedAt: string; durationMs: number };\n}\n\nfunction agentReportAsTestRun(\n source: MergeTestRunReportSource,\n): Pick<TestRunReportDump, 'status' | 'summary' | 'projects'> &\n Partial<\n Pick<\n TestRunReportDump,\n 'startedAt' | 'endedAt' | 'diagnostics' | 'operationLogs'\n >\n > {\n const { attributes, reportId } = source;\n const status =\n attributes.testStatus === 'skipped'\n ? 'not-run'\n : attributes.testStatus === 'passed'\n ? 'success'\n : 'failed';\n const failed = status === 'failed';\n return {\n status: failed ? 'failed' : 'success',\n ...source.timing,\n summary: {\n total: 1,\n passed: status === 'success' ? 1 : 0,\n failed: failed ? 1 : 0,\n notRun: status === 'not-run' ? 1 : 0,\n filtered: 0,\n collectionErrors: 0,\n documentFailures: 0,\n projectFailures: 0,\n },\n projects: [\n {\n projectId: 'agent-report',\n name: attributes.testTitle,\n platform: 'agent',\n status: failed ? 'failed' : 'success',\n retry: 0,\n collectionErrors: [],\n documents: [\n {\n documentId: 'agent-report',\n sourcePath: source.sourcePath,\n status: failed ? 'failed' : 'success',\n beforeAll: [],\n afterAll: [],\n scopeReportIds: [reportId],\n cases: [\n {\n caseId: attributes.testId,\n name: attributes.testTitle,\n caseIndex: 0,\n status,\n attempts:\n status === 'not-run' || !source.timing\n ? []\n : [\n {\n attemptId: 'agent-report',\n attemptIndex: 0,\n status,\n ...source.timing,\n beforeEach: [],\n steps: [],\n afterEach: [],\n scopeReportIds: [reportId],\n },\n ],\n },\n ],\n },\n ],\n },\n ],\n };\n}\n\nfunction retainHostFailure(\n source: MergeTestRunReportSource,\n): TestRunReportDump | undefined {\n const dump = source.dump;\n if (\n !dump ||\n dump.status === 'failed' ||\n !['failed', 'timedOut', 'interrupted'].includes(\n source.attributes.testStatus,\n )\n )\n return dump;\n\n const message = `Host test \"${source.attributes.testTitle}\" finished with status \"${source.attributes.testStatus}\".`;\n const projectIndex = dump.projects.length - 1;\n const project = dump.projects[projectIndex];\n const documentIndex = (project?.documents.length ?? 0) - 1;\n const document = project?.documents[documentIndex];\n const afterHost = <\n T extends Omit<TestRunReportDocument, 'cases' | 'attempts'>,\n >(\n value: T,\n ): T => ({\n ...value,\n status: 'failed',\n afterAll: [\n ...value.afterAll,\n {\n id: `${value.documentRunId ?? value.documentId}:host-result`,\n phase: 'afterAll',\n stepIndex: value.afterAll.length,\n node: 'runner:host-result',\n status: 'failed',\n continuedAfterError: false,\n startedAt: value.endedAt ?? dump.endedAt,\n endedAt: value.endedAt ?? dump.endedAt,\n durationMs: 0,\n error: { name: 'HostTestError', message },\n },\n ],\n });\n // The enclosing test can fail after YAML succeeds. Record that outcome at\n // the file boundary instead of changing successful actions or Case attempts.\n return {\n ...dump,\n status: 'failed',\n summary: {\n ...dump.summary,\n ...(document\n ? { documentFailures: dump.summary.documentFailures + 1 }\n : { projectFailures: dump.summary.projectFailures + 1 }),\n },\n projects: dump.projects.map((item, index) =>\n index !== projectIndex\n ? item\n : {\n ...item,\n status: 'failed',\n documents: item.documents.map((value, index) =>\n index !== documentIndex\n ? value\n : {\n ...afterHost(value),\n ...(value.attempts\n ? {\n attempts: value.attempts.map((attempt, index) =>\n index === value.attempts!.length - 1\n ? afterHost(attempt)\n : attempt,\n ),\n }\n : {}),\n },\n ),\n },\n ),\n diagnostics: [\n ...(dump.diagnostics ?? []),\n {\n level: 'error',\n code: 'run-infrastructure-error',\n message,\n },\n ],\n };\n}\n\nexport function mergeTestRunReportDumps(\n sources: readonly MergeTestRunReportSource[],\n metrics: TestRunReportMetrics,\n runId: string,\n rawExecutionMetrics?: Record<string, TestRunReportMetrics>,\n): TestRunReportDump {\n const dumps = sources.map((source) => {\n if (\n source.dump &&\n (!Number.isFinite(Date.parse(source.dump.startedAt)) ||\n !Number.isFinite(Date.parse(source.dump.endedAt)) ||\n Date.parse(source.dump.endedAt) < Date.parse(source.dump.startedAt))\n )\n throw new Error(\n `Invalid execution timestamps in Midscene Test report: ${source.sourcePath}`,\n );\n const dump = retainHostFailure(source) ?? agentReportAsTestRun(source);\n const id = (value: string) => `${source.reportId}:${value}`;\n const error = (value: TestRunReportError) => remapError(value, id);\n const scopeErrors = <\n T extends {\n setupError?: TestRunReportError;\n teardownErrors?: TestRunReportError[];\n hostErrors?: TestRunReportHostError[];\n },\n >(\n value: T,\n ): T => ({\n ...value,\n ...(value.setupError ? { setupError: error(value.setupError) } : {}),\n ...(value.teardownErrors\n ? { teardownErrors: value.teardownErrors.map(error) }\n : {}),\n ...(value.hostErrors\n ? {\n hostErrors: value.hostErrors.map((host) => ({\n ...host,\n error: error(host.error),\n })),\n }\n : {}),\n });\n const reference = (\n value: TestRunReportOperationReference,\n ): TestRunReportOperationReference => ({\n ...value,\n ...(value.stepId ? { stepId: id(value.stepId) } : {}),\n ...(value.scopeId ? { scopeId: id(value.scopeId) } : {}),\n });\n const cleanup = (value: TestRunReportCleanup | undefined) =>\n value\n ? {\n ...value,\n ...(value.error ? { error: error(value.error) } : {}),\n ...(value.blockingOperations\n ? { blockingOperations: value.blockingOperations.map(reference) }\n : {}),\n }\n : undefined;\n const scopeReports = (reportIds: string[] | undefined) =>\n reportIds?.length ? [source.reportId] : reportIds;\n const step = (value: TestRunReportStep): TestRunReportStep => {\n const result: TestRunReportStep = {\n ...value,\n id: id(value.id),\n ...(value.error ? { error: error(value.error) } : {}),\n ...(value.evidenceCollection\n ? {\n evidenceCollection: {\n ...value.evidenceCollection,\n ...(value.evidenceCollection.errors\n ? { errors: value.evidenceCollection.errors.map(error) }\n : {}),\n },\n }\n : {}),\n ...(value.operations\n ? {\n operations: {\n ...value.operations,\n events: value.operations.events.map((event) => ({\n ...event,\n ...(event.error ? { error: error(event.error) } : {}),\n ...(event.stepId ? { stepId: id(event.stepId) } : {}),\n ...(event.scopeId ? { scopeId: id(event.scopeId) } : {}),\n ...(event.blockingOperations\n ? {\n blockingOperations:\n event.blockingOperations.map(reference),\n }\n : {}),\n })),\n },\n }\n : {}),\n ...(value.agentDetails\n ? {\n agentDetails: value.agentDetails.map((detail) => ({\n ...detail,\n reportId: source.reportId,\n })),\n }\n : {}),\n };\n if (result.status === 'not-run' && result.blockedBy)\n result.blockedBy = id(result.blockedBy);\n return result;\n };\n const documentScope = <\n T extends Omit<TestRunReportDocument, 'cases' | 'attempts'>,\n >(\n value: T,\n ): T => ({\n ...scopeErrors(value),\n ...(value.cleanup ? { cleanup: cleanup(value.cleanup) } : {}),\n ...(value.pendingOperations\n ? { pendingOperations: value.pendingOperations.map(reference) }\n : {}),\n documentId: id(value.documentId),\n ...(value.logicalDocumentId\n ? { logicalDocumentId: id(value.logicalDocumentId) }\n : {}),\n ...(value.documentRunId\n ? { documentRunId: id(value.documentRunId) }\n : {}),\n beforeAll: value.beforeAll.map(step),\n afterAll: value.afterAll.map(step),\n scopeReportIds: scopeReports(value.scopeReportIds),\n });\n // A file can already contain a merged run. Namespace hierarchy IDs while\n // keeping execution IDs stable: the latter also deduplicate shared snapshots.\n return {\n ...dump,\n projects: dump.projects.map((project) => ({\n ...project,\n projectId: id(project.projectId),\n collectionErrors: project.collectionErrors.map((item) => ({\n ...item,\n error: error(item.error),\n })),\n ...(project.lifecycle\n ? {\n lifecycle: {\n ...scopeErrors(project.lifecycle),\n ...(project.lifecycle.cleanup\n ? { cleanup: cleanup(project.lifecycle.cleanup) }\n : {}),\n ...(project.lifecycle.pendingOperations\n ? {\n pendingOperations:\n project.lifecycle.pendingOperations.map(reference),\n }\n : {}),\n },\n }\n : {}),\n documents: project.documents.map((document) => ({\n ...documentScope(document),\n ...(document.attempts\n ? { attempts: document.attempts.map(documentScope) }\n : {}),\n cases: document.cases.map((testCase) => ({\n ...testCase,\n caseId: id(testCase.caseId),\n attempts: testCase.attempts.map((attempt) => ({\n ...scopeErrors(attempt),\n attemptId: id(attempt.attemptId),\n ...(attempt.cleanup ? { cleanup: cleanup(attempt.cleanup) } : {}),\n ...(attempt.pendingOperations\n ? {\n pendingOperations: attempt.pendingOperations.map(reference),\n }\n : {}),\n beforeEach: attempt.beforeEach.map(step),\n steps: attempt.steps.map(step),\n afterEach: attempt.afterEach.map(step),\n scopeReportIds: scopeReports(attempt.scopeReportIds),\n })),\n })),\n })),\n })),\n diagnostics: dump.diagnostics?.map((diagnostic) => ({\n ...diagnostic,\n ...(diagnostic.error ? { error: error(diagnostic.error) } : {}),\n ...(diagnostic.scopeId ? { scopeId: id(diagnostic.scopeId) } : {}),\n ...(diagnostic.stepId ? { stepId: id(diagnostic.stepId) } : {}),\n })),\n };\n });\n // A report without recorded timestamps contributes outcomes, not the time\n // at which an unrelated merge command happened to run.\n const recordedTimes = dumps.flatMap((dump) =>\n dump.startedAt && dump.endedAt\n ? [{ start: Date.parse(dump.startedAt), end: Date.parse(dump.endedAt) }]\n : [],\n );\n if (!recordedTimes.length)\n throw new Error(\n 'Cannot merge Midscene Test reports without recorded execution timestamps.',\n );\n const startedAt = new Date(\n Math.min(...recordedTimes.map((time) => time.start)),\n ).toISOString();\n const endedAt = new Date(\n Math.max(...recordedTimes.map((time) => time.end)),\n ).toISOString();\n const summary = {\n total: 0,\n passed: 0,\n failed: 0,\n notRun: 0,\n filtered: 0,\n collectionErrors: 0,\n documentFailures: 0,\n projectFailures: 0,\n };\n for (const dump of dumps) {\n for (const key of Object.keys(summary) as (keyof typeof summary)[])\n summary[key] += dump.summary[key];\n }\n const diagnostics = dumps.flatMap((dump) => dump.diagnostics ?? []);\n const executionMetrics: Record<string, TestRunReportMetrics> = Object.assign(\n {},\n rawExecutionMetrics,\n ...sources.map((source) => source.dump?.executionMetrics),\n );\n if (rawExecutionMetrics)\n metrics = sumTestRunReportMetrics([\n metrics,\n ...Object.entries(executionMetrics)\n .filter(([id]) => !rawExecutionMetrics[id])\n .map(([, value]) => value),\n ]);\n else if (sources.every((source) => source.dump?.executionMetrics))\n metrics = sumTestRunReportMetrics(Object.values(executionMetrics));\n const collections = sources.flatMap((source) =>\n source.dump ? [source.dump.metrics.collection] : [],\n );\n const incomplete =\n metrics.collection?.status === 'partial' ||\n metrics.collection?.status === 'unknown' ||\n collections.some((collection) => collection?.status !== 'complete');\n const collection = {\n status: (incomplete\n ? metrics.modelCallCount > 0 ||\n collections.some(\n (value) =>\n value?.status === 'complete' || value?.status === 'partial',\n )\n ? 'partial'\n : 'unknown'\n : 'complete') as 'complete' | 'partial' | 'unknown',\n expectedExecutionCount: collections.reduce(\n (count, value) => count + (value?.expectedExecutionCount ?? 0),\n 0,\n ),\n capturedExecutionCount: collections.reduce(\n (count, value) => count + (value?.capturedExecutionCount ?? 0),\n 0,\n ),\n reasons: [\n ...(metrics.collection?.reasons ?? []),\n ...new Set(\n collections.flatMap(\n (value) =>\n value?.reasons ?? [\n 'Model metric collection status is unavailable in a source report.',\n ],\n ),\n ),\n ],\n fields: Object.fromEntries(\n (\n [\n 'modelCallCount',\n 'modelTimeMs',\n 'totalTokens',\n 'promptTokens',\n 'completionTokens',\n ] as const\n ).map((field) => {\n const states = [\n ...collections.map(\n (value) => value?.fields?.[field] ?? value?.status ?? 'unknown',\n ),\n ...(metrics.collection?.fields\n ? [metrics.collection.fields[field]]\n : []),\n ];\n return [\n field,\n states.every((state) => state === 'complete')\n ? 'complete'\n : states.every((state) => state === 'unknown')\n ? 'unknown'\n : 'partial',\n ];\n }),\n ) as NonNullable<NonNullable<TestRunReportMetrics['collection']>['fields']>,\n };\n return {\n schemaVersion: 1,\n kind: 'test-runner',\n runId,\n status: dumps.some((dump) => dump.status === 'failed')\n ? 'failed'\n : 'success',\n startedAt,\n endedAt,\n durationMs: Math.max(0, Date.parse(endedAt) - Date.parse(startedAt)),\n summary,\n metrics: { ...metrics, collection },\n ...(Object.keys(executionMetrics).length ? { executionMetrics } : {}),\n projects: dumps.flatMap((dump) => dump.projects),\n ...(dumps.some((dump) => dump.operationLogs?.length)\n ? { operationLogs: dumps.flatMap((dump) => dump.operationLogs ?? []) }\n : {}),\n ...(diagnostics.length ? { diagnostics } : {}),\n };\n}\n"],"names":["__webpack_require__","definition","key","Object","obj","prop","Symbol","remapError","error","id","remapReferences","value","Array","result","details","mapped","item","agentReportAsTestRun","source","attributes","reportId","status","failed","retainHostFailure","dump","message","projectIndex","project","documentIndex","document","afterHost","index","attempt","mergeTestRunReportDumps","sources","metrics","runId","rawExecutionMetrics","dumps","Number","Date","Error","scopeErrors","host","reference","cleanup","undefined","scopeReports","reportIds","step","event","detail","documentScope","testCase","diagnostic","recordedTimes","startedAt","Math","time","endedAt","summary","diagnostics","executionMetrics","sumTestRunReportMetrics","collections","incomplete","collection","count","Set","field","states","state"],"mappings":";;;IAAAA,oBAAoB,CAAC,GAAG,CAAC,UAASC;QACjC,IAAI,IAAIC,OAAOD,WACR,IAAGD,oBAAoB,CAAC,CAACC,YAAYC,QAAQ,CAACF,oBAAoB,CAAC,CAAC,UAASE,MACzEC,OAAO,cAAc,CAAC,UAASD,KAAK;YAAE,YAAY;YAAM,KAAKD,UAAU,CAACC,IAAI;QAAC;IAGzF;;;ICNAF,oBAAoB,CAAC,GAAG,CAACI,KAAKC,OAAUF,OAAO,SAAS,CAAC,cAAc,CAAC,IAAI,CAACC,KAAKC;;;ICClFL,oBAAoB,CAAC,GAAG,CAAC;QACxB,IAAG,AAAkB,eAAlB,OAAOM,UAA0BA,OAAO,WAAW,EACrDH,OAAO,cAAc,CAAC,UAASG,OAAO,WAAW,EAAE;YAAE,OAAO;QAAS;QAEtEH,OAAO,cAAc,CAAC,UAAS,cAAc;YAAE,OAAO;QAAK;IAC5D;;;;;;;;ACOA,SAASI,WACPC,KAAyB,EACzBC,EAA6B;IAE7B,MAAMC,kBAAkB,CAACC;QACvB,IAAI,CAACA,SAAS,AAAiB,YAAjB,OAAOA,SAAsBC,MAAM,OAAO,CAACD,QACvD,OAAOA;QACT,MAAME,SAAS;YAAE,GAAGF,KAAK;QAAC;QAC1B,KAAK,MAAMT,OAAO;YAChB;YACA;YACA;YACA;YACA;YACA;YACA;SACD,CACC,IAAI,AAAuB,YAAvB,OAAOW,MAAM,CAACX,IAAI,EAAeW,MAAM,CAACX,IAAI,GAAGO,GAAGI,MAAM,CAACX,IAAI;QACnE,OAAOW;IACT;IACA,IAAIC,UAAUN,MAAM,OAAO;IAG3B,IACEM,WACA;QACE;QACA;QACA;QACA;QACA;QACA;KACD,CAAC,QAAQ,CAACN,MAAM,IAAI,IAAI,KACzB;QACA,MAAMG,QAAQD,gBAAgBI,QAAQ,KAAK;QAC3C,IAAIH,SAAS,AAAiB,YAAjB,OAAOA,SAAsB,CAACC,MAAM,OAAO,CAACD,QAAQ;YAC/D,MAAMI,SAASJ;YACf,KAAK,MAAMT,OAAO;gBAAC;gBAAsB;aAAc,CACrD,IAAIU,MAAM,OAAO,CAACG,MAAM,CAACb,IAAI,GAC3Ba,MAAM,CAACb,IAAI,GAAGa,MAAM,CAACb,IAAI,CAAC,GAAG,CAACQ;QACpC;QACAI,UAAU;YAAE,GAAGA,OAAO;YAAEH;QAAM;IAChC;IACA,OAAO;QACL,GAAGH,KAAK;QACR,GAAIM,UAAU;YAAEA;QAAQ,IAAI,CAAC,CAAC;QAC9B,GAAIN,MAAM,KAAK,GAAG;YAAE,OAAOD,WAAWC,MAAM,KAAK,EAAEC;QAAI,IAAI,CAAC,CAAC;QAC7D,GAAID,MAAM,MAAM,GACZ;YAAE,QAAQA,MAAM,MAAM,CAAC,GAAG,CAAC,CAACQ,OAAST,WAAWS,MAAMP;QAAK,IAC3D,CAAC,CAAC;IACR;AACF;AAUA,SAASQ,qBACPC,MAAgC;IAQhC,MAAM,EAAEC,UAAU,EAAEC,QAAQ,EAAE,GAAGF;IACjC,MAAMG,SACJF,AAA0B,cAA1BA,WAAW,UAAU,GACjB,YACAA,AAA0B,aAA1BA,WAAW,UAAU,GACnB,YACA;IACR,MAAMG,SAASD,AAAW,aAAXA;IACf,OAAO;QACL,QAAQC,SAAS,WAAW;QAC5B,GAAGJ,OAAO,MAAM;QAChB,SAAS;YACP,OAAO;YACP,QAAQG,AAAW,cAAXA,SAAuB,IAAI;YACnC,QAAQC,SAAS,IAAI;YACrB,QAAQD,AAAW,cAAXA,SAAuB,IAAI;YACnC,UAAU;YACV,kBAAkB;YAClB,kBAAkB;YAClB,iBAAiB;QACnB;QACA,UAAU;YACR;gBACE,WAAW;gBACX,MAAMF,WAAW,SAAS;gBAC1B,UAAU;gBACV,QAAQG,SAAS,WAAW;gBAC5B,OAAO;gBACP,kBAAkB,EAAE;gBACpB,WAAW;oBACT;wBACE,YAAY;wBACZ,YAAYJ,OAAO,UAAU;wBAC7B,QAAQI,SAAS,WAAW;wBAC5B,WAAW,EAAE;wBACb,UAAU,EAAE;wBACZ,gBAAgB;4BAACF;yBAAS;wBAC1B,OAAO;4BACL;gCACE,QAAQD,WAAW,MAAM;gCACzB,MAAMA,WAAW,SAAS;gCAC1B,WAAW;gCACXE;gCACA,UACEA,AAAW,cAAXA,UAAyBH,OAAO,MAAM,GAElC;oCACE;wCACE,WAAW;wCACX,cAAc;wCACdG;wCACA,GAAGH,OAAO,MAAM;wCAChB,YAAY,EAAE;wCACd,OAAO,EAAE;wCACT,WAAW,EAAE;wCACb,gBAAgB;4CAACE;yCAAS;oCAC5B;iCACD,GAZD,EAAE;4BAaV;yBACD;oBACH;iBACD;YACH;SACD;IACH;AACF;AAEA,SAASG,kBACPL,MAAgC;IAEhC,MAAMM,OAAON,OAAO,IAAI;IACxB,IACE,CAACM,QACDA,AAAgB,aAAhBA,KAAK,MAAM,IACX,CAAC;QAAC;QAAU;QAAY;KAAc,CAAC,QAAQ,CAC7CN,OAAO,UAAU,CAAC,UAAU,GAG9B,OAAOM;IAET,MAAMC,UAAU,CAAC,WAAW,EAAEP,OAAO,UAAU,CAAC,SAAS,CAAC,wBAAwB,EAAEA,OAAO,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;IACpH,MAAMQ,eAAeF,KAAK,QAAQ,CAAC,MAAM,GAAG;IAC5C,MAAMG,UAAUH,KAAK,QAAQ,CAACE,aAAa;IAC3C,MAAME,gBAAiBD,AAAAA,CAAAA,SAAS,UAAU,UAAU,KAAK;IACzD,MAAME,WAAWF,SAAS,SAAS,CAACC,cAAc;IAClD,MAAME,YAAY,CAGhBnB,QACO;YACP,GAAGA,KAAK;YACR,QAAQ;YACR,UAAU;mBACLA,MAAM,QAAQ;gBACjB;oBACE,IAAI,GAAGA,MAAM,aAAa,IAAIA,MAAM,UAAU,CAAC,YAAY,CAAC;oBAC5D,OAAO;oBACP,WAAWA,MAAM,QAAQ,CAAC,MAAM;oBAChC,MAAM;oBACN,QAAQ;oBACR,qBAAqB;oBACrB,WAAWA,MAAM,OAAO,IAAIa,KAAK,OAAO;oBACxC,SAASb,MAAM,OAAO,IAAIa,KAAK,OAAO;oBACtC,YAAY;oBACZ,OAAO;wBAAE,MAAM;wBAAiBC;oBAAQ;gBAC1C;aACD;QACH;IAGA,OAAO;QACL,GAAGD,IAAI;QACP,QAAQ;QACR,SAAS;YACP,GAAGA,KAAK,OAAO;YACf,GAAIK,WACA;gBAAE,kBAAkBL,KAAK,OAAO,CAAC,gBAAgB,GAAG;YAAE,IACtD;gBAAE,iBAAiBA,KAAK,OAAO,CAAC,eAAe,GAAG;YAAE,CAAC;QAC3D;QACA,UAAUA,KAAK,QAAQ,CAAC,GAAG,CAAC,CAACR,MAAMe,QACjCA,UAAUL,eACNV,OACA;gBACE,GAAGA,IAAI;gBACP,QAAQ;gBACR,WAAWA,KAAK,SAAS,CAAC,GAAG,CAAC,CAACL,OAAOoB,QACpCA,UAAUH,gBACNjB,QACA;wBACE,GAAGmB,UAAUnB,MAAM;wBACnB,GAAIA,MAAM,QAAQ,GACd;4BACE,UAAUA,MAAM,QAAQ,CAAC,GAAG,CAAC,CAACqB,SAASD,QACrCA,UAAUpB,MAAM,QAAQ,CAAE,MAAM,GAAG,IAC/BmB,UAAUE,WACVA;wBAER,IACA,CAAC,CAAC;oBACR;YAER;QAEN,aAAa;eACPR,KAAK,WAAW,IAAI,EAAE;YAC1B;gBACE,OAAO;gBACP,MAAM;gBACNC;YACF;SACD;IACH;AACF;AAEO,SAASQ,wBACdC,OAA4C,EAC5CC,OAA6B,EAC7BC,KAAa,EACbC,mBAA0D;IAE1D,MAAMC,QAAQJ,QAAQ,GAAG,CAAC,CAAChB;QACzB,IACEA,OAAO,IAAI,IACV,EAACqB,OAAO,QAAQ,CAACC,KAAK,KAAK,CAACtB,OAAO,IAAI,CAAC,SAAS,MAChD,CAACqB,OAAO,QAAQ,CAACC,KAAK,KAAK,CAACtB,OAAO,IAAI,CAAC,OAAO,MAC/CsB,KAAK,KAAK,CAACtB,OAAO,IAAI,CAAC,OAAO,IAAIsB,KAAK,KAAK,CAACtB,OAAO,IAAI,CAAC,SAAS,IAEpE,MAAM,IAAIuB,MACR,CAAC,sDAAsD,EAAEvB,OAAO,UAAU,EAAE;QAEhF,MAAMM,OAAOD,kBAAkBL,WAAWD,qBAAqBC;QAC/D,MAAMT,KAAK,CAACE,QAAkB,GAAGO,OAAO,QAAQ,CAAC,CAAC,EAAEP,OAAO;QAC3D,MAAMH,QAAQ,CAACG,QAA8BJ,WAAWI,OAAOF;QAC/D,MAAMiC,cAAc,CAOlB/B,QACO;gBACP,GAAGA,KAAK;gBACR,GAAIA,MAAM,UAAU,GAAG;oBAAE,YAAYH,MAAMG,MAAM,UAAU;gBAAE,IAAI,CAAC,CAAC;gBACnE,GAAIA,MAAM,cAAc,GACpB;oBAAE,gBAAgBA,MAAM,cAAc,CAAC,GAAG,CAACH;gBAAO,IAClD,CAAC,CAAC;gBACN,GAAIG,MAAM,UAAU,GAChB;oBACE,YAAYA,MAAM,UAAU,CAAC,GAAG,CAAC,CAACgC,OAAU;4BAC1C,GAAGA,IAAI;4BACP,OAAOnC,MAAMmC,KAAK,KAAK;wBACzB;gBACF,IACA,CAAC,CAAC;YACR;QACA,MAAMC,YAAY,CAChBjC,QACqC;gBACrC,GAAGA,KAAK;gBACR,GAAIA,MAAM,MAAM,GAAG;oBAAE,QAAQF,GAAGE,MAAM,MAAM;gBAAE,IAAI,CAAC,CAAC;gBACpD,GAAIA,MAAM,OAAO,GAAG;oBAAE,SAASF,GAAGE,MAAM,OAAO;gBAAE,IAAI,CAAC,CAAC;YACzD;QACA,MAAMkC,UAAU,CAAClC,QACfA,QACI;gBACE,GAAGA,KAAK;gBACR,GAAIA,MAAM,KAAK,GAAG;oBAAE,OAAOH,MAAMG,MAAM,KAAK;gBAAE,IAAI,CAAC,CAAC;gBACpD,GAAIA,MAAM,kBAAkB,GACxB;oBAAE,oBAAoBA,MAAM,kBAAkB,CAAC,GAAG,CAACiC;gBAAW,IAC9D,CAAC,CAAC;YACR,IACAE;QACN,MAAMC,eAAe,CAACC,YACpBA,WAAW,SAAS;gBAAC9B,OAAO,QAAQ;aAAC,GAAG8B;QAC1C,MAAMC,OAAO,CAACtC;YACZ,MAAME,SAA4B;gBAChC,GAAGF,KAAK;gBACR,IAAIF,GAAGE,MAAM,EAAE;gBACf,GAAIA,MAAM,KAAK,GAAG;oBAAE,OAAOH,MAAMG,MAAM,KAAK;gBAAE,IAAI,CAAC,CAAC;gBACpD,GAAIA,MAAM,kBAAkB,GACxB;oBACE,oBAAoB;wBAClB,GAAGA,MAAM,kBAAkB;wBAC3B,GAAIA,MAAM,kBAAkB,CAAC,MAAM,GAC/B;4BAAE,QAAQA,MAAM,kBAAkB,CAAC,MAAM,CAAC,GAAG,CAACH;wBAAO,IACrD,CAAC,CAAC;oBACR;gBACF,IACA,CAAC,CAAC;gBACN,GAAIG,MAAM,UAAU,GAChB;oBACE,YAAY;wBACV,GAAGA,MAAM,UAAU;wBACnB,QAAQA,MAAM,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,CAACuC,QAAW;gCAC9C,GAAGA,KAAK;gCACR,GAAIA,MAAM,KAAK,GAAG;oCAAE,OAAO1C,MAAM0C,MAAM,KAAK;gCAAE,IAAI,CAAC,CAAC;gCACpD,GAAIA,MAAM,MAAM,GAAG;oCAAE,QAAQzC,GAAGyC,MAAM,MAAM;gCAAE,IAAI,CAAC,CAAC;gCACpD,GAAIA,MAAM,OAAO,GAAG;oCAAE,SAASzC,GAAGyC,MAAM,OAAO;gCAAE,IAAI,CAAC,CAAC;gCACvD,GAAIA,MAAM,kBAAkB,GACxB;oCACE,oBACEA,MAAM,kBAAkB,CAAC,GAAG,CAACN;gCACjC,IACA,CAAC,CAAC;4BACR;oBACF;gBACF,IACA,CAAC,CAAC;gBACN,GAAIjC,MAAM,YAAY,GAClB;oBACE,cAAcA,MAAM,YAAY,CAAC,GAAG,CAAC,CAACwC,SAAY;4BAChD,GAAGA,MAAM;4BACT,UAAUjC,OAAO,QAAQ;wBAC3B;gBACF,IACA,CAAC,CAAC;YACR;YACA,IAAIL,AAAkB,cAAlBA,OAAO,MAAM,IAAkBA,OAAO,SAAS,EACjDA,OAAO,SAAS,GAAGJ,GAAGI,OAAO,SAAS;YACxC,OAAOA;QACT;QACA,MAAMuC,gBAAgB,CAGpBzC,QACO;gBACP,GAAG+B,YAAY/B,MAAM;gBACrB,GAAIA,MAAM,OAAO,GAAG;oBAAE,SAASkC,QAAQlC,MAAM,OAAO;gBAAE,IAAI,CAAC,CAAC;gBAC5D,GAAIA,MAAM,iBAAiB,GACvB;oBAAE,mBAAmBA,MAAM,iBAAiB,CAAC,GAAG,CAACiC;gBAAW,IAC5D,CAAC,CAAC;gBACN,YAAYnC,GAAGE,MAAM,UAAU;gBAC/B,GAAIA,MAAM,iBAAiB,GACvB;oBAAE,mBAAmBF,GAAGE,MAAM,iBAAiB;gBAAE,IACjD,CAAC,CAAC;gBACN,GAAIA,MAAM,aAAa,GACnB;oBAAE,eAAeF,GAAGE,MAAM,aAAa;gBAAE,IACzC,CAAC,CAAC;gBACN,WAAWA,MAAM,SAAS,CAAC,GAAG,CAACsC;gBAC/B,UAAUtC,MAAM,QAAQ,CAAC,GAAG,CAACsC;gBAC7B,gBAAgBF,aAAapC,MAAM,cAAc;YACnD;QAGA,OAAO;YACL,GAAGa,IAAI;YACP,UAAUA,KAAK,QAAQ,CAAC,GAAG,CAAC,CAACG,UAAa;oBACxC,GAAGA,OAAO;oBACV,WAAWlB,GAAGkB,QAAQ,SAAS;oBAC/B,kBAAkBA,QAAQ,gBAAgB,CAAC,GAAG,CAAC,CAACX,OAAU;4BACxD,GAAGA,IAAI;4BACP,OAAOR,MAAMQ,KAAK,KAAK;wBACzB;oBACA,GAAIW,QAAQ,SAAS,GACjB;wBACE,WAAW;4BACT,GAAGe,YAAYf,QAAQ,SAAS,CAAC;4BACjC,GAAIA,QAAQ,SAAS,CAAC,OAAO,GACzB;gCAAE,SAASkB,QAAQlB,QAAQ,SAAS,CAAC,OAAO;4BAAE,IAC9C,CAAC,CAAC;4BACN,GAAIA,QAAQ,SAAS,CAAC,iBAAiB,GACnC;gCACE,mBACEA,QAAQ,SAAS,CAAC,iBAAiB,CAAC,GAAG,CAACiB;4BAC5C,IACA,CAAC,CAAC;wBACR;oBACF,IACA,CAAC,CAAC;oBACN,WAAWjB,QAAQ,SAAS,CAAC,GAAG,CAAC,CAACE,WAAc;4BAC9C,GAAGuB,cAAcvB,SAAS;4BAC1B,GAAIA,SAAS,QAAQ,GACjB;gCAAE,UAAUA,SAAS,QAAQ,CAAC,GAAG,CAACuB;4BAAe,IACjD,CAAC,CAAC;4BACN,OAAOvB,SAAS,KAAK,CAAC,GAAG,CAAC,CAACwB,WAAc;oCACvC,GAAGA,QAAQ;oCACX,QAAQ5C,GAAG4C,SAAS,MAAM;oCAC1B,UAAUA,SAAS,QAAQ,CAAC,GAAG,CAAC,CAACrB,UAAa;4CAC5C,GAAGU,YAAYV,QAAQ;4CACvB,WAAWvB,GAAGuB,QAAQ,SAAS;4CAC/B,GAAIA,QAAQ,OAAO,GAAG;gDAAE,SAASa,QAAQb,QAAQ,OAAO;4CAAE,IAAI,CAAC,CAAC;4CAChE,GAAIA,QAAQ,iBAAiB,GACzB;gDACE,mBAAmBA,QAAQ,iBAAiB,CAAC,GAAG,CAACY;4CACnD,IACA,CAAC,CAAC;4CACN,YAAYZ,QAAQ,UAAU,CAAC,GAAG,CAACiB;4CACnC,OAAOjB,QAAQ,KAAK,CAAC,GAAG,CAACiB;4CACzB,WAAWjB,QAAQ,SAAS,CAAC,GAAG,CAACiB;4CACjC,gBAAgBF,aAAaf,QAAQ,cAAc;wCACrD;gCACF;wBACF;gBACF;YACA,aAAaR,KAAK,WAAW,EAAE,IAAI,CAAC8B,aAAgB;oBAClD,GAAGA,UAAU;oBACb,GAAIA,WAAW,KAAK,GAAG;wBAAE,OAAO9C,MAAM8C,WAAW,KAAK;oBAAE,IAAI,CAAC,CAAC;oBAC9D,GAAIA,WAAW,OAAO,GAAG;wBAAE,SAAS7C,GAAG6C,WAAW,OAAO;oBAAE,IAAI,CAAC,CAAC;oBACjE,GAAIA,WAAW,MAAM,GAAG;wBAAE,QAAQ7C,GAAG6C,WAAW,MAAM;oBAAE,IAAI,CAAC,CAAC;gBAChE;QACF;IACF;IAGA,MAAMC,gBAAgBjB,MAAM,OAAO,CAAC,CAACd,OACnCA,KAAK,SAAS,IAAIA,KAAK,OAAO,GAC1B;YAAC;gBAAE,OAAOgB,KAAK,KAAK,CAAChB,KAAK,SAAS;gBAAG,KAAKgB,KAAK,KAAK,CAAChB,KAAK,OAAO;YAAE;SAAE,GACtE,EAAE;IAER,IAAI,CAAC+B,cAAc,MAAM,EACvB,MAAM,IAAId,MACR;IAEJ,MAAMe,YAAY,IAAIhB,KACpBiB,KAAK,GAAG,IAAIF,cAAc,GAAG,CAAC,CAACG,OAASA,KAAK,KAAK,IAClD,WAAW;IACb,MAAMC,UAAU,IAAInB,KAClBiB,KAAK,GAAG,IAAIF,cAAc,GAAG,CAAC,CAACG,OAASA,KAAK,GAAG,IAChD,WAAW;IACb,MAAME,UAAU;QACd,OAAO;QACP,QAAQ;QACR,QAAQ;QACR,QAAQ;QACR,UAAU;QACV,kBAAkB;QAClB,kBAAkB;QAClB,iBAAiB;IACnB;IACA,KAAK,MAAMpC,QAAQc,MACjB,KAAK,MAAMpC,OAAOC,OAAO,IAAI,CAACyD,SAC5BA,OAAO,CAAC1D,IAAI,IAAIsB,KAAK,OAAO,CAACtB,IAAI;IAErC,MAAM2D,cAAcvB,MAAM,OAAO,CAAC,CAACd,OAASA,KAAK,WAAW,IAAI,EAAE;IAClE,MAAMsC,mBAAyD3D,OAAO,MAAM,CAC1E,CAAC,GACDkC,wBACGH,QAAQ,GAAG,CAAC,CAAChB,SAAWA,OAAO,IAAI,EAAE;IAE1C,IAAImB,qBACFF,UAAU4B,AAAAA,IAAAA,oCAAAA,uBAAAA,AAAAA,EAAwB;QAChC5B;WACGhC,OAAO,OAAO,CAAC2D,kBACf,MAAM,CAAC,CAAC,CAACrD,GAAG,GAAK,CAAC4B,mBAAmB,CAAC5B,GAAG,EACzC,GAAG,CAAC,CAAC,GAAGE,MAAM,GAAKA;KACvB;SACE,IAAIuB,QAAQ,KAAK,CAAC,CAAChB,SAAWA,OAAO,IAAI,EAAE,mBAC9CiB,UAAU4B,AAAAA,IAAAA,oCAAAA,uBAAAA,AAAAA,EAAwB5D,OAAO,MAAM,CAAC2D;IAClD,MAAME,cAAc9B,QAAQ,OAAO,CAAC,CAAChB,SACnCA,OAAO,IAAI,GAAG;YAACA,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU;SAAC,GAAG,EAAE;IAErD,MAAM+C,aACJ9B,QAAQ,UAAU,EAAE,WAAW,aAC/BA,QAAQ,UAAU,EAAE,WAAW,aAC/B6B,YAAY,IAAI,CAAC,CAACE,aAAeA,YAAY,WAAW;IAC1D,MAAMA,aAAa;QACjB,QAASD,aACL9B,QAAQ,cAAc,GAAG,KACzB6B,YAAY,IAAI,CACd,CAACrD,QACCA,OAAO,WAAW,cAAcA,OAAO,WAAW,aAEpD,YACA,YACF;QACJ,wBAAwBqD,YAAY,MAAM,CACxC,CAACG,OAAOxD,QAAUwD,QAASxD,CAAAA,OAAO,0BAA0B,IAC5D;QAEF,wBAAwBqD,YAAY,MAAM,CACxC,CAACG,OAAOxD,QAAUwD,QAASxD,CAAAA,OAAO,0BAA0B,IAC5D;QAEF,SAAS;eACHwB,QAAQ,UAAU,EAAE,WAAW,EAAE;eAClC,IAAIiC,IACLJ,YAAY,OAAO,CACjB,CAACrD,QACCA,OAAO,WAAW;oBAChB;iBACD;SAGR;QACD,QAAQR,OAAO,WAAW,CAEtB;YACE;YACA;YACA;YACA;YACA;SACD,CACD,GAAG,CAAC,CAACkE;YACL,MAAMC,SAAS;mBACVN,YAAY,GAAG,CAChB,CAACrD,QAAUA,OAAO,QAAQ,CAAC0D,MAAM,IAAI1D,OAAO,UAAU;mBAEpDwB,QAAQ,UAAU,EAAE,SACpB;oBAACA,QAAQ,UAAU,CAAC,MAAM,CAACkC,MAAM;iBAAC,GAClC,EAAE;aACP;YACD,OAAO;gBACLA;gBACAC,OAAO,KAAK,CAAC,CAACC,QAAUA,AAAU,eAAVA,SACpB,aACAD,OAAO,KAAK,CAAC,CAACC,QAAUA,AAAU,cAAVA,SACtB,YACA;aACP;QACH;IAEJ;IACA,OAAO;QACL,eAAe;QACf,MAAM;QACNnC;QACA,QAAQE,MAAM,IAAI,CAAC,CAACd,OAASA,AAAgB,aAAhBA,KAAK,MAAM,IACpC,WACA;QACJgC;QACAG;QACA,YAAYF,KAAK,GAAG,CAAC,GAAGjB,KAAK,KAAK,CAACmB,WAAWnB,KAAK,KAAK,CAACgB;QACzDI;QACA,SAAS;YAAE,GAAGzB,OAAO;YAAE+B;QAAW;QAClC,GAAI/D,OAAO,IAAI,CAAC2D,kBAAkB,MAAM,GAAG;YAAEA;QAAiB,IAAI,CAAC,CAAC;QACpE,UAAUxB,MAAM,OAAO,CAAC,CAACd,OAASA,KAAK,QAAQ;QAC/C,GAAIc,MAAM,IAAI,CAAC,CAACd,OAASA,KAAK,aAAa,EAAE,UACzC;YAAE,eAAec,MAAM,OAAO,CAAC,CAACd,OAASA,KAAK,aAAa,IAAI,EAAE;QAAE,IACnE,CAAC,CAAC;QACN,GAAIqC,YAAY,MAAM,GAAG;YAAEA;QAAY,IAAI,CAAC,CAAC;IAC/C;AACF"}
@@ -46,16 +46,23 @@ function collectTestRunReportMetrics(report) {
46
46
  if (unrecorded) reasons.push('A model request started but its usage was not recorded.');
47
47
  if (knownTimes < usages.length) reasons.push('Some model usage records do not include request duration.');
48
48
  if (knownTokens < usages.length) reasons.push('Some model usage records do not include token counts.');
49
+ if (usages.some((usage)=>!number(usage.prompt_tokens))) reasons.push('Some model usage records do not include input token counts.');
50
+ if (usages.some((usage)=>!number(usage.completion_tokens))) reasons.push('Some model usage records do not include output token counts.');
49
51
  const state = (known, missing)=>missing ? known > 0 ? 'partial' : 'unknown' : 'complete';
50
52
  const fields = {
51
53
  modelCallCount: state(summary.timing.modelCallCount, live || unrecorded),
52
54
  modelTimeMs: state(knownTimes, live || unrecorded || knownTimes < usages.length),
55
+ promptTokens: state(usages.filter((usage)=>number(usage.prompt_tokens)).length, live || unrecorded || usages.some((usage)=>!number(usage.prompt_tokens))),
56
+ completionTokens: state(usages.filter((usage)=>number(usage.completion_tokens)).length, live || unrecorded || usages.some((usage)=>!number(usage.completion_tokens))),
53
57
  totalTokens: state(knownTokens, live || unrecorded || knownTokens < usages.length)
54
58
  };
55
59
  return {
56
60
  modelCallCount: summary.timing.modelCallCount,
57
61
  modelTimeMs: summary.timing.modelCallTimeMs,
58
62
  ...summary.tokens,
63
+ ...summary.models.length ? {
64
+ models: summary.models
65
+ } : {},
59
66
  collection: {
60
67
  status: reasons.length ? summary.timing.modelCallCount > 0 ? 'partial' : 'unknown' : 'complete',
61
68
  expectedExecutionCount: 0,
@@ -74,11 +81,41 @@ function sumTestRunReportMetrics(values, missingReasons = []) {
74
81
  completionTokens: 0,
75
82
  totalTokens: 0
76
83
  };
77
- for (const value of values)for (const key of Object.keys(total))if ('collection' !== key) total[key] += value[key];
78
- const fields = Object.fromEntries([
84
+ const numericKeys = [
79
85
  'modelCallCount',
80
86
  'modelTimeMs',
87
+ 'promptTokens',
88
+ 'cachedInputTokens',
89
+ 'completionTokens',
81
90
  'totalTokens'
91
+ ];
92
+ const models = new Map();
93
+ for (const value of values){
94
+ for (const key of numericKeys)total[key] += value[key];
95
+ for (const model of value.models ?? []){
96
+ const previous = models.get(model.modelName);
97
+ if (previous) for (const key of [
98
+ 'callCount',
99
+ 'modelCallTimeMs',
100
+ 'promptTokens',
101
+ 'cachedInputTokens',
102
+ 'completionTokens',
103
+ 'totalTokens'
104
+ ])previous[key] += model[key];
105
+ else models.set(model.modelName, {
106
+ ...model
107
+ });
108
+ }
109
+ }
110
+ if (models.size) total.models = [
111
+ ...models.values()
112
+ ];
113
+ const fields = Object.fromEntries([
114
+ 'modelCallCount',
115
+ 'modelTimeMs',
116
+ 'totalTokens',
117
+ 'promptTokens',
118
+ 'completionTokens'
82
119
  ].map((field)=>{
83
120
  const states = values.map((value)=>value.collection?.fields?.[field] ?? value.collection?.status ?? 'complete');
84
121
  if (missingReasons.length) states.push('unknown');
@@ -1 +1 @@
1
- {"version":3,"file":"test-runner/reporting/metrics.js","sources":["webpack/runtime/define_property_getters","webpack/runtime/has_own_property","webpack/runtime/make_namespace_object","../../../../src/test-runner/reporting/metrics.ts"],"sourcesContent":["__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n }\n }\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","import { collectReportSummary } from '../../report-stats';\nimport type { TestRunReportMetrics } from '../../test-run-report';\nimport type { AIUsageInfo, IReportActionDump } from '../../types';\n\n/** A captured execution can still lack provider usage or contain a live request. */\nexport function collectTestRunReportMetrics(\n report: Pick<IReportActionDump, 'executions'>,\n): TestRunReportMetrics {\n const summary = collectReportSummary(report);\n const tasks = report.executions.flatMap((execution) => execution.tasks);\n const hasUsage = (usage: AIUsageInfo | undefined): usage is AIUsageInfo =>\n !!usage &&\n Object.values(usage).some((value) => value !== undefined && value !== null);\n const usages = tasks.flatMap((task) =>\n [task.usage, task.searchAreaUsage].filter(hasUsage),\n );\n const live = tasks.some(\n (task) =>\n task.timing?.callAiStart !== undefined &&\n (task.status === 'pending' || task.status === 'running'),\n );\n const unrecorded = tasks.some(\n (task) => task.timing?.callAiStart !== undefined && !hasUsage(task.usage),\n );\n const number = (value: unknown) =>\n typeof value === 'number' && Number.isFinite(value) && value >= 0;\n const knownTimes = usages.filter((usage) => number(usage.time_cost)).length;\n const knownTokens = usages.filter(\n (usage) =>\n number(usage.total_tokens) ||\n (number(usage.prompt_tokens) && number(usage.completion_tokens)),\n ).length;\n const reasons: string[] = [];\n if (live)\n reasons.push('A model request was still running when usage was captured.');\n if (unrecorded)\n reasons.push('A model request started but its usage was not recorded.');\n if (knownTimes < usages.length)\n reasons.push('Some model usage records do not include request duration.');\n if (knownTokens < usages.length)\n reasons.push('Some model usage records do not include token counts.');\n const state = (\n known: number,\n missing: boolean,\n ): 'complete' | 'partial' | 'unknown' =>\n missing ? (known > 0 ? 'partial' : 'unknown') : 'complete';\n const fields = {\n modelCallCount: state(summary.timing.modelCallCount, live || unrecorded),\n modelTimeMs: state(\n knownTimes,\n live || unrecorded || knownTimes < usages.length,\n ),\n totalTokens: state(\n knownTokens,\n live || unrecorded || knownTokens < usages.length,\n ),\n };\n return {\n modelCallCount: summary.timing.modelCallCount,\n modelTimeMs: summary.timing.modelCallTimeMs,\n ...summary.tokens,\n collection: {\n status: reasons.length\n ? summary.timing.modelCallCount > 0\n ? 'partial'\n : 'unknown'\n : 'complete',\n expectedExecutionCount: 0,\n capturedExecutionCount: 0,\n reasons,\n fields,\n },\n };\n}\n\n/** Add usage facts without treating missing screenshots as missing model calls. */\nexport function sumTestRunReportMetrics(\n values: readonly TestRunReportMetrics[],\n missingReasons: readonly string[] = [],\n): TestRunReportMetrics {\n const total: TestRunReportMetrics = {\n modelCallCount: 0,\n modelTimeMs: 0,\n promptTokens: 0,\n cachedInputTokens: 0,\n completionTokens: 0,\n totalTokens: 0,\n };\n for (const value of values)\n for (const key of Object.keys(total) as (keyof typeof total)[])\n if (key !== 'collection') total[key] += value[key];\n const fields = Object.fromEntries(\n (['modelCallCount', 'modelTimeMs', 'totalTokens'] as const).map((field) => {\n const states = values.map(\n (value) =>\n value.collection?.fields?.[field] ??\n value.collection?.status ??\n 'complete',\n );\n if (missingReasons.length) states.push('unknown');\n return [\n field,\n states.every((state) => state === 'complete')\n ? 'complete'\n : states.every((state) => state === 'unknown')\n ? 'unknown'\n : 'partial',\n ];\n }),\n ) as NonNullable<TestRunReportMetrics['collection']>['fields'] & {};\n total.collection = {\n status: Object.values(fields).every((state) => state === 'complete')\n ? 'complete'\n : Object.values(fields).every((state) => state === 'unknown')\n ? 'unknown'\n : 'partial',\n fields,\n expectedExecutionCount: 0,\n capturedExecutionCount: 0,\n reasons: [\n ...new Set([\n ...values.flatMap((value) => value.collection?.reasons ?? []),\n ...missingReasons,\n ]),\n ],\n };\n return total;\n}\n"],"names":["__webpack_require__","definition","key","Object","obj","prop","Symbol","collectTestRunReportMetrics","report","summary","collectReportSummary","tasks","execution","hasUsage","usage","value","usages","task","live","undefined","unrecorded","number","Number","knownTimes","knownTokens","reasons","state","known","missing","fields","sumTestRunReportMetrics","values","missingReasons","total","field","states","Set"],"mappings":";;;IAAAA,oBAAoB,CAAC,GAAG,CAAC,UAASC;QACjC,IAAI,IAAIC,OAAOD,WACR,IAAGD,oBAAoB,CAAC,CAACC,YAAYC,QAAQ,CAACF,oBAAoB,CAAC,CAAC,UAASE,MACzEC,OAAO,cAAc,CAAC,UAASD,KAAK;YAAE,YAAY;YAAM,KAAKD,UAAU,CAACC,IAAI;QAAC;IAGzF;;;ICNAF,oBAAoB,CAAC,GAAG,CAACI,KAAKC,OAAUF,OAAO,SAAS,CAAC,cAAc,CAAC,IAAI,CAACC,KAAKC;;;ICClFL,oBAAoB,CAAC,GAAG,CAAC;QACxB,IAAG,AAAkB,eAAlB,OAAOM,UAA0BA,OAAO,WAAW,EACrDH,OAAO,cAAc,CAAC,UAASG,OAAO,WAAW,EAAE;YAAE,OAAO;QAAS;QAEtEH,OAAO,cAAc,CAAC,UAAS,cAAc;YAAE,OAAO;QAAK;IAC5D;;;;;;;;;ACDO,SAASI,4BACdC,MAA6C;IAE7C,MAAMC,UAAUC,AAAAA,IAAAA,yCAAAA,oBAAAA,AAAAA,EAAqBF;IACrC,MAAMG,QAAQH,OAAO,UAAU,CAAC,OAAO,CAAC,CAACI,YAAcA,UAAU,KAAK;IACtE,MAAMC,WAAW,CAACC,QAChB,CAAC,CAACA,SACFX,OAAO,MAAM,CAACW,OAAO,IAAI,CAAC,CAACC,QAAUA,QAAAA;IACvC,MAAMC,SAASL,MAAM,OAAO,CAAC,CAACM,OAC5B;YAACA,KAAK,KAAK;YAAEA,KAAK,eAAe;SAAC,CAAC,MAAM,CAACJ;IAE5C,MAAMK,OAAOP,MAAM,IAAI,CACrB,CAACM,OACCA,KAAK,MAAM,EAAE,gBAAgBE,UAC5BF,CAAAA,AAAgB,cAAhBA,KAAK,MAAM,IAAkBA,AAAgB,cAAhBA,KAAK,MAAM,AAAa;IAE1D,MAAMG,aAAaT,MAAM,IAAI,CAC3B,CAACM,OAASA,KAAK,MAAM,EAAE,gBAAgBE,UAAa,CAACN,SAASI,KAAK,KAAK;IAE1E,MAAMI,SAAS,CAACN,QACd,AAAiB,YAAjB,OAAOA,SAAsBO,OAAO,QAAQ,CAACP,UAAUA,SAAS;IAClE,MAAMQ,aAAaP,OAAO,MAAM,CAAC,CAACF,QAAUO,OAAOP,MAAM,SAAS,GAAG,MAAM;IAC3E,MAAMU,cAAcR,OAAO,MAAM,CAC/B,CAACF,QACCO,OAAOP,MAAM,YAAY,KACxBO,OAAOP,MAAM,aAAa,KAAKO,OAAOP,MAAM,iBAAiB,GAChE,MAAM;IACR,MAAMW,UAAoB,EAAE;IAC5B,IAAIP,MACFO,QAAQ,IAAI,CAAC;IACf,IAAIL,YACFK,QAAQ,IAAI,CAAC;IACf,IAAIF,aAAaP,OAAO,MAAM,EAC5BS,QAAQ,IAAI,CAAC;IACf,IAAID,cAAcR,OAAO,MAAM,EAC7BS,QAAQ,IAAI,CAAC;IACf,MAAMC,QAAQ,CACZC,OACAC,UAEAA,UAAWD,QAAQ,IAAI,YAAY,YAAa;IAClD,MAAME,SAAS;QACb,gBAAgBH,MAAMjB,QAAQ,MAAM,CAAC,cAAc,EAAES,QAAQE;QAC7D,aAAaM,MACXH,YACAL,QAAQE,cAAcG,aAAaP,OAAO,MAAM;QAElD,aAAaU,MACXF,aACAN,QAAQE,cAAcI,cAAcR,OAAO,MAAM;IAErD;IACA,OAAO;QACL,gBAAgBP,QAAQ,MAAM,CAAC,cAAc;QAC7C,aAAaA,QAAQ,MAAM,CAAC,eAAe;QAC3C,GAAGA,QAAQ,MAAM;QACjB,YAAY;YACV,QAAQgB,QAAQ,MAAM,GAClBhB,QAAQ,MAAM,CAAC,cAAc,GAAG,IAC9B,YACA,YACF;YACJ,wBAAwB;YACxB,wBAAwB;YACxBgB;YACAI;QACF;IACF;AACF;AAGO,SAASC,wBACdC,MAAuC,EACvCC,iBAAoC,EAAE;IAEtC,MAAMC,QAA8B;QAClC,gBAAgB;QAChB,aAAa;QACb,cAAc;QACd,mBAAmB;QACnB,kBAAkB;QAClB,aAAa;IACf;IACA,KAAK,MAAMlB,SAASgB,OAClB,KAAK,MAAM7B,OAAOC,OAAO,IAAI,CAAC8B,OAC5B,IAAI/B,AAAQ,iBAARA,KAAsB+B,KAAK,CAAC/B,IAAI,IAAIa,KAAK,CAACb,IAAI;IACtD,MAAM2B,SAAS1B,OAAO,WAAW,CAC9B;QAAC;QAAkB;QAAe;KAAc,CAAW,GAAG,CAAC,CAAC+B;QAC/D,MAAMC,SAASJ,OAAO,GAAG,CACvB,CAAChB,QACCA,MAAM,UAAU,EAAE,QAAQ,CAACmB,MAAM,IACjCnB,MAAM,UAAU,EAAE,UAClB;QAEJ,IAAIiB,eAAe,MAAM,EAAEG,OAAO,IAAI,CAAC;QACvC,OAAO;YACLD;YACAC,OAAO,KAAK,CAAC,CAACT,QAAUA,AAAU,eAAVA,SACpB,aACAS,OAAO,KAAK,CAAC,CAACT,QAAUA,AAAU,cAAVA,SACtB,YACA;SACP;IACH;IAEFO,MAAM,UAAU,GAAG;QACjB,QAAQ9B,OAAO,MAAM,CAAC0B,QAAQ,KAAK,CAAC,CAACH,QAAUA,AAAU,eAAVA,SAC3C,aACAvB,OAAO,MAAM,CAAC0B,QAAQ,KAAK,CAAC,CAACH,QAAUA,AAAU,cAAVA,SACrC,YACA;QACNG;QACA,wBAAwB;QACxB,wBAAwB;QACxB,SAAS;eACJ,IAAIO,IAAI;mBACNL,OAAO,OAAO,CAAC,CAAChB,QAAUA,MAAM,UAAU,EAAE,WAAW,EAAE;mBACzDiB;aACJ;SACF;IACH;IACA,OAAOC;AACT"}
1
+ {"version":3,"file":"test-runner/reporting/metrics.js","sources":["webpack/runtime/define_property_getters","webpack/runtime/has_own_property","webpack/runtime/make_namespace_object","../../../../src/test-runner/reporting/metrics.ts"],"sourcesContent":["__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n }\n }\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","import {\n type ReportModelUsageSummary,\n collectReportSummary,\n} from '../../report-stats';\nimport type { TestRunReportMetrics } from '../../test-run-report';\nimport type { AIUsageInfo, IReportActionDump } from '../../types';\n\n/** A captured execution can still lack provider usage or contain a live request. */\nexport function collectTestRunReportMetrics(\n report: Pick<IReportActionDump, 'executions'>,\n): TestRunReportMetrics {\n const summary = collectReportSummary(report);\n const tasks = report.executions.flatMap((execution) => execution.tasks);\n const hasUsage = (usage: AIUsageInfo | undefined): usage is AIUsageInfo =>\n !!usage &&\n Object.values(usage).some((value) => value !== undefined && value !== null);\n const usages = tasks.flatMap((task) =>\n [task.usage, task.searchAreaUsage].filter(hasUsage),\n );\n const live = tasks.some(\n (task) =>\n task.timing?.callAiStart !== undefined &&\n (task.status === 'pending' || task.status === 'running'),\n );\n const unrecorded = tasks.some(\n (task) => task.timing?.callAiStart !== undefined && !hasUsage(task.usage),\n );\n const number = (value: unknown) =>\n typeof value === 'number' && Number.isFinite(value) && value >= 0;\n const knownTimes = usages.filter((usage) => number(usage.time_cost)).length;\n const knownTokens = usages.filter(\n (usage) =>\n number(usage.total_tokens) ||\n (number(usage.prompt_tokens) && number(usage.completion_tokens)),\n ).length;\n const reasons: string[] = [];\n if (live)\n reasons.push('A model request was still running when usage was captured.');\n if (unrecorded)\n reasons.push('A model request started but its usage was not recorded.');\n if (knownTimes < usages.length)\n reasons.push('Some model usage records do not include request duration.');\n if (knownTokens < usages.length)\n reasons.push('Some model usage records do not include token counts.');\n if (usages.some((usage) => !number(usage.prompt_tokens)))\n reasons.push('Some model usage records do not include input token counts.');\n if (usages.some((usage) => !number(usage.completion_tokens)))\n reasons.push(\n 'Some model usage records do not include output token counts.',\n );\n const state = (\n known: number,\n missing: boolean,\n ): 'complete' | 'partial' | 'unknown' =>\n missing ? (known > 0 ? 'partial' : 'unknown') : 'complete';\n const fields = {\n modelCallCount: state(summary.timing.modelCallCount, live || unrecorded),\n modelTimeMs: state(\n knownTimes,\n live || unrecorded || knownTimes < usages.length,\n ),\n promptTokens: state(\n usages.filter((usage) => number(usage.prompt_tokens)).length,\n live ||\n unrecorded ||\n usages.some((usage) => !number(usage.prompt_tokens)),\n ),\n completionTokens: state(\n usages.filter((usage) => number(usage.completion_tokens)).length,\n live ||\n unrecorded ||\n usages.some((usage) => !number(usage.completion_tokens)),\n ),\n totalTokens: state(\n knownTokens,\n live || unrecorded || knownTokens < usages.length,\n ),\n };\n return {\n modelCallCount: summary.timing.modelCallCount,\n modelTimeMs: summary.timing.modelCallTimeMs,\n ...summary.tokens,\n ...(summary.models.length ? { models: summary.models } : {}),\n collection: {\n status: reasons.length\n ? summary.timing.modelCallCount > 0\n ? 'partial'\n : 'unknown'\n : 'complete',\n expectedExecutionCount: 0,\n capturedExecutionCount: 0,\n reasons,\n fields,\n },\n };\n}\n\n/** Add usage facts without treating missing screenshots as missing model calls. */\nexport function sumTestRunReportMetrics(\n values: readonly TestRunReportMetrics[],\n missingReasons: readonly string[] = [],\n): TestRunReportMetrics {\n const total: TestRunReportMetrics = {\n modelCallCount: 0,\n modelTimeMs: 0,\n promptTokens: 0,\n cachedInputTokens: 0,\n completionTokens: 0,\n totalTokens: 0,\n };\n const numericKeys = [\n 'modelCallCount',\n 'modelTimeMs',\n 'promptTokens',\n 'cachedInputTokens',\n 'completionTokens',\n 'totalTokens',\n ] as const;\n const models = new Map<string, ReportModelUsageSummary>();\n for (const value of values) {\n for (const key of numericKeys) total[key] += value[key];\n for (const model of value.models ?? []) {\n const previous = models.get(model.modelName);\n if (!previous) models.set(model.modelName, { ...model });\n else\n for (const key of [\n 'callCount',\n 'modelCallTimeMs',\n 'promptTokens',\n 'cachedInputTokens',\n 'completionTokens',\n 'totalTokens',\n ] as const)\n previous[key] += model[key];\n }\n }\n if (models.size) total.models = [...models.values()];\n const fields = Object.fromEntries(\n (\n [\n 'modelCallCount',\n 'modelTimeMs',\n 'totalTokens',\n 'promptTokens',\n 'completionTokens',\n ] as const\n ).map((field) => {\n const states = values.map(\n (value) =>\n value.collection?.fields?.[field] ??\n value.collection?.status ??\n 'complete',\n );\n if (missingReasons.length) states.push('unknown');\n return [\n field,\n states.every((state) => state === 'complete')\n ? 'complete'\n : states.every((state) => state === 'unknown')\n ? 'unknown'\n : 'partial',\n ];\n }),\n ) as NonNullable<TestRunReportMetrics['collection']>['fields'] & {};\n total.collection = {\n status: Object.values(fields).every((state) => state === 'complete')\n ? 'complete'\n : Object.values(fields).every((state) => state === 'unknown')\n ? 'unknown'\n : 'partial',\n fields,\n expectedExecutionCount: 0,\n capturedExecutionCount: 0,\n reasons: [\n ...new Set([\n ...values.flatMap((value) => value.collection?.reasons ?? []),\n ...missingReasons,\n ]),\n ],\n };\n return total;\n}\n"],"names":["__webpack_require__","definition","key","Object","obj","prop","Symbol","collectTestRunReportMetrics","report","summary","collectReportSummary","tasks","execution","hasUsage","usage","value","usages","task","live","undefined","unrecorded","number","Number","knownTimes","knownTokens","reasons","state","known","missing","fields","sumTestRunReportMetrics","values","missingReasons","total","numericKeys","models","Map","model","previous","field","states","Set"],"mappings":"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"}
package/dist/lib/utils.js CHANGED
@@ -228,7 +228,7 @@ function stringifyDumpData(data, indents) {
228
228
  return JSON.stringify(data, replacerForPageObject, indents);
229
229
  }
230
230
  function getVersion() {
231
- return "1.16.1";
231
+ return "1.16.2";
232
232
  }
233
233
  function debugLog(...message) {
234
234
  const debugMode = process.env[env_namespaceObject.MIDSCENE_DEBUG_MODE];
@@ -1 +1 @@
1
- {"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../../../../../src/ai-model/models/auto-glm/parser.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAMrD,eAAO,MAAM,iBAAiB,GAAI,KAAK,MAAM,EAAE,KAAK,MAAM,KAAG,MAU5D,CAAC;AAEF,wBAAgB,0BAA0B,CAAC,QAAQ,EAAE;IACnD,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CACjB,GAAG,mBAAmB,CAmKtB;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG;IACrD,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CACjB,CA6BA;AAED,wBAAgB,4BAA4B,CAAC,OAAO,EAAE,MAAM,GAAG;IAC7D,QAAQ,EAAE,UAAU,CAAC,OAAO,oBAAoB,CAAC,CAAC;IAClD,MAAM,EAAE,mBAAmB,CAAC;CAC7B,CAIA"}
1
+ {"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../../../../../src/ai-model/models/auto-glm/parser.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAMrD,eAAO,MAAM,iBAAiB,GAAI,KAAK,MAAM,EAAE,KAAK,MAAM,KAAG,MAU5D,CAAC;AAEF,wBAAgB,0BAA0B,CAAC,QAAQ,EAAE;IACnD,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CACjB,GAAG,mBAAmB,CAqKtB;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG;IACrD,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CACjB,CA6BA;AAED,wBAAgB,4BAA4B,CAAC,OAAO,EAAE,MAAM,GAAG;IAC7D,QAAQ,EAAE,UAAU,CAAC,OAAO,oBAAoB,CAAC,CAAC;IAClD,MAAM,EAAE,mBAAmB,CAAC;CAC7B,CAIA"}
@@ -1 +1 @@
1
- {"version":3,"file":"call-openai.d.ts","sourceRoot":"","sources":["../../../../../src/ai-model/service-caller/openai/call-openai.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAElE,OAAO,EAEL,KAAK,qBAAqB,EAC3B,MAAM,mCAAmC,CAAC;AAG3C,OAAO,EAAiB,KAAK,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAE7E,MAAM,MAAM,mBAAmB,GAC3B;IACE,QAAQ,EAAE,iBAAiB,CAAC;IAC5B,KAAK,EAAE,OAAO,CAAC,UAAU,CAAC,OAAO,qBAAqB,CAAC,CAAC,CAAC;CAC1D,GACD;IACE,QAAQ,EAAE,WAAW,CAAC;IACtB,KAAK,EAAE,OAAO,CAAC,UAAU,CAAC,OAAO,gBAAgB,CAAC,CAAC,CAAC;CACrD,CAAC;AAEN,wBAAsB,UAAU,CAC9B,EACE,YAAY,EACZ,OAAO,EACP,WAAW,EACX,WAAW,EACX,aAAa,EACb,kBAAkB,GACnB,EAAE,gBAAgB,EACnB,QAAQ,EAAE,mBAAmB,GAC5B,OAAO,CAAC,eAAe,CAAC,CAuF1B"}
1
+ {"version":3,"file":"call-openai.d.ts","sourceRoot":"","sources":["../../../../../src/ai-model/service-caller/openai/call-openai.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAElE,OAAO,EAEL,KAAK,qBAAqB,EAC3B,MAAM,mCAAmC,CAAC;AAG3C,OAAO,EAAiB,KAAK,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAE7E,MAAM,MAAM,mBAAmB,GAC3B;IACE,QAAQ,EAAE,iBAAiB,CAAC;IAC5B,KAAK,EAAE,OAAO,CAAC,UAAU,CAAC,OAAO,qBAAqB,CAAC,CAAC,CAAC;CAC1D,GACD;IACE,QAAQ,EAAE,WAAW,CAAC;IACtB,KAAK,EAAE,OAAO,CAAC,UAAU,CAAC,OAAO,gBAAgB,CAAC,CAAC,CAAC;CACrD,CAAC;AAEN,wBAAsB,UAAU,CAC9B,EACE,YAAY,EACZ,OAAO,EACP,WAAW,EACX,WAAW,EACX,aAAa,EACb,kBAAkB,GACnB,EAAE,gBAAgB,EACnB,QAAQ,EAAE,mBAAmB,GAC5B,OAAO,CAAC,eAAe,CAAC,CA0F1B"}
@@ -1,3 +1,3 @@
1
1
  export declare function modelFamilyRequiredForLocateMessage(slot?: string): string;
2
- export declare function planningModelFamilyRequiredForLocateMessage(slot?: string): "Planning model family is required because aiAct is asking the planning model to return locate coordinates. Configure MIDSCENE_PLANNING_MODEL_FAMILY for the planning model, or remove the separate planning model config and configure MIDSCENE_MODEL_FAMILY on the default model. https://midscenejs.com/model-config" | "Default model family is required because aiAct is asking the default model to return locate coordinates during planning. Configure MIDSCENE_MODEL_FAMILY so Midscene can parse planning locate coordinates correctly. https://midscenejs.com/model-config";
2
+ export declare function planningModelFamilyRequiredForLocateMessage(slot?: string): "Planning model family is required because aiAct is asking the planning model to return locate coordinates. Configure MIDSCENE_PLANNING_MODEL_FAMILY for the planning model, or remove the separate planning model config and configure MIDSCENE_MODEL_FAMILY on the default model. https://midscenejs.com/model-config#common-configuration-errors" | "Default model family is required because aiAct is asking the default model to return locate coordinates during planning. Configure MIDSCENE_MODEL_FAMILY so Midscene can parse planning locate coordinates correctly. https://midscenejs.com/model-config#common-configuration-errors";
3
3
  //# sourceMappingURL=errors.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../../../src/ai-model/shared/model-locate-result/errors.ts"],"names":[],"mappings":"AAEA,wBAAgB,mCAAmC,CAAC,IAAI,CAAC,EAAE,MAAM,UAOhE;AAED,wBAAgB,2CAA2C,CAAC,IAAI,CAAC,EAAE,MAAM,0jBAMxE"}
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../../../src/ai-model/shared/model-locate-result/errors.ts"],"names":[],"mappings":"AAGA,wBAAgB,mCAAmC,CAAC,IAAI,CAAC,EAAE,MAAM,UAOhE;AAED,wBAAgB,2CAA2C,CAAC,IAAI,CAAC,EAAE,MAAM,knBAMxE"}
@@ -1 +1 @@
1
- {"version":3,"file":"parse.d.ts","sourceRoot":"","sources":["../../../../../src/ai-model/shared/model-locate-result/parse.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,2BAA2B,EAC3B,qBAAqB,EAGrB,iBAAiB,EACjB,4BAA4B,EAC5B,sBAAsB,EACtB,+BAA+B,EAChC,MAAM,SAAS,CAAC;AAEjB,KAAK,uBAAuB,GACxB,MAAM,EAAE,GACR,MAAM,EAAE,GACR,MAAM,GACN,CAAC,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC,EAAE,CAAC;AAE5B,wBAAgB,6BAA6B,CAC3C,cAAc,EAAE,uBAAuB,GACtC,MAAM,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,CAQ9B;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,CAyB3E;AAED,wBAAgB,uBAAuB,CACrC,eAAe,EAAE,4BAA4B,EAC7C,WAAW,EAAE,MAAM,EAAE,GACpB,sBAAsB,CAAC;AAC1B,wBAAgB,uBAAuB,CACrC,eAAe,EAAE,2BAA2B,EAC5C,WAAW,EAAE,MAAM,EAAE,GACpB,qBAAqB,CAAC;AAuBzB,wBAAgB,wBAAwB,CACtC,mBAAmB,EAAE,+BAA+B,EACpD,KAAK,EAAE,OAAO,GACb,iBAAiB,CAenB"}
1
+ {"version":3,"file":"parse.d.ts","sourceRoot":"","sources":["../../../../../src/ai-model/shared/model-locate-result/parse.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,2BAA2B,EAC3B,qBAAqB,EAGrB,iBAAiB,EACjB,4BAA4B,EAC5B,sBAAsB,EACtB,+BAA+B,EAChC,MAAM,SAAS,CAAC;AAEjB,KAAK,uBAAuB,GACxB,MAAM,EAAE,GACR,MAAM,EAAE,GACR,MAAM,GACN,CAAC,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC,EAAE,CAAC;AAE5B,wBAAgB,6BAA6B,CAC3C,cAAc,EAAE,uBAAuB,GACtC,MAAM,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,CAQ9B;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,CAkC3E;AAED,wBAAgB,uBAAuB,CACrC,eAAe,EAAE,4BAA4B,EAC7C,WAAW,EAAE,MAAM,EAAE,GACpB,sBAAsB,CAAC;AAC1B,wBAAgB,uBAAuB,CACrC,eAAe,EAAE,2BAA2B,EAC5C,WAAW,EAAE,MAAM,EAAE,GACpB,qBAAqB,CAAC;AAuBzB,wBAAgB,wBAAwB,CACtC,mBAAmB,EAAE,+BAA+B,EACpD,KAAK,EAAE,OAAO,GACb,iBAAiB,CAenB"}
@@ -2143,9 +2143,6 @@ export declare const ActionSwipeParamSchema: z.ZodObject<{
2143
2143
  repeat: z.ZodOptional<z.ZodNumber>;
2144
2144
  }, "strip", z.ZodTypeAny, {
2145
2145
  duration: number;
2146
- repeat?: number | undefined;
2147
- direction?: "left" | "right" | "up" | "down" | undefined;
2148
- distance?: number | undefined;
2149
2146
  start?: z.objectOutputType<{
2150
2147
  prompt: z.ZodUnion<[z.ZodString, z.ZodIntersection<z.ZodObject<{
2151
2148
  prompt: z.ZodString;
@@ -2183,6 +2180,9 @@ export declare const ActionSwipeParamSchema: z.ZodObject<{
2183
2180
  cacheable: z.ZodOptional<z.ZodBoolean>;
2184
2181
  xpath: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodBoolean]>>;
2185
2182
  }, z.ZodTypeAny, "passthrough"> | undefined;
2183
+ repeat?: number | undefined;
2184
+ direction?: "left" | "right" | "up" | "down" | undefined;
2185
+ distance?: number | undefined;
2186
2186
  end?: z.objectOutputType<{
2187
2187
  prompt: z.ZodUnion<[z.ZodString, z.ZodIntersection<z.ZodObject<{
2188
2188
  prompt: z.ZodString;
@@ -2221,10 +2221,6 @@ export declare const ActionSwipeParamSchema: z.ZodObject<{
2221
2221
  xpath: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodBoolean]>>;
2222
2222
  }, z.ZodTypeAny, "passthrough"> | undefined;
2223
2223
  }, {
2224
- repeat?: number | undefined;
2225
- direction?: "left" | "right" | "up" | "down" | undefined;
2226
- duration?: number | undefined;
2227
- distance?: number | undefined;
2228
2224
  start?: z.objectInputType<{
2229
2225
  prompt: z.ZodUnion<[z.ZodString, z.ZodIntersection<z.ZodObject<{
2230
2226
  prompt: z.ZodString;
@@ -2262,6 +2258,10 @@ export declare const ActionSwipeParamSchema: z.ZodObject<{
2262
2258
  cacheable: z.ZodOptional<z.ZodBoolean>;
2263
2259
  xpath: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodBoolean]>>;
2264
2260
  }, z.ZodTypeAny, "passthrough"> | undefined;
2261
+ repeat?: number | undefined;
2262
+ direction?: "left" | "right" | "up" | "down" | undefined;
2263
+ duration?: number | undefined;
2264
+ distance?: number | undefined;
2265
2265
  end?: z.objectInputType<{
2266
2266
  prompt: z.ZodUnion<[z.ZodString, z.ZodIntersection<z.ZodObject<{
2267
2267
  prompt: z.ZodString;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/device/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEtD,OAAO,KAAK,EACV,iBAAiB,EACjB,YAAY,EACZ,eAAe,EACf,mBAAmB,EACpB,MAAM,SAAS,CAAC;AACjB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAG9D,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EACV,mBAAmB,EACnB,IAAI,EACJ,IAAI,EAEJ,cAAc,EACf,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,KAAK,aAAa,EAAmB,MAAM,kBAAkB,CAAC;AAEvE,MAAM,WAAW,kBAAkB;IACjC,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACxC;AAED,MAAM,WAAW,uBAAuB;IACtC,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,QAAQ,EAAE,MAAM,KAAK,GAAG,SAAS,GAAG,OAAO,CAAC,KAAK,GAAG,SAAS,CAAC,CAAC;CAChE;AAED,MAAM,WAAW,gBAAgB;IAC/B,gFAAgF;IAChF,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,IAAI,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC9B;AAED,MAAM,WAAW,kBAAkB;IACjC,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,OAAO,CAAC,KAAK,EAAE,gBAAgB,GAAG,IAAI,CAAC;IACvC,OAAO,CAAC,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI,CAAC;CAChC;AAED;;;;;GAKG;AACH,MAAM,WAAW,cAAc;IAC7B,GAAG,EAAE,OAAO,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;;;;GAKG;AACH,MAAM,WAAW,iBAAiB;IAChC,+EAA+E;IAC/E,MAAM,IAAI,cAAc,GAAG,IAAI,CAAC;IAChC;;;;OAIG;IACH,MAAM,CAAC,IAAI,EAAE,cAAc,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAClD,kEAAkE;IAClE,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;CAC9B;AAED,yDAAyD;AACzD,MAAM,WAAW,YAAY;IAC3B,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACX;AAED,8EAA8E;AAC9E,MAAM,MAAM,mBAAmB,GAAG,CAChC,KAAK,EAAE,YAAY,EACnB,GAAG,EAAE,YAAY,EACjB,IAAI,CAAC,EAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,KAC1C,OAAO,CAAC,IAAI,CAAC,CAAC;AAEnB,sEAAsE;AACtE,MAAM,MAAM,cAAc,GAAG,OAAO,GAAG,OAAO,CAAC;AAE/C,gFAAgF;AAChF,MAAM,WAAW,2BAA2B;IAC1C,KAAK,EAAE,mBAAmB,CAAC;IAC3B,SAAS,EAAE,cAAc,CAAC;CAC3B;AAED,MAAM,WAAW,sBAAsB;IACrC,GAAG,CAAC,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAClE,WAAW,CAAC,CAAC,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7C,UAAU,CAAC,CAAC,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5C,KAAK,CAAC,CAAC,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACvC,SAAS,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACzE,WAAW,CAAC,CAAC,IAAI,EAAE,YAAY,EAAE,EAAE,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAClE,KAAK,CAAC,EAAE,mBAAmB,CAAC;CAC7B;AAED,MAAM,WAAW,oBAAoB;IACnC,KAAK,EAAE,mBAAmB,CAAC;IAC3B,KAAK,CAAC,CACJ,MAAM,EAAE,YAAY,EACpB,IAAI,EAAE;QAAE,aAAa,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,GACrE,OAAO,CAAC,IAAI,CAAC,CAAC;CAClB;AAED,MAAM,WAAW,uBAAuB;IACtC,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3E,UAAU,CAAC,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACxE,QAAQ,CACN,KAAK,EAAE,MAAM,EACb,IAAI,CAAC,EAAE;QACL,mBAAmB,CAAC,EAAE,OAAO,CAAC;QAC9B,uBAAuB,CAAC,EAAE,WAAW,GAAG,YAAY,CAAC;QACrD,iBAAiB,CAAC,EAAE,MAAM,CAAC;QAC3B,aAAa,CAAC,EAAE,aAAa,CAAC;QAC9B,MAAM,CAAC,EAAE,OAAO,CAAC;QACjB,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,wEAAwE;QACxE,eAAe,CAAC,EAAE,OAAO,CAAC;KAC3B,GACA,OAAO,CAAC,IAAI,CAAC,CAAC;IACjB,UAAU,CAAC,MAAM,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC7C;AAED,MAAM,WAAW,qBAAqB;IACpC,MAAM,CACJ,KAAK,EAAE,iBAAiB,EACxB,IAAI,CAAC,EAAE;QAAE,eAAe,CAAC,EAAE,OAAO,CAAA;KAAE,GACnC,OAAO,CAAC,IAAI,CAAC,CAAC;CAClB;AAED,MAAM,WAAW,qBAAqB;IACpC,UAAU,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7B,UAAU,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7B,gBAAgB,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACpC;AAED,MAAM,WAAW,eAAe;IAC9B,OAAO,CAAC,EAAE,sBAAsB,CAAC;IACjC,QAAQ,CAAC,EAAE,uBAAuB,CAAC;IACnC,KAAK,CAAC,EAAE,oBAAoB,CAAC;IAC7B,MAAM,CAAC,EAAE,qBAAqB,CAAC;IAC/B,MAAM,CAAC,EAAE,qBAAqB,CAAC;CAChC;AAED;;;;GAIG;AACH,wBAAgB,0BAA0B,CACxC,KAAK,EAAE,IAAI,CAAC,eAAe,EAAE,SAAS,GAAG,OAAO,CAAC,GAChD,2BAA2B,GAAG,SAAS,CAQzC;AAED,MAAM,WAAW,qBAAsB,SAAQ,eAAe;IAC5D,OAAO,EAAE,sBAAsB,GAAG;QAChC,WAAW,CAAC,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QAC5C,SAAS,CAAC,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,EAAE;YAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;SAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QACxE,WAAW,CAAC,IAAI,EAAE,YAAY,EAAE,EAAE,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;KAClE,CAAC;IACF,QAAQ,EAAE,uBAAuB,CAAC;IAClC,KAAK,EAAE,oBAAoB,CAAC;CAC7B;AAED,MAAM,WAAW,sBAAuB,SAAQ,eAAe;IAC7D,OAAO,EAAE,sBAAsB,GAAG;QAChC,WAAW,CAAC,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QAC5C,UAAU,CAAC,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QAC3C,KAAK,CAAC,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QACtC,WAAW,CAAC,IAAI,EAAE,YAAY,EAAE,EAAE,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QACjE,SAAS,CAAC,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,EAAE;YAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;SAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;KACzE,CAAC;IACF,QAAQ,EAAE,uBAAuB,CAAC;IAClC,MAAM,EAAE,qBAAqB,CAAC;IAC9B,KAAK,EAAE,oBAAoB,CAAC;CAC7B;AAED,MAAM,WAAW,uBAAwB,SAAQ,eAAe;IAC9D,OAAO,EAAE,sBAAsB,GAAG;QAChC,WAAW,CAAC,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QAC5C,UAAU,CAAC,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QAC3C,KAAK,CAAC,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QACtC,WAAW,CAAC,IAAI,EAAE,YAAY,EAAE,EAAE,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;KAClE,CAAC;IACF,QAAQ,EAAE,uBAAuB,CAAC;IAClC,MAAM,EAAE,qBAAqB,CAAC;CAC/B;AAED,8BAAsB,iBAAiB;IACrC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAE/B,QAAQ,CAAC,gBAAgB,IAAI,OAAO,CAAC,MAAM,CAAC;IAC5C,QAAQ,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAC9B,QAAQ,CAAC,WAAW,IAAI,YAAY,EAAE;IAEtC,QAAQ,CAAC,oBAAoB,CAAC,CAC5B,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,EACxB,OAAO,CAAC,EAAE;QACR,iBAAiB,CAAC,EAAE,MAAM,CAAC;QAC3B,YAAY,CAAC,EAAE,YAAY,CAAC;KAC7B,GACA,OAAO,CAAC,mBAAmB,CAAC;IAC/B,QAAQ,CAAC,uBAAuB,CAAC,CAC/B,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CAAC,IAAI,CAAC;IAEhB,QAAQ,CAAC,SAAS,CAAC,IAAI,OAAO,CAAC,cAAc,CAAC;IAE9C,QAAQ,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC;IAElC,QAAQ,CAAC,QAAQ,CAAC,IAAI,MAAM;IAC5B,QAAQ,CAAC,kBAAkB,CAAC,CAC1B,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,GAAG,EACV,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,IAAI,CAAC;IAChB,QAAQ,CAAC,iBAAiB,CAAC,CACzB,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,GAAG,EACV,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,IAAI,CAAC;IAEhB,qFAAqF;IAC/E,iBAAiB,CAAC,CACtB,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,GAAG,EACX,OAAO,CAAC,EAAE,WAAW,GACpB,OAAO,CAAC,IAAI,CAAC;IAGhB,2BAA2B,CAAC,CAC1B,OAAO,EAAE,CAAC,OAAO,EAAE,kBAAkB,KAAK,OAAO,CAAC,IAAI,CAAC,GACtD,OAAO,CAAC,uBAAuB,CAAC;IAGnC,QAAQ,CAAC,mBAAmB,CAAC,EAAE,MAAM,OAAO,CAAC,WAAW,CAAC,CAAC;IAG1D,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAG9C,QAAQ,CAAC,kBAAkB,CAAC,CAAC,CAAC,GAAG,GAAG,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;IAEjE;;;;OAIG;IACH,wBAAwB,CAAC,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAE3D,sFAAsF;IACtF,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB;;;;;;;;;;;OAWG;IACH,eAAe,CAAC,IAAI,OAAO,CAAC,iBAAiB,GAAG,SAAS,CAAC;IAE1D;;;;OAIG;IACH,gBAAgB,CAAC,CACf,OAAO,EAAE,kBAAkB,GAC1B,iBAAiB,GAAG,SAAS,GAAG,OAAO,CAAC,iBAAiB,GAAG,SAAS,CAAC;IAEzE;;;;;OAKG;IACH,wBAAwB,CAAC,CAAC,KAAK,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAEzD;;;;;OAKG;IACH,2BAA2B,CAAC,CAAC,KAAK,CAAC,EAAE,OAAO,GAAG,IAAI;IAEnD;;;;OAIG;IACH,eAAe,CAAC,IAAI,OAAO,CAAC;QAAE,SAAS,EAAE,OAAO,CAAA;KAAE,CAAC;IAEnD;;;;OAIG;IACH,eAAe,CAAC,EAAE,eAAe,CAAC;CACnC;AAKD,eAAO,MAAM,YAAY,GACvB,OAAO,SAAS,CAAC,CAAC,OAAO,GAAG,SAAS,GAAG,SAAS,EACjD,QAAQ,GAAG,OAAO,SAAS,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,SAAS,EACnE,OAAO,GAAG,GAAG,EAEb,QAAQ;IACN,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,IAAI,EAAE,CACJ,KAAK,EAAE,QAAQ,EACf,OAAO,CAAC,EAAE,eAAe,KACtB,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC;CACjC,GAAG,OAAO,CACT,IAAI,CACF,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,EAC/B,MAAM,GAAG,aAAa,GAAG,gBAAgB,GAAG,aAAa,GAAG,MAAM,CACnE,CACF,KACA,YAAY,CAAC,QAAQ,EAAE,OAAO,CAEhC,CAAC;AAwCF,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAE/B,CAAC;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B,MAAM,EAAE,mBAAmB,CAAC;CAC7B,CAAC;AAEF,eAAO,MAAM,eAAe,GAC1B,KAAK,sBAAsB,CAAC,KAAK,CAAC,KACjC,YAAY,CAAC,cAAc,CAc7B,CAAC;AAEF,eAAO,MAAM,oCAAoC;;;;;;EAM/C,CAAC;AACH,MAAM,MAAM,8BAA8B,GAAG;IAC3C,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;CAC1B,CAAC;AAEF,eAAO,MAAM,qCAAqC,GAChD,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,KAAK,OAAO,CAAC,IAAI,CAAC,KACpD,YAAY,CAAC,8BAA8B,CAiB7C,CAAC;AAGF,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAItC,CAAC;AACH,MAAM,MAAM,qBAAqB,GAAG;IAClC,MAAM,EAAE,mBAAmB,CAAC;CAC7B,CAAC;AAEF,eAAO,MAAM,sBAAsB,GACjC,YAAY,WAAW,CAAC,sBAAsB,CAAC,YAAY,CAAC,CAAC,KAC5D,YAAY,CAAC,qBAAqB,CAiBpC,CAAC;AAGF,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAIvC,CAAC;AACH,MAAM,MAAM,sBAAsB,GAAG;IACnC,MAAM,EAAE,mBAAmB,CAAC;CAC7B,CAAC;AAEF,eAAO,MAAM,uBAAuB,GAClC,aAAa,WAAW,CAAC,sBAAsB,CAAC,aAAa,CAAC,CAAC,KAC9D,YAAY,CAAC,sBAAsB,CAiBrC,CAAC;AAGF,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAEjC,CAAC;AACH,MAAM,MAAM,gBAAgB,GAAG;IAC7B,MAAM,EAAE,mBAAmB,CAAC;CAC7B,CAAC;AAEF,eAAO,MAAM,iBAAiB,GAC5B,OAAO,WAAW,CAAC,sBAAsB,CAAC,OAAO,CAAC,CAAC,KAClD,YAAY,CAAC,gBAAgB,CAiB/B,CAAC;AAKF,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAoCjC,CAAC;AACH,MAAM,MAAM,gBAAgB,GAAG;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,mBAAmB,CAAC;IAC7B,IAAI,CAAC,EAAE,SAAS,GAAG,OAAO,GAAG,UAAU,GAAG,QAAQ,CAAC;IACnD,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,aAAa,CAAC,EAAE,aAAa,CAAC;CAC/B,CAAC;AAEF,eAAO,MAAM,iBAAiB,GAC5B,UAAU,uBAAuB,KAChC,YAAY,CAAC,gBAAgB,CAmC/B,CAAC;AAGF,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAWzC,CAAC;AACH,MAAM,MAAM,wBAAwB,GAAG;IACrC,MAAM,CAAC,EAAE,mBAAmB,CAAC;IAC7B,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,eAAO,MAAM,yBAAyB,GACpC,eAAe,uBAAuB,CAAC,eAAe,CAAC,KACtD,YAAY,CAAC,wBAAwB,CAmBvC,CAAC;AAGF,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAgClC,CAAC;AAEH,eAAO,MAAM,kBAAkB,GAC7B,QAAQ,qBAAqB,CAAC,QAAQ,CAAC,KACtC,YAAY,CAAC,iBAAiB,CAkBhC,CAAC;AAGF,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAGvC,CAAC;AACH,MAAM,MAAM,sBAAsB,GAAG;IACnC,IAAI,EAAE,mBAAmB,CAAC;IAC1B,EAAE,EAAE,mBAAmB,CAAC;CACzB,CAAC;AAEF,eAAO,MAAM,uBAAuB,GAClC,aAAa,WAAW,CAAC,sBAAsB,CAAC,aAAa,CAAC,CAAC,KAC9D,YAAY,CAAC,sBAAsB,CA6BrC,CAAC;AAEF,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAQrC,CAAC;AAEH,MAAM,MAAM,oBAAoB,GAAG;IACjC,MAAM,EAAE,mBAAmB,CAAC;IAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AACF,eAAO,MAAM,qBAAqB,GAChC,WAAW,WAAW,CAAC,sBAAsB,CAAC,WAAW,CAAC,CAAC,KAC1D,YAAY,CAAC,oBAAoB,CAiBnC,CAAC;AA4CF,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAAwC,CAAC;AAE5E,MAAM,MAAM,gBAAgB,GAAG;IAC7B,KAAK,CAAC,EAAE,mBAAmB,CAAC;IAC5B,SAAS,CAAC,EAAE,IAAI,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;IAC7C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,GAAG,CAAC,EAAE,mBAAmB,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,gBAAgB,EACvB,UAAU,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAC5C;IACD,UAAU,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACrC,QAAQ,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACnC,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;CACrB,CA4DA;AAED,2DAA2D;AAC3D,eAAO,MAAM,yBAAyB,4BAAsB,CAAC;AAE7D,eAAO,MAAM,iBAAiB,GAAI,QAAQ;IACxC,KAAK,EAAE,mBAAmB,CAAC;IAC3B,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACtB,SAAS,CAAC,EAAE,cAAc,CAAC;CAC5B,KAAG,YAAY,CAAC,gBAAgB,CAyBhC,CAAC;AAGF,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAItC,CAAC;AACH,MAAM,MAAM,qBAAqB,GAAG;IAClC,MAAM,CAAC,EAAE,mBAAmB,CAAC;CAC9B,CAAC;AAEF,eAAO,MAAM,sBAAsB,GACjC,YAAY,uBAAuB,CAAC,YAAY,CAAC,KAChD,YAAY,CAAC,qBAAqB,CAgBpC,CAAC;AAGF,eAAO,MAAM,2BAA2B;;;;;;;;;EAYtC,CAAC;AACH,MAAM,MAAM,qBAAqB,GAAG;IAClC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,eAAO,MAAM,sBAAsB,GAAI,QAAQ;IAC7C,QAAQ,EAAE,IAAI,CAAC,uBAAuB,EAAE,eAAe,GAAG,YAAY,CAAC,CAAC;IACxE,KAAK,CAAC,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACvC,KAAG,YAAY,CAAC,qBAAqB,CA+BrC,CAAC;AAGF,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAuBjC,CAAC;AAEH,MAAM,MAAM,gBAAgB,GAAG;IAC7B,MAAM,CAAC,EAAE,mBAAmB,CAAC;IAC7B,SAAS,EAAE,IAAI,GAAG,KAAK,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,eAAO,MAAM,iBAAiB,GAAI,QAAQ;IACxC,KAAK,EAAE,oBAAoB,CAAC,OAAO,CAAC,CAAC;IACrC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACvB,KAAG,YAAY,CAAC,gBAAgB,CAAC,GAAG,SAyBpC,CAAC;AAEF,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,gBAAgB,EACvB,UAAU,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAC5C;IACD,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;CAClB,CAqBA;AAED,MAAM,WAAW,wBAAwB;IACvC,KAAK,EAAE,qBAAqB,CAAC;IAC7B,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACtB,KAAK,CAAC,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACtC,6BAA6B,CAAC,IAAI,OAAO,GAAG,SAAS,CAAC;IACtD,aAAa,CAAC,EAAE,wBAAwB,CAAC;CAC1C;AAED,MAAM,WAAW,uBAAuB;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,wBAAwB;IACvC,UAAU,CAAC,EAAE,uBAAuB,CAAC;IACrC,UAAU,CAAC,EAAE,uBAAuB,CAAC;IACrC,gBAAgB,CAAC,EAAE,uBAAuB,CAAC;CAC5C;AAED,MAAM,WAAW,2BAA2B;IAC1C,IAAI,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3B,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1C,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,aAAa,CAAC,EAAE,wBAAwB,CAAC;CAC1C;AAgBD,wBAAgB,gCAAgC,CAC9C,KAAK,EAAE,eAAe,EACtB,OAAO,GAAE,2BAAgC,GACxC,YAAY,CAAC,GAAG,CAAC,EAAE,CAsErB;AAED,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,wBAAwB,GAChC,YAAY,CAAC,GAAG,CAAC,EAAE,CAMrB;AAGD,eAAO,MAAM,sBAAsB;;;;;;EAMjC,CAAC;AAEH,MAAM,MAAM,gBAAgB,GAAG;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,eAAO,MAAM,iBAAiB,GAC5B,cAAc,WAAW,KACxB,YAAY,CAAC,gBAAgB,CA2B/B,CAAC;AAEF,YAAY,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAC7C,YAAY,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAC7E,OAAO,EAAE,yBAAyB,EAAE,MAAM,WAAW,CAAC;AACtD,OAAO,EAAE,CAAC,EAAE,CAAC;AACb,OAAO,EACL,eAAe,EACf,KAAK,aAAa,EAClB,KAAK,wBAAwB,EAC7B,KAAK,2BAA2B,EAChC,KAAK,gBAAgB,EACrB,oBAAoB,EACpB,uBAAuB,EACvB,oBAAoB,EACpB,uBAAuB,GACxB,MAAM,kBAAkB,CAAC;AAC1B,YAAY,EACV,gBAAgB,EAChB,qBAAqB,EACrB,YAAY,EACZ,iBAAiB,EACjB,gBAAgB,EAChB,qBAAqB,GACtB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,0BAA0B,EAAE,MAAM,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/device/index.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import type { ReportModelUsageSummary } from './report-stats';
1
2
  export declare const TEST_RUN_REPORT_SCRIPT_TYPE = "midscene_test_run_dump";
2
3
  export type TestRunReportRunStatus = 'success' | 'failed';
3
4
  export type TestRunReportCaseStatus = TestRunReportRunStatus | 'not-run';
@@ -66,6 +67,8 @@ export interface TestRunReportDiagnostic {
66
67
  error?: TestRunReportError;
67
68
  }
68
69
  export interface TestRunReportMetrics {
70
+ /** Actual models observed in usage records, independent of configured defaults. */
71
+ models?: ReportModelUsageSummary[];
69
72
  modelCallCount: number;
70
73
  modelTimeMs: number;
71
74
  promptTokens: number;
@@ -77,7 +80,7 @@ export interface TestRunReportMetrics {
77
80
  expectedExecutionCount: number;
78
81
  capturedExecutionCount: number;
79
82
  reasons: string[];
80
- fields?: Record<'modelCallCount' | 'modelTimeMs' | 'totalTokens', 'complete' | 'partial' | 'unknown'>;
83
+ fields?: Record<'modelCallCount' | 'modelTimeMs' | 'totalTokens', 'complete' | 'partial' | 'unknown'> & Partial<Record<'promptTokens' | 'completionTokens', 'complete' | 'partial' | 'unknown'>>;
81
84
  };
82
85
  }
83
86
  export interface TestRunReportSnapshotCollection {
@@ -1 +1 @@
1
- {"version":3,"file":"test-run-report.d.ts","sourceRoot":"","sources":["../../src/test-run-report.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"test-run-report.d.ts","sourceRoot":"","sources":["../../src/test-run-report.ts"],"names":[],"mappings":"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"}