@nuanu-ai/agentbrowse 0.2.46 → 0.2.48

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 (190) hide show
  1. package/README.md +69 -10
  2. package/dist/agentpay-gateway.d.ts +9 -0
  3. package/dist/agentpay-gateway.d.ts.map +1 -1
  4. package/dist/agentpay-gateway.js +30 -0
  5. package/dist/agentpay-stagehand-llm.d.ts.map +1 -1
  6. package/dist/agentpay-stagehand-llm.js +9 -1
  7. package/dist/command-api-tracing.d.ts +19 -0
  8. package/dist/command-api-tracing.d.ts.map +1 -0
  9. package/dist/command-api-tracing.js +137 -0
  10. package/dist/commands/act.d.ts.map +1 -1
  11. package/dist/commands/act.js +822 -670
  12. package/dist/commands/act.test-harness.d.ts +6 -0
  13. package/dist/commands/act.test-harness.d.ts.map +1 -1
  14. package/dist/commands/act.test-harness.js +44 -1
  15. package/dist/commands/action-acceptance.d.ts.map +1 -1
  16. package/dist/commands/action-acceptance.js +115 -0
  17. package/dist/commands/captcha-solve.d.ts.map +1 -1
  18. package/dist/commands/captcha-solve.js +83 -16
  19. package/dist/commands/click-action-executor.d.ts +0 -1
  20. package/dist/commands/click-action-executor.d.ts.map +1 -1
  21. package/dist/commands/click-action-executor.js +31 -77
  22. package/dist/commands/close.d.ts +3 -3
  23. package/dist/commands/close.d.ts.map +1 -1
  24. package/dist/commands/close.js +178 -0
  25. package/dist/commands/descriptor-validation.d.ts.map +1 -1
  26. package/dist/commands/descriptor-validation.js +75 -57
  27. package/dist/commands/end-session.d.ts +25 -0
  28. package/dist/commands/end-session.d.ts.map +1 -0
  29. package/dist/commands/end-session.js +161 -0
  30. package/dist/commands/extract-stagehand-executor.js +1 -1
  31. package/dist/commands/extract.d.ts.map +1 -1
  32. package/dist/commands/extract.js +339 -202
  33. package/dist/commands/fill-secret.d.ts +3 -3
  34. package/dist/commands/fill-secret.d.ts.map +1 -1
  35. package/dist/commands/fill-secret.js +419 -234
  36. package/dist/commands/get-secrets-catalog.d.ts.map +1 -1
  37. package/dist/commands/get-secrets-catalog.js +66 -5
  38. package/dist/commands/interaction-kernel.d.ts +46 -0
  39. package/dist/commands/interaction-kernel.d.ts.map +1 -0
  40. package/dist/commands/interaction-kernel.js +215 -0
  41. package/dist/commands/launch.d.ts +0 -2
  42. package/dist/commands/launch.d.ts.map +1 -1
  43. package/dist/commands/launch.js +109 -17
  44. package/dist/commands/navigate.d.ts.map +1 -1
  45. package/dist/commands/navigate.js +188 -45
  46. package/dist/commands/observe-accessibility.d.ts.map +1 -1
  47. package/dist/commands/observe-accessibility.js +50 -39
  48. package/dist/commands/observe-dom-label-contract.d.ts.map +1 -1
  49. package/dist/commands/observe-dom-label-contract.js +5 -0
  50. package/dist/commands/observe-inventory.d.ts +13 -0
  51. package/dist/commands/observe-inventory.d.ts.map +1 -1
  52. package/dist/commands/observe-inventory.js +320 -65
  53. package/dist/commands/observe-persistence.d.ts.map +1 -1
  54. package/dist/commands/observe-persistence.js +3 -0
  55. package/dist/commands/observe-projection.d.ts +1 -0
  56. package/dist/commands/observe-projection.d.ts.map +1 -1
  57. package/dist/commands/observe-projection.js +7 -2
  58. package/dist/commands/observe-protected.d.ts +1 -0
  59. package/dist/commands/observe-protected.d.ts.map +1 -1
  60. package/dist/commands/observe-protected.js +9 -4
  61. package/dist/commands/observe-semantics.d.ts.map +1 -1
  62. package/dist/commands/observe-semantics.js +5 -2
  63. package/dist/commands/observe-stagehand.d.ts +1 -0
  64. package/dist/commands/observe-stagehand.d.ts.map +1 -1
  65. package/dist/commands/observe-stagehand.js +2 -0
  66. package/dist/commands/observe.d.ts +2 -0
  67. package/dist/commands/observe.d.ts.map +1 -1
  68. package/dist/commands/observe.js +387 -203
  69. package/dist/commands/observe.test-harness.d.ts +8 -0
  70. package/dist/commands/observe.test-harness.d.ts.map +1 -1
  71. package/dist/commands/observe.test-harness.js +48 -1
  72. package/dist/commands/poll-secret.d.ts +6 -0
  73. package/dist/commands/poll-secret.d.ts.map +1 -0
  74. package/dist/commands/poll-secret.js +159 -0
  75. package/dist/commands/request-secret.d.ts +6 -0
  76. package/dist/commands/request-secret.d.ts.map +1 -0
  77. package/dist/commands/request-secret.js +284 -0
  78. package/dist/commands/screenshot.d.ts.map +1 -1
  79. package/dist/commands/screenshot.js +172 -7
  80. package/dist/commands/select-action-executor.d.ts.map +1 -1
  81. package/dist/commands/semantic-observe.d.ts +4 -0
  82. package/dist/commands/semantic-observe.d.ts.map +1 -1
  83. package/dist/commands/semantic-observe.js +388 -17
  84. package/dist/commands/start-session.d.ts +31 -0
  85. package/dist/commands/start-session.d.ts.map +1 -0
  86. package/dist/commands/start-session.js +347 -0
  87. package/dist/commands/status.d.ts +2 -1
  88. package/dist/commands/status.d.ts.map +1 -1
  89. package/dist/commands/status.js +166 -144
  90. package/dist/control-semantics.d.ts +1 -0
  91. package/dist/control-semantics.d.ts.map +1 -1
  92. package/dist/control-semantics.js +51 -9
  93. package/dist/index.d.ts.map +1 -1
  94. package/dist/index.js +144 -45
  95. package/dist/otel-exporter.d.ts +58 -0
  96. package/dist/otel-exporter.d.ts.map +1 -0
  97. package/dist/otel-exporter.js +263 -0
  98. package/dist/otel-projector.d.ts +75 -0
  99. package/dist/otel-projector.d.ts.map +1 -0
  100. package/dist/otel-projector.js +409 -0
  101. package/dist/owned-browser.d.ts +1 -1
  102. package/dist/owned-browser.d.ts.map +1 -1
  103. package/dist/owned-browser.js +13 -1
  104. package/dist/owned-process.d.ts +2 -0
  105. package/dist/owned-process.d.ts.map +1 -1
  106. package/dist/owned-process.js +7 -3
  107. package/dist/playwright-runtime.d.ts +1 -1
  108. package/dist/playwright-runtime.d.ts.map +1 -1
  109. package/dist/playwright-runtime.js +8 -8
  110. package/dist/run-observability.d.ts +25 -0
  111. package/dist/run-observability.d.ts.map +1 -0
  112. package/dist/run-observability.js +115 -0
  113. package/dist/run-store.d.ts +274 -0
  114. package/dist/run-store.d.ts.map +1 -0
  115. package/dist/run-store.js +631 -0
  116. package/dist/runtime-metrics.d.ts +27 -0
  117. package/dist/runtime-metrics.d.ts.map +1 -0
  118. package/dist/runtime-metrics.js +66 -0
  119. package/dist/runtime-page-state.d.ts +11 -0
  120. package/dist/runtime-page-state.d.ts.map +1 -0
  121. package/dist/runtime-page-state.js +62 -0
  122. package/dist/runtime-protected-state.d.ts +16 -0
  123. package/dist/runtime-protected-state.d.ts.map +1 -0
  124. package/dist/runtime-protected-state.js +157 -0
  125. package/dist/runtime-state.d.ts +10 -44
  126. package/dist/runtime-state.d.ts.map +1 -1
  127. package/dist/runtime-state.js +57 -222
  128. package/dist/secrets/backend.d.ts +65 -16
  129. package/dist/secrets/backend.d.ts.map +1 -1
  130. package/dist/secrets/backend.js +135 -95
  131. package/dist/secrets/catalog-sync.d.ts.map +1 -1
  132. package/dist/secrets/catalog-sync.js +4 -1
  133. package/dist/secrets/form-matcher.d.ts +5 -5
  134. package/dist/secrets/form-matcher.d.ts.map +1 -1
  135. package/dist/secrets/form-matcher.js +292 -164
  136. package/dist/secrets/intent-output.d.ts +6 -10
  137. package/dist/secrets/intent-output.d.ts.map +1 -1
  138. package/dist/secrets/intent-output.js +4 -58
  139. package/dist/secrets/mock-agentpay-cabinet.d.ts +38 -27
  140. package/dist/secrets/mock-agentpay-cabinet.d.ts.map +1 -1
  141. package/dist/secrets/mock-agentpay-cabinet.js +177 -111
  142. package/dist/secrets/protected-artifact-guard.d.ts +2 -2
  143. package/dist/secrets/protected-artifact-guard.d.ts.map +1 -1
  144. package/dist/secrets/protected-artifact-guard.js +2 -2
  145. package/dist/secrets/protected-bindings.d.ts +1 -1
  146. package/dist/secrets/protected-bindings.d.ts.map +1 -1
  147. package/dist/secrets/protected-bindings.js +6 -0
  148. package/dist/secrets/protected-field-semantics.d.ts +9 -0
  149. package/dist/secrets/protected-field-semantics.d.ts.map +1 -0
  150. package/dist/secrets/protected-field-semantics.js +154 -0
  151. package/dist/secrets/protected-field-values.d.ts.map +1 -1
  152. package/dist/secrets/protected-field-values.js +3 -3
  153. package/dist/secrets/protected-fill.d.ts +1 -1
  154. package/dist/secrets/protected-fill.d.ts.map +1 -1
  155. package/dist/secrets/protected-fill.js +45 -149
  156. package/dist/secrets/protected-value-adapters.d.ts +2 -1
  157. package/dist/secrets/protected-value-adapters.d.ts.map +1 -1
  158. package/dist/secrets/protected-value-adapters.js +80 -1
  159. package/dist/secrets/request-output.d.ts +11 -0
  160. package/dist/secrets/request-output.d.ts.map +1 -0
  161. package/dist/secrets/request-output.js +75 -0
  162. package/dist/secrets/types.d.ts +15 -9
  163. package/dist/secrets/types.d.ts.map +1 -1
  164. package/dist/secrets/types.js +3 -0
  165. package/dist/session-event-exporter.d.ts +36 -0
  166. package/dist/session-event-exporter.d.ts.map +1 -0
  167. package/dist/session-event-exporter.js +428 -0
  168. package/dist/session.d.ts +16 -7
  169. package/dist/session.d.ts.map +1 -1
  170. package/dist/session.js +150 -23
  171. package/dist/sessions-backend.d.ts +354 -0
  172. package/dist/sessions-backend.d.ts.map +1 -0
  173. package/dist/sessions-backend.js +126 -0
  174. package/dist/solver/browser-launcher.d.ts +1 -1
  175. package/dist/solver/browser-launcher.d.ts.map +1 -1
  176. package/dist/solver/browser-launcher.js +39 -13
  177. package/dist/solver/captcha-solver.d.ts.map +1 -1
  178. package/dist/solver/captcha-solver.js +8 -1
  179. package/dist/solver/types.d.ts +1 -0
  180. package/dist/solver/types.d.ts.map +1 -1
  181. package/dist/workflow-session-completion.d.ts +33 -0
  182. package/dist/workflow-session-completion.d.ts.map +1 -0
  183. package/dist/workflow-session-completion.js +156 -0
  184. package/package.json +9 -1
  185. package/dist/commands/create-intent.d.ts +0 -6
  186. package/dist/commands/create-intent.d.ts.map +0 -1
  187. package/dist/commands/create-intent.js +0 -75
  188. package/dist/commands/poll-intent.d.ts +0 -6
  189. package/dist/commands/poll-intent.d.ts.map +0 -1
  190. package/dist/commands/poll-intent.js +0 -57
