codeharness 0.32.2 → 0.32.3
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.
|
@@ -2895,7 +2895,7 @@ function generateDockerfileTemplate(projectDir, stackOrDetections) {
|
|
|
2895
2895
|
}
|
|
2896
2896
|
|
|
2897
2897
|
// src/modules/infra/init-project.ts
|
|
2898
|
-
var HARNESS_VERSION = true ? "0.32.
|
|
2898
|
+
var HARNESS_VERSION = true ? "0.32.3" : "0.0.0-dev";
|
|
2899
2899
|
function failResult(opts, error) {
|
|
2900
2900
|
return {
|
|
2901
2901
|
status: "fail",
|
package/dist/index.js
CHANGED
|
@@ -40,7 +40,7 @@ import {
|
|
|
40
40
|
validateDockerfile,
|
|
41
41
|
warn,
|
|
42
42
|
writeState
|
|
43
|
-
} from "./chunk-
|
|
43
|
+
} from "./chunk-N57BYUXA.js";
|
|
44
44
|
|
|
45
45
|
// src/index.ts
|
|
46
46
|
import { Command } from "commander";
|
|
@@ -3878,7 +3878,7 @@ async function executeWorkflow(config) {
|
|
|
3878
3878
|
}
|
|
3879
3879
|
if (state.phase === "error" || state.phase === "failed") {
|
|
3880
3880
|
const errorCount = state.tasks_completed.filter((t) => t.error).length;
|
|
3881
|
-
info(`Resuming from ${state.phase} state \u2014 ${errorCount} previous error(s), retrying failed tasks`);
|
|
3881
|
+
if (!config.onEvent) info(`Resuming from ${state.phase} state \u2014 ${errorCount} previous error(s), retrying failed tasks`);
|
|
3882
3882
|
}
|
|
3883
3883
|
state = {
|
|
3884
3884
|
...state,
|
|
@@ -3929,13 +3929,17 @@ async function executeWorkflow(config) {
|
|
|
3929
3929
|
for (const [epicId, epicItems] of epicGroups) {
|
|
3930
3930
|
if (halted) break;
|
|
3931
3931
|
if (config.abortSignal?.aborted) {
|
|
3932
|
-
info("Execution interrupted \u2014 saving state");
|
|
3932
|
+
if (!config.onEvent) info("Execution interrupted \u2014 saving state");
|
|
3933
3933
|
state = { ...state, phase: "interrupted" };
|
|
3934
3934
|
writeWorkflowState(state, projectDir);
|
|
3935
3935
|
halted = true;
|
|
3936
3936
|
break;
|
|
3937
3937
|
}
|
|
3938
|
-
|
|
3938
|
+
if (config.onEvent) {
|
|
3939
|
+
config.onEvent({ type: "dispatch-start", taskName: "story_flow", storyKey: `__epic_${epicId}__` });
|
|
3940
|
+
} else {
|
|
3941
|
+
info(`[epic-${epicId}] Starting epic with ${epicItems.length} stories`);
|
|
3942
|
+
}
|
|
3939
3943
|
for (const step of config.workflow.epicFlow) {
|
|
3940
3944
|
if (halted) break;
|
|
3941
3945
|
if (config.abortSignal?.aborted) {
|
|
@@ -4049,7 +4053,7 @@ async function executeWorkflow(config) {
|
|
|
4049
4053
|
}
|
|
4050
4054
|
}
|
|
4051
4055
|
if (!halted) {
|
|
4052
|
-
info(`[epic-${epicId}] Epic completed`);
|
|
4056
|
+
if (!config.onEvent) info(`[epic-${epicId}] Epic completed`);
|
|
4053
4057
|
}
|
|
4054
4058
|
}
|
|
4055
4059
|
if (state.phase === "interrupted") {
|
|
@@ -6239,17 +6243,17 @@ function registerRunCommand(program) {
|
|
|
6239
6243
|
total: counts.total,
|
|
6240
6244
|
totalCost: totalCostUsd
|
|
6241
6245
|
});
|
|
6242
|
-
if (
|
|
6243
|
-
const
|
|
6244
|
-
|
|
6245
|
-
|
|
6246
|
-
|
|
6247
|
-
|
|
6248
|
-
|
|
6249
|
-
storyEntries[
|
|
6250
|
-
renderer.updateStories([...storyEntries]);
|
|
6246
|
+
if (event.taskName === "verify" && event.storyKey.startsWith("__epic_")) {
|
|
6247
|
+
const epicId = event.storyKey.replace("__epic_", "").replace("__", "");
|
|
6248
|
+
for (let i = 0; i < storyEntries.length; i++) {
|
|
6249
|
+
const se = storyEntries[i];
|
|
6250
|
+
if (se.status === "in-progress" && se.key.startsWith(`${epicId}-`)) {
|
|
6251
|
+
storiesDone++;
|
|
6252
|
+
updateStoryStatus2(se.key, "done");
|
|
6253
|
+
storyEntries[i] = { ...se, status: "done" };
|
|
6251
6254
|
}
|
|
6252
6255
|
}
|
|
6256
|
+
renderer.updateStories([...storyEntries]);
|
|
6253
6257
|
}
|
|
6254
6258
|
}
|
|
6255
6259
|
if (event.type === "dispatch-error") {
|
|
@@ -11160,7 +11164,7 @@ function registerTeardownCommand(program) {
|
|
|
11160
11164
|
} else if (otlpMode === "remote-routed") {
|
|
11161
11165
|
if (!options.keepDocker) {
|
|
11162
11166
|
try {
|
|
11163
|
-
const { stopCollectorOnly: stopCollectorOnly2 } = await import("./docker-
|
|
11167
|
+
const { stopCollectorOnly: stopCollectorOnly2 } = await import("./docker-UY37PFPB.js");
|
|
11164
11168
|
stopCollectorOnly2();
|
|
11165
11169
|
result.docker.stopped = true;
|
|
11166
11170
|
if (!isJson) {
|
|
@@ -11192,7 +11196,7 @@ function registerTeardownCommand(program) {
|
|
|
11192
11196
|
info("Shared stack: kept running (other projects may use it)");
|
|
11193
11197
|
}
|
|
11194
11198
|
} else if (isLegacyStack) {
|
|
11195
|
-
const { isStackRunning: isStackRunning2, stopStack } = await import("./docker-
|
|
11199
|
+
const { isStackRunning: isStackRunning2, stopStack } = await import("./docker-UY37PFPB.js");
|
|
11196
11200
|
let stackRunning = false;
|
|
11197
11201
|
try {
|
|
11198
11202
|
stackRunning = isStackRunning2(composeFile);
|
|
@@ -14179,7 +14183,7 @@ function registerDriversCommand(program) {
|
|
|
14179
14183
|
}
|
|
14180
14184
|
|
|
14181
14185
|
// src/index.ts
|
|
14182
|
-
var VERSION = true ? "0.32.
|
|
14186
|
+
var VERSION = true ? "0.32.3" : "0.0.0-dev";
|
|
14183
14187
|
function createProgram() {
|
|
14184
14188
|
const program = new Command();
|
|
14185
14189
|
program.name("codeharness").description("Makes autonomous coding agents produce software that actually works").version(VERSION).option("--json", "Output in machine-readable JSON format");
|