@roll-agent/browser-use-agent 0.26.1 → 0.27.1

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 (39) hide show
  1. package/SKILL.md +36 -8
  2. package/dist/browser-observation.d.ts +1 -0
  3. package/dist/execution-visual-feedback.d.ts +61 -0
  4. package/dist/goal/compact-request.d.ts +5 -0
  5. package/dist/goal/contracts.d.ts +1732 -0
  6. package/dist/goal/decisions.d.ts +55 -0
  7. package/dist/goal/dependency-observation.d.ts +7 -0
  8. package/dist/goal/execution-context.d.ts +593 -0
  9. package/dist/goal/form-context.d.ts +639 -0
  10. package/dist/goal/form-handoff.d.ts +152 -0
  11. package/dist/goal/form-loop-progress.d.ts +9 -0
  12. package/dist/goal/form-policy.d.ts +13 -0
  13. package/dist/goal/host.d.ts +6 -0
  14. package/dist/goal/interaction-feedback.d.ts +82 -0
  15. package/dist/goal/loop.d.ts +12 -0
  16. package/dist/goal/observation-retry.d.ts +3 -0
  17. package/dist/goal/observation.d.ts +981 -0
  18. package/dist/goal/operate-handoff.d.ts +3 -0
  19. package/dist/goal/picker-observation.d.ts +56 -0
  20. package/dist/goal/picker-state.d.ts +96 -0
  21. package/dist/goal/reachability.d.ts +2 -0
  22. package/dist/goal/task-evidence.d.ts +33 -0
  23. package/dist/goal/task-freshness.d.ts +86 -0
  24. package/dist/goal/task-loop.d.ts +5 -0
  25. package/dist/goal/task-observation.d.ts +5 -0
  26. package/dist/goal/task-policy.d.ts +174 -0
  27. package/dist/goal/task-progress-policy.d.ts +25 -0
  28. package/dist/goal/task-progress.d.ts +353 -0
  29. package/dist/goal/task-sources.d.ts +13 -0
  30. package/dist/index.js +1 -1
  31. package/dist/native-visual-activity-session.d.ts +38 -1
  32. package/dist/tools/browser-operate.d.ts +252 -0
  33. package/dist/tools/zhipin-diagnose-browser-state.d.ts +4 -4
  34. package/dist/tools/zhipin-generate-reply-preview.d.ts +1 -1
  35. package/dist/tools/zhipin-get-candidate-info.d.ts +1 -1
  36. package/dist/tools/zhipin-scroll-view.d.ts +5 -5
  37. package/package.json +3 -3
  38. package/references/browser-exploration.md +52 -0
  39. package/references/env.yaml +11 -0
