@farmslot/protocol 0.14.0 → 0.15.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 +19 -1
- package/README.md +43 -14
- package/dist/agents/reviewer-context.d.ts.map +1 -1
- package/dist/agents/reviewer-context.js +2 -1
- package/dist/agents/reviewer-context.js.map +1 -1
- package/dist/agents/roles.d.ts +9 -0
- package/dist/agents/roles.d.ts.map +1 -1
- package/dist/agents/roles.js +15 -1
- package/dist/agents/roles.js.map +1 -1
- package/dist/checklist-target.d.ts +1 -0
- package/dist/checklist-target.d.ts.map +1 -1
- package/dist/checklist-target.js +9 -0
- package/dist/checklist-target.js.map +1 -1
- package/dist/contracts/agents.d.ts +2 -0
- package/dist/contracts/agents.d.ts.map +1 -1
- package/dist/contracts/dispatch.d.ts +18 -0
- 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/provider-accounts.d.ts +52 -0
- package/dist/contracts/provider-accounts.d.ts.map +1 -0
- package/dist/contracts/provider-accounts.js +7 -0
- package/dist/contracts/provider-accounts.js.map +1 -0
- package/dist/contracts/roadmap.d.ts +4 -0
- package/dist/contracts/roadmap.d.ts.map +1 -1
- package/dist/contracts/roadmap.js +11 -0
- package/dist/contracts/roadmap.js.map +1 -1
- package/dist/contracts/runs.d.ts +48 -2
- package/dist/contracts/runs.d.ts.map +1 -1
- package/dist/contracts/runs.js +8 -1
- package/dist/contracts/runs.js.map +1 -1
- package/dist/contracts/work-graph.d.ts +1 -0
- package/dist/contracts/work-graph.d.ts.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/recipe/artifact.d.ts.map +1 -1
- package/dist/recipe/artifact.js +78 -1
- package/dist/recipe/artifact.js.map +1 -1
- package/dist/recipe/common.d.ts +3 -0
- package/dist/recipe/common.d.ts.map +1 -1
- package/dist/recipe/common.js +1 -0
- package/dist/recipe/common.js.map +1 -1
- package/dist/recipe/index.d.ts +2 -1
- package/dist/recipe/index.d.ts.map +1 -1
- package/dist/recipe/index.js +2 -1
- package/dist/recipe/index.js.map +1 -1
- package/dist/recipe/suite.d.ts +51 -0
- package/dist/recipe/suite.d.ts.map +1 -0
- package/dist/recipe/suite.js +345 -0
- package/dist/recipe/suite.js.map +1 -0
- package/dist/recipes/step-io.d.ts +2 -0
- package/dist/recipes/step-io.d.ts.map +1 -1
- package/dist/rpc/auth.d.ts +2 -0
- package/dist/rpc/auth.d.ts.map +1 -1
- package/dist/rpc/backlog.d.ts +10 -0
- package/dist/rpc/backlog.d.ts.map +1 -1
- package/dist/rpc/backlog.js +1 -0
- package/dist/rpc/backlog.js.map +1 -1
- package/dist/rpc/dispatch.d.ts +6 -0
- package/dist/rpc/dispatch.d.ts.map +1 -1
- package/dist/rpc/fs.d.ts +23 -0
- package/dist/rpc/fs.d.ts.map +1 -1
- package/dist/rpc/gateway.d.ts +5 -0
- package/dist/rpc/gateway.d.ts.map +1 -1
- package/dist/rpc/index.d.ts +1 -0
- package/dist/rpc/index.d.ts.map +1 -1
- package/dist/rpc/index.js +1 -0
- package/dist/rpc/index.js.map +1 -1
- package/dist/rpc/nodes.d.ts +13 -0
- package/dist/rpc/nodes.d.ts.map +1 -1
- package/dist/rpc/provider-accounts.d.ts +14 -0
- package/dist/rpc/provider-accounts.d.ts.map +1 -0
- package/dist/rpc/provider-accounts.js +2 -0
- package/dist/rpc/provider-accounts.js.map +1 -0
- package/dist/rpc/registry.d.ts +3 -0
- package/dist/rpc/registry.d.ts.map +1 -1
- package/dist/rpc/registry.js +4 -0
- package/dist/rpc/registry.js.map +1 -1
- package/dist/rpc/roadmap.d.ts +1 -1
- package/dist/rpc/roadmap.d.ts.map +1 -1
- package/dist/rpc/roadmap.js +1 -1
- package/dist/rpc/roadmap.js.map +1 -1
- package/dist/runs/decision-resolution.d.ts +27 -0
- package/dist/runs/decision-resolution.d.ts.map +1 -0
- package/dist/runs/decision-resolution.js +43 -0
- package/dist/runs/decision-resolution.js.map +1 -0
- package/dist/transport/signal.d.ts +8 -1
- package/dist/transport/signal.d.ts.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +1 -1
- package/schemas/recipe-suite-result-v1.schema.json +134 -0
- package/schemas/recipe-suite-scope-v1.schema.json +41 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"signal.d.ts","sourceRoot":"","sources":["../../src/transport/signal.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,SAAS,EACT,yBAAyB,EACzB,sBAAsB,EACvB,MAAM,uBAAuB,CAAC;AAE/B,MAAM,WAAW,YAAY;IAC3B,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,SAAS,GAAG,SAAS,GAAG,UAAU,GAAG,QAAQ,GAAG,MAAM,CAAC;IAC/D,OAAO,CAAC,EAAE,SAAS,GAAG,SAAS,GAAG,SAAS,CAAC;IAC5C,WAAW,CAAC,EAAE,yBAAyB,CAAC;IACxC,QAAQ,CAAC,EAAE,sBAAsB,CAAC;IAClC,eAAe,CAAC,EAAE,2BAA2B,CAAC;IAC9C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,2BAA2B;IAC1C,aAAa,EAAE,CAAC,CAAC;IACjB;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;OAGG;IACH,MAAM,EAAE,0BAA0B,EAAE,CAAC;CACtC;AAED,MAAM,WAAW,0BAA0B;IACzC,kFAAkF;IAClF,UAAU,EAAE,MAAM,CAAC;IACnB,0FAA0F;IAC1F,KAAK,EAAE,MAAM,CAAC;IACd,6EAA6E;IAC7E,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,sEAAsE;AACtE,MAAM,MAAM,qBAAqB,GAC7B,OAAO,GACP,SAAS,GACT,cAAc,GACd,SAAS,GACT,cAAc,GACd,gBAAgB,GAChB,cAAc,GACd,kBAAkB,GAClB,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"signal.d.ts","sourceRoot":"","sources":["../../src/transport/signal.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,SAAS,EACT,yBAAyB,EACzB,sBAAsB,EACvB,MAAM,uBAAuB,CAAC;AAE/B,MAAM,WAAW,YAAY;IAC3B,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,SAAS,GAAG,SAAS,GAAG,UAAU,GAAG,QAAQ,GAAG,MAAM,CAAC;IAC/D,OAAO,CAAC,EAAE,SAAS,GAAG,SAAS,GAAG,SAAS,CAAC;IAC5C,WAAW,CAAC,EAAE,yBAAyB,CAAC;IACxC,QAAQ,CAAC,EAAE,sBAAsB,CAAC;IAClC,eAAe,CAAC,EAAE,2BAA2B,CAAC;IAC9C,eAAe,CAAC,EAAE,2BAA2B,CAAC;IAC9C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,wFAAwF;IACxF,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,2BAA2B;IAC1C,0EAA0E;IAC1E,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,WAAW,2BAA2B;IAC1C,aAAa,EAAE,CAAC,CAAC;IACjB;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;OAGG;IACH,MAAM,EAAE,0BAA0B,EAAE,CAAC;CACtC;AAED,MAAM,WAAW,0BAA0B;IACzC,kFAAkF;IAClF,UAAU,EAAE,MAAM,CAAC;IACnB,0FAA0F;IAC1F,KAAK,EAAE,MAAM,CAAC;IACd,6EAA6E;IAC7E,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,sEAAsE;AACtE,MAAM,MAAM,qBAAqB,GAC7B,OAAO,GACP,SAAS,GACT,cAAc,GACd,SAAS,GACT,cAAc,GACd,gBAAgB,GAChB,cAAc,GACd,kBAAkB,GAClB,OAAO,GACP,mBAAmB,GACnB,kCAAkC,CAAC;AAEvC,MAAM,WAAW,uBAAuB;IACtC,EAAE,EAAE,OAAO,CAAC;IACZ,IAAI,EAAE,qBAAqB,CAAC;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,kFAAkF;IAClF,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,YAAY,CAAC;CACvB"}
|
package/dist/version.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const PROTOCOL_VERSION = "0.
|
|
1
|
+
export declare const PROTOCOL_VERSION = "0.15.0";
|
|
2
2
|
//# sourceMappingURL=version.d.ts.map
|
package/dist/version.js
CHANGED
|
@@ -3,5 +3,5 @@
|
|
|
3
3
|
// fleet can be upgraded deliberately; optional method/event fields remain
|
|
4
4
|
// backward-compatible unless a caller requires a new node capability.
|
|
5
5
|
// Format: semver-ish, increment when methods/events/frame format changes.
|
|
6
|
-
export const PROTOCOL_VERSION = '0.
|
|
6
|
+
export const PROTOCOL_VERSION = '0.15.0';
|
|
7
7
|
//# sourceMappingURL=version.js.map
|
package/package.json
CHANGED
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"$id": "https://farmslot.io/schemas/recipe-suite-result-v1.schema.json",
|
|
4
|
+
"title": "Farmslot Recipe Suite Result v1",
|
|
5
|
+
"description": "A fail-closed resolution for every case in an immutable recipe suite scope.",
|
|
6
|
+
"type": "object",
|
|
7
|
+
"required": ["$schema", "suite_id", "scope_digest", "totals", "resolutions"],
|
|
8
|
+
"properties": {
|
|
9
|
+
"$schema": {
|
|
10
|
+
"const": "https://farmslot.io/schemas/recipe-suite-result-v1.schema.json",
|
|
11
|
+
"description": "Canonical Recipe Suite Result v1 schema URL."
|
|
12
|
+
},
|
|
13
|
+
"suite_id": {
|
|
14
|
+
"type": "string",
|
|
15
|
+
"minLength": 1,
|
|
16
|
+
"description": "Suite identifier copied from the frozen scope."
|
|
17
|
+
},
|
|
18
|
+
"scope_digest": {
|
|
19
|
+
"type": "string",
|
|
20
|
+
"pattern": "^sha256:[a-f0-9]{64}$",
|
|
21
|
+
"description": "SHA-256 digest of the canonical frozen scope document."
|
|
22
|
+
},
|
|
23
|
+
"totals": {
|
|
24
|
+
"$ref": "#/$defs/totals",
|
|
25
|
+
"description": "Derived counts that must reconcile with the scope and resolutions."
|
|
26
|
+
},
|
|
27
|
+
"resolutions": {
|
|
28
|
+
"type": "array",
|
|
29
|
+
"minItems": 1,
|
|
30
|
+
"description": "Exactly one verdict or explicit non-execution record per declared case.",
|
|
31
|
+
"items": {
|
|
32
|
+
"oneOf": [{ "$ref": "#/$defs/verdict" }, { "$ref": "#/$defs/notExecuted" }]
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
},
|
|
36
|
+
"additionalProperties": false,
|
|
37
|
+
"$defs": {
|
|
38
|
+
"totals": {
|
|
39
|
+
"type": "object",
|
|
40
|
+
"required": ["declared", "executed", "not_executed"],
|
|
41
|
+
"properties": {
|
|
42
|
+
"declared": {
|
|
43
|
+
"type": "integer",
|
|
44
|
+
"minimum": 1,
|
|
45
|
+
"description": "Number of cases in the frozen scope."
|
|
46
|
+
},
|
|
47
|
+
"executed": {
|
|
48
|
+
"type": "integer",
|
|
49
|
+
"minimum": 0,
|
|
50
|
+
"description": "Number of cases resolved by retained recipe-run summaries."
|
|
51
|
+
},
|
|
52
|
+
"not_executed": {
|
|
53
|
+
"type": "integer",
|
|
54
|
+
"minimum": 0,
|
|
55
|
+
"description": "Number of cases carrying explicit non-execution records."
|
|
56
|
+
}
|
|
57
|
+
},
|
|
58
|
+
"additionalProperties": false
|
|
59
|
+
},
|
|
60
|
+
"verdict": {
|
|
61
|
+
"type": "object",
|
|
62
|
+
"required": ["id", "kind", "status", "summary_path", "summary_digest"],
|
|
63
|
+
"properties": {
|
|
64
|
+
"id": {
|
|
65
|
+
"type": "string",
|
|
66
|
+
"minLength": 1,
|
|
67
|
+
"description": "Declared case identifier this verdict resolves."
|
|
68
|
+
},
|
|
69
|
+
"kind": {
|
|
70
|
+
"const": "verdict",
|
|
71
|
+
"description": "Marks a case resolved by a completed recipe run."
|
|
72
|
+
},
|
|
73
|
+
"status": {
|
|
74
|
+
"enum": ["pass", "fail", "unknown"],
|
|
75
|
+
"description": "Terminal status copied from the retained summary."
|
|
76
|
+
},
|
|
77
|
+
"summary_path": {
|
|
78
|
+
"type": "string",
|
|
79
|
+
"minLength": 1,
|
|
80
|
+
"pattern": "^(?![A-Za-z]:)(?![\\\\/])(?!.*(?:^|[\\\\/])\\.\\.(?:[\\\\/]|$)).+$",
|
|
81
|
+
"description": "Safe relative path to the retained summary in the suite package."
|
|
82
|
+
},
|
|
83
|
+
"summary_digest": {
|
|
84
|
+
"type": "string",
|
|
85
|
+
"pattern": "^sha256:[a-f0-9]{64}$",
|
|
86
|
+
"description": "SHA-256 digest of the canonical retained summary document."
|
|
87
|
+
}
|
|
88
|
+
},
|
|
89
|
+
"additionalProperties": false
|
|
90
|
+
},
|
|
91
|
+
"notExecuted": {
|
|
92
|
+
"type": "object",
|
|
93
|
+
"required": ["id", "kind", "reason_class", "detail"],
|
|
94
|
+
"properties": {
|
|
95
|
+
"id": {
|
|
96
|
+
"type": "string",
|
|
97
|
+
"minLength": 1,
|
|
98
|
+
"description": "Declared case identifier that was not executed."
|
|
99
|
+
},
|
|
100
|
+
"kind": {
|
|
101
|
+
"const": "not_executed",
|
|
102
|
+
"description": "Marks a case resolved by an explicit non-execution reason."
|
|
103
|
+
},
|
|
104
|
+
"reason_class": {
|
|
105
|
+
"enum": ["prerequisite_missing", "ordering_dependent", "needs_manual", "oversight"],
|
|
106
|
+
"description": "Machine-readable reason the case did not execute."
|
|
107
|
+
},
|
|
108
|
+
"detail": {
|
|
109
|
+
"type": "string",
|
|
110
|
+
"minLength": 1,
|
|
111
|
+
"description": "Specific explanation for this non-execution decision."
|
|
112
|
+
},
|
|
113
|
+
"blocked_by": {
|
|
114
|
+
"type": "array",
|
|
115
|
+
"minItems": 1,
|
|
116
|
+
"uniqueItems": true,
|
|
117
|
+
"items": { "type": "string", "minLength": 1 },
|
|
118
|
+
"description": "Declared case IDs blocking an ordering-dependent case."
|
|
119
|
+
}
|
|
120
|
+
},
|
|
121
|
+
"additionalProperties": false,
|
|
122
|
+
"allOf": [
|
|
123
|
+
{
|
|
124
|
+
"if": {
|
|
125
|
+
"properties": { "reason_class": { "const": "ordering_dependent" } },
|
|
126
|
+
"required": ["reason_class"]
|
|
127
|
+
},
|
|
128
|
+
"then": { "properties": { "blocked_by": true }, "required": ["blocked_by"] },
|
|
129
|
+
"else": { "not": { "required": ["blocked_by"] } }
|
|
130
|
+
}
|
|
131
|
+
]
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"$id": "https://farmslot.io/schemas/recipe-suite-scope-v1.schema.json",
|
|
4
|
+
"title": "Farmslot Recipe Suite Scope v1",
|
|
5
|
+
"description": "The immutable set of opaque cases a recipe suite must resolve.",
|
|
6
|
+
"type": "object",
|
|
7
|
+
"required": ["$schema", "suite_id", "cases"],
|
|
8
|
+
"properties": {
|
|
9
|
+
"$schema": {
|
|
10
|
+
"const": "https://farmslot.io/schemas/recipe-suite-scope-v1.schema.json",
|
|
11
|
+
"description": "Canonical Recipe Suite Scope v1 schema URL."
|
|
12
|
+
},
|
|
13
|
+
"suite_id": {
|
|
14
|
+
"type": "string",
|
|
15
|
+
"minLength": 1,
|
|
16
|
+
"description": "Stable identifier shared by the scope and its result."
|
|
17
|
+
},
|
|
18
|
+
"cases": {
|
|
19
|
+
"type": "array",
|
|
20
|
+
"minItems": 1,
|
|
21
|
+
"uniqueItems": true,
|
|
22
|
+
"description": "Complete case set frozen before any case executes.",
|
|
23
|
+
"items": { "$ref": "#/$defs/case" }
|
|
24
|
+
}
|
|
25
|
+
},
|
|
26
|
+
"additionalProperties": false,
|
|
27
|
+
"$defs": {
|
|
28
|
+
"case": {
|
|
29
|
+
"type": "object",
|
|
30
|
+
"required": ["id"],
|
|
31
|
+
"properties": {
|
|
32
|
+
"id": {
|
|
33
|
+
"type": "string",
|
|
34
|
+
"minLength": 1,
|
|
35
|
+
"description": "Opaque case identifier unique within the suite."
|
|
36
|
+
}
|
|
37
|
+
},
|
|
38
|
+
"additionalProperties": false
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
}
|