@farmslot/protocol 0.82.3 → 0.83.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.
- package/CHANGELOG.md +16 -0
- package/dist/contracts/acceptance.d.ts +2 -0
- package/dist/contracts/acceptance.d.ts.map +1 -1
- package/dist/contracts/acceptance.js +2 -0
- package/dist/contracts/acceptance.js.map +1 -1
- package/dist/contracts/agents.d.ts +2 -0
- package/dist/contracts/agents.d.ts.map +1 -1
- package/dist/contracts/agents.js.map +1 -1
- package/dist/contracts/config.d.ts +8 -0
- package/dist/contracts/config.d.ts.map +1 -1
- package/dist/contracts/config.js +9 -0
- package/dist/contracts/config.js.map +1 -1
- package/dist/contracts/runs.d.ts +13 -0
- package/dist/contracts/runs.d.ts.map +1 -1
- package/dist/contracts/runs.js +11 -0
- package/dist/contracts/runs.js.map +1 -1
- package/dist/contracts/task.d.ts +2 -1
- package/dist/contracts/task.d.ts.map +1 -1
- package/dist/contracts/task.js +2 -2
- package/dist/contracts/task.js.map +1 -1
- package/dist/node/farm-layout.d.ts.map +1 -1
- package/dist/node/farm-layout.js +2 -3
- package/dist/node/farm-layout.js.map +1 -1
- package/dist/node/farm-paths-storage.d.ts +6 -0
- package/dist/node/farm-paths-storage.d.ts.map +1 -0
- package/dist/node/farm-paths-storage.js +54 -0
- package/dist/node/farm-paths-storage.js.map +1 -0
- package/dist/node/farm-paths.d.ts +149 -0
- package/dist/node/farm-paths.d.ts.map +1 -0
- package/dist/node/farm-paths.js +422 -0
- package/dist/node/farm-paths.js.map +1 -0
- package/dist/node/farmslot-home.d.ts +1 -7
- package/dist/node/farmslot-home.d.ts.map +1 -1
- package/dist/node/farmslot-home.js +6 -16
- package/dist/node/farmslot-home.js.map +1 -1
- package/dist/node/slot-by-repo.d.ts.map +1 -1
- package/dist/node/slot-by-repo.js +11 -3
- package/dist/node/slot-by-repo.js.map +1 -1
- package/dist/node/tree-fingerprint.d.ts +9 -0
- package/dist/node/tree-fingerprint.d.ts.map +1 -0
- package/dist/node/tree-fingerprint.js +30 -0
- package/dist/node/tree-fingerprint.js.map +1 -0
- package/dist/rpc/nodes.d.ts +2 -0
- package/dist/rpc/nodes.d.ts.map +1 -1
- package/dist/rpc/nodes.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +11 -1
- package/scripts/acceptance.d.mts +5 -0
- package/scripts/acceptance.mjs +34 -0
package/dist/rpc/nodes.d.ts
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
|
+
import type { NodeFarmPaths } from '../node/farm-paths.js';
|
|
1
2
|
import type { PeerVersionDeclaration } from '../peer-versions.js';
|
|
2
3
|
import type { NodeLinkCapabilities } from '../transport/node-link.js';
|
|
3
4
|
export interface NodeInfo extends PeerVersionDeclaration {
|
|
5
|
+
farmPaths?: NodeFarmPaths;
|
|
4
6
|
machine: string;
|
|
5
7
|
pid: number;
|
|
6
8
|
nodeLink?: NodeLinkCapabilities;
|
package/dist/rpc/nodes.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nodes.d.ts","sourceRoot":"","sources":["../../src/rpc/nodes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAClE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAEtE,MAAM,WAAW,QAAS,SAAQ,sBAAsB;IACtD,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,CAAC,EAAE,oBAAoB,CAAC;IAChC,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,uEAAuE;IACvE,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,2FAA2F;IAC3F,WAAW,CAAC,EAAE,CAAC,CAAC;IAChB,2EAA2E;IAC3E,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,+EAA+E;IAC/E,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACjC;AAED,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,sBAAsB,EAAE,MAAM,CAAC;IAC/B,oBAAoB,CAAC,EAAE,sBAAsB,CAAC;CAC/C;AAED,MAAM,WAAW,sBAAuB,SAAQ,sBAAsB;IACpE,UAAU,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,oBAAoB,CAAC;CACjC;AAED,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,yEAAyE;AACzE,eAAO,MAAM,qBAAqB,OAAQ,CAAC;AAE3C,UAAU,oBAAoB;IAC5B,gEAAgE;IAChE,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,+EAA+E;IAC/E,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oEAAoE;IACpE,WAAW,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC;CACnC;AAED,MAAM,MAAM,cAAc,GACtB,CAAC,oBAAoB,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,KAAK,CAAA;CAAE,CAAC,GACtD,CAAC,oBAAoB,GAAG;IAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IAAC,GAAG,CAAC,EAAE,KAAK,CAAA;CAAE,CAAC,CAAC;AAE7D,wFAAwF;AACxF,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,WAAW,GAAG,SAAS,EAC/B,OAAO,EAAE,MAAM,IAAI,GAClB,MAAM,IAAI,CAOZ;AAED,6FAA6F;AAC7F,wBAAgB,sBAAsB,CACpC,aAAa,EAAE,CAAC,MAAM,EAAE,SAAS,GAAG,SAAS,KAAK,IAAI,EACtD,SAAS,SAAwB,EACjC,QAAQ,CAAC,EAAE,MAAM,IAAI,GACpB;IAAE,SAAS,IAAI,IAAI,CAAC;IAAC,OAAO,IAAI,IAAI,CAAA;CAAE,CAkBxC"}
|
|
1
|
+
{"version":3,"file":"nodes.d.ts","sourceRoot":"","sources":["../../src/rpc/nodes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAClE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAEtE,MAAM,WAAW,QAAS,SAAQ,sBAAsB;IACtD,SAAS,CAAC,EAAE,aAAa,CAAC;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,CAAC,EAAE,oBAAoB,CAAC;IAChC,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,uEAAuE;IACvE,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,2FAA2F;IAC3F,WAAW,CAAC,EAAE,CAAC,CAAC;IAChB,2EAA2E;IAC3E,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,+EAA+E;IAC/E,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACjC;AAED,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,sBAAsB,EAAE,MAAM,CAAC;IAC/B,oBAAoB,CAAC,EAAE,sBAAsB,CAAC;CAC/C;AAED,MAAM,WAAW,sBAAuB,SAAQ,sBAAsB;IACpE,UAAU,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,oBAAoB,CAAC;CACjC;AAED,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,yEAAyE;AACzE,eAAO,MAAM,qBAAqB,OAAQ,CAAC;AAE3C,UAAU,oBAAoB;IAC5B,gEAAgE;IAChE,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,+EAA+E;IAC/E,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oEAAoE;IACpE,WAAW,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC;CACnC;AAED,MAAM,MAAM,cAAc,GACtB,CAAC,oBAAoB,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,KAAK,CAAA;CAAE,CAAC,GACtD,CAAC,oBAAoB,GAAG;IAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IAAC,GAAG,CAAC,EAAE,KAAK,CAAA;CAAE,CAAC,CAAC;AAE7D,wFAAwF;AACxF,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,WAAW,GAAG,SAAS,EAC/B,OAAO,EAAE,MAAM,IAAI,GAClB,MAAM,IAAI,CAOZ;AAED,6FAA6F;AAC7F,wBAAgB,sBAAsB,CACpC,aAAa,EAAE,CAAC,MAAM,EAAE,SAAS,GAAG,SAAS,KAAK,IAAI,EACtD,SAAS,SAAwB,EACjC,QAAQ,CAAC,EAAE,MAAM,IAAI,GACpB;IAAE,SAAS,IAAI,IAAI,CAAC;IAAC,OAAO,IAAI,IAAI,CAAA;CAAE,CAkBxC"}
|
package/dist/rpc/nodes.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nodes.js","sourceRoot":"","sources":["../../src/rpc/nodes.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"nodes.js","sourceRoot":"","sources":["../../src/rpc/nodes.ts"],"names":[],"mappings":"AA6CA,yEAAyE;AACzE,MAAM,CAAC,MAAM,qBAAqB,GAAG,KAAK,CAAC;AAkB3C,wFAAwF;AACxF,MAAM,UAAU,oBAAoB,CAClC,MAA+B,EAC/B,OAAmB;IAEnB,IAAI,MAAM,EAAE,OAAO,EAAE,CAAC;QACpB,OAAO,EAAE,CAAC;QACV,OAAO,GAAG,EAAE,GAAE,CAAC,CAAC;IAClB,CAAC;IACD,MAAM,EAAE,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IAC3D,OAAO,GAAG,EAAE,CAAC,MAAM,EAAE,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;AAC7D,CAAC;AAED,6FAA6F;AAC7F,MAAM,UAAU,sBAAsB,CACpC,aAAsD,EACtD,SAAS,GAAG,qBAAqB,EACjC,QAAqB;IAErB,IAAI,QAAQ,GAAG,KAAK,CAAC;IACrB,IAAI,KAAgD,CAAC;IACrD,OAAO;QACL,SAAS;YACP,IAAI,QAAQ;gBAAE,OAAO;YACrB,QAAQ,GAAG,IAAI,CAAC;YAChB,aAAa,CAAC,SAAS,CAAC,CAAC;YACzB,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;gBACtB,QAAQ,EAAE,EAAE,CAAC;gBACb,aAAa,CAAC,SAAS,CAAC,CAAC;YAC3B,CAAC,EAAE,SAAS,CAAC,CAAC;YACd,KAAK,CAAC,KAAK,EAAE,EAAE,CAAC;QAClB,CAAC;QACD,OAAO;YACL,YAAY,CAAC,KAAK,CAAC,CAAC;QACtB,CAAC;KACF,CAAC;AACJ,CAAC"}
|
package/dist/version.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export declare const PROTOCOL_VERSION = "0.
|
|
1
|
+
export declare const PROTOCOL_VERSION = "0.83.1";
|
|
2
2
|
/** Node-facing additions since this release remain additive or capability-gated. */
|
|
3
3
|
export declare const MINIMUM_PROTOCOL_VERSION = "0.76.0";
|
|
4
4
|
//# sourceMappingURL=version.d.ts.map
|
package/dist/version.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// Published protocol release plus an explicit oldest-supported peer.
|
|
2
2
|
// Different release numbers are harmless when both declared bounds are met;
|
|
3
3
|
// optional methods/events still require their existing feature capabilities.
|
|
4
|
-
export const PROTOCOL_VERSION = '0.
|
|
4
|
+
export const PROTOCOL_VERSION = '0.83.1';
|
|
5
5
|
/** Node-facing additions since this release remain additive or capability-gated. */
|
|
6
6
|
export const MINIMUM_PROTOCOL_VERSION = '0.76.0';
|
|
7
7
|
//# sourceMappingURL=version.js.map
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@farmslot/protocol",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.83.1",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -360,6 +360,16 @@
|
|
|
360
360
|
"import": "./dist/node/farmslot-home.js",
|
|
361
361
|
"default": "./dist/node/farmslot-home.js"
|
|
362
362
|
},
|
|
363
|
+
"./node/farm-paths": {
|
|
364
|
+
"types": "./dist/node/farm-paths.d.ts",
|
|
365
|
+
"import": "./dist/node/farm-paths.js",
|
|
366
|
+
"default": "./dist/node/farm-paths.js"
|
|
367
|
+
},
|
|
368
|
+
"./node/tree-fingerprint": {
|
|
369
|
+
"types": "./dist/node/tree-fingerprint.d.ts",
|
|
370
|
+
"import": "./dist/node/tree-fingerprint.js",
|
|
371
|
+
"default": "./dist/node/tree-fingerprint.js"
|
|
372
|
+
},
|
|
363
373
|
"./node/farm-layout": {
|
|
364
374
|
"types": "./dist/node/farm-layout.d.ts",
|
|
365
375
|
"import": "./dist/node/farm-layout.js",
|
package/scripts/acceptance.d.mts
CHANGED
|
@@ -13,6 +13,11 @@ export const ACCEPTANCE_VERDICTS: readonly [
|
|
|
13
13
|
export const ACCEPTANCE_PROOF_MODES: readonly ['state', 'visual', 'mixed', 'review'];
|
|
14
14
|
export const ACCEPTANCE_CRITERION_ID_PATTERN: RegExp;
|
|
15
15
|
export function acceptanceCriterionId(index: number): string;
|
|
16
|
+
export function normalizeAcceptanceCriteria(items: readonly string[]): string[];
|
|
17
|
+
export function ticketCriteriaAsRegistered(
|
|
18
|
+
rawTicketCriteria: readonly string[],
|
|
19
|
+
registration?: unknown,
|
|
20
|
+
): Array<{ id: string; text: string }>;
|
|
16
21
|
export function registeredAcceptanceCriteria(
|
|
17
22
|
criteria: readonly unknown[],
|
|
18
23
|
registration?: unknown,
|
package/scripts/acceptance.mjs
CHANGED
|
@@ -28,6 +28,38 @@ function filterWorkerAcceptanceCriteria(criteria, registration, flow) {
|
|
|
28
28
|
return criteria.filter((row) => derived.has(row.id));
|
|
29
29
|
}
|
|
30
30
|
|
|
31
|
+
/** Preserve task-init text, including continuation lines, without list/check markers. */
|
|
32
|
+
function normalizeAcceptanceCriteria(items) {
|
|
33
|
+
return items
|
|
34
|
+
.map((item) =>
|
|
35
|
+
item
|
|
36
|
+
.split('\n')
|
|
37
|
+
.map((line) =>
|
|
38
|
+
line
|
|
39
|
+
.trim()
|
|
40
|
+
.replace(/^[-*]\s+/, '')
|
|
41
|
+
.replace(/^\[(?: |x|X)\]\s*/, '')
|
|
42
|
+
.trim(),
|
|
43
|
+
)
|
|
44
|
+
.filter(Boolean)
|
|
45
|
+
.join('\n'),
|
|
46
|
+
)
|
|
47
|
+
.filter(Boolean);
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
/** Convert only raw ticket originals to the representation written by task init. */
|
|
51
|
+
function ticketCriteriaAsRegistered(rawTicketCriteria, registration) {
|
|
52
|
+
const normalized = normalizeAcceptanceCriteria(rawTicketCriteria);
|
|
53
|
+
// Older registrations may have frozen raw originals. Validate those against
|
|
54
|
+
// the raw ticket; otherwise validate the task-init representation exactly.
|
|
55
|
+
const criteria =
|
|
56
|
+
isRecord(registration) &&
|
|
57
|
+
acceptanceCriteriaMatch(registeredAcceptanceCriteria(rawTicketCriteria), registration.original)
|
|
58
|
+
? rawTicketCriteria
|
|
59
|
+
: normalized;
|
|
60
|
+
return registeredAcceptanceCriteria(criteria, registration);
|
|
61
|
+
}
|
|
62
|
+
|
|
31
63
|
function registeredAcceptanceCriteria(criteria, registration) {
|
|
32
64
|
const original = criteria
|
|
33
65
|
.filter((text) => String(text).trim().length > 0)
|
|
@@ -323,8 +355,10 @@ export {
|
|
|
323
355
|
acceptanceVerdictLabel,
|
|
324
356
|
filterWorkerAcceptanceCriteria,
|
|
325
357
|
INHERITED_ACCEPTANCE_INPUT,
|
|
358
|
+
normalizeAcceptanceCriteria,
|
|
326
359
|
registeredAcceptanceCriteria,
|
|
327
360
|
renderAcceptanceCoverage,
|
|
328
361
|
summarizeAcceptanceStatus,
|
|
362
|
+
ticketCriteriaAsRegistered,
|
|
329
363
|
validateAcceptanceStatusLedger,
|
|
330
364
|
};
|