@oisincoveney/pipeline 3.19.5 → 3.19.6
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/doctor.d.ts +1 -1
- package/dist/cli/doctor.js +2 -2
- package/dist/cli/format.js +1 -1
- package/dist/cli/program.d.ts +1 -1
- package/dist/cli/run-command.d.ts +1 -1
- package/dist/cli/run-resolver.d.ts +1 -1
- package/dist/cli/run-service.d.ts +1 -1
- package/dist/cli/submit-options.js +1 -1
- package/dist/commands/pipeline-command.js +1 -1
- package/dist/commands/ticket/shared.d.ts +1 -1
- package/dist/commands/ticket-command.d.ts +2 -1
- package/dist/config/schemas.d.ts +1 -1
- package/dist/context/repo-map.js +2 -2
- package/dist/credentials/broker.d.ts +1 -1
- package/dist/install-commands/opencode.js +1 -1
- package/dist/install-commands/planner.js +1 -1
- package/dist/install-hooks.js +1 -1
- package/dist/loop/argo-poll.js +2 -2
- package/dist/loop/loop-command.js +1 -1
- package/dist/loop/merge.js +1 -1
- package/dist/planning/generate.js +1 -1
- package/dist/remote/submit/io.js +2 -2
- package/dist/run-control/contracts.d.ts +1 -1
- package/dist/run-control/contracts.js +1 -1
- package/dist/run-control/detach.js +1 -1
- package/dist/run-control/next-node.js +1 -1
- package/dist/run-control/run-artifacts-command.js +1 -1
- package/dist/run-control/run-command-domain.js +2 -2
- package/dist/run-control/runtime-reporter.js +1 -1
- package/dist/run-control/store-paths.js +1 -1
- package/dist/run-control/submit-result.js +1 -1
- package/dist/run-control/supervisor.js +2 -2
- package/dist/run-state/git-refs.js +1 -1
- package/dist/runner-command/run.js +1 -1
- package/dist/runtime/actor-ids.d.ts +1 -1
- package/dist/runtime/agent-node/index.js +2 -2
- package/dist/runtime/builtins/index.js +2 -2
- package/dist/runtime/changed-files/changed-files.js +1 -1
- package/dist/runtime/changed-files/index.js +2 -2
- package/dist/runtime/command-executor/index.js +2 -2
- package/dist/runtime/context/index.js +2 -2
- package/dist/runtime/contracts/index.d.ts +2 -1
- package/dist/runtime/drain-merge/index.js +2 -2
- package/dist/runtime/events/events.js +2 -2
- package/dist/runtime/events/index.js +2 -2
- package/dist/runtime/gates/index.js +5 -5
- package/dist/runtime/gates/kinds/acceptance/acceptance.js +1 -1
- package/dist/runtime/hooks/command-hook.js +1 -1
- package/dist/runtime/hooks/index.js +2 -2
- package/dist/runtime/json-validation/index.js +2 -2
- package/dist/runtime/node-protocol/node-protocol.js +1 -1
- package/dist/runtime/node-state-store.js +1 -1
- package/dist/runtime/open-pull-request/index.js +2 -2
- package/dist/runtime/opencode-session-executor.js +1 -1
- package/dist/runtime/parallel-node/index.js +2 -2
- package/dist/runtime/retry.js +1 -1
- package/dist/runtime/scheduler.js +1 -1
- package/dist/runtime/services/backlog-service.d.ts +1 -1
- package/dist/runtime/services/backlog-service.js +1 -1
- package/dist/runtime/services/drain-merge-git-service.js +2 -2
- package/dist/runtime/services/kubernetes-argo-service.js +1 -1
- package/dist/runtime/services/run-journal-file-service.js +1 -1
- package/dist/tickets/backlog-task-store.js +1 -1
- package/dist/tickets/completion/complete-ticket.js +1 -1
- package/dist/tickets/ticket-graph.js +2 -2
- package/dist/tickets/ticket-plan.d.ts +1 -1
- package/package.json +6 -1
package/dist/cli/doctor.d.ts
CHANGED
package/dist/cli/doctor.js
CHANGED
|
@@ -9,8 +9,8 @@ import { execa } from "execa";
|
|
|
9
9
|
import { join } from "node:path";
|
|
10
10
|
import matter from "gray-matter";
|
|
11
11
|
//#region src/cli/doctor.ts
|
|
12
|
-
const HEADLESS_AGENT_PERMISSION_VALUES = new Set(["ask"]);
|
|
13
|
-
const RUN_READINESS_CATEGORIES = new Set([
|
|
12
|
+
const HEADLESS_AGENT_PERMISSION_VALUES = /* @__PURE__ */ new Set(["ask"]);
|
|
13
|
+
const RUN_READINESS_CATEGORIES = /* @__PURE__ */ new Set([
|
|
14
14
|
"acceptance",
|
|
15
15
|
"green",
|
|
16
16
|
"intake",
|
package/dist/cli/format.js
CHANGED
|
@@ -137,4 +137,4 @@ function truncateMiddle(text, maxLength) {
|
|
|
137
137
|
return `${text.slice(0, keep)}\n... truncated ...\n${text.slice(-keep)}`;
|
|
138
138
|
}
|
|
139
139
|
//#endregion
|
|
140
|
-
export { createTerminalRuntimeReporter, formatDoctorResult, formatRuntimeFailure, formatRuntimeResult };
|
|
140
|
+
export { createTerminalRuntimeReporter, formatDoctorResult, formatRuntimeFailure, formatRuntimeProgressMessage, formatRuntimeResult };
|
package/dist/cli/program.d.ts
CHANGED
|
@@ -11,4 +11,4 @@ interface CliProgramOptions {
|
|
|
11
11
|
declare function createCliProgram(options?: CliProgramOptions): Command;
|
|
12
12
|
declare function runCli(argv: string[]): Promise<void>;
|
|
13
13
|
//#endregion
|
|
14
|
-
export { createCliProgram, runCli };
|
|
14
|
+
export { CliProgramOptions, createCliProgram, runCli };
|
|
@@ -33,4 +33,4 @@ interface RunResolution {
|
|
|
33
33
|
target: MokaRunTarget;
|
|
34
34
|
}
|
|
35
35
|
//#endregion
|
|
36
|
-
export { RunResolution, RunResolverFlags };
|
|
36
|
+
export { LocalRuntimeExecution, MOKA_RUN_EFFORTS, MOKA_RUN_TARGETS, MokaRunEffort, MokaRunMode, MokaRunTarget, RemoteSubmitExecution, RunResolution, RunResolverFlags };
|
|
@@ -26,4 +26,4 @@ interface RunControlOptions {
|
|
|
26
26
|
declare function execute(description: string, options?: ExecuteOptions): Promise<void>;
|
|
27
27
|
declare function quick(description: string, options?: Omit<ExecuteOptions, "entrypoint">): Promise<void>;
|
|
28
28
|
//#endregion
|
|
29
|
-
export { execute, quick };
|
|
29
|
+
export { ExecuteOptions, RunControlOptions, RunStoreMode, execute, quick };
|
|
@@ -112,4 +112,4 @@ function parseImagePullPolicy(value) {
|
|
|
112
112
|
return "Always";
|
|
113
113
|
}
|
|
114
114
|
//#endregion
|
|
115
|
-
export { addMokaSubmitOptions, buildMokaSubmitInputFromCli, runMokaSubmitFromCli };
|
|
115
|
+
export { addMokaSubmitOptions, buildMokaSubmitInputFromCli, parseImagePullPolicy, runMokaSubmitFromCli };
|
package/dist/config/schemas.d.ts
CHANGED
|
@@ -583,4 +583,4 @@ interface PipelineConfigValidationOptions {
|
|
|
583
583
|
allowMissingLintFileReferences?: boolean;
|
|
584
584
|
}
|
|
585
585
|
//#endregion
|
|
586
|
-
export { GateKind, HookEvent, McpGatewayBackendLocality, McpGatewayWorkspacePathSource, PipelineConfig, PipelineConfigError, PipelineConfigErrorCode, PipelineConfigIssue, PipelineConfigParts, PipelineConfigValidationOptions, RunnerType, ScheduleBaseline, SchedulingRole, WorkflowNodeKind, workflowSchema };
|
|
586
|
+
export { GateKind, HookEvent, McpGatewayBackendLocality, McpGatewayWorkspacePathSource, PipelineConfig, PipelineConfigError, PipelineConfigErrorCode, PipelineConfigIssue, PipelineConfigParts, PipelineConfigValidationOptions, RunnerType, ScheduleBaseline, SchedulingRole, WorkflowNodeKind, configSchema, workflowSchema };
|
package/dist/context/repo-map.js
CHANGED
|
@@ -7,7 +7,7 @@ import { Query } from "web-tree-sitter";
|
|
|
7
7
|
import Graph from "graphology";
|
|
8
8
|
import pagerank from "graphology-metrics/centrality/pagerank.js";
|
|
9
9
|
//#region src/context/repo-map.ts
|
|
10
|
-
const SOURCE_EXTENSIONS = new Set([
|
|
10
|
+
const SOURCE_EXTENSIONS = /* @__PURE__ */ new Set([
|
|
11
11
|
".cjs",
|
|
12
12
|
".js",
|
|
13
13
|
".jsx",
|
|
@@ -15,7 +15,7 @@ const SOURCE_EXTENSIONS = new Set([
|
|
|
15
15
|
".ts",
|
|
16
16
|
".tsx"
|
|
17
17
|
]);
|
|
18
|
-
const SKIP_DIRS = new Set([
|
|
18
|
+
const SKIP_DIRS = /* @__PURE__ */ new Set([
|
|
19
19
|
"node_modules",
|
|
20
20
|
".git",
|
|
21
21
|
"dist",
|
|
@@ -413,4 +413,4 @@ const opencodeAdapter = {
|
|
|
413
413
|
}
|
|
414
414
|
};
|
|
415
415
|
//#endregion
|
|
416
|
-
export { agentDispatchRoutes, entrypointDispatchBlock, grants, header, markdown, opencodeAdapter, projectAgentsMdDefinition, resolvedHostModel };
|
|
416
|
+
export { agentDispatchRoutes, entrypointDispatchBlock, grants, header, markdown, opencodeAdapter, projectAgentsMdDefinition, resolvedHostModel, shouldEmbedProjectGateway };
|
|
@@ -15,7 +15,7 @@ const ADAPTERS = {
|
|
|
15
15
|
opencode: opencodeAdapter,
|
|
16
16
|
"claude-code": claudeCodeAdapter
|
|
17
17
|
};
|
|
18
|
-
const GLOBAL_EXCLUDED_PATHS = new Set(["AGENTS.md"]);
|
|
18
|
+
const GLOBAL_EXCLUDED_PATHS = /* @__PURE__ */ new Set(["AGENTS.md"]);
|
|
19
19
|
const GENERATED_CONTENT_MARKERS = [
|
|
20
20
|
GENERATED_MARKER,
|
|
21
21
|
GENERATED_TS_MARKER,
|
package/dist/install-hooks.js
CHANGED
|
@@ -20,7 +20,7 @@ const HOST_TARGET_ROOT = {
|
|
|
20
20
|
codex: ".codex",
|
|
21
21
|
opencode: ".opencode"
|
|
22
22
|
};
|
|
23
|
-
const NON_HOOK_OWNED_TARGETS = new Set([".opencode/opencode.json"]);
|
|
23
|
+
const NON_HOOK_OWNED_TARGETS = /* @__PURE__ */ new Set([".opencode/opencode.json"]);
|
|
24
24
|
function hashContent(content) {
|
|
25
25
|
return createHash("sha256").update(content).digest("hex");
|
|
26
26
|
}
|
package/dist/loop/argo-poll.js
CHANGED
|
@@ -2,12 +2,12 @@ import { isRecord } from "../safe-json.js";
|
|
|
2
2
|
import { Duration, Effect } from "effect";
|
|
3
3
|
import { CustomObjectsApi, KubeConfig } from "@kubernetes/client-node";
|
|
4
4
|
//#region src/loop/argo-poll.ts
|
|
5
|
-
const TERMINAL_PHASES = new Set([
|
|
5
|
+
const TERMINAL_PHASES = /* @__PURE__ */ new Set([
|
|
6
6
|
"Succeeded",
|
|
7
7
|
"Failed",
|
|
8
8
|
"Error"
|
|
9
9
|
]);
|
|
10
|
-
const KNOWN_RUNNING_PHASES = new Set([
|
|
10
|
+
const KNOWN_RUNNING_PHASES = /* @__PURE__ */ new Set([
|
|
11
11
|
"Running",
|
|
12
12
|
"Pending",
|
|
13
13
|
""
|
package/dist/loop/merge.js
CHANGED
|
@@ -41,7 +41,7 @@ const SCHEDULE_BUILTINS = [
|
|
|
41
41
|
"test",
|
|
42
42
|
"typecheck"
|
|
43
43
|
];
|
|
44
|
-
const PARALLEL_MERGE_BUILTINS = new Set(["drain-merge"]);
|
|
44
|
+
const PARALLEL_MERGE_BUILTINS = /* @__PURE__ */ new Set(["drain-merge"]);
|
|
45
45
|
const scheduleArtifactSchema = z.object({
|
|
46
46
|
generated_at: z.string().datetime(),
|
|
47
47
|
kind: z.literal(SCHEDULE_KIND),
|
package/dist/remote/submit/io.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { normalizeRunnerRepositoryForSubmit } from "../../git-remote-url.js";
|
|
2
2
|
import { readFileSync } from "node:fs";
|
|
3
|
-
import { simpleGit } from "simple-git";
|
|
3
|
+
import { simpleGit as simpleGit$1 } from "simple-git";
|
|
4
4
|
import parseGitUrl from "git-url-parse";
|
|
5
5
|
//#region src/remote/submit/io.ts
|
|
6
6
|
function readScheduleFile(dependencies, path) {
|
|
@@ -47,7 +47,7 @@ function runContext(options, git, runId) {
|
|
|
47
47
|
}
|
|
48
48
|
async function resolveGit(worktreePath, dependencies) {
|
|
49
49
|
if (dependencies.resolveGitContext) return dependencies.resolveGitContext(worktreePath);
|
|
50
|
-
const git = simpleGit({ baseDir: worktreePath });
|
|
50
|
+
const git = simpleGit$1({ baseDir: worktreePath });
|
|
51
51
|
const [branchResult, sha, remoteConfig] = await Promise.all([
|
|
52
52
|
git.branch(),
|
|
53
53
|
git.revparse(["HEAD"]),
|
|
@@ -103,4 +103,4 @@ type RunEffort = z.infer<typeof runEffortSchema>;
|
|
|
103
103
|
type RunMode = z.infer<typeof runModeSchema>;
|
|
104
104
|
type MokaRunManifest = z.infer<typeof mokaRunManifestSchema>;
|
|
105
105
|
//#endregion
|
|
106
|
-
export { MokaRunManifest, RunEffort, RunMode, RunTarget };
|
|
106
|
+
export { MokaRunManifest, RunEffort, RunMode, RunTarget, mokaRunManifestSchema, runEffortSchema, runModeSchema, runTargetSchema };
|
|
@@ -127,4 +127,4 @@ function parseMokaRunManifest(input) {
|
|
|
127
127
|
return mokaRunManifestSchema.parse(input);
|
|
128
128
|
}
|
|
129
129
|
//#endregion
|
|
130
|
-
export { DEFAULT_RUN_CONTROL_HEARTBEAT_INTERVAL_MS, DEFAULT_RUN_CONTROL_NODE_STALE_AFTER_MS, DEFAULT_RUN_CONTROL_STALE_DETECTION, mokaNodeStatusSchema, mokaRunStatusSchema, parseMokaNodeStatus, parseMokaRunController, parseMokaRunEvent, parseMokaRunManifest, parseMokaRunStatus, parseRunControlStaleDetection, parseRunEffort, parseRunMode, parseRunTarget };
|
|
130
|
+
export { DEFAULT_RUN_CONTROL_HEARTBEAT_INTERVAL_MS, DEFAULT_RUN_CONTROL_NODE_STALE_AFTER_MS, DEFAULT_RUN_CONTROL_STALE_DETECTION, MOKA_NODE_STATUSES, MOKA_RUN_STATUSES, RUN_EFFORTS, RUN_MODES, RUN_TARGETS, mokaNodeStatusEventSchema, mokaNodeStatusSchema, mokaRunControlEventSchema, mokaRunControllerSchema, mokaRunEventSchema, mokaRunHeartbeatEventSchema, mokaRunManifestSchema, mokaRunStatusEventSchema, mokaRunStatusSchema, parseMokaNodeStatus, parseMokaRunController, parseMokaRunEvent, parseMokaRunManifest, parseMokaRunStatus, parseRunControlStaleDetection, parseRunEffort, parseRunMode, parseRunTarget, runControlStaleDetectionSchema, runEffortSchema, runModeSchema, runTargetSchema };
|
|
@@ -115,4 +115,4 @@ function printNextNodeEnvelopeScoped(runId) {
|
|
|
115
115
|
});
|
|
116
116
|
}
|
|
117
117
|
//#endregion
|
|
118
|
-
export { readPersistedScheduleEffect, readyNodeIdsFromRunStore, registerNextNodeSubcommand };
|
|
118
|
+
export { buildNextNodeEnvelope, buildNextNodeEnvelopeFromRunStore, readPersistedScheduleEffect, readyNodeIdsFromRunStore, registerNextNodeSubcommand };
|
|
@@ -14,7 +14,7 @@ const WATCH_INTERVAL_MS = 1e3;
|
|
|
14
14
|
const SENSITIVE_BASENAME_PARTS = ["prompt", "session"];
|
|
15
15
|
const SENSITIVE_BASENAME_PREFIXES = ["body."];
|
|
16
16
|
const SENSITIVE_PATH_PARTS = ["session-body", "session_body"];
|
|
17
|
-
const SENSITIVE_BASENAMES = new Set(["body"]);
|
|
17
|
+
const SENSITIVE_BASENAMES = /* @__PURE__ */ new Set(["body"]);
|
|
18
18
|
function printLogsEffect(input) {
|
|
19
19
|
return Effect.gen(function* () {
|
|
20
20
|
const run = yield* requireRunEffect(input.store, input.runId);
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { parseLogicalSegment } from "./logical-segment.js";
|
|
2
2
|
import { Effect } from "effect";
|
|
3
3
|
//#region src/run-control/run-command-domain.ts
|
|
4
|
-
const ACTIVE_RUN_STATUSES = new Set([
|
|
4
|
+
const ACTIVE_RUN_STATUSES = /* @__PURE__ */ new Set([
|
|
5
5
|
"queued",
|
|
6
6
|
"starting",
|
|
7
7
|
"running",
|
|
8
8
|
"stalled"
|
|
9
9
|
]);
|
|
10
|
-
const ACTIVE_NODE_STATUSES = new Set([
|
|
10
|
+
const ACTIVE_NODE_STATUSES = /* @__PURE__ */ new Set([
|
|
11
11
|
"queued",
|
|
12
12
|
"starting",
|
|
13
13
|
"running",
|
|
@@ -3,7 +3,7 @@ import { createSerializedWriteQueue } from "../serialized-write-queue.js";
|
|
|
3
3
|
import { createRunStoreRuntimeReporter } from "./runtime-reporter.js";
|
|
4
4
|
import { Effect } from "effect";
|
|
5
5
|
//#region src/run-control/supervisor.ts
|
|
6
|
-
const RUNNING_NODE_EVENT_TYPES = new Set([
|
|
6
|
+
const RUNNING_NODE_EVENT_TYPES = /* @__PURE__ */ new Set([
|
|
7
7
|
"agent.start",
|
|
8
8
|
"artifact.check.start",
|
|
9
9
|
"gate.start",
|
|
@@ -193,4 +193,4 @@ function shouldMarkNodeRunning(event) {
|
|
|
193
193
|
}
|
|
194
194
|
}
|
|
195
195
|
//#endregion
|
|
196
|
-
export { createRunControlSupervisor };
|
|
196
|
+
export { createRunControlSupervisor, createRunControlSupervisorEffect };
|
|
@@ -347,4 +347,4 @@ function shellQuote(value) {
|
|
|
347
347
|
return `'${value.replaceAll("'", `'\\''`)}'`;
|
|
348
348
|
}
|
|
349
349
|
//#endregion
|
|
350
|
-
export { commitAndPushNodeRef, mergeDependencyRefs, prepareRunnerGitWorkspace, promoteFinalRef, runAuthenticatedGit };
|
|
350
|
+
export { commitAndPushNodeRef, mergeDependencyRefs, prepareRunnerGitWorkspace, promoteFinalRef, runAuthenticatedGit, runnerCommitMessage };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import "./agent-node.js";
|
|
2
|
-
export {};
|
|
1
|
+
import { executeAgentNode } from "./agent-node.js";
|
|
2
|
+
export { executeAgentNode };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import "./builtins.js";
|
|
2
|
-
export {};
|
|
1
|
+
import { executeBuiltin } from "./builtins.js";
|
|
2
|
+
export { executeBuiltin };
|
|
@@ -35,7 +35,7 @@ function pathFromPorcelainEntry(entry) {
|
|
|
35
35
|
return path ? [path] : [];
|
|
36
36
|
}
|
|
37
37
|
function diffChangedFiles(before, after, worktreePath) {
|
|
38
|
-
const files = [
|
|
38
|
+
const files = [.../* @__PURE__ */ new Set([...before.files, ...after.files])].filter((file) => !before.files.has(file) || before.fingerprints.get(file) !== (after.fingerprints.get(file) ?? fileFingerprint(worktreePath, file)));
|
|
39
39
|
return {
|
|
40
40
|
files: new Set(files),
|
|
41
41
|
fingerprints: new Map(files.map((file) => [file, after.fingerprints.get(file) ?? fileFingerprint(worktreePath, file)]))
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import "./changed-files.js";
|
|
2
|
-
export {};
|
|
1
|
+
import { diffChangedFiles, snapshotChangedFiles } from "./changed-files.js";
|
|
2
|
+
export { diffChangedFiles, snapshotChangedFiles };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import "./command-executor.js";
|
|
2
|
-
export {};
|
|
1
|
+
import { executeCommand } from "./command-executor.js";
|
|
2
|
+
export { executeCommand };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import "./context.js";
|
|
2
|
-
export {};
|
|
1
|
+
import { createRuntimeContext, generateRuntimeRunId, resolveWorkflowSelection } from "./context.js";
|
|
2
|
+
export { createRuntimeContext, generateRuntimeRunId, resolveWorkflowSelection };
|
|
@@ -1 +1,2 @@
|
|
|
1
|
-
import { AcceptanceCriterion, HookRuntimePolicy, NodeExecutionState, NodeStatus, PipelineRuntimeEvent, PipelineRuntimeObservabilityLevel, PipelineRuntimeOptions, PipelineRuntimeResult, PipelineTaskContext, RuntimeFailure, RuntimeGateResult, RuntimeNodeResult, RuntimeStructuredOutput, UnmetCriterion } from "./contracts.js";
|
|
1
|
+
import { AcceptanceCriterion, HookRuntimePolicy, NodeExecutionState, NodeStatus, PipelineRuntimeEvent, PipelineRuntimeObservabilityLevel, PipelineRuntimeOptions, PipelineRuntimeResult, PipelineTaskContext, RuntimeFailure, RuntimeGateResult, RuntimeNodeResult, RuntimeStructuredOutput, UnmetCriterion } from "./contracts.js";
|
|
2
|
+
export { AcceptanceCriterion, HookRuntimePolicy, NodeExecutionState, NodeStatus, PipelineRuntimeEvent, PipelineRuntimeObservabilityLevel, PipelineRuntimeOptions, PipelineRuntimeResult, PipelineTaskContext, RuntimeFailure, RuntimeGateResult, RuntimeNodeResult, RuntimeStructuredOutput, UnmetCriterion };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import "./drain-merge.js";
|
|
2
|
-
export {};
|
|
1
|
+
import { executeDrainMergeBuiltin } from "./drain-merge.js";
|
|
2
|
+
export { executeDrainMergeBuiltin };
|
|
@@ -3,7 +3,7 @@ import { runtimeActorId } from "../actor-ids.js";
|
|
|
3
3
|
import { parseRuntimeOutput, validateJsonSchemaSource } from "../json-validation/json-validation.js";
|
|
4
4
|
import "../json-validation/index.js";
|
|
5
5
|
//#region src/runtime/events/events.ts
|
|
6
|
-
const warningRuntimeObservabilityTypes = new Set([
|
|
6
|
+
const warningRuntimeObservabilityTypes = /* @__PURE__ */ new Set([
|
|
7
7
|
"runtime.gate.cancelled",
|
|
8
8
|
"runtime.gate.failed",
|
|
9
9
|
"runtime.hook.failed",
|
|
@@ -15,7 +15,7 @@ const primaryRuntimeObservabilityPrefixes = [
|
|
|
15
15
|
"runtime.hook.",
|
|
16
16
|
"runtime.state."
|
|
17
17
|
];
|
|
18
|
-
const structuredOutputFormats = new Set([
|
|
18
|
+
const structuredOutputFormats = /* @__PURE__ */ new Set([
|
|
19
19
|
"json",
|
|
20
20
|
"json_schema",
|
|
21
21
|
"jsonl"
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import "./events.js";
|
|
2
|
-
export {};
|
|
1
|
+
import { childReporter, createPublicRuntimeObservabilityEmitter, emit, emitAgentFinish, emitAgentStart, emitGateFinish, emitGateStart, emitNodeFinish, emitNodeOutputRecorded, emitNodeStart, emitWorkflowFinish, emitWorkflowPlanned, emitWorkflowStarted, runtimeNodeActorDescriptor, runtimeSystemId } from "./events.js";
|
|
2
|
+
export { childReporter, createPublicRuntimeObservabilityEmitter, emit, emitAgentFinish, emitAgentStart, emitGateFinish, emitGateStart, emitNodeFinish, emitNodeOutputRecorded, emitNodeStart, emitWorkflowFinish, emitWorkflowPlanned, emitWorkflowStarted, runtimeNodeActorDescriptor, runtimeSystemId };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import "./contract.js";
|
|
2
|
-
import "./gates.js";
|
|
3
|
-
import "./registry.js";
|
|
4
|
-
import "./orchestrator.js";
|
|
5
|
-
export {};
|
|
1
|
+
import { forKind } from "./contract.js";
|
|
2
|
+
import { parseGateJson } from "./gates.js";
|
|
3
|
+
import { evaluateGate, gateRegistry } from "./registry.js";
|
|
4
|
+
import { evaluateNodeGates } from "./orchestrator.js";
|
|
5
|
+
export { evaluateGate, evaluateNodeGates, forKind, gateRegistry, parseGateJson };
|
|
@@ -106,4 +106,4 @@ function hasNonEmptyEvidence(value) {
|
|
|
106
106
|
return Array.isArray(value) && value.filter((item) => typeof item === "string" && item.trim()).length > 0;
|
|
107
107
|
}
|
|
108
108
|
//#endregion
|
|
109
|
-
export { evaluateAcceptanceGate };
|
|
109
|
+
export { acceptanceUnmetCriteria, evaluateAcceptanceGate };
|
|
@@ -20,7 +20,7 @@ function hookEnv(hook, context) {
|
|
|
20
20
|
};
|
|
21
21
|
}
|
|
22
22
|
function commandHookEnvEntries(hook, context) {
|
|
23
|
-
return [
|
|
23
|
+
return [.../* @__PURE__ */ new Set([...context.hookPolicy.envPassthrough, ...hook.env?.passthrough ?? []])].flatMap(commandHookEnvEntry);
|
|
24
24
|
}
|
|
25
25
|
function commandHookEnvEntry(name) {
|
|
26
26
|
const value = process.env[name];
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import "./hooks.js";
|
|
2
|
-
export {};
|
|
1
|
+
import { dispatchHooks } from "./hooks.js";
|
|
2
|
+
export { dispatchHooks };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import "./json-validation.js";
|
|
2
|
-
export {};
|
|
1
|
+
import { normalizeJsonSource, parseJsonObject, parseRuntimeOutput, readJsonSchemaSource, readOptionalFile, validateJsonSchemaSource } from "./json-validation.js";
|
|
2
|
+
export { normalizeJsonSource, parseJsonObject, parseRuntimeOutput, readJsonSchemaSource, readOptionalFile, validateJsonSchemaSource };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import "./open-pull-request.js";
|
|
2
|
-
export {};
|
|
1
|
+
import { executeOpenPullRequestBuiltin, openPullRequestProgram } from "./open-pull-request.js";
|
|
2
|
+
export { executeOpenPullRequestBuiltin, openPullRequestProgram };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import "./parallel-node.js";
|
|
2
|
-
export {};
|
|
1
|
+
import { executeParallelNode } from "./parallel-node.js";
|
|
2
|
+
export { executeParallelNode };
|
package/dist/runtime/retry.js
CHANGED
|
@@ -132,7 +132,7 @@ function computeReadyNodeIds(input) {
|
|
|
132
132
|
const completedIds = new Set((input.completed ?? []).map((r) => r.nodeId));
|
|
133
133
|
const runningIds = new Set(input.running ?? []);
|
|
134
134
|
const blockedIds = new Set(input.blocked ?? []);
|
|
135
|
-
const settled = new Set([...completedIds, ...runningIds]);
|
|
135
|
+
const settled = /* @__PURE__ */ new Set([...completedIds, ...runningIds]);
|
|
136
136
|
return orderedNodes(input.nodes).filter((node) => !(settled.has(node.id) || blockedIds.has(node.id))).filter((node) => node.needs.every((needId) => {
|
|
137
137
|
const result = (input.completed ?? []).find((r) => r.nodeId === needId);
|
|
138
138
|
if (result === void 0) return false;
|
|
@@ -21,4 +21,4 @@ const BacklogServiceLive = Layer.succeed(BacklogService, { run: (args, cwd) => E
|
|
|
21
21
|
try: () => execa("backlog", [...args], { cwd })
|
|
22
22
|
}).pipe(Effect.map((result) => result.stdout)) });
|
|
23
23
|
//#endregion
|
|
24
|
-
export { BacklogService, BacklogServiceLive };
|
|
24
|
+
export { BacklogCommandError, BacklogService, BacklogServiceLive };
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { Context, Effect, Layer } from "effect";
|
|
2
|
-
import simpleGit
|
|
2
|
+
import simpleGit from "simple-git";
|
|
3
3
|
//#region src/runtime/services/drain-merge-git-service.ts
|
|
4
4
|
var DrainMergeGitService = class extends Context.Service()("DrainMergeGitService") {};
|
|
5
5
|
const DrainMergeGitServiceLive = Layer.succeed(DrainMergeGitService, { create: (baseDir) => Effect.sync(() => {
|
|
6
|
-
const git = simpleGit
|
|
6
|
+
const git = simpleGit({ baseDir });
|
|
7
7
|
return { raw: (args) => Effect.tryPromise(() => git.raw(args)) };
|
|
8
8
|
}) });
|
|
9
9
|
//#endregion
|
|
@@ -93,4 +93,4 @@ function errorMessage(error) {
|
|
|
93
93
|
return error instanceof Error ? error.message : String(error);
|
|
94
94
|
}
|
|
95
95
|
//#endregion
|
|
96
|
-
export { backlogTicketCompletionStoreEffect, completeTicket, conservativeLayerAJudge };
|
|
96
|
+
export { TicketCompletionError, backlogTicketCompletionStoreEffect, completeTicket, conservativeLayerAJudge };
|
|
@@ -21,7 +21,7 @@ function sequenceTicketBatchesEffect(graph, ticketIds = dependencyGraphNodeIds(g
|
|
|
21
21
|
function scopedTicketIds(graph, rootId) {
|
|
22
22
|
if (!rootId) return dependencyGraphNodeIds(graph.dependencyGraph).sort(compareTaskIds);
|
|
23
23
|
if (!dependencyGraphHasNode(graph.dependencyGraph, rootId)) return [];
|
|
24
|
-
const ids = new Set([rootId]);
|
|
24
|
+
const ids = /* @__PURE__ */ new Set([rootId]);
|
|
25
25
|
const visit = (id) => {
|
|
26
26
|
for (const child of graph.childrenByParentId.get(id) ?? []) {
|
|
27
27
|
ids.add(child.id);
|
|
@@ -71,4 +71,4 @@ function compareTasks(a, b) {
|
|
|
71
71
|
return compareBacklogTasks(a, b);
|
|
72
72
|
}
|
|
73
73
|
//#endregion
|
|
74
|
-
export { buildTicketGraphEffect, compareTaskIds, predecessorIds, scopedTicketIds, sequenceTicketBatchesEffect };
|
|
74
|
+
export { TicketGraphError, buildTicketGraphEffect, compareTaskIds, predecessorIds, scopedTicketIds, sequenceTicketBatchesEffect };
|
package/package.json
CHANGED
|
@@ -32,6 +32,8 @@
|
|
|
32
32
|
"devDependencies": {
|
|
33
33
|
"@biomejs/biome": "2.4.15",
|
|
34
34
|
"@effect/vitest": "^4.0.0-beta.90",
|
|
35
|
+
"@mpsuesser/oxlint-plugin-effect": "0.3.0",
|
|
36
|
+
"@oisin-ee/oxlint-config": "1.0.0",
|
|
35
37
|
"@semantic-release/commit-analyzer": "^13.0.1",
|
|
36
38
|
"@semantic-release/exec": "^7.1.0",
|
|
37
39
|
"@semantic-release/github": "^12.0.8",
|
|
@@ -42,6 +44,9 @@
|
|
|
42
44
|
"@typescript/native-preview": "7.0.0-dev.20260629.1",
|
|
43
45
|
"drizzle-kit": "0.31.10",
|
|
44
46
|
"jscpd": "^4.0.5",
|
|
47
|
+
"oxfmt": "^0.56.0",
|
|
48
|
+
"oxlint": "^1.71.0",
|
|
49
|
+
"oxlint-tsgolint": "^0.23.0",
|
|
45
50
|
"semantic-release": "^25.0.3",
|
|
46
51
|
"tsdown": "^0.22.0",
|
|
47
52
|
"typescript": "rc",
|
|
@@ -132,7 +137,7 @@
|
|
|
132
137
|
"prepack": "nub run build:cli"
|
|
133
138
|
},
|
|
134
139
|
"type": "module",
|
|
135
|
-
"version": "3.19.
|
|
140
|
+
"version": "3.19.6",
|
|
136
141
|
"description": "Config-driven multi-agent pipeline runner for repository work",
|
|
137
142
|
"main": "./dist/index.js",
|
|
138
143
|
"types": "./dist/index.d.ts",
|