@ordewell/core 0.12.0 → 0.12.2
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/dist/{ModeResolver-CHsaoV7M.d.ts → ModeResolver-B64aUZXJ.d.ts} +1 -1
- package/dist/{ModeResolver-b_7bPlBS.d.mts → ModeResolver-CA2fUU9h.d.mts} +1 -1
- package/dist/{Task-BTEH-ztX.d.mts → Task-CxGgN6I0.d.mts} +503 -16
- package/dist/{Task-BTEH-ztX.d.ts → Task-CxGgN6I0.d.ts} +503 -16
- package/dist/{chunk-BKTDYGIP.mjs → chunk-2IFKPYPO.mjs} +441 -17
- package/dist/chunk-2IFKPYPO.mjs.map +1 -0
- package/dist/{chunk-BFLVOYNR.mjs → chunk-FX33UKAD.mjs} +8 -6
- package/dist/chunk-FX33UKAD.mjs.map +1 -0
- package/dist/{chunk-F6WS3JLQ.mjs → chunk-PKJTN2PD.mjs} +20 -11
- package/dist/chunk-PKJTN2PD.mjs.map +1 -0
- package/dist/{chunk-HP2LNKST.mjs → chunk-RZ23BMVR.mjs} +345 -134
- package/dist/chunk-RZ23BMVR.mjs.map +1 -0
- package/dist/chunk-UDUATSCJ.mjs +48 -0
- package/dist/chunk-UDUATSCJ.mjs.map +1 -0
- package/dist/{IRunner-BwzyUVIL.d.mts → eventStore-CTCSKS9E.d.ts} +916 -129
- package/dist/{IRunner-DjJkYwko.d.ts → eventStore-CcB8yELZ.d.mts} +916 -129
- package/dist/index.d.mts +677 -97
- package/dist/index.d.ts +677 -97
- package/dist/index.js +8233 -2450
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +6951 -1772
- package/dist/index.mjs.map +1 -1
- package/dist/parsing.d.mts +2 -2
- package/dist/parsing.d.ts +2 -2
- package/dist/parsing.js +277 -21
- package/dist/parsing.js.map +1 -1
- package/dist/parsing.mjs +3 -3
- package/dist/plan-utils.d.mts +30 -5
- package/dist/plan-utils.d.ts +30 -5
- package/dist/plan-utils.js +163 -16
- package/dist/plan-utils.js.map +1 -1
- package/dist/plan-utils.mjs +49 -3
- package/dist/plan-utils.mjs.map +1 -1
- package/dist/{runSettingsText-x-YML2ay.d.mts → runSettingsText-DFVpe6aU.d.mts} +1142 -934
- package/dist/{runSettingsText-CvZ40IPv.d.ts → runSettingsText-lKLDsyli.d.ts} +1142 -934
- package/dist/testing.d.mts +83 -4
- package/dist/testing.d.ts +83 -4
- package/dist/testing.js +142 -1
- package/dist/testing.js.map +1 -1
- package/dist/testing.mjs +126 -2
- package/dist/testing.mjs.map +1 -1
- package/docker/task.Dockerfile +22 -0
- package/package.json +2 -1
- package/skills/diagnose/SKILL.md +2 -2
- package/skills/explore/SKILL.md +1 -1
- package/dist/chunk-BFLVOYNR.mjs.map +0 -1
- package/dist/chunk-BKTDYGIP.mjs.map +0 -1
- package/dist/chunk-F6WS3JLQ.mjs.map +0 -1
- package/dist/chunk-HP2LNKST.mjs.map +0 -1
package/dist/plan-utils.mjs
CHANGED
|
@@ -13,6 +13,7 @@ import {
|
|
|
13
13
|
REPORT_PREVIEW_LINES,
|
|
14
14
|
SEVERITY_LABEL,
|
|
15
15
|
STALLED_LABEL,
|
|
16
|
+
STOPPING_LABEL,
|
|
16
17
|
SUPERVISOR_LEVEL_LABEL,
|
|
17
18
|
WAITS_FOR_APPROVAL_LABEL,
|
|
18
19
|
accountLimitPercentText,
|
|
@@ -51,6 +52,7 @@ import {
|
|
|
51
52
|
contextMeterTitle,
|
|
52
53
|
costText,
|
|
53
54
|
countedSessionCost,
|
|
55
|
+
delegatedRowView,
|
|
54
56
|
dependentsNotice,
|
|
55
57
|
describeIsolationPreview,
|
|
56
58
|
describeMergeResult,
|
|
@@ -75,6 +77,7 @@ import {
|
|
|
75
77
|
hasAccountLimits,
|
|
76
78
|
hasHiddenDetail,
|
|
77
79
|
hasLongReport,
|
|
80
|
+
heldWords,
|
|
78
81
|
holdLabel,
|
|
79
82
|
holdPrompt,
|
|
80
83
|
isFileEditTool,
|
|
@@ -95,6 +98,7 @@ import {
|
|
|
95
98
|
markdownHtml,
|
|
96
99
|
markdownTokens,
|
|
97
100
|
mergeOutcome,
|
|
101
|
+
mergePastChecksConfirmation,
|
|
98
102
|
modelCostTitle,
|
|
99
103
|
namedRepos,
|
|
100
104
|
newTaskFields,
|
|
@@ -134,9 +138,11 @@ import {
|
|
|
134
138
|
savedPatchViews,
|
|
135
139
|
severityLabel,
|
|
136
140
|
skippedLabel,
|
|
141
|
+
spentTokens,
|
|
137
142
|
startAttemptUsage,
|
|
138
143
|
stopTurn,
|
|
139
144
|
subagentCostTitle,
|
|
145
|
+
subtreeView,
|
|
140
146
|
summarizeToolCall,
|
|
141
147
|
takeAt,
|
|
142
148
|
taskActionCommand,
|
|
@@ -159,16 +165,17 @@ import {
|
|
|
159
165
|
usageText,
|
|
160
166
|
wakeUpItems,
|
|
161
167
|
worstSeverity
|
|
162
|
-
} from "./chunk-
|
|
168
|
+
} from "./chunk-RZ23BMVR.mjs";
|
|
163
169
|
import {
|
|
164
170
|
betweenRounds,
|
|
165
171
|
checkOf,
|
|
166
172
|
clampThinkingEffort,
|
|
167
173
|
loopRemovalRefusal,
|
|
168
174
|
loopRoundOf,
|
|
175
|
+
onOneLine,
|
|
169
176
|
outOfRounds,
|
|
170
177
|
scriptTaskText
|
|
171
|
-
} from "./chunk-
|
|
178
|
+
} from "./chunk-2IFKPYPO.mjs";
|
|
172
179
|
import {
|
|
173
180
|
DEFAULT_RUNNERS,
|
|
174
181
|
canSetDependencies,
|
|
@@ -187,9 +194,40 @@ import {
|
|
|
187
194
|
titledTaskRef,
|
|
188
195
|
titledTaskRefOf,
|
|
189
196
|
walkPlan
|
|
190
|
-
} from "./chunk-
|
|
197
|
+
} from "./chunk-PKJTN2PD.mjs";
|
|
198
|
+
|
|
199
|
+
// src/services/composerTips.ts
|
|
200
|
+
var COMPOSER_TIPS = [
|
|
201
|
+
// The per-runner model allowlist (ADR-0003) is the easiest command to miss.
|
|
202
|
+
{ command: "allowlist", weight: 3, text: "Tip: Use /allowlist to limit which models the planner assigns per runner." },
|
|
203
|
+
{ command: "planner", weight: 1, text: "Tip: Use /planner to pick the planner's harness, model and effort." },
|
|
204
|
+
{ command: "runners", weight: 1, text: "Tip: Use /runners to turn runners on or off." },
|
|
205
|
+
{ command: "settings", weight: 1, text: "Tip: Use /settings for autonomy, supervisor, merging, autorun and more." },
|
|
206
|
+
{ command: "help", weight: 1, text: "Tip: Use /help to list every command." }
|
|
207
|
+
];
|
|
208
|
+
function tipCycle(tips) {
|
|
209
|
+
const total = tips.reduce((sum, tip) => sum + Math.max(0, tip.weight), 0);
|
|
210
|
+
if (total === 0) return [];
|
|
211
|
+
const slots = new Array(total).fill(void 0);
|
|
212
|
+
const order = tips.map((tip, index) => ({ tip, index })).filter(({ tip }) => tip.weight > 0).sort((a, b) => b.tip.weight - a.tip.weight || a.index - b.index);
|
|
213
|
+
for (const { tip } of order) {
|
|
214
|
+
const free = slots.flatMap((slot, at) => slot === void 0 ? [at] : []);
|
|
215
|
+
for (let k = 0; k < tip.weight; k++) {
|
|
216
|
+
slots[free[Math.floor((k + 0.5) * free.length / tip.weight)]] = tip;
|
|
217
|
+
}
|
|
218
|
+
}
|
|
219
|
+
const cycle = slots.filter((tip) => tip !== void 0);
|
|
220
|
+
const start = cycle.indexOf(order[0].tip);
|
|
221
|
+
return [...cycle.slice(start), ...cycle.slice(0, start)];
|
|
222
|
+
}
|
|
223
|
+
function composerTip(seq, answers) {
|
|
224
|
+
const cycle = tipCycle(COMPOSER_TIPS.filter((tip) => answers.has(tip.command)));
|
|
225
|
+
if (cycle.length === 0) return null;
|
|
226
|
+
return cycle[(seq % cycle.length + cycle.length) % cycle.length].text;
|
|
227
|
+
}
|
|
191
228
|
export {
|
|
192
229
|
CHECKPOINT_TRUNCATE_LENGTH,
|
|
230
|
+
COMPOSER_TIPS,
|
|
193
231
|
DEFAULT_RUNNERS,
|
|
194
232
|
DELEGATION_OFFERED,
|
|
195
233
|
EMPTY_CONVERSATION,
|
|
@@ -204,6 +242,7 @@ export {
|
|
|
204
242
|
REPORT_PREVIEW_LINES,
|
|
205
243
|
SEVERITY_LABEL,
|
|
206
244
|
STALLED_LABEL,
|
|
245
|
+
STOPPING_LABEL,
|
|
207
246
|
SUPERVISOR_LEVEL_LABEL,
|
|
208
247
|
WAITS_FOR_APPROVAL_LABEL,
|
|
209
248
|
accountLimitPercentText,
|
|
@@ -241,11 +280,13 @@ export {
|
|
|
241
280
|
clampThinkingEffort,
|
|
242
281
|
closeTurn,
|
|
243
282
|
compactionText,
|
|
283
|
+
composerTip,
|
|
244
284
|
confirmedOverride,
|
|
245
285
|
contextMeterText,
|
|
246
286
|
contextMeterTitle,
|
|
247
287
|
costText,
|
|
248
288
|
countedSessionCost,
|
|
289
|
+
delegatedRowView,
|
|
249
290
|
dependencyCandidates,
|
|
250
291
|
dependentsNotice,
|
|
251
292
|
dependentsOf,
|
|
@@ -272,6 +313,7 @@ export {
|
|
|
272
313
|
hasAccountLimits,
|
|
273
314
|
hasHiddenDetail,
|
|
274
315
|
hasLongReport,
|
|
316
|
+
heldWords,
|
|
275
317
|
holdLabel,
|
|
276
318
|
holdPrompt,
|
|
277
319
|
isFileEditTool,
|
|
@@ -295,10 +337,12 @@ export {
|
|
|
295
337
|
markdownHtml,
|
|
296
338
|
markdownTokens,
|
|
297
339
|
mergeOutcome,
|
|
340
|
+
mergePastChecksConfirmation,
|
|
298
341
|
modelCostTitle,
|
|
299
342
|
namedRepos,
|
|
300
343
|
newTaskFields,
|
|
301
344
|
noExecutorRefusal,
|
|
345
|
+
onOneLine,
|
|
302
346
|
opsEditable,
|
|
303
347
|
outOfRounds,
|
|
304
348
|
outputLines,
|
|
@@ -340,10 +384,12 @@ export {
|
|
|
340
384
|
severityLabel,
|
|
341
385
|
skillTokens,
|
|
342
386
|
skippedLabel,
|
|
387
|
+
spentTokens,
|
|
343
388
|
startAttemptUsage,
|
|
344
389
|
stopTurn,
|
|
345
390
|
subagentCostTitle,
|
|
346
391
|
subtreeIds,
|
|
392
|
+
subtreeView,
|
|
347
393
|
summarizeToolCall,
|
|
348
394
|
takeAt,
|
|
349
395
|
taskActionCommand,
|
package/dist/plan-utils.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
|
1
|
+
{"version":3,"sources":["../src/services/composerTips.ts"],"sourcesContent":["/**\n * The tips an empty planner chat composer shows (#137), one table for every\n * surface so the TUI and the webview agree on the wording and how often each\n * comes round. A surface offers only the tips for the commands it answers.\n */\n\nexport interface ComposerTip {\n /** The built-in planner chat command the tip names, without its slash. */\n command: string;\n /** How many times per cycle the tip comes round. */\n weight: number;\n /** Short enough to fit after the prompt and caret on an 80-column terminal. */\n text: string;\n}\n\nexport const COMPOSER_TIPS: readonly ComposerTip[] = [\n // The per-runner model allowlist (ADR-0003) is the easiest command to miss.\n { command: 'allowlist', weight: 3, text: 'Tip: Use /allowlist to limit which models the planner assigns per runner.' },\n { command: 'planner', weight: 1, text: \"Tip: Use /planner to pick the planner's harness, model and effort.\" },\n { command: 'runners', weight: 1, text: 'Tip: Use /runners to turn runners on or off.' },\n { command: 'settings', weight: 1, text: 'Tip: Use /settings for autonomy, supervisor, merging, autorun and more.' },\n { command: 'help', weight: 1, text: 'Tip: Use /help to list every command.' },\n];\n\n/**\n * One cycle of `tips`, each appearing exactly its weight times. Heavier tips\n * take their slots first, at the midpoints of equal shares of the free slots, so\n * raising a weight spreads it out instead of leaving it to run together at the\n * end of the cycle; where a tip outnumbers all the others, the touches it\n * cannot avoid are spread as evenly as the counts allow. The cycle starts on\n * the heaviest tip, so the first seq is the one the table weights most.\n */\nexport function tipCycle(tips: readonly ComposerTip[]): ComposerTip[] {\n const total = tips.reduce((sum, tip) => sum + Math.max(0, tip.weight), 0);\n if (total === 0) return [];\n const slots = new Array<ComposerTip | undefined>(total).fill(undefined);\n const order = tips\n .map((tip, index) => ({ tip, index }))\n .filter(({ tip }) => tip.weight > 0)\n .sort((a, b) => b.tip.weight - a.tip.weight || a.index - b.index);\n for (const { tip } of order) {\n const free = slots.flatMap((slot, at) => (slot === undefined ? [at] : []));\n for (let k = 0; k < tip.weight; k++) {\n slots[free[Math.floor(((k + 0.5) * free.length) / tip.weight)]] = tip;\n }\n }\n const cycle = slots.filter((tip): tip is ComposerTip => tip !== undefined);\n const start = cycle.indexOf(order[0].tip);\n return [...cycle.slice(start), ...cycle.slice(0, start)];\n}\n\n/**\n * The tip for the `seq`-th time the composer has been empty, among those for\n * the commands the surface answers, or null when it answers none of them. The\n * same `seq` always gives the same tip, so the surface decides when a new one\n * shows by when it moves `seq` on, and its rendering stays a function of state.\n */\nexport function composerTip(seq: number, answers: ReadonlySet<string>): string | null {\n const cycle = tipCycle(COMPOSER_TIPS.filter((tip) => answers.has(tip.command)));\n if (cycle.length === 0) return null;\n return cycle[((seq % cycle.length) + cycle.length) % cycle.length].text;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAeO,IAAM,gBAAwC;AAAA;AAAA,EAEnD,EAAE,SAAS,aAAa,QAAQ,GAAG,MAAM,4EAA4E;AAAA,EACrH,EAAE,SAAS,WAAW,QAAQ,GAAG,MAAM,qEAAqE;AAAA,EAC5G,EAAE,SAAS,WAAW,QAAQ,GAAG,MAAM,+CAA+C;AAAA,EACtF,EAAE,SAAS,YAAY,QAAQ,GAAG,MAAM,0EAA0E;AAAA,EAClH,EAAE,SAAS,QAAQ,QAAQ,GAAG,MAAM,wCAAwC;AAC9E;AAUO,SAAS,SAAS,MAA6C;AACpE,QAAM,QAAQ,KAAK,OAAO,CAAC,KAAK,QAAQ,MAAM,KAAK,IAAI,GAAG,IAAI,MAAM,GAAG,CAAC;AACxE,MAAI,UAAU,EAAG,QAAO,CAAC;AACzB,QAAM,QAAQ,IAAI,MAA+B,KAAK,EAAE,KAAK,MAAS;AACtE,QAAM,QAAQ,KACX,IAAI,CAAC,KAAK,WAAW,EAAE,KAAK,MAAM,EAAE,EACpC,OAAO,CAAC,EAAE,IAAI,MAAM,IAAI,SAAS,CAAC,EAClC,KAAK,CAAC,GAAG,MAAM,EAAE,IAAI,SAAS,EAAE,IAAI,UAAU,EAAE,QAAQ,EAAE,KAAK;AAClE,aAAW,EAAE,IAAI,KAAK,OAAO;AAC3B,UAAM,OAAO,MAAM,QAAQ,CAAC,MAAM,OAAQ,SAAS,SAAY,CAAC,EAAE,IAAI,CAAC,CAAE;AACzE,aAAS,IAAI,GAAG,IAAI,IAAI,QAAQ,KAAK;AACnC,YAAM,KAAK,KAAK,OAAQ,IAAI,OAAO,KAAK,SAAU,IAAI,MAAM,CAAC,CAAC,IAAI;AAAA,IACpE;AAAA,EACF;AACA,QAAM,QAAQ,MAAM,OAAO,CAAC,QAA4B,QAAQ,MAAS;AACzE,QAAM,QAAQ,MAAM,QAAQ,MAAM,CAAC,EAAE,GAAG;AACxC,SAAO,CAAC,GAAG,MAAM,MAAM,KAAK,GAAG,GAAG,MAAM,MAAM,GAAG,KAAK,CAAC;AACzD;AAQO,SAAS,YAAY,KAAa,SAA6C;AACpF,QAAM,QAAQ,SAAS,cAAc,OAAO,CAAC,QAAQ,QAAQ,IAAI,IAAI,OAAO,CAAC,CAAC;AAC9E,MAAI,MAAM,WAAW,EAAG,QAAO;AAC/B,SAAO,OAAQ,MAAM,MAAM,SAAU,MAAM,UAAU,MAAM,MAAM,EAAE;AACrE;","names":[]}
|