@@ -0,0 +1,55 @@
1
+ import { z } from "zod";
2
+ import type { AgentContext } from "@roll-agent/sdk";
3
+ export declare const ChoiceQuestionSchema: z.ZodObject<{
4
+ type: z.ZodLiteral<"choice">;
5
+ instructions: z.ZodString;
6
+ criteria: z.ZodRecord<z.ZodString, z.ZodString>;
7
+ }, "strip", z.ZodTypeAny, {
8
+ type: "choice";
9
+ instructions: string;
10
+ criteria: Record<string, string>;
11
+ }, {
12
+ type: "choice";
13
+ instructions: string;
14
+ criteria: Record<string, string>;
15
+ }>;
16
+ export type ChoiceQuestion = z.infer<typeof ChoiceQuestionSchema>;
17
+ export type DecisionRequest = {
18
+ state: unknown;
19
+ /** Host-only observation refs needed by adapters, retained through preview compaction. */
20
+ observationRefs?: string[];
21
+ questions: Record<string, ChoiceQuestion>;
22
+ /** Host-only dispatch metadata; not part of the provider HTTP body. */
23
+ routing?: {
24
+ head: string;
25
+ targets: Record<string, string>;
26
+ };
27
+ /** Additional independent heads and the conditional evidence answers actually consumed. */
28
+ evidenceRouting?: Record<string, Record<string, string[]>>;
29
+ };
30
+ export type DecisionResult = {
31
+ choices: Record<string, string>;
32
+ requestedModel: string;
33
+ resolvedModel: string;
34
+ provider: string;
35
+ elapsedMs: number;
36
+ attempts?: number;
37
+ distributions?: Record<string, {
38
+ probabilities: Record<string, number>;
39
+ confidence?: number;
40
+ }>;
41
+ usage?: {
42
+ inputTokens?: number;
43
+ outputTokens?: number;
44
+ cost?: number;
45
+ };
46
+ };
47
+ export type DecisionProvider = (request: DecisionRequest, signal: AbortSignal) => Promise<DecisionResult>;
48
+ export declare function validateChoices(request: DecisionRequest, choices: Record<string, string>): void;
49
+ export declare function createJevProvider(options: {
50
+ apiKey: string;
51
+ model: string;
52
+ fetch?: typeof fetch;
53
+ pause?: (ms: number, signal: AbortSignal) => Promise<void>;
54
+ }): DecisionProvider;
55
+ export declare function createSamplingProvider(ctx: AgentContext): DecisionProvider;
@@ -0,0 +1,7 @@
1
+ import type { NativeCdpController } from "@roll-agent/browser";
2
+ import { inspectGoalControls } from "./observation.ts";
3
+ import type { GoalSnapshot } from "./observation.ts";
4
+ /** Retain handles only for read-only dependency inspection, never AX resurrection.
5
+ * A replaced/disconnected node, document change or missing modal fails closed.
6
+ */
7
+ export declare function createDependencyObserver(controller: Parameters<typeof inspectGoalControls>[0] & Pick<NativeCdpController, "getFrameTree">, origins: readonly string[], signal: AbortSignal): (snapshot: GoalSnapshot, identities?: readonly string[]) => Promise<GoalSnapshot>;
@@ -0,0 +1,593 @@
1
+ import { z } from "zod";
2
+ import type { ReadTask, TaskProgress } from "./task-progress.ts";
3
+ import type { FormControl, FormState, FormTask } from "./form-context.ts";
4
+ import type { GoalSnapshot } from "./observation.ts";
5
+ export declare const ExecutionSummarySchema: z.ZodObject<{
6
+ invocationId: z.ZodString;
7
+ revision: z.ZodNumber;
8
+ documentChanged: z.ZodBoolean;
9
+ latestObservation: z.ZodOptional<z.ZodString>;
10
+ focus: z.ZodOptional<z.ZodString>;
11
+ changes: z.ZodArray<z.ZodObject<{
12
+ observationId: z.ZodString;
13
+ identity: z.ZodString;
14
+ field: z.ZodString;
15
+ kind: z.ZodEnum<["changed", "became_unknown", "appeared"]>;
16
+ before: z.ZodOptional<z.ZodString>;
17
+ after: z.ZodOptional<z.ZodString>;
18
+ afterAction: z.ZodOptional<z.ZodString>;
19
+ scope: z.ZodEnum<["delegated", "preserved", "unassigned"]>;
20
+ }, "strip", z.ZodTypeAny, {
21
+ scope: "delegated" | "preserved" | "unassigned";
22
+ kind: "changed" | "became_unknown" | "appeared";
23
+ field: string;
24
+ observationId: string;
25
+ identity: string;
26
+ before?: string | undefined;
27
+ after?: string | undefined;
28
+ afterAction?: string | undefined;
29
+ }, {
30
+ scope: "delegated" | "preserved" | "unassigned";
31
+ kind: "changed" | "became_unknown" | "appeared";
32
+ field: string;
33
+ observationId: string;
34
+ identity: string;
35
+ before?: string | undefined;
36
+ after?: string | undefined;
37
+ afterAction?: string | undefined;
38
+ }>, "many">;
39
+ lastAction: z.ZodOptional<z.ZodObject<{
40
+ operation: z.ZodString;
41
+ target: z.ZodOptional<z.ZodString>;
42
+ executed: z.ZodBoolean;
43
+ error: z.ZodOptional<z.ZodString>;
44
+ }, "strip", z.ZodTypeAny, {
45
+ executed: boolean;
46
+ operation: string;
47
+ target?: string | undefined;
48
+ error?: string | undefined;
49
+ }, {
50
+ executed: boolean;
51
+ operation: string;
52
+ target?: string | undefined;
53
+ error?: string | undefined;
54
+ }>>;
55
+ form: z.ZodOptional<z.ZodObject<{
56
+ mode: z.ZodEnum<["create", "edit"]>;
57
+ stopAt: z.ZodEnum<["applied", "current-view"]>;
58
+ fields: z.ZodArray<z.ZodObject<{
59
+ id: z.ZodString;
60
+ name: z.ZodString;
61
+ intent: z.ZodEnum<["set", "preserve"]>;
62
+ comparison: z.ZodEnum<["auto", "literal", "semantic"]>;
63
+ expected: z.ZodOptional<z.ZodString>;
64
+ binding: z.ZodOptional<z.ZodObject<{
65
+ identity: z.ZodString;
66
+ readOnlyDisplay: z.ZodOptional<z.ZodLiteral<true>>;
67
+ key: z.ZodOptional<z.ZodString>;
68
+ name: z.ZodString;
69
+ role: z.ZodString;
70
+ fieldLabel: z.ZodOptional<z.ZodString>;
71
+ }, "strip", z.ZodTypeAny, {
72
+ role: string;
73
+ name: string;
74
+ identity: string;
75
+ key?: string | undefined;
76
+ fieldLabel?: string | undefined;
77
+ readOnlyDisplay?: true | undefined;
78
+ }, {
79
+ role: string;
80
+ name: string;
81
+ identity: string;
82
+ key?: string | undefined;
83
+ fieldLabel?: string | undefined;
84
+ readOnlyDisplay?: true | undefined;
85
+ }>>;
86
+ entry: z.ZodOptional<z.ZodObject<{
87
+ identity: z.ZodString;
88
+ readOnlyDisplay: z.ZodOptional<z.ZodLiteral<true>>;
89
+ key: z.ZodOptional<z.ZodString>;
90
+ name: z.ZodString;
91
+ role: z.ZodString;
92
+ fieldLabel: z.ZodOptional<z.ZodString>;
93
+ }, "strip", z.ZodTypeAny, {
94
+ role: string;
95
+ name: string;
96
+ identity: string;
97
+ key?: string | undefined;
98
+ fieldLabel?: string | undefined;
99
+ readOnlyDisplay?: true | undefined;
100
+ }, {
101
+ role: string;
102
+ name: string;
103
+ identity: string;
104
+ key?: string | undefined;
105
+ fieldLabel?: string | undefined;
106
+ readOnlyDisplay?: true | undefined;
107
+ }>>;
108
+ entryProof: z.ZodOptional<z.ZodObject<{
109
+ fingerprint: z.ZodString;
110
+ status: z.ZodEnum<["satisfied", "unsatisfied", "unknown"]>;
111
+ }, "strip", z.ZodTypeAny, {
112
+ status: "unknown" | "satisfied" | "unsatisfied";
113
+ fingerprint: string;
114
+ }, {
115
+ status: "unknown" | "satisfied" | "unsatisfied";
116
+ fingerprint: string;
117
+ }>>;
118
+ initial: z.ZodOptional<z.ZodString>;
119
+ current: z.ZodOptional<z.ZodString>;
120
+ status: z.ZodEnum<["unknown", "unsatisfied", "satisfied"]>;
121
+ reason: z.ZodString;
122
+ fingerprint: z.ZodOptional<z.ZodString>;
123
+ target: z.ZodOptional<z.ZodObject<{
124
+ key: z.ZodString;
125
+ label: z.ZodString;
126
+ optionsKey: z.ZodString;
127
+ }, "strip", z.ZodTypeAny, {
128
+ label: string;
129
+ key: string;
130
+ optionsKey: string;
131
+ }, {
132
+ label: string;
133
+ key: string;
134
+ optionsKey: string;
135
+ }>>;
136
+ semanticProof: z.ZodOptional<z.ZodObject<{
137
+ fingerprint: z.ZodString;
138
+ status: z.ZodEnum<["satisfied", "unsatisfied"]>;
139
+ }, "strip", z.ZodTypeAny, {
140
+ status: "satisfied" | "unsatisfied";
141
+ fingerprint: string;
142
+ }, {
143
+ status: "satisfied" | "unsatisfied";
144
+ fingerprint: string;
145
+ }>>;
146
+ }, "strip", z.ZodTypeAny, {
147
+ status: "unknown" | "satisfied" | "unsatisfied";
148
+ id: string;
149
+ name: string;
150
+ reason: string;
151
+ intent: "set" | "preserve";
152
+ comparison: "auto" | "literal" | "semantic";
153
+ expected?: string | undefined;
154
+ target?: {
155
+ label: string;
156
+ key: string;
157
+ optionsKey: string;
158
+ } | undefined;
159
+ fingerprint?: string | undefined;
160
+ binding?: {
161
+ role: string;
162
+ name: string;
163
+ identity: string;
164
+ key?: string | undefined;
165
+ fieldLabel?: string | undefined;
166
+ readOnlyDisplay?: true | undefined;
167
+ } | undefined;
168
+ entry?: {
169
+ role: string;
170
+ name: string;
171
+ identity: string;
172
+ key?: string | undefined;
173
+ fieldLabel?: string | undefined;
174
+ readOnlyDisplay?: true | undefined;
175
+ } | undefined;
176
+ entryProof?: {
177
+ status: "unknown" | "satisfied" | "unsatisfied";
178
+ fingerprint: string;
179
+ } | undefined;
180
+ initial?: string | undefined;
181
+ current?: string | undefined;
182
+ semanticProof?: {
183
+ status: "satisfied" | "unsatisfied";
184
+ fingerprint: string;
185
+ } | undefined;
186
+ }, {
187
+ status: "unknown" | "satisfied" | "unsatisfied";
188
+ id: string;
189
+ name: string;
190
+ reason: string;
191
+ intent: "set" | "preserve";
192
+ comparison: "auto" | "literal" | "semantic";
193
+ expected?: string | undefined;
194
+ target?: {
195
+ label: string;
196
+ key: string;
197
+ optionsKey: string;
198
+ } | undefined;
199
+ fingerprint?: string | undefined;
200
+ binding?: {
201
+ role: string;
202
+ name: string;
203
+ identity: string;
204
+ key?: string | undefined;
205
+ fieldLabel?: string | undefined;
206
+ readOnlyDisplay?: true | undefined;
207
+ } | undefined;
208
+ entry?: {
209
+ role: string;
210
+ name: string;
211
+ identity: string;
212
+ key?: string | undefined;
213
+ fieldLabel?: string | undefined;
214
+ readOnlyDisplay?: true | undefined;
215
+ } | undefined;
216
+ entryProof?: {
217
+ status: "unknown" | "satisfied" | "unsatisfied";
218
+ fingerprint: string;
219
+ } | undefined;
220
+ initial?: string | undefined;
221
+ current?: string | undefined;
222
+ semanticProof?: {
223
+ status: "satisfied" | "unsatisfied";
224
+ fingerprint: string;
225
+ } | undefined;
226
+ }>, "many">;
227
+ focus: z.ZodOptional<z.ZodString>;
228
+ panel: z.ZodOptional<z.ZodObject<{
229
+ key: z.ZodString;
230
+ status: z.ZodEnum<["pending", "accepted", "rejected"]>;
231
+ queryIdentity: z.ZodOptional<z.ZodString>;
232
+ }, "strip", z.ZodTypeAny, {
233
+ status: "pending" | "rejected" | "accepted";
234
+ key: string;
235
+ queryIdentity?: string | undefined;
236
+ }, {
237
+ status: "pending" | "rejected" | "accepted";
238
+ key: string;
239
+ queryIdentity?: string | undefined;
240
+ }>>;
241
+ }, "strip", z.ZodTypeAny, {
242
+ mode: "create" | "edit";
243
+ stopAt: "applied" | "current-view";
244
+ fields: {
245
+ status: "unknown" | "satisfied" | "unsatisfied";
246
+ id: string;
247
+ name: string;
248
+ reason: string;
249
+ intent: "set" | "preserve";
250
+ comparison: "auto" | "literal" | "semantic";
251
+ expected?: string | undefined;
252
+ target?: {
253
+ label: string;
254
+ key: string;
255
+ optionsKey: string;
256
+ } | undefined;
257
+ fingerprint?: string | undefined;
258
+ binding?: {
259
+ role: string;
260
+ name: string;
261
+ identity: string;
262
+ key?: string | undefined;
263
+ fieldLabel?: string | undefined;
264
+ readOnlyDisplay?: true | undefined;
265
+ } | undefined;
266
+ entry?: {
267
+ role: string;
268
+ name: string;
269
+ identity: string;
270
+ key?: string | undefined;
271
+ fieldLabel?: string | undefined;
272
+ readOnlyDisplay?: true | undefined;
273
+ } | undefined;
274
+ entryProof?: {
275
+ status: "unknown" | "satisfied" | "unsatisfied";
276
+ fingerprint: string;
277
+ } | undefined;
278
+ initial?: string | undefined;
279
+ current?: string | undefined;
280
+ semanticProof?: {
281
+ status: "satisfied" | "unsatisfied";
282
+ fingerprint: string;
283
+ } | undefined;
284
+ }[];
285
+ panel?: {
286
+ status: "pending" | "rejected" | "accepted";
287
+ key: string;
288
+ queryIdentity?: string | undefined;
289
+ } | undefined;
290
+ focus?: string | undefined;
291
+ }, {
292
+ mode: "create" | "edit";
293
+ stopAt: "applied" | "current-view";
294
+ fields: {
295
+ status: "unknown" | "satisfied" | "unsatisfied";
296
+ id: string;
297
+ name: string;
298
+ reason: string;
299
+ intent: "set" | "preserve";
300
+ comparison: "auto" | "literal" | "semantic";
301
+ expected?: string | undefined;
302
+ target?: {
303
+ label: string;
304
+ key: string;
305
+ optionsKey: string;
306
+ } | undefined;
307
+ fingerprint?: string | undefined;
308
+ binding?: {
309
+ role: string;
310
+ name: string;
311
+ identity: string;
312
+ key?: string | undefined;
313
+ fieldLabel?: string | undefined;
314
+ readOnlyDisplay?: true | undefined;
315
+ } | undefined;
316
+ entry?: {
317
+ role: string;
318
+ name: string;
319
+ identity: string;
320
+ key?: string | undefined;
321
+ fieldLabel?: string | undefined;
322
+ readOnlyDisplay?: true | undefined;
323
+ } | undefined;
324
+ entryProof?: {
325
+ status: "unknown" | "satisfied" | "unsatisfied";
326
+ fingerprint: string;
327
+ } | undefined;
328
+ initial?: string | undefined;
329
+ current?: string | undefined;
330
+ semanticProof?: {
331
+ status: "satisfied" | "unsatisfied";
332
+ fingerprint: string;
333
+ } | undefined;
334
+ }[];
335
+ panel?: {
336
+ status: "pending" | "rejected" | "accepted";
337
+ key: string;
338
+ queryIdentity?: string | undefined;
339
+ } | undefined;
340
+ focus?: string | undefined;
341
+ }>>;
342
+ }, "strip", z.ZodTypeAny, {
343
+ changes: {
344
+ scope: "delegated" | "preserved" | "unassigned";
345
+ kind: "changed" | "became_unknown" | "appeared";
346
+ field: string;
347
+ observationId: string;
348
+ identity: string;
349
+ before?: string | undefined;
350
+ after?: string | undefined;
351
+ afterAction?: string | undefined;
352
+ }[];
353
+ revision: number;
354
+ invocationId: string;
355
+ documentChanged: boolean;
356
+ form?: {
357
+ mode: "create" | "edit";
358
+ stopAt: "applied" | "current-view";
359
+ fields: {
360
+ status: "unknown" | "satisfied" | "unsatisfied";
361
+ id: string;
362
+ name: string;
363
+ reason: string;
364
+ intent: "set" | "preserve";
365
+ comparison: "auto" | "literal" | "semantic";
366
+ expected?: string | undefined;
367
+ target?: {
368
+ label: string;
369
+ key: string;
370
+ optionsKey: string;
371
+ } | undefined;
372
+ fingerprint?: string | undefined;
373
+ binding?: {
374
+ role: string;
375
+ name: string;
376
+ identity: string;
377
+ key?: string | undefined;
378
+ fieldLabel?: string | undefined;
379
+ readOnlyDisplay?: true | undefined;
380
+ } | undefined;
381
+ entry?: {
382
+ role: string;
383
+ name: string;
384
+ identity: string;
385
+ key?: string | undefined;
386
+ fieldLabel?: string | undefined;
387
+ readOnlyDisplay?: true | undefined;
388
+ } | undefined;
389
+ entryProof?: {
390
+ status: "unknown" | "satisfied" | "unsatisfied";
391
+ fingerprint: string;
392
+ } | undefined;
393
+ initial?: string | undefined;
394
+ current?: string | undefined;
395
+ semanticProof?: {
396
+ status: "satisfied" | "unsatisfied";
397
+ fingerprint: string;
398
+ } | undefined;
399
+ }[];
400
+ panel?: {
401
+ status: "pending" | "rejected" | "accepted";
402
+ key: string;
403
+ queryIdentity?: string | undefined;
404
+ } | undefined;
405
+ focus?: string | undefined;
406
+ } | undefined;
407
+ focus?: string | undefined;
408
+ latestObservation?: string | undefined;
409
+ lastAction?: {
410
+ executed: boolean;
411
+ operation: string;
412
+ target?: string | undefined;
413
+ error?: string | undefined;
414
+ } | undefined;
415
+ }, {
416
+ changes: {
417
+ scope: "delegated" | "preserved" | "unassigned";
418
+ kind: "changed" | "became_unknown" | "appeared";
419
+ field: string;
420
+ observationId: string;
421
+ identity: string;
422
+ before?: string | undefined;
423
+ after?: string | undefined;
424
+ afterAction?: string | undefined;
425
+ }[];
426
+ revision: number;
427
+ invocationId: string;
428
+ documentChanged: boolean;
429
+ form?: {
430
+ mode: "create" | "edit";
431
+ stopAt: "applied" | "current-view";
432
+ fields: {
433
+ status: "unknown" | "satisfied" | "unsatisfied";
434
+ id: string;
435
+ name: string;
436
+ reason: string;
437
+ intent: "set" | "preserve";
438
+ comparison: "auto" | "literal" | "semantic";
439
+ expected?: string | undefined;
440
+ target?: {
441
+ label: string;
442
+ key: string;
443
+ optionsKey: string;
444
+ } | undefined;
445
+ fingerprint?: string | undefined;
446
+ binding?: {
447
+ role: string;
448
+ name: string;
449
+ identity: string;
450
+ key?: string | undefined;
451
+ fieldLabel?: string | undefined;
452
+ readOnlyDisplay?: true | undefined;
453
+ } | undefined;
454
+ entry?: {
455
+ role: string;
456
+ name: string;
457
+ identity: string;
458
+ key?: string | undefined;
459
+ fieldLabel?: string | undefined;
460
+ readOnlyDisplay?: true | undefined;
461
+ } | undefined;
462
+ entryProof?: {
463
+ status: "unknown" | "satisfied" | "unsatisfied";
464
+ fingerprint: string;
465
+ } | undefined;
466
+ initial?: string | undefined;
467
+ current?: string | undefined;
468
+ semanticProof?: {
469
+ status: "satisfied" | "unsatisfied";
470
+ fingerprint: string;
471
+ } | undefined;
472
+ }[];
473
+ panel?: {
474
+ status: "pending" | "rejected" | "accepted";
475
+ key: string;
476
+ queryIdentity?: string | undefined;
477
+ } | undefined;
478
+ focus?: string | undefined;
479
+ } | undefined;
480
+ focus?: string | undefined;
481
+ latestObservation?: string | undefined;
482
+ lastAction?: {
483
+ executed: boolean;
484
+ operation: string;
485
+ target?: string | undefined;
486
+ error?: string | undefined;
487
+ } | undefined;
488
+ }>;
489
+ export type ExecutionContext = {
490
+ summary: z.infer<typeof ExecutionSummarySchema>;
491
+ initial: Map<string, string>;
492
+ previous: Map<string, {
493
+ name: string;
494
+ value: string;
495
+ }>;
496
+ unknown: Set<string>;
497
+ ownership: Map<string, {
498
+ field: string;
499
+ intent: "set" | "preserve";
500
+ }>;
501
+ documentId?: string;
502
+ read?: TaskProgress;
503
+ form?: FormState;
504
+ };
505
+ export declare function createExecutionContext(input: {
506
+ readTask?: ReadTask | undefined;
507
+ formTask?: FormTask | undefined;
508
+ values: readonly {
509
+ name: string;
510
+ text: string;
511
+ }[];
512
+ }): ExecutionContext;
513
+ export declare function observeExecution(context: ExecutionContext, snapshot: GoalSnapshot, controls: readonly FormControl[], readTask?: ReadTask): boolean;
514
+ export declare function executionSummary(context: ExecutionContext): {
515
+ focus?: string | undefined;
516
+ form?: {
517
+ mode: "create" | "edit";
518
+ stopAt: "applied" | "current-view";
519
+ fields: {
520
+ status: "unknown" | "satisfied" | "unsatisfied";
521
+ id: string;
522
+ name: string;
523
+ reason: string;
524
+ intent: "set" | "preserve";
525
+ comparison: "auto" | "literal" | "semantic";
526
+ expected?: string | undefined;
527
+ target?: {
528
+ label: string;
529
+ key: string;
530
+ optionsKey: string;
531
+ } | undefined;
532
+ fingerprint?: string | undefined;
533
+ binding?: {
534
+ role: string;
535
+ name: string;
536
+ identity: string;
537
+ key?: string | undefined;
538
+ fieldLabel?: string | undefined;
539
+ readOnlyDisplay?: true | undefined;
540
+ } | undefined;
541
+ entry?: {
542
+ role: string;
543
+ name: string;
544
+ identity: string;
545
+ key?: string | undefined;
546
+ fieldLabel?: string | undefined;
547
+ readOnlyDisplay?: true | undefined;
548
+ } | undefined;
549
+ entryProof?: {
550
+ status: "unknown" | "satisfied" | "unsatisfied";
551
+ fingerprint: string;
552
+ } | undefined;
553
+ initial?: string | undefined;
554
+ current?: string | undefined;
555
+ semanticProof?: {
556
+ status: "satisfied" | "unsatisfied";
557
+ fingerprint: string;
558
+ } | undefined;
559
+ }[];
560
+ panel?: {
561
+ status: "pending" | "rejected" | "accepted";
562
+ key: string;
563
+ queryIdentity?: string | undefined;
564
+ } | undefined;
565
+ focus?: string | undefined;
566
+ } | undefined;
567
+ changes: {
568
+ scope: "delegated" | "preserved" | "unassigned";
569
+ kind: "changed" | "became_unknown" | "appeared";
570
+ field: string;
571
+ observationId: string;
572
+ identity: string;
573
+ before?: string | undefined;
574
+ after?: string | undefined;
575
+ afterAction?: string | undefined;
576
+ }[];
577
+ revision: number;
578
+ invocationId: string;
579
+ documentChanged: boolean;
580
+ latestObservation?: string | undefined;
581
+ lastAction?: {
582
+ executed: boolean;
583
+ operation: string;
584
+ target?: string | undefined;
585
+ error?: string | undefined;
586
+ } | undefined;
587
+ };
588
+ export declare function recordExecutionAction(context: ExecutionContext, action: {
589
+ operation: string;
590
+ target?: string;
591
+ executed: boolean;
592
+ error?: string;
593
+ }, fieldId?: string): void;