@@ -0,0 +1,115 @@
1
+ import { appendRunEvent, recordStepSnapshot, } from './run-store.js';
2
+ function buildSnapshotPayload(session, options) {
3
+ const runtime = session.runtime;
4
+ const currentPageRef = options.pageRef ?? runtime?.currentPageRef;
5
+ const currentPage = currentPageRef ? runtime?.pages?.[currentPageRef] : undefined;
6
+ const fallbackUrl = options.url ?? currentPage?.url ?? 'unknown';
7
+ const fallbackTitle = options.title ?? currentPage?.title;
8
+ const runtimePages = Object.values(runtime?.pages ?? {});
9
+ const tabs = runtimePages.map((page) => ({
10
+ pageRef: page.pageRef,
11
+ url: page.pageRef === currentPageRef
12
+ ? options.url ?? page.url ?? 'unknown'
13
+ : page.url ?? 'unknown',
14
+ ...(page.pageRef === currentPageRef
15
+ ? { title: options.title ?? page.title }
16
+ : page.title
17
+ ? { title: page.title }
18
+ : {}),
19
+ active: page.pageRef === currentPageRef,
20
+ scopeEpoch: page.scopeEpoch,
21
+ }));
22
+ if (tabs.length === 0) {
23
+ tabs.push({
24
+ ...(currentPageRef ? { pageRef: currentPageRef } : {}),
25
+ url: fallbackUrl,
26
+ ...(fallbackTitle ? { title: fallbackTitle } : {}),
27
+ active: true,
28
+ ...(currentPage?.scopeEpoch !== undefined ? { scopeEpoch: currentPage.scopeEpoch } : {}),
29
+ });
30
+ }
31
+ const protectedExposure = currentPageRef && runtime?.protectedExposureByPage
32
+ ? runtime.protectedExposureByPage[currentPageRef]
33
+ : undefined;
34
+ return {
35
+ phase: options.phase,
36
+ ...(currentPageRef ? { pageRef: currentPageRef } : {}),
37
+ url: fallbackUrl,
38
+ ...(fallbackTitle ? { title: fallbackTitle } : {}),
39
+ tabs,
40
+ runtimeSummary: {
41
+ currentPageRef: runtime?.currentPageRef,
42
+ pageCount: Object.keys(runtime?.pages ?? {}).length,
43
+ surfaceCount: Object.keys(runtime?.surfaces ?? {}).length,
44
+ targetCount: Object.keys(runtime?.targets ?? {}).length,
45
+ fillableFormCount: Object.keys(runtime?.fillableForms ?? {}).length,
46
+ secretRequestCount: Object.keys(runtime?.secretRequestSnapshots ?? {}).length,
47
+ protectedPageCount: Object.keys(runtime?.protectedExposureByPage ?? {}).length,
48
+ },
49
+ protectionState: protectedExposure
50
+ ? {
51
+ protectedExposureActive: true,
52
+ pageRef: protectedExposure.pageRef,
53
+ fillRef: protectedExposure.fillRef,
54
+ requestId: protectedExposure.requestId,
55
+ reason: protectedExposure.reason,
56
+ }
57
+ : {
58
+ protectedExposureActive: false,
59
+ ...(currentPageRef ? { pageRef: currentPageRef } : {}),
60
+ },
61
+ ...(options.artifactRefs ? { artifactRefs: { ...options.artifactRefs } } : {}),
62
+ };
63
+ }
64
+ export function captureStepSnapshotBestEffort(params) {
65
+ if (!params.step?.runId || !params.step.stepId) {
66
+ return undefined;
67
+ }
68
+ try {
69
+ const snapshot = recordStepSnapshot({
70
+ runId: params.step.runId,
71
+ stepId: params.step.stepId,
72
+ ...buildSnapshotPayload(params.session, {
73
+ phase: params.phase,
74
+ pageRef: params.pageRef,
75
+ url: params.url,
76
+ title: params.title,
77
+ artifactRefs: params.artifactRefs,
78
+ }),
79
+ });
80
+ return snapshot?.snapshotId;
81
+ }
82
+ catch {
83
+ return undefined;
84
+ }
85
+ }
86
+ export function appendStepEventBestEffort(params) {
87
+ if (!params.step?.runId || !params.step.stepId) {
88
+ return undefined;
89
+ }
90
+ try {
91
+ const event = appendRunEvent({
92
+ runId: params.step.runId,
93
+ stepId: params.step.stepId,
94
+ source: params.source,
95
+ name: params.name,
96
+ attributes: params.attributes,
97
+ });
98
+ return event?.eventId;
99
+ }
100
+ catch {
101
+ return undefined;
102
+ }
103
+ }
104
+ export function appendCommandLifecycleEventBestEffort(params) {
105
+ const command = params.step?.command;
106
+ return appendStepEventBestEffort({
107
+ step: params.step,
108
+ source: 'runtime',
109
+ name: `command.${params.phase}`,
110
+ attributes: {
111
+ ...(command ? { command } : {}),
112
+ ...(params.attributes ?? {}),
113
+ },
114
+ });
115
+ }
@@ -0,0 +1,274 @@
1
+ export declare const DEFAULT_RUN_RETENTION_DAYS = 7;
2
+ export type RunStatus = 'running' | 'completed' | 'failed' | 'aborted';
3
+ export type RunTerminalStatus = Extract<RunStatus, 'completed' | 'failed' | 'aborted'>;
4
+ export type StepCommand = 'launch' | 'start-session' | 'end-session' | 'navigate' | 'observe' | 'act' | 'extract' | 'screenshot' | 'get-secrets-catalog' | 'request-secret' | 'poll-secret' | 'fill-secret' | 'solve-captcha' | 'status' | 'close';
5
+ export type RunRecord = {
6
+ runId: string;
7
+ sessionId: string;
8
+ startedAt: string;
9
+ endedAt?: string;
10
+ status: RunStatus;
11
+ source: 'cli' | 'test' | 'replay';
12
+ entryCommand?: string;
13
+ displayName?: string;
14
+ profile?: string;
15
+ runtimeVersion: string;
16
+ cliVersion: string;
17
+ cwd?: string;
18
+ hostHints?: string[];
19
+ traceContext: {
20
+ traceId: string;
21
+ rootSpanId: string;
22
+ propagationMode: 'single-trace-across-cli-steps' | 'root-span-per-command-with-links';
23
+ };
24
+ resource: {
25
+ serviceName: string;
26
+ serviceVersion: string;
27
+ deploymentEnvironment?: string;
28
+ serviceInstanceId?: string;
29
+ telemetrySdkLanguage?: string;
30
+ };
31
+ stepIds: string[];
32
+ finalOutcome?: {
33
+ success: boolean;
34
+ outcomeType?: string;
35
+ message?: string;
36
+ reason?: string;
37
+ };
38
+ protectedRun: boolean;
39
+ ingestState: 'local_only' | 'queued' | 'exported' | 'export_failed';
40
+ };
41
+ export type PruneRunsResult = {
42
+ deletedRunIds: string[];
43
+ keptRunIds: string[];
44
+ failedRunIds: Array<{
45
+ runId: string;
46
+ reason: string;
47
+ }>;
48
+ };
49
+ export type StepRecord = {
50
+ stepId: string;
51
+ runId: string;
52
+ ordinal: number;
53
+ command: StepCommand;
54
+ startedAt: string;
55
+ endedAt?: string;
56
+ otel: {
57
+ traceId: string;
58
+ spanId: string;
59
+ parentSpanId?: string;
60
+ linkedSpanIds?: string[];
61
+ spanName: string;
62
+ spanKind: 'internal';
63
+ statusCode: 'unset' | 'ok' | 'error';
64
+ statusMessage?: string;
65
+ instrumentationScope: string;
66
+ };
67
+ input: Record<string, unknown>;
68
+ outputSummary?: {
69
+ success: boolean;
70
+ outcomeType?: string;
71
+ message?: string;
72
+ reason?: string;
73
+ };
74
+ refs?: {
75
+ pageRef?: string;
76
+ targetRef?: string;
77
+ surfaceRef?: string;
78
+ fillRef?: string;
79
+ requestId?: string;
80
+ };
81
+ beforeSnapshotId?: string;
82
+ afterSnapshotId?: string;
83
+ eventIds: string[];
84
+ childSpanIds?: string[];
85
+ childSpans?: StepChildSpanRecord[];
86
+ artifactManifestId?: string;
87
+ protectedStep: boolean;
88
+ };
89
+ export type StepChildSpanRecord = {
90
+ spanId: string;
91
+ parentSpanId: string;
92
+ name: string;
93
+ kind: 'client';
94
+ startedAt: string;
95
+ endedAt: string;
96
+ statusCode: 'unset' | 'ok' | 'error';
97
+ statusMessage?: string;
98
+ attributes: Record<string, unknown>;
99
+ };
100
+ export type ArtifactManifest = {
101
+ artifactManifestId: string;
102
+ stepId: string;
103
+ screenshots: Array<{
104
+ path: string;
105
+ purpose: string;
106
+ storageBucket?: string;
107
+ storagePath?: string;
108
+ }>;
109
+ htmlSnapshots: Array<{
110
+ path: string;
111
+ purpose: string;
112
+ storageBucket?: string;
113
+ storagePath?: string;
114
+ }>;
115
+ traces: Array<{
116
+ path: string;
117
+ purpose: string;
118
+ storageBucket?: string;
119
+ storagePath?: string;
120
+ }>;
121
+ logs: Array<{
122
+ path: string;
123
+ purpose: string;
124
+ storageBucket?: string;
125
+ storagePath?: string;
126
+ }>;
127
+ suppressed: Array<{
128
+ kind: 'screenshot' | 'html' | 'trace' | 'log';
129
+ reason: 'protected_exposure_active' | 'sensitive_scope' | 'policy_blocked' | 'capture_failed';
130
+ }>;
131
+ };
132
+ export type BrowserStateSnapshotPhase = 'before' | 'after' | 'point-in-time';
133
+ export type BrowserStateSnapshot = {
134
+ snapshotId: string;
135
+ runId: string;
136
+ stepId: string;
137
+ phase: BrowserStateSnapshotPhase;
138
+ capturedAt: string;
139
+ pageRef?: string;
140
+ url: string;
141
+ title?: string;
142
+ tabs: Array<{
143
+ pageRef?: string;
144
+ url: string;
145
+ title?: string;
146
+ active: boolean;
147
+ scopeEpoch?: number;
148
+ }>;
149
+ runtimeSummary: {
150
+ currentPageRef?: string;
151
+ pageCount: number;
152
+ surfaceCount: number;
153
+ targetCount: number;
154
+ fillableFormCount: number;
155
+ secretRequestCount: number;
156
+ protectedPageCount: number;
157
+ };
158
+ protectionState?: {
159
+ protectedExposureActive: boolean;
160
+ pageRef?: string;
161
+ fillRef?: string;
162
+ requestId?: string;
163
+ reason?: string;
164
+ };
165
+ artifactRefs?: {
166
+ screenshotPath?: string;
167
+ htmlPath?: string;
168
+ tracePath?: string;
169
+ logPath?: string;
170
+ };
171
+ };
172
+ export type RunEventRecord = {
173
+ eventId: string;
174
+ runId: string;
175
+ stepId: string;
176
+ traceId: string;
177
+ spanId: string;
178
+ emittedAt: string;
179
+ source: 'browser' | 'runtime' | 'protected-flow';
180
+ name: string;
181
+ attributes: Record<string, unknown>;
182
+ };
183
+ export declare function createCliRunRecord(options: {
184
+ sessionId: string;
185
+ entryCommand: string;
186
+ displayName?: string;
187
+ profile?: string;
188
+ url?: string;
189
+ now?: Date;
190
+ cwd?: string;
191
+ protectedRun?: boolean;
192
+ }): RunRecord;
193
+ export declare function saveRunRecord(record: RunRecord): void;
194
+ export declare function startCliRun(options: {
195
+ sessionId: string;
196
+ entryCommand: string;
197
+ displayName?: string;
198
+ profile?: string;
199
+ url?: string;
200
+ now?: Date;
201
+ cwd?: string;
202
+ protectedRun?: boolean;
203
+ }): RunRecord;
204
+ export declare function loadRunRecord(runId: string): RunRecord | null;
205
+ export declare function loadStepRecord(runId: string, stepId: string): StepRecord | null;
206
+ export declare function saveStepRecord(record: StepRecord): void;
207
+ export declare function loadArtifactManifest(runId: string, artifactManifestId: string): ArtifactManifest | null;
208
+ export declare function saveArtifactManifest(runId: string, manifest: ArtifactManifest): void;
209
+ export declare function loadBrowserStateSnapshot(runId: string, snapshotId: string): BrowserStateSnapshot | null;
210
+ export declare function recordStepSnapshot(options: {
211
+ runId: string;
212
+ stepId: string;
213
+ phase: BrowserStateSnapshotPhase;
214
+ capturedAt?: string;
215
+ pageRef?: string;
216
+ url: string;
217
+ title?: string;
218
+ tabs: BrowserStateSnapshot['tabs'];
219
+ runtimeSummary: BrowserStateSnapshot['runtimeSummary'];
220
+ protectionState?: BrowserStateSnapshot['protectionState'];
221
+ artifactRefs?: BrowserStateSnapshot['artifactRefs'];
222
+ }): BrowserStateSnapshot | null;
223
+ export declare function loadRunEventRecord(runId: string, eventId: string): RunEventRecord | null;
224
+ export declare function listRunEventRecordsForStep(runId: string, stepId?: string): RunEventRecord[];
225
+ export declare function appendRunEvent(options: {
226
+ runId: string;
227
+ stepId: string;
228
+ source: RunEventRecord['source'];
229
+ name: string;
230
+ attributes?: Record<string, unknown>;
231
+ emittedAt?: string;
232
+ }): RunEventRecord | null;
233
+ export declare function startRunStep(options: {
234
+ runId: string;
235
+ command: StepCommand;
236
+ input?: Record<string, unknown>;
237
+ refs?: StepRecord['refs'];
238
+ protectedStep?: boolean;
239
+ now?: Date;
240
+ }): StepRecord | null;
241
+ export declare function finishRunStep(options: {
242
+ runId: string;
243
+ stepId: string;
244
+ success: boolean;
245
+ outcomeType?: string;
246
+ message?: string;
247
+ reason?: string;
248
+ now?: Date;
249
+ artifactManifestId?: string;
250
+ }): StepRecord | null;
251
+ export declare function appendStepChildSpan(options: {
252
+ runId: string;
253
+ stepId: string;
254
+ name: string;
255
+ kind?: StepChildSpanRecord['kind'];
256
+ startedAt: string;
257
+ endedAt: string;
258
+ statusCode: StepChildSpanRecord['statusCode'];
259
+ statusMessage?: string;
260
+ attributes?: Record<string, unknown>;
261
+ }): StepChildSpanRecord | null;
262
+ export declare function finishRunRecord(runId: string, options: {
263
+ status: RunTerminalStatus;
264
+ now?: Date;
265
+ finalOutcome?: RunRecord['finalOutcome'];
266
+ }): RunRecord | null;
267
+ export declare function setRunIngestState(runId: string, ingestState: RunRecord['ingestState']): RunRecord | null;
268
+ export declare function pruneLocalRuns(options?: {
269
+ now?: Date;
270
+ retentionDays?: number;
271
+ activeRunId?: string;
272
+ }): PruneRunsResult;
273
+ export declare function deleteLocalRun(runId: string): boolean;
274
+ //# sourceMappingURL=run-store.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run-store.d.ts","sourceRoot":"","sources":["../src/run-store.ts"],"names":[],"mappings":"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"}