@zelari/core 2.35.0 → 2.37.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
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Reusable runtime for [Zelari Code](https://github.com/N-THEM-Studio/zelari-code) — **Apache-2.0**.
|
|
4
4
|
|
|
5
|
-
Current version: **2.
|
|
5
|
+
Current version: **2.37.0** (kept in lockstep with the `zelari-code` CLI).
|
|
6
6
|
|
|
7
7
|
## What it is
|
|
8
8
|
|
|
@@ -38,6 +38,15 @@ export interface BuildMissionBriefInput {
|
|
|
38
38
|
hasPlan?: boolean;
|
|
39
39
|
/** Max tasks in the MVP slice. Default 8. */
|
|
40
40
|
maxSliceTasks?: number;
|
|
41
|
+
/**
|
|
42
|
+
* Ordered task ids the driver already resolved from `.zelari/plan.json`.
|
|
43
|
+
* When present, the brief carries a SEQUENCE of slices (increments of at most
|
|
44
|
+
* `maxSliceTasks` tasks each) instead of the single MVP slice: each increment
|
|
45
|
+
* must pass the completion gate before the next one starts (HoH principle
|
|
46
|
+
* "scope development into small and verifiable increments"). Absent →
|
|
47
|
+
* single MVP slice, byte-identical to the pre-2.37 behaviour.
|
|
48
|
+
*/
|
|
49
|
+
planTaskIds?: string[];
|
|
41
50
|
env?: {
|
|
42
51
|
ZELARI_COUNCIL_MODE?: string;
|
|
43
52
|
};
|
|
@@ -46,4 +55,14 @@ export interface BuildMissionBriefInput {
|
|
|
46
55
|
* Build the deterministic (Level A) mission brief.
|
|
47
56
|
*/
|
|
48
57
|
export declare function buildMissionBrief(input: BuildMissionBriefInput): MissionBrief;
|
|
58
|
+
/**
|
|
59
|
+
* Deterministic slice plan for a mission.
|
|
60
|
+
*
|
|
61
|
+
* With no resolved plan tasks the plan is the single MVP slice (unchanged
|
|
62
|
+
* behaviour). With plan tasks it is a SEQUENCE of bounded increments: the MVP
|
|
63
|
+
* slice carries the first `maxTasks` tasks and each following slice the next
|
|
64
|
+
* `maxTasks`, so the driver can gate increment N+1 on increment N being green
|
|
65
|
+
* instead of holding the whole mission behind one monolithic run.
|
|
66
|
+
*/
|
|
67
|
+
export declare function buildSlicePlan(sliceMvp: MissionSlice, planTaskIds: string[] | undefined, maxTasks: number): MissionSlice[];
|
|
49
68
|
//# sourceMappingURL=missionBrief.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"missionBrief.d.ts","sourceRoot":"","sources":["../../src/council/missionBrief.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAmB,KAAK,aAAa,EAAE,MAAM,cAAc,CAAC;AACnE,OAAO,EAAyB,KAAK,cAAc,EAAE,MAAM,cAAc,CAAC;AAE1E,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,oFAAoF;IACpF,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,8CAA8C;IAC9C,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,aAAa,CAAC;IACtB,+EAA+E;IAC/E,WAAW,EAAE,cAAc,CAAC;IAC5B,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,sBAAsB,EAAE,MAAM,CAAC;IAC/B,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,MAAM,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,cAAc,CAAA;KAAE,CAAC,CAAC;IACtD,2EAA2E;IAC3E,QAAQ,EAAE,YAAY,CAAC;IACvB,MAAM,EAAE,YAAY,EAAE,CAAC;IACvB,kBAAkB,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,sBAAsB;IACrC,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,6CAA6C;IAC7C,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,GAAG,CAAC,EAAE;QAAE,mBAAmB,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CACxC;AAqED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,sBAAsB,GAAG,YAAY,CAyC7E"}
|
|
1
|
+
{"version":3,"file":"missionBrief.d.ts","sourceRoot":"","sources":["../../src/council/missionBrief.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAmB,KAAK,aAAa,EAAE,MAAM,cAAc,CAAC;AACnE,OAAO,EAAyB,KAAK,cAAc,EAAE,MAAM,cAAc,CAAC;AAE1E,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,oFAAoF;IACpF,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,8CAA8C;IAC9C,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,aAAa,CAAC;IACtB,+EAA+E;IAC/E,WAAW,EAAE,cAAc,CAAC;IAC5B,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,sBAAsB,EAAE,MAAM,CAAC;IAC/B,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,MAAM,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,cAAc,CAAA;KAAE,CAAC,CAAC;IACtD,2EAA2E;IAC3E,QAAQ,EAAE,YAAY,CAAC;IACvB,MAAM,EAAE,YAAY,EAAE,CAAC;IACvB,kBAAkB,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,sBAAsB;IACrC,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,6CAA6C;IAC7C,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;;;;OAOG;IACH,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,GAAG,CAAC,EAAE;QAAE,mBAAmB,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CACxC;AAqED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,sBAAsB,GAAG,YAAY,CAyC7E;AAED;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAC5B,QAAQ,EAAE,YAAY,EACtB,WAAW,EAAE,MAAM,EAAE,GAAG,SAAS,EACjC,QAAQ,EAAE,MAAM,GACf,YAAY,EAAE,CAqBhB"}
|
|
@@ -108,8 +108,37 @@ export function buildMissionBrief(input) {
|
|
|
108
108
|
],
|
|
109
109
|
phases,
|
|
110
110
|
sliceMvp,
|
|
111
|
-
slices:
|
|
111
|
+
slices: buildSlicePlan(sliceMvp, input.planTaskIds, maxTasks),
|
|
112
112
|
userPromptOriginal: userMessage,
|
|
113
113
|
};
|
|
114
114
|
}
|
|
115
|
+
/**
|
|
116
|
+
* Deterministic slice plan for a mission.
|
|
117
|
+
*
|
|
118
|
+
* With no resolved plan tasks the plan is the single MVP slice (unchanged
|
|
119
|
+
* behaviour). With plan tasks it is a SEQUENCE of bounded increments: the MVP
|
|
120
|
+
* slice carries the first `maxTasks` tasks and each following slice the next
|
|
121
|
+
* `maxTasks`, so the driver can gate increment N+1 on increment N being green
|
|
122
|
+
* instead of holding the whole mission behind one monolithic run.
|
|
123
|
+
*/
|
|
124
|
+
export function buildSlicePlan(sliceMvp, planTaskIds, maxTasks) {
|
|
125
|
+
const ids = Array.isArray(planTaskIds) ? planTaskIds.filter((t) => typeof t === 'string' && t) : [];
|
|
126
|
+
if (ids.length === 0)
|
|
127
|
+
return [{ ...sliceMvp }];
|
|
128
|
+
const size = Number.isFinite(maxTasks) && maxTasks > 0 ? Math.floor(maxTasks) : 8;
|
|
129
|
+
const slices = [];
|
|
130
|
+
for (let i = 0; i < ids.length; i += size) {
|
|
131
|
+
const chunk = ids.slice(i, i + size);
|
|
132
|
+
const index = i / size;
|
|
133
|
+
slices.push(index === 0
|
|
134
|
+
? { ...sliceMvp, taskIds: chunk, maxTasks: size }
|
|
135
|
+
: {
|
|
136
|
+
id: `slice-${index + 1}`,
|
|
137
|
+
title: `Increment ${index + 1} — ${chunk.length} plan task(s)`,
|
|
138
|
+
taskIds: chunk,
|
|
139
|
+
maxTasks: size,
|
|
140
|
+
});
|
|
141
|
+
}
|
|
142
|
+
return slices;
|
|
143
|
+
}
|
|
115
144
|
//# sourceMappingURL=missionBrief.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"missionBrief.js","sourceRoot":"","sources":["../../src/council/missionBrief.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,eAAe,EAAsB,MAAM,cAAc,CAAC;AACnE,OAAO,EAAE,qBAAqB,EAAuB,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"missionBrief.js","sourceRoot":"","sources":["../../src/council/missionBrief.ts"],"names":[],"mappings":"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"}
|
package/dist/version.d.ts
CHANGED
|
@@ -3,5 +3,5 @@
|
|
|
3
3
|
* require.resolve('@zelari/core/package.json') (2.6.1 plan §7).
|
|
4
4
|
* Kept in sync with package.json by scripts/verify-versions.mjs.
|
|
5
5
|
*/
|
|
6
|
-
export declare const CORE_VERSION = "2.
|
|
6
|
+
export declare const CORE_VERSION = "2.37.0";
|
|
7
7
|
//# sourceMappingURL=version.d.ts.map
|
package/dist/version.js
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@zelari/core",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.37.0",
|
|
4
4
|
"description": "Zelari Code core library — provider-neutral agent loop (AgentHarness), multi-agent council orchestration, and built-in skills. Used by the zelari-code CLI; consumable by other agent frontends.",
|
|
5
5
|
"author": "Anathema Studio <https://anathema-studio.com/>",
|
|
6
6
|
"license": "Apache-2.0",
|