@farmslot/protocol 0.9.0 → 0.11.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/CHANGELOG.md +27 -2
- package/README.md +12 -4
- package/dist/agents/roles.js +2 -2
- package/dist/agents/roles.js.map +1 -1
- package/dist/contracts/agents.d.ts +7 -0
- package/dist/contracts/agents.d.ts.map +1 -1
- package/dist/contracts/backlog.d.ts +11 -0
- package/dist/contracts/backlog.d.ts.map +1 -1
- package/dist/contracts/backlog.js.map +1 -1
- package/dist/contracts/bug-input.d.ts +8 -0
- package/dist/contracts/bug-input.d.ts.map +1 -1
- package/dist/contracts/bug-input.js +14 -2
- package/dist/contracts/bug-input.js.map +1 -1
- package/dist/contracts/bug-score.d.ts +73 -0
- package/dist/contracts/bug-score.d.ts.map +1 -0
- package/dist/contracts/bug-score.js +208 -0
- package/dist/contracts/bug-score.js.map +1 -0
- package/dist/contracts/dispatch.d.ts +5 -1
- package/dist/contracts/dispatch.d.ts.map +1 -1
- package/dist/contracts/index.d.ts +1 -0
- package/dist/contracts/index.d.ts.map +1 -1
- package/dist/contracts/index.js +1 -0
- package/dist/contracts/index.js.map +1 -1
- package/dist/contracts/recipes.js +1 -1
- package/dist/contracts/recipes.js.map +1 -1
- package/dist/contracts/reviews.d.ts +2 -1
- package/dist/contracts/reviews.d.ts.map +1 -1
- package/dist/contracts/reviews.js.map +1 -1
- package/dist/contracts/runs.d.ts +51 -3
- package/dist/contracts/runs.d.ts.map +1 -1
- package/dist/contracts/runs.js +42 -2
- package/dist/contracts/runs.js.map +1 -1
- package/dist/contracts/slots.d.ts +11 -0
- package/dist/contracts/slots.d.ts.map +1 -1
- package/dist/contracts/slots.js +11 -0
- package/dist/contracts/slots.js.map +1 -1
- package/dist/contracts/work-graph.d.ts +1 -1
- package/dist/contracts/work-graph.d.ts.map +1 -1
- package/dist/integrations/github-ref.js +1 -1
- package/dist/integrations/github-ref.js.map +1 -1
- package/dist/recipe/artifact.d.ts.map +1 -1
- package/dist/recipe/artifact.js +153 -20
- package/dist/recipe/artifact.js.map +1 -1
- package/dist/recipe/common.d.ts +30 -36
- package/dist/recipe/common.d.ts.map +1 -1
- package/dist/recipe/common.js +0 -3
- package/dist/recipe/common.js.map +1 -1
- package/dist/recipe/digest.d.ts +5 -0
- package/dist/recipe/digest.d.ts.map +1 -0
- package/dist/recipe/digest.js +25 -0
- package/dist/recipe/digest.js.map +1 -0
- package/dist/recipe/document.d.ts +4 -20
- package/dist/recipe/document.d.ts.map +1 -1
- package/dist/recipe/document.js +160 -123
- package/dist/recipe/document.js.map +1 -1
- package/dist/recipe/index.d.ts +6 -3
- package/dist/recipe/index.d.ts.map +1 -1
- package/dist/recipe/index.js +6 -3
- package/dist/recipe/index.js.map +1 -1
- package/dist/recipe/manifest.d.ts +0 -1
- package/dist/recipe/manifest.d.ts.map +1 -1
- package/dist/recipe/manifest.js +82 -45
- package/dist/recipe/manifest.js.map +1 -1
- package/dist/recipe/params.d.ts +9 -0
- package/dist/recipe/params.d.ts.map +1 -0
- package/dist/recipe/params.js +261 -0
- package/dist/recipe/params.js.map +1 -0
- package/dist/recipe/trust.d.ts +47 -0
- package/dist/recipe/trust.d.ts.map +1 -0
- package/dist/recipe/trust.js +63 -0
- package/dist/recipe/trust.js.map +1 -0
- package/dist/recipe/workflow.d.ts +13 -27
- package/dist/recipe/workflow.d.ts.map +1 -1
- package/dist/recipe/workflow.js +201 -497
- package/dist/recipe/workflow.js.map +1 -1
- package/dist/rpc/dispatch.d.ts +9 -1
- package/dist/rpc/dispatch.d.ts.map +1 -1
- package/dist/rpc/registry.d.ts +5 -0
- package/dist/rpc/registry.d.ts.map +1 -1
- package/dist/rpc/registry.js +5 -0
- package/dist/rpc/registry.js.map +1 -1
- package/dist/rpc/run.d.ts +11 -1
- package/dist/rpc/run.d.ts.map +1 -1
- package/dist/rpc/slot.d.ts +53 -1
- package/dist/rpc/slot.d.ts.map +1 -1
- package/dist/rpc/slot.js +5 -0
- package/dist/rpc/slot.js.map +1 -1
- package/dist/rpc/tmux.d.ts +1 -1
- package/dist/rpc/tmux.d.ts.map +1 -1
- package/dist/runs/family-iteration-ledger.js +2 -2
- package/dist/runs/family-iteration-ledger.js.map +1 -1
- package/dist/runs/run-mode.d.ts +1 -1
- package/dist/runs/run-mode.js +2 -2
- package/dist/runs/run-mode.js.map +1 -1
- package/dist/transport/events.d.ts +2 -0
- package/dist/transport/events.d.ts.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.d.ts.map +1 -1
- package/dist/version.js +1 -1
- package/dist/version.js.map +1 -1
- package/package.json +1 -1
- package/schemas/recipe-v1.schema.json +119 -197
package/dist/recipe/document.js
CHANGED
|
@@ -1,87 +1,69 @@
|
|
|
1
|
-
import { addFinding, createContext, finishResult, hasOwn, isRecord, RECIPE_PROTOCOL_SCHEMA_URL,
|
|
2
|
-
import { getRecipeActionManifestActionNames,
|
|
3
|
-
import {
|
|
4
|
-
|
|
1
|
+
import { addFinding, createContext, finishResult, hasOwn, isNonEmptyString, isRecord, RECIPE_PROTOCOL_SCHEMA_URL, requireStringField, validateOptionalStringField, } from './common.js';
|
|
2
|
+
import { getRecipeActionManifestActionNames, validateRecipeActionManifestDocument, } from './manifest.js';
|
|
3
|
+
import { validateRecipeParams, validateRecipeParamsSchema } from './params.js';
|
|
4
|
+
import { extractWorkflow, getRecipeActionParams, getRecipeWorkflowActionEntries, validateRecipeCalls, validateWorkflowGraph, } from './workflow.js';
|
|
5
|
+
const RECIPE_FIELDS = new Set([
|
|
6
|
+
'$schema',
|
|
7
|
+
'title',
|
|
8
|
+
'description',
|
|
9
|
+
'paramsSchema',
|
|
10
|
+
'proofTargets',
|
|
11
|
+
'workflow',
|
|
12
|
+
]);
|
|
13
|
+
export function validateResolvedRecipeActionNode(node, manifest) {
|
|
5
14
|
const ctx = createContext();
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
const declaredActions = new Set(getRecipeActionManifestActionNames(manifest));
|
|
10
|
-
if (declaredActions.size > 0) {
|
|
11
|
-
const actions = getRecipeWorkflowActionEntries(recipe);
|
|
12
|
-
actions.forEach(({ action, path }) => {
|
|
13
|
-
if (!declaredActions.has(action)) {
|
|
14
|
-
addFinding(ctx, 'error', 'recipe.action_not_declared_by_manifest', path, `Recipe action ${action} is not declared by the runner action manifest.`);
|
|
15
|
-
}
|
|
16
|
-
});
|
|
17
|
-
}
|
|
18
|
-
const declaredObservers = new Set();
|
|
19
|
-
if (isRecord(manifest) && Array.isArray(manifest.observers)) {
|
|
20
|
-
for (const observer of manifest.observers) {
|
|
21
|
-
if (isRecord(observer) && typeof observer.ref === 'string') {
|
|
22
|
-
declaredObservers.add(observer.ref);
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
for (const entry of collectObservationPolicies(recipe)) {
|
|
27
|
-
if (!Array.isArray(entry.policy))
|
|
28
|
-
continue;
|
|
29
|
-
entry.policy.forEach((ref, index) => {
|
|
30
|
-
if (typeof ref === 'string' && !declaredObservers.has(ref)) {
|
|
31
|
-
addFinding(ctx, 'error', 'recipe.observer_not_declared_by_manifest', `${entry.path}[${index}]`, `Recipe observer ${ref} is not declared by the runner action manifest.`);
|
|
32
|
-
}
|
|
33
|
-
});
|
|
15
|
+
if (!isRecord(node) || !isNonEmptyString(node.action)) {
|
|
16
|
+
addFinding(ctx, 'error', 'recipe.invalid_action_node', 'node', 'Resolved action node is invalid.');
|
|
17
|
+
return finishResult(ctx);
|
|
34
18
|
}
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
}
|
|
19
|
+
if (node.action === 'call' || node.action === 'end')
|
|
20
|
+
return finishResult(ctx);
|
|
21
|
+
const contract = manifestActionContracts(manifest).get(node.action);
|
|
22
|
+
if (!contract?.schema) {
|
|
23
|
+
addFinding(ctx, 'error', 'recipe.action_schema_missing', 'node.action', `Action ${node.action} must declare a parameter schema in the runner manifest.`);
|
|
24
|
+
return finishResult(ctx);
|
|
40
25
|
}
|
|
26
|
+
ctx.findings.push(...validateRecipeParams(getRecipeActionParams(node), contract.schema).findings);
|
|
41
27
|
return finishResult(ctx);
|
|
42
28
|
}
|
|
43
|
-
function
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
const
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
29
|
+
export function validateRecipeWithManifest(recipe, manifest, options) {
|
|
30
|
+
const ctx = createContext();
|
|
31
|
+
ctx.findings.push(...validateRecipeDocument(recipe, options).findings);
|
|
32
|
+
ctx.findings.push(...validateRecipeActionManifestDocument(manifest).findings);
|
|
33
|
+
const declaredActions = new Set(getRecipeActionManifestActionNames(manifest));
|
|
34
|
+
const contracts = manifestActionContracts(manifest);
|
|
35
|
+
for (const { action, node, path } of getRecipeWorkflowActionEntries(recipe)) {
|
|
36
|
+
if (action === 'end' || action === 'call')
|
|
37
|
+
continue;
|
|
38
|
+
if (!declaredActions.has(action)) {
|
|
39
|
+
addFinding(ctx, 'error', 'recipe.action_not_declared_by_manifest', `${path}.action`, `Recipe action ${action} is not declared by the runner action manifest.`);
|
|
40
|
+
continue;
|
|
54
41
|
}
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
42
|
+
const contract = contracts.get(action);
|
|
43
|
+
if (!contract?.schema) {
|
|
44
|
+
addFinding(ctx, 'error', 'recipe.action_schema_missing', `${path}.action`, `Action ${action} must declare a parameter schema in the runner manifest.`);
|
|
45
|
+
}
|
|
46
|
+
else {
|
|
47
|
+
const paramsResult = validateRecipeParams(getRecipeActionParams(node), contract.schema, {
|
|
48
|
+
allowTemplates: true,
|
|
49
|
+
});
|
|
50
|
+
ctx.findings.push(...paramsResult.findings.map((finding) => rebaseFinding(finding, path)));
|
|
51
|
+
}
|
|
52
|
+
if (isRecord(node.cases)) {
|
|
53
|
+
if (!contract?.resultCases?.length) {
|
|
54
|
+
addFinding(ctx, 'error', 'recipe.action_cases_not_declared', `${path}.cases`, `Action ${action} uses result cases but its manifest declares none.`);
|
|
55
|
+
}
|
|
56
|
+
else {
|
|
57
|
+
const allowed = new Set(contract.resultCases);
|
|
58
|
+
for (const caseName of Object.keys(node.cases)) {
|
|
59
|
+
if (!allowed.has(caseName)) {
|
|
60
|
+
addFinding(ctx, 'error', 'recipe.action_case_not_declared', `${path}.cases.${caseName}`, `Case ${caseName} is not declared by action ${action}.`);
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
}
|
|
65
64
|
}
|
|
66
65
|
}
|
|
67
|
-
|
|
68
|
-
if (!Array.isArray(value[lifecycle]))
|
|
69
|
-
continue;
|
|
70
|
-
value[lifecycle].forEach((node, index) => {
|
|
71
|
-
entries.push(...collectNodeObservationPolicies(node, `${path}.${lifecycle}[${index}]`));
|
|
72
|
-
});
|
|
73
|
-
}
|
|
74
|
-
return entries;
|
|
75
|
-
}
|
|
76
|
-
function collectNodeObservationPolicies(value, path) {
|
|
77
|
-
if (!isRecord(value) || typeof value.action !== 'string')
|
|
78
|
-
return [];
|
|
79
|
-
const entries = [];
|
|
80
|
-
for (const field of ['observe', 'expect_observations']) {
|
|
81
|
-
if (hasOwn(value, field))
|
|
82
|
-
entries.push({ path: `${path}.${field}`, policy: value[field], field, node: value });
|
|
83
|
-
}
|
|
84
|
-
return entries;
|
|
66
|
+
return finishResult(ctx);
|
|
85
67
|
}
|
|
86
68
|
export function validateRecipeDocument(recipe, options) {
|
|
87
69
|
const ctx = createContext();
|
|
@@ -89,63 +71,118 @@ export function validateRecipeDocument(recipe, options) {
|
|
|
89
71
|
addFinding(ctx, 'error', 'recipe.invalid_document', '$', 'Recipe document must be a JSON object.');
|
|
90
72
|
return finishResult(ctx);
|
|
91
73
|
}
|
|
92
|
-
const
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
if (options?.requireSchemaRef === true && schemaRef == null) {
|
|
97
|
-
addFinding(ctx, 'error', 'recipe.missing_schema_ref', '$schema', `Recipe must set $schema to ${expectedSchemaRef}.`);
|
|
98
|
-
}
|
|
99
|
-
else if (schemaRef != null && schemaRef !== expectedSchemaRef) {
|
|
100
|
-
addFinding(ctx, 'error', 'recipe.unsupported_schema_ref', '$schema', `Unsupported $schema ${JSON.stringify(schemaRef)} for schema_version ${JSON.stringify(schemaVersion)}; expected ${expectedSchemaRef}.`);
|
|
74
|
+
for (const field of Object.keys(recipe)) {
|
|
75
|
+
if (!RECIPE_FIELDS.has(field)) {
|
|
76
|
+
addFinding(ctx, 'error', 'recipe.unsupported_field', field, `Recipe Protocol v1 does not support top-level field ${field}.`);
|
|
77
|
+
}
|
|
101
78
|
}
|
|
102
|
-
if (!hasOwn(recipe, '
|
|
103
|
-
addFinding(ctx, 'error', 'recipe.
|
|
79
|
+
if (!hasOwn(recipe, '$schema')) {
|
|
80
|
+
addFinding(ctx, 'error', 'recipe.missing_schema_ref', '$schema', `Recipe must set $schema to ${RECIPE_PROTOCOL_SCHEMA_URL}.`);
|
|
104
81
|
}
|
|
105
|
-
else if (
|
|
106
|
-
addFinding(ctx, 'error', 'recipe.
|
|
82
|
+
else if (recipe.$schema !== RECIPE_PROTOCOL_SCHEMA_URL) {
|
|
83
|
+
addFinding(ctx, 'error', 'recipe.unsupported_schema_ref', '$schema', `Recipe $schema must equal ${RECIPE_PROTOCOL_SCHEMA_URL}.`);
|
|
107
84
|
}
|
|
85
|
+
requireStringField(ctx, recipe, 'description', 'description');
|
|
108
86
|
validateOptionalStringField(ctx, recipe, 'title', 'title');
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
87
|
+
if (hasOwn(recipe, 'paramsSchema')) {
|
|
88
|
+
ctx.findings.push(...validateRecipeParamsSchema(recipe.paramsSchema).findings);
|
|
89
|
+
}
|
|
90
|
+
const proofTargetIds = validateProofTargets(ctx, recipe.proofTargets);
|
|
112
91
|
const workflow = extractWorkflow(ctx, recipe);
|
|
113
|
-
if (workflow
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
// controls whether a declared `uses` catalog counts as resolving refs.
|
|
119
|
-
validateFlowCalls(ctx, recipe, workflow, {
|
|
120
|
-
...(options?.externalFlowIds ? { externalFlowIds: options.externalFlowIds } : {}),
|
|
121
|
-
skipResolution: options?.skipFlowCallResolution === true,
|
|
122
|
-
externalCatalogsResolvable: options?.externalCatalogsResolvable !== false,
|
|
92
|
+
if (workflow) {
|
|
93
|
+
validateWorkflowGraph(ctx, workflow);
|
|
94
|
+
validateRecipeCalls(ctx, workflow, {
|
|
95
|
+
...(options?.externalRecipeIds ? { externalRecipeIds: options.externalRecipeIds } : {}),
|
|
96
|
+
skipResolution: options?.skipRecipeCallResolution === true,
|
|
123
97
|
});
|
|
98
|
+
validateProofLinks(ctx, workflow.nodes, proofTargetIds);
|
|
124
99
|
}
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
100
|
+
return finishResult(ctx);
|
|
101
|
+
}
|
|
102
|
+
function validateProofTargets(ctx, value) {
|
|
103
|
+
const ids = new Set();
|
|
104
|
+
if (value == null)
|
|
105
|
+
return ids;
|
|
106
|
+
if (!Array.isArray(value)) {
|
|
107
|
+
addFinding(ctx, 'error', 'recipe.invalid_proof_targets', 'proofTargets', 'proofTargets must be an array.');
|
|
108
|
+
return ids;
|
|
109
|
+
}
|
|
110
|
+
value.forEach((target, index) => {
|
|
111
|
+
const path = `proofTargets[${index}]`;
|
|
112
|
+
if (!isRecord(target)) {
|
|
113
|
+
addFinding(ctx, 'error', 'recipe.invalid_proof_target', path, `${path} must be an object.`);
|
|
114
|
+
return;
|
|
115
|
+
}
|
|
116
|
+
for (const field of Object.keys(target)) {
|
|
117
|
+
if (field !== 'id' && field !== 'claim') {
|
|
118
|
+
addFinding(ctx, 'error', 'recipe.unsupported_proof_target_field', `${path}.${field}`, `Proof targets do not support ${field}.`);
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
if (!isNonEmptyString(target.id)) {
|
|
122
|
+
addFinding(ctx, 'error', 'recipe.invalid_proof_target_id', `${path}.id`, 'Proof target id must be a non-empty string.');
|
|
136
123
|
}
|
|
137
|
-
if (
|
|
138
|
-
|
|
139
|
-
entry.policy.length > 0 &&
|
|
140
|
-
entry.node.observe === false) {
|
|
141
|
-
addFinding(ctx, 'error', 'recipe.contradictory_observation_expectation', entry.path, 'expect_observations must be empty when observe is false; the node can never record observations.');
|
|
124
|
+
else if (ids.has(target.id)) {
|
|
125
|
+
addFinding(ctx, 'error', 'recipe.duplicate_proof_target', `${path}.id`, `Proof target ${target.id} is duplicated.`);
|
|
142
126
|
}
|
|
127
|
+
else {
|
|
128
|
+
ids.add(target.id);
|
|
129
|
+
}
|
|
130
|
+
if (!isNonEmptyString(target.claim)) {
|
|
131
|
+
addFinding(ctx, 'error', 'recipe.invalid_proof_target_claim', `${path}.claim`, 'Proof target claim must be a non-empty string.');
|
|
132
|
+
}
|
|
133
|
+
});
|
|
134
|
+
return ids;
|
|
135
|
+
}
|
|
136
|
+
function validateProofLinks(ctx, nodes, declared) {
|
|
137
|
+
const covered = new Set();
|
|
138
|
+
for (const [nodeId, node] of Object.entries(nodes)) {
|
|
139
|
+
if (!Array.isArray(node.proves))
|
|
140
|
+
continue;
|
|
141
|
+
node.proves.forEach((target, index) => {
|
|
142
|
+
if (!isNonEmptyString(target))
|
|
143
|
+
return;
|
|
144
|
+
if (!declared.has(target)) {
|
|
145
|
+
addFinding(ctx, 'error', 'recipe.undeclared_proof_target', `workflow.nodes.${nodeId}.proves[${index}]`, `Proof target ${target} is not declared by recipe.proofTargets.`);
|
|
146
|
+
}
|
|
147
|
+
covered.add(target);
|
|
148
|
+
});
|
|
143
149
|
}
|
|
144
|
-
|
|
150
|
+
for (const target of declared) {
|
|
151
|
+
if (!covered.has(target)) {
|
|
152
|
+
addFinding(ctx, 'error', 'recipe.uncovered_proof_target', 'proofTargets', `Proof target ${target} is not covered by any workflow node.`);
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
function manifestActionContracts(manifest) {
|
|
157
|
+
const contracts = new Map();
|
|
158
|
+
if (!isRecord(manifest))
|
|
159
|
+
return contracts;
|
|
160
|
+
if (isRecord(manifest.action_metadata)) {
|
|
161
|
+
for (const [name, entry] of Object.entries(manifest.action_metadata)) {
|
|
162
|
+
if (!isRecord(entry))
|
|
163
|
+
continue;
|
|
164
|
+
contracts.set(name, actionContract(entry));
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
if (Array.isArray(manifest.custom_actions)) {
|
|
168
|
+
for (const entry of manifest.custom_actions) {
|
|
169
|
+
if (isRecord(entry) && isNonEmptyString(entry.name)) {
|
|
170
|
+
contracts.set(entry.name, actionContract(entry));
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
return contracts;
|
|
175
|
+
}
|
|
176
|
+
function actionContract(entry) {
|
|
177
|
+
return {
|
|
178
|
+
...(isRecord(entry.schema) ? { schema: entry.schema } : {}),
|
|
179
|
+
...(Array.isArray(entry.result_cases)
|
|
180
|
+
? { resultCases: entry.result_cases.filter(isNonEmptyString) }
|
|
181
|
+
: {}),
|
|
182
|
+
};
|
|
145
183
|
}
|
|
146
|
-
function
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
new Set(value).size === value.length);
|
|
184
|
+
function rebaseFinding(finding, nodePath) {
|
|
185
|
+
const suffix = finding.path === 'params' ? '' : finding.path.replace(/^params\.?/u, '.');
|
|
186
|
+
return { ...finding, path: `${nodePath}${suffix}` };
|
|
150
187
|
}
|
|
151
188
|
//# sourceMappingURL=document.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"document.js","sourceRoot":"","sources":["../../src/recipe/document.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,aAAa,EACb,YAAY,EACZ,MAAM,EACN,QAAQ,EACR,0BAA0B,
|
|
1
|
+
{"version":3,"file":"document.js","sourceRoot":"","sources":["../../src/recipe/document.ts"],"names":[],"mappings":"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"}
|
package/dist/recipe/index.d.ts
CHANGED
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
export { mergeRecipeValidationResults, validateArtifactManifestDocument, validateRecipeArtifactPackage, } from './artifact.js';
|
|
2
|
-
export { BUILT_IN_UI_OBSERVERS, type BuiltInUiObserverRef, isRecord, OFFICIAL_RECIPE_ACTIONS, type OfficialActionName,
|
|
2
|
+
export { BUILT_IN_UI_OBSERVERS, type BuiltInUiObserverRef, isRecord, OFFICIAL_RECIPE_ACTIONS, type OfficialActionName, RECIPE_PROTOCOL_SCHEMA_URL, RECIPE_PROTOCOL_SCHEMA_URLS, RECIPE_PROTOCOL_SCHEMA_VERSION, type RecipeActionCatalogEntry, type RecipeActionCatalogExample, type RecipeActionManifestDocument, type RecipeActionName, type RecipeArtifactPackageInput, type RecipeCustomActionDeclaration, type RecipeNativeBindingDeclaration, type RecipeObserverDeclaration, type RecipeResolutionDependency, type RecipeResolutionDocument, type RecipeResolutionEdge, type RecipeRuntimeCapabilityDeclaration, type RecipeValidationFinding, type RecipeValidationResult, type RecipeValidationSeverity, type RecipeValidationStatus, type UiObserverRef, } from './common.js';
|
|
3
3
|
export { recipeProtocolSchemaUrlForVersion } from './common.js';
|
|
4
|
-
export {
|
|
4
|
+
export { canonicalRecipeJson, digestRecipeDocument, resolvedRecipeArtifactPath } from './digest.js';
|
|
5
|
+
export { type RecipeDocumentValidationOptions, validateRecipeDocument, validateRecipeWithManifest, validateResolvedRecipeActionNode, } from './document.js';
|
|
5
6
|
export { getRecipeActionManifestActionNames, validateRecipeActionManifestDocument, } from './manifest.js';
|
|
6
|
-
export {
|
|
7
|
+
export { applyRecipeParamDefaults, validateRecipeParams, validateRecipeParamsSchema, } from './params.js';
|
|
8
|
+
export { DEFAULT_UNTRUSTED_RECIPE_BLOCKED_CAPABILITIES, officialRecipeActionCapabilities, RECIPE_EXECUTION_CAPABILITIES, type RecipeExecutionApproval, type RecipeExecutionCapability, type RecipeExecutionPlan, type RecipePlanNode, type RecipeSourceKind, type RecipeSourceProvenance, type RecipeSourceTrust, type RecipeTrustFailure, } from './trust.js';
|
|
9
|
+
export { getRecipeCallRefs, getRecipeWorkflowActions, getRecipeWorkflowNodeIds, isDynamicRecipeRef, normalizeRecipeRef, } from './workflow.js';
|
|
7
10
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/recipe/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,4BAA4B,EAC5B,gCAAgC,EAChC,6BAA6B,GAC9B,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,qBAAqB,EACrB,KAAK,oBAAoB,EACzB,QAAQ,EACR,uBAAuB,EACvB,KAAK,kBAAkB,EACvB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/recipe/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,4BAA4B,EAC5B,gCAAgC,EAChC,6BAA6B,GAC9B,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,qBAAqB,EACrB,KAAK,oBAAoB,EACzB,QAAQ,EACR,uBAAuB,EACvB,KAAK,kBAAkB,EACvB,0BAA0B,EAC1B,2BAA2B,EAC3B,8BAA8B,EAC9B,KAAK,wBAAwB,EAC7B,KAAK,0BAA0B,EAC/B,KAAK,4BAA4B,EACjC,KAAK,gBAAgB,EACrB,KAAK,0BAA0B,EAC/B,KAAK,6BAA6B,EAClC,KAAK,8BAA8B,EACnC,KAAK,yBAAyB,EAC9B,KAAK,0BAA0B,EAC/B,KAAK,wBAAwB,EAC7B,KAAK,oBAAoB,EACzB,KAAK,kCAAkC,EACvC,KAAK,uBAAuB,EAC5B,KAAK,sBAAsB,EAC3B,KAAK,wBAAwB,EAC7B,KAAK,sBAAsB,EAC3B,KAAK,aAAa,GACnB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,iCAAiC,EAAE,MAAM,aAAa,CAAC;AAChE,OAAO,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,0BAA0B,EAAE,MAAM,aAAa,CAAC;AACpG,OAAO,EACL,KAAK,+BAA+B,EACpC,sBAAsB,EACtB,0BAA0B,EAC1B,gCAAgC,GACjC,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,kCAAkC,EAClC,oCAAoC,GACrC,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,wBAAwB,EACxB,oBAAoB,EACpB,0BAA0B,GAC3B,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,6CAA6C,EAC7C,gCAAgC,EAChC,6BAA6B,EAC7B,KAAK,uBAAuB,EAC5B,KAAK,yBAAyB,EAC9B,KAAK,mBAAmB,EACxB,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACrB,KAAK,sBAAsB,EAC3B,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,GACxB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,iBAAiB,EACjB,wBAAwB,EACxB,wBAAwB,EACxB,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,eAAe,CAAC"}
|
package/dist/recipe/index.js
CHANGED
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
export { mergeRecipeValidationResults, validateArtifactManifestDocument, validateRecipeArtifactPackage, } from './artifact.js';
|
|
2
|
-
export { BUILT_IN_UI_OBSERVERS, isRecord, OFFICIAL_RECIPE_ACTIONS,
|
|
2
|
+
export { BUILT_IN_UI_OBSERVERS, isRecord, OFFICIAL_RECIPE_ACTIONS, RECIPE_PROTOCOL_SCHEMA_URL, RECIPE_PROTOCOL_SCHEMA_URLS, RECIPE_PROTOCOL_SCHEMA_VERSION, } from './common.js';
|
|
3
3
|
export { recipeProtocolSchemaUrlForVersion } from './common.js';
|
|
4
|
-
export {
|
|
4
|
+
export { canonicalRecipeJson, digestRecipeDocument, resolvedRecipeArtifactPath } from './digest.js';
|
|
5
|
+
export { validateRecipeDocument, validateRecipeWithManifest, validateResolvedRecipeActionNode, } from './document.js';
|
|
5
6
|
export { getRecipeActionManifestActionNames, validateRecipeActionManifestDocument, } from './manifest.js';
|
|
6
|
-
export {
|
|
7
|
+
export { applyRecipeParamDefaults, validateRecipeParams, validateRecipeParamsSchema, } from './params.js';
|
|
8
|
+
export { DEFAULT_UNTRUSTED_RECIPE_BLOCKED_CAPABILITIES, officialRecipeActionCapabilities, RECIPE_EXECUTION_CAPABILITIES, } from './trust.js';
|
|
9
|
+
export { getRecipeCallRefs, getRecipeWorkflowActions, getRecipeWorkflowNodeIds, isDynamicRecipeRef, normalizeRecipeRef, } from './workflow.js';
|
|
7
10
|
//# sourceMappingURL=index.js.map
|
package/dist/recipe/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/recipe/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,4BAA4B,EAC5B,gCAAgC,EAChC,6BAA6B,GAC9B,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,qBAAqB,EAErB,QAAQ,EACR,uBAAuB,EAEvB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/recipe/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,4BAA4B,EAC5B,gCAAgC,EAChC,6BAA6B,GAC9B,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,qBAAqB,EAErB,QAAQ,EACR,uBAAuB,EAEvB,0BAA0B,EAC1B,2BAA2B,EAC3B,8BAA8B,GAkB/B,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,iCAAiC,EAAE,MAAM,aAAa,CAAC;AAChE,OAAO,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,0BAA0B,EAAE,MAAM,aAAa,CAAC;AACpG,OAAO,EAEL,sBAAsB,EACtB,0BAA0B,EAC1B,gCAAgC,GACjC,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,kCAAkC,EAClC,oCAAoC,GACrC,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,wBAAwB,EACxB,oBAAoB,EACpB,0BAA0B,GAC3B,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,6CAA6C,EAC7C,gCAAgC,EAChC,6BAA6B,GAS9B,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,iBAAiB,EACjB,wBAAwB,EACxB,wBAAwB,EACxB,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,eAAe,CAAC"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { type RecipeValidationResult } from './common.js';
|
|
2
2
|
export declare function getRecipeActionManifestActionNames(manifest: unknown): string[];
|
|
3
3
|
export declare function validateRecipeActionManifestDocument(manifest: unknown): RecipeValidationResult;
|
|
4
|
-
export declare function getRecipeActionManifestPreconditionIds(manifest: unknown): string[];
|
|
5
4
|
//# sourceMappingURL=manifest.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manifest.d.ts","sourceRoot":"","sources":["../../src/recipe/manifest.ts"],"names":[],"mappings":"AAAA,OAAO,EAUL,KAAK,sBAAsB,EAC5B,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"manifest.d.ts","sourceRoot":"","sources":["../../src/recipe/manifest.ts"],"names":[],"mappings":"AAAA,OAAO,EAUL,KAAK,sBAAsB,EAC5B,MAAM,aAAa,CAAC;AAiBrB,wBAAgB,kCAAkC,CAAC,QAAQ,EAAE,OAAO,GAAG,MAAM,EAAE,CAc9E;AAsLD,wBAAgB,oCAAoC,CAAC,QAAQ,EAAE,OAAO,GAAG,sBAAsB,CAsc9F"}
|