@bilig/workbook 0.58.0 → 0.62.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +99 -53
- package/dist/check.d.ts +1 -1
- package/dist/check.js +3 -0
- package/dist/check.js.map +1 -1
- package/dist/describe.d.ts +8 -0
- package/dist/describe.js +10 -0
- package/dist/describe.js.map +1 -1
- package/dist/features.d.ts +108 -0
- package/dist/features.js +208 -0
- package/dist/features.js.map +1 -0
- package/dist/find.d.ts +41 -0
- package/dist/find.js +250 -5
- package/dist/find.js.map +1 -1
- package/dist/formula.d.ts +7 -0
- package/dist/formula.js +49 -6
- package/dist/formula.js.map +1 -1
- package/dist/guards.js +32 -0
- package/dist/guards.js.map +1 -1
- package/dist/index.d.ts +3 -0
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/input.d.ts +16 -0
- package/dist/input.js +119 -0
- package/dist/input.js.map +1 -1
- package/dist/model.d.ts +2 -1
- package/dist/model.js +25 -1
- package/dist/model.js.map +1 -1
- package/dist/plan-data.d.ts +13 -0
- package/dist/plan-data.js +212 -0
- package/dist/plan-data.js.map +1 -0
- package/dist/requirements.d.ts +30 -2
- package/dist/requirements.js +80 -1
- package/dist/requirements.js.map +1 -1
- package/dist/result.d.ts +6 -2
- package/dist/result.js +7 -0
- package/dist/result.js.map +1 -1
- package/dist/run.d.ts +5 -3
- package/dist/run.js +118 -65
- package/dist/run.js.map +1 -1
- package/dist/verify.d.ts +3 -2
- package/dist/verify.js +74 -3
- package/dist/verify.js.map +1 -1
- package/package.json +4 -4
package/dist/result.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { LiteralInput } from '@bilig/protocol';
|
|
2
|
+
import type { WorkbookFormulaLabel } from './formula.js';
|
|
2
3
|
import type { WorkbookRef } from './find.js';
|
|
3
4
|
import type { WorkbookActionInput } from './input.js';
|
|
4
5
|
import type { EngineOp } from './ops.js';
|
|
@@ -10,6 +11,7 @@ export type WorkbookCheckExpectation = {
|
|
|
10
11
|
readonly kind: 'formulaEquals';
|
|
11
12
|
readonly formula: string;
|
|
12
13
|
readonly inputs: readonly WorkbookRef[];
|
|
14
|
+
readonly labels: readonly WorkbookFormulaLabel[];
|
|
13
15
|
};
|
|
14
16
|
export interface WorkbookCheckResult {
|
|
15
17
|
readonly status: WorkbookCheckStatus;
|
|
@@ -40,8 +42,8 @@ export interface WorkbookRunUnverified {
|
|
|
40
42
|
readonly kind: WorkbookRunUnverifiedKind;
|
|
41
43
|
readonly message: string;
|
|
42
44
|
}
|
|
43
|
-
export type WorkbookRunErrorCode = 'action_not_found' | 'invalid_action_input' | 'find_failed' | 'checks_failed' | 'action_failed' | 'ref_not_in_refs' | 'duplicate_ref' | 'command_target_not_resolved' | 'formula_input_not_resolved' | 'invalid_formula' | 'change_target_not_resolved' | 'check_status_not_planned' | 'check_target_not_resolved' | 'check_ref_not_resolved' | 'check_expectation_input_not_resolved' | 'invalid_check_expectation_formula' | 'invalid_workbook_op' | 'op_target_mismatch' | 'missing_concrete_op' | 'missing_workbook_op' | 'apply_not_verified' | 'apply_mismatch' | 'apply_failed' | 'readback_failed' | 'readback_missing' | 'readback_unexpected' | 'value_mismatch' | 'formula_mismatch' | 'invalid_check_verification' | 'check_verification_failed' | 'check_failed' | 'check_not_verified' | 'runtime_rejected';
|
|
44
|
-
export declare const workbookRunErrorCodes: readonly ("
|
|
45
|
+
export type WorkbookRunErrorCode = 'action_not_found' | 'invalid_action_input' | 'find_failed' | 'checks_failed' | 'action_failed' | 'ref_not_in_refs' | 'duplicate_ref' | 'command_target_not_resolved' | 'formula_input_not_resolved' | 'formula_input_not_labeled' | 'formula_label_not_resolved' | 'formula_label_not_used' | 'invalid_formula' | 'change_target_not_resolved' | 'check_status_not_planned' | 'check_target_not_resolved' | 'check_ref_not_resolved' | 'check_expectation_input_not_resolved' | 'check_expectation_input_not_labeled' | 'check_expectation_label_not_resolved' | 'check_expectation_label_not_used' | 'invalid_check_expectation_formula' | 'invalid_workbook_op' | 'op_target_mismatch' | 'missing_concrete_op' | 'missing_workbook_op' | 'adapter_missing_capability' | 'apply_not_verified' | 'apply_mismatch' | 'apply_failed' | 'readback_failed' | 'readback_missing' | 'readback_unexpected' | 'value_mismatch' | 'formula_mismatch' | 'invalid_check_verification' | 'check_verification_failed' | 'check_failed' | 'check_not_verified' | 'runtime_rejected';
|
|
46
|
+
export declare const workbookRunErrorCodes: readonly ("invalid_action_input" | "action_not_found" | "find_failed" | "checks_failed" | "action_failed" | "ref_not_in_refs" | "duplicate_ref" | "command_target_not_resolved" | "formula_input_not_resolved" | "formula_input_not_labeled" | "formula_label_not_resolved" | "formula_label_not_used" | "invalid_formula" | "change_target_not_resolved" | "check_status_not_planned" | "check_target_not_resolved" | "check_ref_not_resolved" | "check_expectation_input_not_resolved" | "check_expectation_input_not_labeled" | "check_expectation_label_not_resolved" | "check_expectation_label_not_used" | "invalid_check_expectation_formula" | "invalid_workbook_op" | "op_target_mismatch" | "missing_concrete_op" | "missing_workbook_op" | "adapter_missing_capability" | "apply_not_verified" | "apply_mismatch" | "apply_failed" | "readback_failed" | "readback_missing" | "readback_unexpected" | "value_mismatch" | "formula_mismatch" | "invalid_check_verification" | "check_verification_failed" | "check_failed" | "check_not_verified" | "runtime_rejected")[];
|
|
45
47
|
export declare function isWorkbookRunErrorCode(value: unknown): value is WorkbookRunErrorCode;
|
|
46
48
|
export interface WorkbookRunError {
|
|
47
49
|
readonly code: WorkbookRunErrorCode;
|
|
@@ -58,6 +60,8 @@ export type WorkbookRunResult = {
|
|
|
58
60
|
readonly status: 'failed';
|
|
59
61
|
readonly errors: readonly WorkbookRunError[];
|
|
60
62
|
readonly apply?: WorkbookRunApplySummary;
|
|
63
|
+
readonly changed: readonly WorkbookChangeSummary[];
|
|
61
64
|
readonly checks: readonly WorkbookCheckResult[];
|
|
65
|
+
readonly undo?: WorkbookUndoRef;
|
|
62
66
|
readonly unverified?: readonly WorkbookRunUnverified[];
|
|
63
67
|
};
|
package/dist/result.js
CHANGED
|
@@ -8,17 +8,24 @@ export const workbookRunErrorCodes = Object.freeze([
|
|
|
8
8
|
'duplicate_ref',
|
|
9
9
|
'command_target_not_resolved',
|
|
10
10
|
'formula_input_not_resolved',
|
|
11
|
+
'formula_input_not_labeled',
|
|
12
|
+
'formula_label_not_resolved',
|
|
13
|
+
'formula_label_not_used',
|
|
11
14
|
'invalid_formula',
|
|
12
15
|
'change_target_not_resolved',
|
|
13
16
|
'check_status_not_planned',
|
|
14
17
|
'check_target_not_resolved',
|
|
15
18
|
'check_ref_not_resolved',
|
|
16
19
|
'check_expectation_input_not_resolved',
|
|
20
|
+
'check_expectation_input_not_labeled',
|
|
21
|
+
'check_expectation_label_not_resolved',
|
|
22
|
+
'check_expectation_label_not_used',
|
|
17
23
|
'invalid_check_expectation_formula',
|
|
18
24
|
'invalid_workbook_op',
|
|
19
25
|
'op_target_mismatch',
|
|
20
26
|
'missing_concrete_op',
|
|
21
27
|
'missing_workbook_op',
|
|
28
|
+
'adapter_missing_capability',
|
|
22
29
|
'apply_not_verified',
|
|
23
30
|
'apply_mismatch',
|
|
24
31
|
'apply_failed',
|
package/dist/result.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"result.js","sourceRoot":"","sources":["../src/result.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"result.js","sourceRoot":"","sources":["../src/result.ts"],"names":[],"mappings":"AAiGA,MAAM,CAAC,MAAM,qBAAqB,GAAG,MAAM,CAAC,MAAM,CAAC;IACjD,kBAAkB;IAClB,sBAAsB;IACtB,aAAa;IACb,eAAe;IACf,eAAe;IACf,iBAAiB;IACjB,eAAe;IACf,6BAA6B;IAC7B,4BAA4B;IAC5B,2BAA2B;IAC3B,4BAA4B;IAC5B,wBAAwB;IACxB,iBAAiB;IACjB,4BAA4B;IAC5B,0BAA0B;IAC1B,2BAA2B;IAC3B,wBAAwB;IACxB,sCAAsC;IACtC,qCAAqC;IACrC,sCAAsC;IACtC,kCAAkC;IAClC,mCAAmC;IACnC,qBAAqB;IACrB,oBAAoB;IACpB,qBAAqB;IACrB,qBAAqB;IACrB,4BAA4B;IAC5B,oBAAoB;IACpB,gBAAgB;IAChB,cAAc;IACd,iBAAiB;IACjB,kBAAkB;IAClB,qBAAqB;IACrB,gBAAgB;IAChB,kBAAkB;IAClB,4BAA4B;IAC5B,2BAA2B;IAC3B,cAAc;IACd,oBAAoB;IACpB,kBAAkB;CACuB,CAAC,CAAA;AAE5C,MAAM,UAAU,sBAAsB,CAAC,KAAc;IACnD,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,qBAAqB,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,KAAK,CAAC,CAAA;AAC1F,CAAC"}
|
package/dist/run.d.ts
CHANGED
|
@@ -2,6 +2,7 @@ import type { WorkbookRef } from './find.js';
|
|
|
2
2
|
import { type WorkbookActionInput } from './input.js';
|
|
3
3
|
import { type WorkbookActionMap, type WorkbookActionPlan, type WorkbookModel } from './model.js';
|
|
4
4
|
import type { EngineOp } from './ops.js';
|
|
5
|
+
import { type WorkbookExecutablePlan, type WorkbookPlanDataRefs } from './plan-data.js';
|
|
5
6
|
import { type WorkbookRunReadback } from './readback.js';
|
|
6
7
|
import { type WorkbookCheckResult, type WorkbookRunError, type WorkbookRunResult, type WorkbookUndoRef } from './result.js';
|
|
7
8
|
type MaybePromise<T> = T | Promise<T>;
|
|
@@ -17,10 +18,11 @@ export interface WorkbookRunOptions {
|
|
|
17
18
|
readonly requireApplyProof?: boolean;
|
|
18
19
|
}
|
|
19
20
|
export interface WorkbookRunAdapter<Refs = unknown> {
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
21
|
+
apply?(plan: WorkbookActionPlan<Refs>): MaybePromise<WorkbookRunApplyResult>;
|
|
22
|
+
read?(targets: readonly WorkbookRef[], plan: WorkbookActionPlan<Refs>): MaybePromise<readonly WorkbookRunReadback[]>;
|
|
23
|
+
verifyChecks?(checks: readonly WorkbookCheckResult[], plan: WorkbookActionPlan<Refs>): MaybePromise<readonly WorkbookCheckResult[]>;
|
|
23
24
|
}
|
|
24
25
|
export declare function runWorkbookPlan<Refs>(plan: WorkbookActionPlan<Refs>, adapter: WorkbookRunAdapter<Refs>, options?: WorkbookRunOptions): Promise<WorkbookRunResult>;
|
|
26
|
+
export declare function runWorkbookPlan(plan: WorkbookExecutablePlan, adapter: WorkbookRunAdapter<WorkbookPlanDataRefs>, options?: WorkbookRunOptions): Promise<WorkbookRunResult>;
|
|
25
27
|
export declare function runWorkbookAction<Refs, Actions extends WorkbookActionMap<Refs>>(model: WorkbookModel<Refs, Actions>, actionName: string, adapter: WorkbookRunAdapter<Refs>, input?: WorkbookActionInput, options?: WorkbookRunOptions): Promise<WorkbookRunResult>;
|
|
26
28
|
export {};
|
package/dist/run.js
CHANGED
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import { isWorkbookOp } from './guards.js';
|
|
2
2
|
import { normalizeWorkbookActionInput } from './input.js';
|
|
3
3
|
import { planWorkbookAction } from './model.js';
|
|
4
|
+
import { hydratePlanData, isHydratedPlan } from './plan-data.js';
|
|
4
5
|
import { verifyWorkbookReadbacks } from './readback.js';
|
|
6
|
+
import { checkRuntimeAdapter } from './requirements.js';
|
|
5
7
|
import { isWorkbookRunErrorCode, } from './result.js';
|
|
6
8
|
import { verifyPlan } from './verify.js';
|
|
7
9
|
function errorMessage(error) {
|
|
@@ -13,6 +15,17 @@ function runError(code, message) {
|
|
|
13
15
|
message,
|
|
14
16
|
};
|
|
15
17
|
}
|
|
18
|
+
function failedRun(args) {
|
|
19
|
+
return {
|
|
20
|
+
status: 'failed',
|
|
21
|
+
errors: args.errors,
|
|
22
|
+
...(args.apply !== undefined ? { apply: args.apply } : {}),
|
|
23
|
+
changed: args.changed ?? [],
|
|
24
|
+
checks: args.checks,
|
|
25
|
+
...(args.undo !== undefined ? { undo: args.undo } : {}),
|
|
26
|
+
...(args.unverified !== undefined && args.unverified.length > 0 ? { unverified: args.unverified } : {}),
|
|
27
|
+
};
|
|
28
|
+
}
|
|
16
29
|
function readbackTargets(checks) {
|
|
17
30
|
const targets = [];
|
|
18
31
|
const seen = new Set();
|
|
@@ -34,23 +47,32 @@ function failedFromPlanIssues(plan) {
|
|
|
34
47
|
if (verification.status === 'valid') {
|
|
35
48
|
return null;
|
|
36
49
|
}
|
|
37
|
-
return {
|
|
38
|
-
status: 'failed',
|
|
50
|
+
return failedRun({
|
|
39
51
|
errors: verification.issues.map((issue) => runError(issue.code, issue.message)),
|
|
40
52
|
checks: plan.checks,
|
|
41
|
-
};
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
function changedAfterApply(plan, result) {
|
|
56
|
+
if (result.appliedOps !== undefined) {
|
|
57
|
+
return result.appliedOps.length > 0 || result.undo !== undefined ? plan.changed : [];
|
|
58
|
+
}
|
|
59
|
+
return plan.changed;
|
|
60
|
+
}
|
|
61
|
+
function changedAfterFailedApply(plan, result) {
|
|
62
|
+
return result.undo !== undefined || (result.appliedOps !== undefined && result.appliedOps.length > 0) ? plan.changed : [];
|
|
42
63
|
}
|
|
43
64
|
function failedApplyResult(plan, result) {
|
|
44
65
|
const errors = result.errors !== undefined && result.errors.length > 0
|
|
45
66
|
? result.errors
|
|
46
67
|
: [runError('apply_failed', `Workbook action ${plan.modelName}.${plan.actionName} failed to apply`)];
|
|
47
68
|
const apply = describeApply(result);
|
|
48
|
-
return {
|
|
49
|
-
status: 'failed',
|
|
69
|
+
return failedRun({
|
|
50
70
|
errors,
|
|
51
71
|
apply,
|
|
72
|
+
changed: changedAfterFailedApply(plan, result),
|
|
52
73
|
checks: plan.checks,
|
|
53
|
-
|
|
74
|
+
...(result.undo !== undefined ? { undo: result.undo } : {}),
|
|
75
|
+
});
|
|
54
76
|
}
|
|
55
77
|
function checkLabel(check) {
|
|
56
78
|
return check.target?.label ?? check.kind;
|
|
@@ -110,11 +132,10 @@ function isWorkbookCheckResult(value) {
|
|
|
110
132
|
function validateApplyResult(plan, value) {
|
|
111
133
|
const rejected = (message) => ({
|
|
112
134
|
status: 'invalid',
|
|
113
|
-
result: {
|
|
114
|
-
status: 'failed',
|
|
135
|
+
result: failedRun({
|
|
115
136
|
errors: [runError('runtime_rejected', message)],
|
|
116
137
|
checks: plan.checks,
|
|
117
|
-
},
|
|
138
|
+
}),
|
|
118
139
|
});
|
|
119
140
|
if (!isRecord(value)) {
|
|
120
141
|
return rejected(`Workbook action ${plan.modelName}.${plan.actionName} returned an invalid apply result`);
|
|
@@ -206,6 +227,16 @@ function applyProofErrors(apply, options) {
|
|
|
206
227
|
}
|
|
207
228
|
return [];
|
|
208
229
|
}
|
|
230
|
+
function needsApply(capabilities) {
|
|
231
|
+
return capabilities.some((capability) => capability === 'writeFormula' ||
|
|
232
|
+
capability === 'writeValue' ||
|
|
233
|
+
capability === 'format' ||
|
|
234
|
+
capability === 'clear' ||
|
|
235
|
+
capability === 'applyOp');
|
|
236
|
+
}
|
|
237
|
+
function changedAfterOptionalApply(plan, result) {
|
|
238
|
+
return result === undefined ? [] : changedAfterApply(plan, result);
|
|
239
|
+
}
|
|
209
240
|
function validateVerifiedChecks(originalContracts, originalKinds, verified) {
|
|
210
241
|
if (!Array.isArray(verified)) {
|
|
211
242
|
return {
|
|
@@ -303,119 +334,141 @@ function unverifiedCheckErrors(checks) {
|
|
|
303
334
|
.filter((check) => check.status === 'planned')
|
|
304
335
|
.map((check) => runError('check_not_verified', `${checkLabel(check)} did not verify check ${check.kind}: ${check.message}`));
|
|
305
336
|
}
|
|
306
|
-
|
|
337
|
+
async function runLiveWorkbookPlan(plan, adapter, options = {}) {
|
|
307
338
|
const invalidPlan = failedFromPlanIssues(plan);
|
|
308
339
|
if (invalidPlan !== null) {
|
|
309
340
|
return invalidPlan;
|
|
310
341
|
}
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
catch (error) {
|
|
316
|
-
return {
|
|
317
|
-
status: 'failed',
|
|
318
|
-
errors: [runError('apply_failed', errorMessage(error))],
|
|
342
|
+
const adapterCheck = checkRuntimeAdapter(plan, adapter);
|
|
343
|
+
if (adapterCheck.status === 'invalid') {
|
|
344
|
+
return failedRun({
|
|
345
|
+
errors: adapterCheck.issues.map((adapterIssue) => runError('adapter_missing_capability', adapterIssue.message)),
|
|
319
346
|
checks: plan.checks,
|
|
320
|
-
};
|
|
347
|
+
});
|
|
321
348
|
}
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
349
|
+
let validApplyResult;
|
|
350
|
+
let apply;
|
|
351
|
+
let unverified = [];
|
|
352
|
+
if (needsApply(adapterCheck.requiredCapabilities)) {
|
|
353
|
+
let applyResult;
|
|
354
|
+
try {
|
|
355
|
+
applyResult = await adapter.apply?.(plan);
|
|
356
|
+
}
|
|
357
|
+
catch (error) {
|
|
358
|
+
return failedRun({
|
|
359
|
+
errors: [runError('apply_failed', errorMessage(error))],
|
|
360
|
+
checks: plan.checks,
|
|
361
|
+
});
|
|
362
|
+
}
|
|
363
|
+
const applyValidation = validateApplyResult(plan, applyResult);
|
|
364
|
+
if (applyValidation.status === 'invalid') {
|
|
365
|
+
return applyValidation.result;
|
|
366
|
+
}
|
|
367
|
+
validApplyResult = applyValidation.result;
|
|
368
|
+
if (validApplyResult.status === 'failed') {
|
|
369
|
+
return failedApplyResult(plan, validApplyResult);
|
|
370
|
+
}
|
|
371
|
+
apply = describeApply(validApplyResult);
|
|
372
|
+
unverified = applyUnverified(apply);
|
|
373
|
+
const applyErrors = applyProofErrors(apply, options);
|
|
374
|
+
if (applyErrors.length > 0) {
|
|
375
|
+
return failedRun({
|
|
376
|
+
errors: applyErrors,
|
|
377
|
+
apply,
|
|
378
|
+
changed: changedAfterApply(plan, validApplyResult),
|
|
379
|
+
checks: plan.checks,
|
|
380
|
+
...(validApplyResult.undo !== undefined ? { undo: validApplyResult.undo } : {}),
|
|
381
|
+
unverified,
|
|
382
|
+
});
|
|
383
|
+
}
|
|
341
384
|
}
|
|
342
385
|
let checks = plan.checks;
|
|
343
386
|
const targets = readbackTargets(checks);
|
|
344
387
|
if (targets.length > 0) {
|
|
345
388
|
if (adapter.read === undefined) {
|
|
346
389
|
const readbackVerification = verifyWorkbookReadbacks(checks, []);
|
|
347
|
-
return {
|
|
348
|
-
status: 'failed',
|
|
390
|
+
return failedRun({
|
|
349
391
|
errors: readbackVerification.issues.map((issue) => runError(issue.code, issue.message)),
|
|
350
392
|
apply,
|
|
393
|
+
changed: changedAfterOptionalApply(plan, validApplyResult),
|
|
351
394
|
checks: readbackVerification.checks,
|
|
352
|
-
...
|
|
353
|
-
|
|
395
|
+
...(validApplyResult?.undo !== undefined ? { undo: validApplyResult.undo } : {}),
|
|
396
|
+
unverified,
|
|
397
|
+
});
|
|
354
398
|
}
|
|
355
399
|
let readbacks;
|
|
356
400
|
try {
|
|
357
401
|
readbacks = await adapter.read(targets, plan);
|
|
358
402
|
}
|
|
359
403
|
catch (error) {
|
|
360
|
-
return {
|
|
361
|
-
status: 'failed',
|
|
404
|
+
return failedRun({
|
|
362
405
|
errors: [runError('readback_failed', errorMessage(error))],
|
|
363
406
|
apply,
|
|
407
|
+
changed: changedAfterOptionalApply(plan, validApplyResult),
|
|
364
408
|
checks,
|
|
365
|
-
...
|
|
366
|
-
|
|
409
|
+
...(validApplyResult?.undo !== undefined ? { undo: validApplyResult.undo } : {}),
|
|
410
|
+
unverified,
|
|
411
|
+
});
|
|
367
412
|
}
|
|
368
413
|
const readbackVerification = verifyWorkbookReadbacks(checks, readbacks);
|
|
369
414
|
checks = readbackVerification.checks;
|
|
370
415
|
if (readbackVerification.status === 'failed') {
|
|
371
|
-
return {
|
|
372
|
-
status: 'failed',
|
|
416
|
+
return failedRun({
|
|
373
417
|
errors: readbackVerification.issues.map((issue) => runError(issue.code, issue.message)),
|
|
374
418
|
apply,
|
|
419
|
+
changed: changedAfterOptionalApply(plan, validApplyResult),
|
|
375
420
|
checks,
|
|
376
|
-
...
|
|
377
|
-
|
|
421
|
+
...(validApplyResult?.undo !== undefined ? { undo: validApplyResult.undo } : {}),
|
|
422
|
+
unverified,
|
|
423
|
+
});
|
|
378
424
|
}
|
|
379
425
|
}
|
|
380
426
|
const checkVerification = await verifyChecksWithAdapter(checks, plan, adapter);
|
|
381
427
|
checks = checkVerification.checks;
|
|
382
428
|
if (checkVerification.errors.length > 0) {
|
|
383
|
-
return {
|
|
384
|
-
status: 'failed',
|
|
429
|
+
return failedRun({
|
|
385
430
|
errors: checkVerification.errors,
|
|
386
431
|
apply,
|
|
432
|
+
changed: changedAfterOptionalApply(plan, validApplyResult),
|
|
387
433
|
checks,
|
|
388
|
-
...
|
|
389
|
-
|
|
434
|
+
...(validApplyResult?.undo !== undefined ? { undo: validApplyResult.undo } : {}),
|
|
435
|
+
unverified,
|
|
436
|
+
});
|
|
390
437
|
}
|
|
391
438
|
const unverifiedErrors = unverifiedCheckErrors(checks);
|
|
392
439
|
if (unverifiedErrors.length > 0) {
|
|
393
|
-
return {
|
|
394
|
-
status: 'failed',
|
|
440
|
+
return failedRun({
|
|
395
441
|
errors: unverifiedErrors,
|
|
396
442
|
apply,
|
|
443
|
+
changed: changedAfterOptionalApply(plan, validApplyResult),
|
|
397
444
|
checks,
|
|
398
|
-
...
|
|
399
|
-
|
|
445
|
+
...(validApplyResult?.undo !== undefined ? { undo: validApplyResult.undo } : {}),
|
|
446
|
+
unverified,
|
|
447
|
+
});
|
|
400
448
|
}
|
|
401
449
|
return {
|
|
402
450
|
status: 'done',
|
|
403
|
-
apply,
|
|
404
|
-
changed: plan
|
|
451
|
+
...(apply !== undefined ? { apply } : {}),
|
|
452
|
+
changed: changedAfterOptionalApply(plan, validApplyResult),
|
|
405
453
|
checks,
|
|
406
|
-
...(validApplyResult
|
|
454
|
+
...(validApplyResult?.undo !== undefined ? { undo: validApplyResult.undo } : {}),
|
|
407
455
|
...unverifiedProperty(unverified),
|
|
408
456
|
};
|
|
409
457
|
}
|
|
458
|
+
export function runWorkbookPlan(plan, adapter, options = {}) {
|
|
459
|
+
if (isHydratedPlan(plan)) {
|
|
460
|
+
return runLiveWorkbookPlan(plan, adapter, options);
|
|
461
|
+
}
|
|
462
|
+
return runLiveWorkbookPlan(hydratePlanData(plan), adapter, options);
|
|
463
|
+
}
|
|
410
464
|
export async function runWorkbookAction(model, actionName, adapter, input, options) {
|
|
411
465
|
const result = planWorkbookAction(model, actionName, input);
|
|
412
466
|
if (result.status === 'failed') {
|
|
413
|
-
return {
|
|
414
|
-
status: 'failed',
|
|
467
|
+
return failedRun({
|
|
415
468
|
errors: result.errors,
|
|
416
469
|
checks: result.checks,
|
|
417
|
-
};
|
|
470
|
+
});
|
|
418
471
|
}
|
|
419
|
-
return
|
|
472
|
+
return runLiveWorkbookPlan(result.plan, adapter, options);
|
|
420
473
|
}
|
|
421
474
|
//# sourceMappingURL=run.js.map
|
package/dist/run.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run.js","sourceRoot":"","sources":["../src/run.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"run.js","sourceRoot":"","sources":["../src/run.ts"],"names":[],"mappings":"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"}
|
package/dist/verify.d.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { type WorkbookActionPlanResultDescription, type WorkbookRefDescription } from './describe.js';
|
|
1
|
+
import { type WorkbookActionPlanDescription, type WorkbookActionPlanResultDescription, type WorkbookRefDescription } from './describe.js';
|
|
2
2
|
import { type WorkbookActionMap, type WorkbookActionPlan, type WorkbookModel } from './model.js';
|
|
3
3
|
import { type WorkbookRuntimeRequirements } from './requirements.js';
|
|
4
4
|
import { type WorkbookActionInput } from './input.js';
|
|
5
|
-
export type WorkbookPlanIssueCode = 'invalid_action_input' | 'ref_not_in_refs' | 'duplicate_ref' | 'command_target_not_resolved' | 'formula_input_not_resolved' | 'invalid_formula' | 'change_target_not_resolved' | 'check_status_not_planned' | 'check_target_not_resolved' | 'check_ref_not_resolved' | 'check_expectation_input_not_resolved' | 'invalid_check_expectation_formula' | 'invalid_workbook_op' | 'op_target_mismatch' | 'missing_concrete_op' | 'missing_workbook_op';
|
|
5
|
+
export type WorkbookPlanIssueCode = 'invalid_action_input' | 'ref_not_in_refs' | 'duplicate_ref' | 'command_target_not_resolved' | 'formula_input_not_resolved' | 'formula_input_not_labeled' | 'formula_label_not_resolved' | 'formula_label_not_used' | 'invalid_formula' | 'change_target_not_resolved' | 'check_status_not_planned' | 'check_target_not_resolved' | 'check_ref_not_resolved' | 'check_expectation_input_not_resolved' | 'check_expectation_input_not_labeled' | 'check_expectation_label_not_resolved' | 'check_expectation_label_not_used' | 'invalid_check_expectation_formula' | 'invalid_workbook_op' | 'op_target_mismatch' | 'missing_concrete_op' | 'missing_workbook_op';
|
|
6
6
|
export interface WorkbookPlanIssue {
|
|
7
7
|
readonly code: WorkbookPlanIssueCode;
|
|
8
8
|
readonly message: string;
|
|
@@ -30,4 +30,5 @@ export interface WorkbookModelVerificationOptions {
|
|
|
30
30
|
readonly inputs?: Partial<Record<string, WorkbookActionInput>>;
|
|
31
31
|
}
|
|
32
32
|
export declare function verifyPlan<Refs>(plan: WorkbookActionPlan<Refs>): WorkbookPlanVerification;
|
|
33
|
+
export declare function verifyPlanData(plan: WorkbookActionPlanDescription): WorkbookPlanVerification;
|
|
33
34
|
export declare function verifyModel<Refs, Actions extends WorkbookActionMap<Refs>>(model: WorkbookModel<Refs, Actions>, options?: WorkbookModelVerificationOptions): WorkbookModelVerification;
|
package/dist/verify.js
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import { parseFormula } from '@bilig/formula';
|
|
2
|
-
import { describePlanResult, describeRef } from './describe.js';
|
|
2
|
+
import { describePlanResult, describeRef, } from './describe.js';
|
|
3
3
|
import { collectWorkbookRefs } from './find.js';
|
|
4
4
|
import { isWorkbookOp } from './guards.js';
|
|
5
5
|
import { inspectModel, planWorkbookAction, } from './model.js';
|
|
6
6
|
import { describeRuntimeRequirements } from './requirements.js';
|
|
7
7
|
import { getOwnActionInput, hasOwnActionInput, normalizeWorkbookActionInput } from './input.js';
|
|
8
|
+
import { hydratePlanData } from './plan-data.js';
|
|
8
9
|
function refKey(ref) {
|
|
9
10
|
return `${ref.kind}:${ref.id}`;
|
|
10
11
|
}
|
|
@@ -214,6 +215,16 @@ function opTargetMismatch(op, target) {
|
|
|
214
215
|
function errorMessage(error) {
|
|
215
216
|
return error instanceof Error ? error.message : String(error);
|
|
216
217
|
}
|
|
218
|
+
function formulaLabelsForCommand(command) {
|
|
219
|
+
return command.labels ?? [];
|
|
220
|
+
}
|
|
221
|
+
function formulaLabelsForExpectation(expectation) {
|
|
222
|
+
return expectation.labels ?? [];
|
|
223
|
+
}
|
|
224
|
+
function hasLabelForInput(labels, input) {
|
|
225
|
+
const inputKey = refKey(input);
|
|
226
|
+
return labels.some((label) => refKey(label.ref) === inputKey);
|
|
227
|
+
}
|
|
217
228
|
export function verifyPlan(plan) {
|
|
218
229
|
const issues = [];
|
|
219
230
|
const knownRefs = new Set();
|
|
@@ -265,6 +276,7 @@ export function verifyPlan(plan) {
|
|
|
265
276
|
}));
|
|
266
277
|
}
|
|
267
278
|
if (command.kind === 'writeFormula') {
|
|
279
|
+
const labels = formulaLabelsForCommand(command);
|
|
268
280
|
try {
|
|
269
281
|
parseFormula(command.formula);
|
|
270
282
|
}
|
|
@@ -284,6 +296,33 @@ export function verifyPlan(plan) {
|
|
|
284
296
|
message: `${input.label} is used as a formula input but is missing from refsUsed`,
|
|
285
297
|
}));
|
|
286
298
|
}
|
|
299
|
+
if (!hasLabelForInput(labels, input)) {
|
|
300
|
+
issues.push(issue({
|
|
301
|
+
code: 'formula_input_not_labeled',
|
|
302
|
+
path: `commands[${commandIndex}].inputs[${inputIndex}]`,
|
|
303
|
+
ref: input,
|
|
304
|
+
message: `${input.label} is used as a formula input but has no formula label`,
|
|
305
|
+
}));
|
|
306
|
+
}
|
|
307
|
+
});
|
|
308
|
+
const inputKeys = new Set(command.inputs.map(refKey));
|
|
309
|
+
labels.forEach((label, labelIndex) => {
|
|
310
|
+
if (!hasRef(label.ref) && !inputKeys.has(refKey(label.ref))) {
|
|
311
|
+
issues.push(issue({
|
|
312
|
+
code: 'formula_label_not_resolved',
|
|
313
|
+
path: `commands[${commandIndex}].labels[${labelIndex}].ref`,
|
|
314
|
+
ref: label.ref,
|
|
315
|
+
message: `${label.ref.label} is used as a formula label but is missing from refsUsed`,
|
|
316
|
+
}));
|
|
317
|
+
}
|
|
318
|
+
if (!command.formula.includes(label.name)) {
|
|
319
|
+
issues.push(issue({
|
|
320
|
+
code: 'formula_label_not_used',
|
|
321
|
+
path: `commands[${commandIndex}].labels[${labelIndex}].name`,
|
|
322
|
+
ref: label.ref,
|
|
323
|
+
message: `Formula label ${label.name} for ${label.ref.label} does not appear in the formula`,
|
|
324
|
+
}));
|
|
325
|
+
}
|
|
287
326
|
});
|
|
288
327
|
}
|
|
289
328
|
if (command.kind === 'op') {
|
|
@@ -361,8 +400,10 @@ export function verifyPlan(plan) {
|
|
|
361
400
|
}
|
|
362
401
|
});
|
|
363
402
|
if (check.expectation?.kind === 'formulaEquals') {
|
|
403
|
+
const expectation = check.expectation;
|
|
404
|
+
const labels = formulaLabelsForExpectation(expectation);
|
|
364
405
|
try {
|
|
365
|
-
parseFormula(
|
|
406
|
+
parseFormula(expectation.formula);
|
|
366
407
|
}
|
|
367
408
|
catch (error) {
|
|
368
409
|
issues.push({
|
|
@@ -371,7 +412,7 @@ export function verifyPlan(plan) {
|
|
|
371
412
|
message: `Formula expectation for ${check.target?.label ?? check.kind} is not parseable: ${errorMessage(error)}`,
|
|
372
413
|
});
|
|
373
414
|
}
|
|
374
|
-
|
|
415
|
+
expectation.inputs.forEach((input, inputIndex) => {
|
|
375
416
|
if (!hasRef(input)) {
|
|
376
417
|
issues.push(issue({
|
|
377
418
|
code: 'check_expectation_input_not_resolved',
|
|
@@ -380,6 +421,33 @@ export function verifyPlan(plan) {
|
|
|
380
421
|
message: `${input.label} appears in a formula expectation but is missing from refsUsed`,
|
|
381
422
|
}));
|
|
382
423
|
}
|
|
424
|
+
if (!hasLabelForInput(labels, input)) {
|
|
425
|
+
issues.push(issue({
|
|
426
|
+
code: 'check_expectation_input_not_labeled',
|
|
427
|
+
path: `checks[${checkIndex}].expectation.inputs[${inputIndex}]`,
|
|
428
|
+
ref: input,
|
|
429
|
+
message: `${input.label} appears in a formula expectation but has no formula label`,
|
|
430
|
+
}));
|
|
431
|
+
}
|
|
432
|
+
});
|
|
433
|
+
const inputKeys = new Set(expectation.inputs.map(refKey));
|
|
434
|
+
labels.forEach((label, labelIndex) => {
|
|
435
|
+
if (!hasRef(label.ref) && !inputKeys.has(refKey(label.ref))) {
|
|
436
|
+
issues.push(issue({
|
|
437
|
+
code: 'check_expectation_label_not_resolved',
|
|
438
|
+
path: `checks[${checkIndex}].expectation.labels[${labelIndex}].ref`,
|
|
439
|
+
ref: label.ref,
|
|
440
|
+
message: `${label.ref.label} appears in a formula expectation label but is missing from refsUsed`,
|
|
441
|
+
}));
|
|
442
|
+
}
|
|
443
|
+
if (!expectation.formula.includes(label.name)) {
|
|
444
|
+
issues.push(issue({
|
|
445
|
+
code: 'check_expectation_label_not_used',
|
|
446
|
+
path: `checks[${checkIndex}].expectation.labels[${labelIndex}].name`,
|
|
447
|
+
ref: label.ref,
|
|
448
|
+
message: `Formula expectation label ${label.name} for ${label.ref.label} does not appear in the formula`,
|
|
449
|
+
}));
|
|
450
|
+
}
|
|
383
451
|
});
|
|
384
452
|
}
|
|
385
453
|
});
|
|
@@ -390,6 +458,9 @@ export function verifyPlan(plan) {
|
|
|
390
458
|
issues,
|
|
391
459
|
};
|
|
392
460
|
}
|
|
461
|
+
export function verifyPlanData(plan) {
|
|
462
|
+
return verifyPlan(hydratePlanData(plan));
|
|
463
|
+
}
|
|
393
464
|
export function verifyModel(model, options = {}) {
|
|
394
465
|
const actions = inspectModel(model).actions.map((actionName) => {
|
|
395
466
|
const planning = planWorkbookAction(model, actionName, options.inputs?.[actionName]);
|