@llm4ts/runner 2.28.0 → 2.29.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/dist/Profile.d.ts CHANGED
@@ -34,6 +34,14 @@ export declare const Gap: Schema.Struct<{
34
34
  readonly before: Schema.String;
35
35
  }>;
36
36
  export type Gap = typeof Gap.Type;
37
+ /** The coder's tool calls by kind of work (build, install and git count as other). */
38
+ export declare const ToolCalls: Schema.Struct<{
39
+ readonly explore: Schema.Int;
40
+ readonly edit: Schema.Int;
41
+ readonly test: Schema.Int;
42
+ readonly other: Schema.Int;
43
+ }>;
44
+ export type ToolCalls = typeof ToolCalls.Type;
37
45
  export declare const StoryProfile: Schema.Struct<{
38
46
  readonly id: Schema.String;
39
47
  readonly executor: Schema.optionalKey<Schema.String>;
@@ -75,6 +83,18 @@ export declare const StoryProfile: Schema.Struct<{
75
83
  */
76
84
  readonly openTurnMs: Schema.Number;
77
85
  readonly openTurnTools: Schema.Int;
86
+ readonly toolCalls: Schema.Struct<{
87
+ readonly explore: Schema.Int;
88
+ readonly edit: Schema.Int;
89
+ readonly test: Schema.Int;
90
+ readonly other: Schema.Int;
91
+ }>;
92
+ /** Task stages the coder ran on this lane: the tasks it gave itself, plus any revision. */
93
+ readonly tasks: Schema.Int;
94
+ /** From the coder's first task (after setup and planning) to its first edit; absent when it never edited. */
95
+ readonly firstEditMs: Schema.optionalKey<Schema.Number>;
96
+ /** Explore calls (ls, find, grep, read) made before that first edit. */
97
+ readonly exploreBeforeEdit: Schema.Int;
78
98
  }>;
79
99
  export type StoryProfile = typeof StoryProfile.Type;
80
100
  export declare const ModelRow: Schema.Struct<{
@@ -153,6 +173,18 @@ export declare const ProfileReport: Schema.Struct<{
153
173
  */
154
174
  readonly openTurnMs: Schema.Number;
155
175
  readonly openTurnTools: Schema.Int;
176
+ readonly toolCalls: Schema.Struct<{
177
+ readonly explore: Schema.Int;
178
+ readonly edit: Schema.Int;
179
+ readonly test: Schema.Int;
180
+ readonly other: Schema.Int;
181
+ }>;
182
+ /** Task stages the coder ran on this lane: the tasks it gave itself, plus any revision. */
183
+ readonly tasks: Schema.Int;
184
+ /** From the coder's first task (after setup and planning) to its first edit; absent when it never edited. */
185
+ readonly firstEditMs: Schema.optionalKey<Schema.Number>;
186
+ /** Explore calls (ls, find, grep, read) made before that first edit. */
187
+ readonly exploreBeforeEdit: Schema.Int;
156
188
  }>>;
157
189
  /** Stories merged on an earlier run: this run only skipped them. */
158
190
  readonly skipped: Schema.$Array<Schema.String>;
@@ -1 +1 @@
1
- {"version":3,"file":"Profile.d.ts","sourceRoot":"","sources":["../src/Profile.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAIvC,OAAO,EAAE,QAAQ,EAAqB,KAAK,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAE5E,OAAO,EAAE,QAAQ,EAAE,CAAA;AAEnB,OAAO,EAEL,KAAK,WAAW,EAChB,KAAK,YAAY,EACjB,KAAK,kBAAkB,EACxB,MAAM,YAAY,CAAA;AAmBnB,eAAO,MAAM,WAAW;;;;;;;EAOtB,CAAA;AACF,MAAM,MAAM,WAAW,GAAG,OAAO,WAAW,CAAC,IAAI,CAAA;AAEjD,eAAO,MAAM,SAAS;;;;;;;IAOpB,0DAA0D;;IAE1D,gEAAgE;;IAEhE,6FAA6F;;EAE7F,CAAA;AACF,MAAM,MAAM,SAAS,GAAG,OAAO,SAAS,CAAC,IAAI,CAAA;AAE7C,0FAA0F;AAC1F,eAAO,MAAM,GAAG;;;;EAId,CAAA;AACF,MAAM,MAAM,GAAG,GAAG,OAAO,GAAG,CAAC,IAAI,CAAA;AAEjC,eAAO,MAAM,YAAY;;;;;IAKvB,2FAA2F;;;;;;;;;;;;;;;;;QAtB3F,0DAA0D;;QAE1D,gEAAgE;;QAEhE,6FAA6F;;;IAsB7F,mFAAmF;;;;;;IAEnF;;;OAGG;;;EAGH,CAAA;AACF,MAAM,MAAM,YAAY,GAAG,OAAO,YAAY,CAAC,IAAI,CAAA;AAEnD,eAAO,MAAM,QAAQ;;;;;;;IAOnB,oCAAoC;;;EAGpC,CAAA;AACF,MAAM,MAAM,QAAQ,GAAG,OAAO,QAAQ,CAAC,IAAI,CAAA;AAE3C,eAAO,MAAM,OAAO;;;;;;EAMlB,CAAA;AACF,MAAM,MAAM,OAAO,GAAG,OAAO,OAAO,CAAC,IAAI,CAAA;AAEzC,eAAO,MAAM,QAAQ;;;;EAAqE,CAAA;AAC1F,MAAM,MAAM,QAAQ,GAAG,OAAO,QAAQ,CAAC,IAAI,CAAA;AAE3C,eAAO,MAAM,OAAO;;;EAAqE,CAAA;AACzF,MAAM,MAAM,OAAO,GAAG,OAAO,OAAO,CAAC,IAAI,CAAA;AAEzC,eAAO,MAAM,aAAa;IACxB,iFAAiF;;;;;;;;QA5CjF,2FAA2F;;;;;;;;;;;;;;;;;YAtB3F,0DAA0D;;YAE1D,gEAAgE;;YAEhE,6FAA6F;;;QAsB7F,mFAAmF;;;;;;QAEnF;;;WAGG;;;;IAuCH,oEAAoE;;;;;;;;;;;;;;;;;QA1BpE,oCAAoC;;;;;;;;;;;;;;;;IAgCpC,wFAAwF;;;;;;;;;;;IAGxF,+FAA+F;;;;;;;;;;EAG/F,CAAA;AACF,MAAM,MAAM,aAAa,GAAG,OAAO,aAAa,CAAC,IAAI,CAAA;AA4JrD,eAAO,MAAM,SAAS,GAAI,QAAQ,aAAa,CAAC,SAAS,CAAC,KAAG,aA2O5D,CAAA;AA4MD,eAAO,MAAM,aAAa,GAAI,QAAQ,aAAa,KAAG,MAyJrD,CAAA;AAED,MAAM,WAAW,cAAe,SAAQ,WAAW;IACjD,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,CAAA;CACxB;AAID,2GAA2G;AAC3G,eAAO,MAAM,kBAAkB,+jDAO7B,CAAA"}
1
+ {"version":3,"file":"Profile.d.ts","sourceRoot":"","sources":["../src/Profile.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAIvC,OAAO,EAAE,QAAQ,EAAqB,KAAK,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAE5E,OAAO,EAAE,QAAQ,EAAE,CAAA;AAEnB,OAAO,EAEL,KAAK,WAAW,EAChB,KAAK,YAAY,EACjB,KAAK,kBAAkB,EACxB,MAAM,YAAY,CAAA;AAmBnB,eAAO,MAAM,WAAW;;;;;;;EAOtB,CAAA;AACF,MAAM,MAAM,WAAW,GAAG,OAAO,WAAW,CAAC,IAAI,CAAA;AAEjD,eAAO,MAAM,SAAS;;;;;;;IAOpB,0DAA0D;;IAE1D,gEAAgE;;IAEhE,6FAA6F;;EAE7F,CAAA;AACF,MAAM,MAAM,SAAS,GAAG,OAAO,SAAS,CAAC,IAAI,CAAA;AAE7C,0FAA0F;AAC1F,eAAO,MAAM,GAAG;;;;EAId,CAAA;AACF,MAAM,MAAM,GAAG,GAAG,OAAO,GAAG,CAAC,IAAI,CAAA;AAEjC,sFAAsF;AACtF,eAAO,MAAM,SAAS;;;;;EAKpB,CAAA;AACF,MAAM,MAAM,SAAS,GAAG,OAAO,SAAS,CAAC,IAAI,CAAA;AAE7C,eAAO,MAAM,YAAY;;;;;IAKvB,2FAA2F;;;;;;;;;;;;;;;;;QA/B3F,0DAA0D;;QAE1D,gEAAgE;;QAEhE,6FAA6F;;;IA+B7F,mFAAmF;;;;;;IAEnF;;;OAGG;;;;;;;;;IAIH,2FAA2F;;IAE3F,6GAA6G;;IAE7G,wEAAwE;;EAExE,CAAA;AACF,MAAM,MAAM,YAAY,GAAG,OAAO,YAAY,CAAC,IAAI,CAAA;AAEnD,eAAO,MAAM,QAAQ;;;;;;;IAOnB,oCAAoC;;;EAGpC,CAAA;AACF,MAAM,MAAM,QAAQ,GAAG,OAAO,QAAQ,CAAC,IAAI,CAAA;AAE3C,eAAO,MAAM,OAAO;;;;;;EAMlB,CAAA;AACF,MAAM,MAAM,OAAO,GAAG,OAAO,OAAO,CAAC,IAAI,CAAA;AAEzC,eAAO,MAAM,QAAQ;;;;EAAqE,CAAA;AAC1F,MAAM,MAAM,QAAQ,GAAG,OAAO,QAAQ,CAAC,IAAI,CAAA;AAE3C,eAAO,MAAM,OAAO;;;EAAqE,CAAA;AACzF,MAAM,MAAM,OAAO,GAAG,OAAO,OAAO,CAAC,IAAI,CAAA;AAEzC,eAAO,MAAM,aAAa;IACxB,iFAAiF;;;;;;;;QAnDjF,2FAA2F;;;;;;;;;;;;;;;;;YA/B3F,0DAA0D;;YAE1D,gEAAgE;;YAEhE,6FAA6F;;;QA+B7F,mFAAmF;;;;;;QAEnF;;;WAGG;;;;;;;;;QAIH,2FAA2F;;QAE3F,6GAA6G;;QAE7G,wEAAwE;;;IAsCxE,oEAAoE;;;;;;;;;;;;;;;;;QA1BpE,oCAAoC;;;;;;;;;;;;;;;;IAgCpC,wFAAwF;;;;;;;;;;;IAGxF,+FAA+F;;;;;;;;;;EAG/F,CAAA;AACF,MAAM,MAAM,aAAa,GAAG,OAAO,aAAa,CAAC,IAAI,CAAA;AAkKrD,eAAO,MAAM,SAAS,GAAI,QAAQ,aAAa,CAAC,SAAS,CAAC,KAAG,aAmQ5D,CAAA;AA6ND,eAAO,MAAM,aAAa,GAAI,QAAQ,aAAa,KAAG,MA4LrD,CAAA;AAED,MAAM,WAAW,cAAe,SAAQ,WAAW;IACjD,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,CAAA;CACxB;AAID,2GAA2G;AAC3G,eAAO,MAAM,kBAAkB,+jDAO7B,CAAA"}
package/dist/Profile.js CHANGED
@@ -48,6 +48,13 @@ export const Gap = Schema.Struct({
48
48
  after: Schema.String,
49
49
  before: Schema.String
50
50
  });
51
+ /** The coder's tool calls by kind of work (build, install and git count as other). */
52
+ export const ToolCalls = Schema.Struct({
53
+ explore: Schema.Int,
54
+ edit: Schema.Int,
55
+ test: Schema.Int,
56
+ other: Schema.Int
57
+ });
51
58
  export const StoryProfile = Schema.Struct({
52
59
  id: Schema.String,
53
60
  executor: Schema.optionalKey(Schema.String),
@@ -64,7 +71,14 @@ export const StoryProfile = Schema.Struct({
64
71
  * call) but not ended: a run still going. Counted as model time so far.
65
72
  */
66
73
  openTurnMs: Ms,
67
- openTurnTools: Schema.Int
74
+ openTurnTools: Schema.Int,
75
+ toolCalls: ToolCalls,
76
+ /** Task stages the coder ran on this lane: the tasks it gave itself, plus any revision. */
77
+ tasks: Schema.Int,
78
+ /** From the coder's first task (after setup and planning) to its first edit; absent when it never edited. */
79
+ firstEditMs: Schema.optionalKey(Ms),
80
+ /** Explore calls (ls, find, grep, read) made before that first edit. */
81
+ exploreBeforeEdit: Schema.Int
68
82
  });
69
83
  export const ModelRow = Schema.Struct({
70
84
  role: Schema.String,
@@ -243,10 +257,21 @@ export const profileOf = (inputs) => {
243
257
  skipped: false,
244
258
  moments: [{ at, what: describe(event) }],
245
259
  openSince: undefined,
246
- openTools: 0
260
+ openTools: 0,
261
+ tasks: 0,
262
+ firstTask: undefined,
263
+ toolCalls: { explore: 0, edit: 0, test: 0, other: 0 },
264
+ firstEdit: undefined,
265
+ exploreBeforeEdit: 0
247
266
  });
248
267
  continue;
249
268
  }
269
+ if (lane !== undefined &&
270
+ !storyStage.test(event.stage) &&
271
+ !event.stage.startsWith(`story ${lane.id}:`)) {
272
+ lane.tasks += 1;
273
+ lane.firstTask = lane.firstTask ?? at;
274
+ }
250
275
  break;
251
276
  }
252
277
  case "StageCompleted":
@@ -262,6 +287,16 @@ export const profileOf = (inputs) => {
262
287
  case "Timed": {
263
288
  allTimed.push({ at, event });
264
289
  lane?.timed.push({ at, event });
290
+ if (lane !== undefined && event.kind === "tool" && event.category !== undefined) {
291
+ const kind = event.category === "explore" || event.category === "edit" || event.category === "test"
292
+ ? event.category
293
+ : "other";
294
+ lane.toolCalls[kind] += 1;
295
+ if (kind === "edit" && lane.firstEdit === undefined) {
296
+ lane.firstEdit = at - (lane.firstTask ?? lane.start);
297
+ lane.exploreBeforeEdit = lane.toolCalls.explore;
298
+ }
299
+ }
265
300
  if (lane !== undefined && event.kind === "model" && event.label === "coder") {
266
301
  lane.openSince = undefined;
267
302
  lane.openTools = 0;
@@ -457,6 +492,10 @@ const storyProfile = (lane, lastAt, planReady, estimated) => {
457
492
  gaps: estimated ? [] : gapsOf(lane),
458
493
  openTurnMs,
459
494
  openTurnTools: open ? lane.openTools : 0,
495
+ toolCalls: { ...lane.toolCalls },
496
+ tasks: lane.tasks,
497
+ ...(lane.firstEdit === undefined ? {} : { firstEditMs: lane.firstEdit }),
498
+ exploreBeforeEdit: lane.exploreBeforeEdit,
460
499
  id: lane.id,
461
500
  ...(lane.executor === undefined ? {} : { executor: lane.executor }),
462
501
  status: lane.status,
@@ -539,6 +578,18 @@ const findingsOf = (facts) => {
539
578
  });
540
579
  }
541
580
  }
581
+ for (const story of facts.stories) {
582
+ const wandered = story.firstEditMs !== undefined &&
583
+ story.wallMs >= 60_000 &&
584
+ (story.exploreBeforeEdit >= 15 ||
585
+ (story.exploreBeforeEdit >= 5 && story.firstEditMs >= story.wallMs / 4));
586
+ if (wandered && story.firstEditMs !== undefined) {
587
+ candidates.push({
588
+ ms: story.firstEditMs,
589
+ text: `${story.id}: ${plural(story.exploreBeforeEdit, "explore call")} and ${duration(story.firstEditMs)} before the coder's first edit — it found its way instead of being told where to go`
590
+ });
591
+ }
592
+ }
542
593
  const queued = sum(facts.stories.map((story) => story.queuedMs ?? 0));
543
594
  if (queued >= 1_000) {
544
595
  candidates.push({
@@ -633,6 +684,35 @@ export const renderProfile = (report) => {
633
684
  ? `${(story.turns.lastPrompt / story.turns.firstPrompt).toFixed(1)}×`
634
685
  : ""
635
686
  ])),
687
+ ...(report.stories.every((story) => story.toolCalls.explore +
688
+ story.toolCalls.edit +
689
+ story.toolCalls.test +
690
+ story.toolCalls.other ===
691
+ 0)
692
+ ? []
693
+ : [
694
+ "",
695
+ "Coder work per story",
696
+ ...table([
697
+ "story",
698
+ "tasks",
699
+ "explore",
700
+ "edit",
701
+ "test",
702
+ "other",
703
+ "before 1st edit",
704
+ "1st edit at"
705
+ ], report.stories.map((story) => [
706
+ story.id,
707
+ String(story.tasks),
708
+ String(story.toolCalls.explore),
709
+ String(story.toolCalls.edit),
710
+ String(story.toolCalls.test),
711
+ String(story.toolCalls.other),
712
+ story.firstEditMs === undefined ? "" : `${story.exploreBeforeEdit} explore`,
713
+ story.firstEditMs === undefined ? "never" : duration(story.firstEditMs)
714
+ ]))
715
+ ]),
636
716
  ...(report.skipped.length === 0
637
717
  ? []
638
718
  : [` skipped (merged on an earlier run): ${report.skipped.join(", ")}`]),
@@ -1 +1 @@
1
- {"version":3,"file":"Profile.js","sourceRoot":"","sources":["../src/Profile.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Profile.js","sourceRoot":"","sources":["../src/Profile.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@llm4ts/runner",
3
- "version": "2.28.0",
3
+ "version": "2.29.0",
4
4
  "description": "Node runner, CLI, terminal, and MCP composition for llm4ts",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -68,8 +68,8 @@
68
68
  "typescript"
69
69
  ],
70
70
  "dependencies": {
71
- "@llm4ts/core": "2.28.0",
72
- "@llm4ts/flow": "2.28.0"
71
+ "@llm4ts/core": "2.29.0",
72
+ "@llm4ts/flow": "2.29.0"
73
73
  },
74
74
  "peerDependencies": {
75
75
  "effect": "4.0.0"
package/src/Profile.ts CHANGED
@@ -65,6 +65,15 @@ export const Gap = Schema.Struct({
65
65
  })
66
66
  export type Gap = typeof Gap.Type
67
67
 
68
+ /** The coder's tool calls by kind of work (build, install and git count as other). */
69
+ export const ToolCalls = Schema.Struct({
70
+ explore: Schema.Int,
71
+ edit: Schema.Int,
72
+ test: Schema.Int,
73
+ other: Schema.Int
74
+ })
75
+ export type ToolCalls = typeof ToolCalls.Type
76
+
68
77
  export const StoryProfile = Schema.Struct({
69
78
  id: Schema.String,
70
79
  executor: Schema.optionalKey(Schema.String),
@@ -81,7 +90,14 @@ export const StoryProfile = Schema.Struct({
81
90
  * call) but not ended: a run still going. Counted as model time so far.
82
91
  */
83
92
  openTurnMs: Ms,
84
- openTurnTools: Schema.Int
93
+ openTurnTools: Schema.Int,
94
+ toolCalls: ToolCalls,
95
+ /** Task stages the coder ran on this lane: the tasks it gave itself, plus any revision. */
96
+ tasks: Schema.Int,
97
+ /** From the coder's first task (after setup and planning) to its first edit; absent when it never edited. */
98
+ firstEditMs: Schema.optionalKey(Ms),
99
+ /** Explore calls (ls, find, grep, read) made before that first edit. */
100
+ exploreBeforeEdit: Schema.Int
85
101
  })
86
102
  export type StoryProfile = typeof StoryProfile.Type
87
103
 
@@ -159,6 +175,12 @@ interface Lane {
159
175
  /** Since when a coder turn has been working without ending, and its tool calls. */
160
176
  openSince: number | undefined
161
177
  openTools: number
178
+ tasks: number
179
+ /** When the coder's first task began: setup and task planning come before it. */
180
+ firstTask: number | undefined
181
+ toolCalls: { explore: number; edit: number; test: number; other: number }
182
+ firstEdit: number | undefined
183
+ exploreBeforeEdit: number
162
184
  }
163
185
 
164
186
  interface Lease {
@@ -321,10 +343,23 @@ export const profileOf = (inputs: ReadonlyArray<TreeInput>): ProfileReport => {
321
343
  skipped: false,
322
344
  moments: [{ at, what: describe(event) }],
323
345
  openSince: undefined,
324
- openTools: 0
346
+ openTools: 0,
347
+ tasks: 0,
348
+ firstTask: undefined,
349
+ toolCalls: { explore: 0, edit: 0, test: 0, other: 0 },
350
+ firstEdit: undefined,
351
+ exploreBeforeEdit: 0
325
352
  })
326
353
  continue
327
354
  }
355
+ if (
356
+ lane !== undefined &&
357
+ !storyStage.test(event.stage) &&
358
+ !event.stage.startsWith(`story ${lane.id}:`)
359
+ ) {
360
+ lane.tasks += 1
361
+ lane.firstTask = lane.firstTask ?? at
362
+ }
328
363
  break
329
364
  }
330
365
  case "StageCompleted":
@@ -340,6 +375,17 @@ export const profileOf = (inputs: ReadonlyArray<TreeInput>): ProfileReport => {
340
375
  case "Timed": {
341
376
  allTimed.push({ at, event })
342
377
  lane?.timed.push({ at, event })
378
+ if (lane !== undefined && event.kind === "tool" && event.category !== undefined) {
379
+ const kind =
380
+ event.category === "explore" || event.category === "edit" || event.category === "test"
381
+ ? event.category
382
+ : "other"
383
+ lane.toolCalls[kind] += 1
384
+ if (kind === "edit" && lane.firstEdit === undefined) {
385
+ lane.firstEdit = at - (lane.firstTask ?? lane.start)
386
+ lane.exploreBeforeEdit = lane.toolCalls.explore
387
+ }
388
+ }
343
389
  if (lane !== undefined && event.kind === "model" && event.label === "coder") {
344
390
  lane.openSince = undefined
345
391
  lane.openTools = 0
@@ -578,6 +624,10 @@ const storyProfile = (
578
624
  gaps: estimated ? [] : gapsOf(lane),
579
625
  openTurnMs,
580
626
  openTurnTools: open ? lane.openTools : 0,
627
+ toolCalls: { ...lane.toolCalls },
628
+ tasks: lane.tasks,
629
+ ...(lane.firstEdit === undefined ? {} : { firstEditMs: lane.firstEdit }),
630
+ exploreBeforeEdit: lane.exploreBeforeEdit,
581
631
  id: lane.id,
582
632
  ...(lane.executor === undefined ? {} : { executor: lane.executor }),
583
633
  status: lane.status,
@@ -683,6 +733,19 @@ const findingsOf = (facts: {
683
733
  })
684
734
  }
685
735
  }
736
+ for (const story of facts.stories) {
737
+ const wandered =
738
+ story.firstEditMs !== undefined &&
739
+ story.wallMs >= 60_000 &&
740
+ (story.exploreBeforeEdit >= 15 ||
741
+ (story.exploreBeforeEdit >= 5 && story.firstEditMs >= story.wallMs / 4))
742
+ if (wandered && story.firstEditMs !== undefined) {
743
+ candidates.push({
744
+ ms: story.firstEditMs,
745
+ text: `${story.id}: ${plural(story.exploreBeforeEdit, "explore call")} and ${duration(story.firstEditMs)} before the coder's first edit — it found its way instead of being told where to go`
746
+ })
747
+ }
748
+ }
686
749
  const queued = sum(facts.stories.map((story) => story.queuedMs ?? 0))
687
750
  if (queued >= 1_000) {
688
751
  candidates.push({
@@ -795,6 +858,41 @@ export const renderProfile = (report: ProfileReport): string => {
795
858
  : ""
796
859
  ])
797
860
  ),
861
+ ...(report.stories.every(
862
+ (story) =>
863
+ story.toolCalls.explore +
864
+ story.toolCalls.edit +
865
+ story.toolCalls.test +
866
+ story.toolCalls.other ===
867
+ 0
868
+ )
869
+ ? []
870
+ : [
871
+ "",
872
+ "Coder work per story",
873
+ ...table(
874
+ [
875
+ "story",
876
+ "tasks",
877
+ "explore",
878
+ "edit",
879
+ "test",
880
+ "other",
881
+ "before 1st edit",
882
+ "1st edit at"
883
+ ],
884
+ report.stories.map((story) => [
885
+ story.id,
886
+ String(story.tasks),
887
+ String(story.toolCalls.explore),
888
+ String(story.toolCalls.edit),
889
+ String(story.toolCalls.test),
890
+ String(story.toolCalls.other),
891
+ story.firstEditMs === undefined ? "" : `${story.exploreBeforeEdit} explore`,
892
+ story.firstEditMs === undefined ? "never" : duration(story.firstEditMs)
893
+ ])
894
+ )
895
+ ]),
798
896
  ...(report.skipped.length === 0
799
897
  ? []
800
898
  : [` skipped (merged on an earlier run): ${report.skipped.join(", ")}`]),