baro-ai 0.70.14 → 0.71.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/cli.mjs +120 -0
- package/dist/cli.mjs.map +1 -1
- package/dist/run-planner.mjs +2770 -213
- package/dist/run-planner.mjs.map +1 -1
- package/dist/runner.mjs +1 -1
- package/dist/runner.mjs.map +1 -1
- package/package.json +1 -1
package/dist/cli.mjs
CHANGED
|
@@ -40683,8 +40683,10 @@ var RunStarted = defineSemanticEvent("run_started");
|
|
|
40683
40683
|
var LevelComputeRequest = defineSemanticEvent("level_compute_request");
|
|
40684
40684
|
var LevelStarted = defineSemanticEvent("level_started");
|
|
40685
40685
|
var LevelCompleted = defineSemanticEvent("level_completed");
|
|
40686
|
+
var RecoveryStarted = defineSemanticEvent("recovery_started");
|
|
40686
40687
|
var StorySpawnRequest = defineSemanticEvent("story_spawn_request");
|
|
40687
40688
|
var StorySpawned = defineSemanticEvent("story_spawned");
|
|
40689
|
+
var StoryRouted = defineSemanticEvent("story_routed");
|
|
40688
40690
|
var FinalizeStarted = defineSemanticEvent("finalize_started");
|
|
40689
40691
|
var PrCreated = defineSemanticEvent("pr_created");
|
|
40690
40692
|
var RunCompleted = defineSemanticEvent("run_completed");
|
|
@@ -40942,6 +40944,8 @@ var Conductor = class extends BaseObserver {
|
|
|
40942
40944
|
*/
|
|
40943
40945
|
recoveryAttempts = /* @__PURE__ */ new Map();
|
|
40944
40946
|
maxRecoveryAttemptsPerStory = 1;
|
|
40947
|
+
/** Recovery levels started in this run (1-based `attempt` for RecoveryStarted). */
|
|
40948
|
+
recoveryLevelsStarted = 0;
|
|
40945
40949
|
totalAttempts = 0;
|
|
40946
40950
|
appliedReplans = 0;
|
|
40947
40951
|
currentLevel = null;
|
|
@@ -41412,6 +41416,13 @@ ${prompt}`;
|
|
|
41412
41416
|
failed: [],
|
|
41413
41417
|
perStoryAttempts: /* @__PURE__ */ new Map()
|
|
41414
41418
|
};
|
|
41419
|
+
this.recoveryLevelsStarted += 1;
|
|
41420
|
+
this.emit(
|
|
41421
|
+
RecoveryStarted.create({
|
|
41422
|
+
attempt: this.recoveryLevelsStarted,
|
|
41423
|
+
storyIds: this.currentLevel.storyIds
|
|
41424
|
+
})
|
|
41425
|
+
);
|
|
41415
41426
|
this.emit(
|
|
41416
41427
|
LevelStarted.create({
|
|
41417
41428
|
ordinal,
|
|
@@ -43423,6 +43434,13 @@ var CoordinationForwarder = class extends BaseObserver {
|
|
|
43423
43434
|
}
|
|
43424
43435
|
}
|
|
43425
43436
|
handleIntervention(item) {
|
|
43437
|
+
emit({
|
|
43438
|
+
type: "intervention",
|
|
43439
|
+
id: item.storyId,
|
|
43440
|
+
source: item.source,
|
|
43441
|
+
action: item.action,
|
|
43442
|
+
reason: item.reason
|
|
43443
|
+
});
|
|
43426
43444
|
emit({
|
|
43427
43445
|
type: "story_log",
|
|
43428
43446
|
id: item.storyId,
|
|
@@ -43443,6 +43461,13 @@ var CoordinationForwarder = class extends BaseObserver {
|
|
|
43443
43461
|
});
|
|
43444
43462
|
}
|
|
43445
43463
|
handleCritique(item) {
|
|
43464
|
+
emit({
|
|
43465
|
+
type: "critique",
|
|
43466
|
+
id: item.agentId,
|
|
43467
|
+
verdict: item.verdict,
|
|
43468
|
+
reasoning: item.reasoning,
|
|
43469
|
+
violated: [...item.violatedCriteria]
|
|
43470
|
+
});
|
|
43446
43471
|
emit({
|
|
43447
43472
|
type: "story_log",
|
|
43448
43473
|
id: item.agentId,
|
|
@@ -43451,6 +43476,67 @@ var CoordinationForwarder = class extends BaseObserver {
|
|
|
43451
43476
|
}
|
|
43452
43477
|
};
|
|
43453
43478
|
|
|
43479
|
+
// ../baro-orchestrator/src/participants/forwarders/dag.ts
|
|
43480
|
+
var DagForwarder = class extends BaseObserver {
|
|
43481
|
+
async onExternalEvent(_source, event) {
|
|
43482
|
+
if (Replan.is(event)) {
|
|
43483
|
+
this.handleReplan(event.data);
|
|
43484
|
+
return;
|
|
43485
|
+
}
|
|
43486
|
+
if (LevelStarted.is(event)) {
|
|
43487
|
+
this.handleLevelStarted(event.data);
|
|
43488
|
+
return;
|
|
43489
|
+
}
|
|
43490
|
+
if (LevelCompleted.is(event)) {
|
|
43491
|
+
this.handleLevelCompleted(event.data);
|
|
43492
|
+
return;
|
|
43493
|
+
}
|
|
43494
|
+
if (RecoveryStarted.is(event)) {
|
|
43495
|
+
this.handleRecoveryStarted(event.data);
|
|
43496
|
+
return;
|
|
43497
|
+
}
|
|
43498
|
+
}
|
|
43499
|
+
handleReplan(item) {
|
|
43500
|
+
emit({
|
|
43501
|
+
type: "replan",
|
|
43502
|
+
source: item.source,
|
|
43503
|
+
reason: item.reason,
|
|
43504
|
+
added: item.addedStories.map((s2) => ({
|
|
43505
|
+
id: s2.id,
|
|
43506
|
+
title: s2.title,
|
|
43507
|
+
depends_on: [...s2.dependsOn]
|
|
43508
|
+
})),
|
|
43509
|
+
removed: [...item.removedStoryIds],
|
|
43510
|
+
rewired: Object.entries(item.modifiedDeps).map(([id, deps]) => ({
|
|
43511
|
+
id,
|
|
43512
|
+
depends_on: [...deps]
|
|
43513
|
+
}))
|
|
43514
|
+
});
|
|
43515
|
+
}
|
|
43516
|
+
handleLevelStarted(item) {
|
|
43517
|
+
emit({
|
|
43518
|
+
type: "level_started",
|
|
43519
|
+
ordinal: item.ordinal,
|
|
43520
|
+
story_ids: [...item.storyIds]
|
|
43521
|
+
});
|
|
43522
|
+
}
|
|
43523
|
+
handleLevelCompleted(item) {
|
|
43524
|
+
emit({
|
|
43525
|
+
type: "level_completed",
|
|
43526
|
+
ordinal: item.ordinal,
|
|
43527
|
+
passed: [...item.passed],
|
|
43528
|
+
failed: [...item.failed]
|
|
43529
|
+
});
|
|
43530
|
+
}
|
|
43531
|
+
handleRecoveryStarted(item) {
|
|
43532
|
+
emit({
|
|
43533
|
+
type: "recovery_started",
|
|
43534
|
+
attempt: item.attempt,
|
|
43535
|
+
story_ids: [...item.storyIds]
|
|
43536
|
+
});
|
|
43537
|
+
}
|
|
43538
|
+
};
|
|
43539
|
+
|
|
43454
43540
|
// ../baro-orchestrator/src/participants/forwarders/finalization.ts
|
|
43455
43541
|
var FinalizationForwarder = class extends BaseObserver {
|
|
43456
43542
|
async onExternalEvent(_source, event) {
|
|
@@ -43550,6 +43636,31 @@ var StoryLifecycleForwarder = class extends BaseObserver {
|
|
|
43550
43636
|
this.handleStoryResult(event.data);
|
|
43551
43637
|
return;
|
|
43552
43638
|
}
|
|
43639
|
+
if (StoryRouted.is(event)) {
|
|
43640
|
+
emit({
|
|
43641
|
+
type: "routed",
|
|
43642
|
+
id: event.data.storyId,
|
|
43643
|
+
backend: event.data.backend,
|
|
43644
|
+
model: event.data.model
|
|
43645
|
+
});
|
|
43646
|
+
return;
|
|
43647
|
+
}
|
|
43648
|
+
if (StoryMerged.is(event)) {
|
|
43649
|
+
emit({
|
|
43650
|
+
type: "story_merged",
|
|
43651
|
+
id: event.data.storyId,
|
|
43652
|
+
mode: event.data.mode
|
|
43653
|
+
});
|
|
43654
|
+
return;
|
|
43655
|
+
}
|
|
43656
|
+
if (StoryMergeFailed.is(event)) {
|
|
43657
|
+
emit({
|
|
43658
|
+
type: "merge_failed",
|
|
43659
|
+
id: event.data.storyId,
|
|
43660
|
+
error: event.data.error
|
|
43661
|
+
});
|
|
43662
|
+
return;
|
|
43663
|
+
}
|
|
43553
43664
|
}
|
|
43554
43665
|
// Same signal the Sentry uses: a write/edit tool call from a story
|
|
43555
43666
|
// agent. We attribute the touched path to that agent's story and
|
|
@@ -43721,6 +43832,7 @@ function joinBaroEventForwarders(env) {
|
|
|
43721
43832
|
new TokenUsageForwarder(),
|
|
43722
43833
|
new ProgressForwarder(),
|
|
43723
43834
|
new CoordinationForwarder(),
|
|
43835
|
+
new DagForwarder(),
|
|
43724
43836
|
new FinalizationForwarder()
|
|
43725
43837
|
];
|
|
43726
43838
|
for (const f3 of forwarders) f3.join(env);
|
|
@@ -47739,6 +47851,14 @@ var StoryFactory = class extends BaseObserver {
|
|
|
47739
47851
|
process.stderr.write(
|
|
47740
47852
|
`[story-factory] ${req.storyId} \u2192 ${formatRoute(route)}` + (req.model ? ` (model="${req.model}")` : "") + "\n"
|
|
47741
47853
|
);
|
|
47854
|
+
this.envRef.deliverSemanticEvent(
|
|
47855
|
+
this,
|
|
47856
|
+
StoryRouted.create({
|
|
47857
|
+
storyId: req.storyId,
|
|
47858
|
+
backend: route.backend,
|
|
47859
|
+
model: route.model ?? "default"
|
|
47860
|
+
})
|
|
47861
|
+
);
|
|
47742
47862
|
const storyCwd = this.opts.worktrees ? await this.opts.worktrees.create(req.storyId) ?? this.opts.cwd : this.opts.cwd;
|
|
47743
47863
|
const exec3 = this.executor.start(req, route, storyCwd, this.envRef, {
|
|
47744
47864
|
openaiModel: this.opts.openaiModel,
|