@snappedly-tools/shipyard 0.9.2 → 0.11.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/README.md +9 -6
- package/dist/{chunk-NQRFVKCU.js → chunk-2SEMX2NX.js} +2 -2
- package/dist/{chunk-NQRFVKCU.js.map → chunk-2SEMX2NX.js.map} +1 -1
- package/dist/{chunk-57EEKW3R.js → chunk-BAP7BWQ2.js} +17 -8
- package/dist/chunk-BAP7BWQ2.js.map +1 -0
- package/dist/{chunk-HXSZM52J.js → chunk-IVE7QDGC.js} +17 -11
- package/dist/chunk-IVE7QDGC.js.map +1 -0
- package/dist/{chunk-JZUBT4WG.js → chunk-KSTSHZNH.js} +3 -3
- package/dist/{chunk-JZUBT4WG.js.map → chunk-KSTSHZNH.js.map} +1 -1
- package/dist/{createSandbox-DmbnWAZv.d.ts → createSandbox-Bqopwday.d.ts} +6 -4
- package/dist/index.d.ts +2 -2
- package/dist/index.js +58 -13
- package/dist/index.js.map +1 -1
- package/dist/integrations/github.js +1 -1
- package/dist/main.js +26 -7
- package/dist/main.js.map +1 -1
- package/dist/sandboxes/docker.js +2 -2
- package/dist/templates/parallel-planner/block-scope.sh +6 -0
- package/dist/templates/parallel-planner/handoff.sh +7 -2
- package/dist/templates/parallel-planner/main.mts +41 -26
- package/dist/templates/parallel-planner/select-issues.mjs +20 -2
- package/dist/templates/parallel-planner/setup.sh +8 -1
- package/dist/templates/parallel-planner/triage-prompt.md +4 -2
- package/dist/templates/parallel-planner/verify-triage.sh +12 -3
- package/dist/templates/parallel-planner-with-review/block-scope.sh +6 -0
- package/dist/templates/parallel-planner-with-review/handoff.sh +7 -2
- package/dist/templates/parallel-planner-with-review/main.mts +42 -27
- package/dist/templates/parallel-planner-with-review/select-issues.mjs +20 -2
- package/dist/templates/parallel-planner-with-review/setup.sh +8 -1
- package/dist/templates/parallel-planner-with-review/triage-prompt.md +4 -2
- package/dist/templates/parallel-planner-with-review/verify-triage.sh +12 -3
- package/dist/templates/sequential-reviewer/block-scope.sh +6 -0
- package/dist/templates/sequential-reviewer/handoff.sh +7 -2
- package/dist/templates/sequential-reviewer/main.mts +35 -20
- package/dist/templates/sequential-reviewer/select-issues.mjs +20 -2
- package/dist/templates/sequential-reviewer/setup.sh +8 -1
- package/dist/templates/sequential-reviewer/triage-prompt.md +4 -2
- package/dist/templates/sequential-reviewer/verify-triage.sh +12 -3
- package/dist/templates/shared/block-scope.sh +6 -0
- package/dist/templates/shared/handoff.sh +7 -2
- package/dist/templates/shared/select-issues.mjs +20 -2
- package/dist/templates/shared/setup.sh +8 -1
- package/dist/templates/shared/triage-prompt.md +4 -2
- package/dist/templates/shared/verify-triage.sh +12 -3
- package/dist/templates/simple-loop/block-scope.sh +6 -0
- package/dist/templates/simple-loop/handoff.sh +7 -2
- package/dist/templates/simple-loop/main.mts +34 -19
- package/dist/templates/simple-loop/select-issues.mjs +20 -2
- package/dist/templates/simple-loop/setup.sh +8 -1
- package/dist/templates/simple-loop/triage-prompt.md +4 -2
- package/dist/templates/simple-loop/verify-triage.sh +12 -3
- package/dist/workflow.d.ts +1 -1
- package/dist/workflow.js +2 -2
- package/package.json +1 -1
- package/dist/chunk-57EEKW3R.js.map +0 -1
- package/dist/chunk-HXSZM52J.js.map +0 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { createWorkBrief, parseRepositoryPolicy, processHumanReviewDecision, runTriage, parseWorkBrief } from '../chunk-
|
|
1
|
+
import { createWorkBrief, parseRepositoryPolicy, processHumanReviewDecision, runTriage, parseWorkBrief } from '../chunk-2SEMX2NX.js';
|
|
2
2
|
import { createHmac, timingSafeEqual, createHash } from 'crypto';
|
|
3
3
|
|
|
4
4
|
var asBytes = (value) => typeof value === "string" ? Buffer.from(value, "utf8") : Buffer.from(value);
|
package/dist/main.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import { CODEX_MODELS, purgeRunLogs, withFriendlyErrors, DEFAULT_LOG_RETENTION_DAYS, resolveEnv } from './chunk-
|
|
3
|
-
import { buildImage, RunnerLifecycleError, removeRepositoryRunner, removeImage, defaultImageName, validateExistingRepositoryRunner, RUNNER_INSTALL_METADATA, RUNNER_CONTROLLER_LOCK, lockOwnsProcess, recoverRepositoryRunner, REPOSITORY_RUNNER_OWNER_ENV, removeOwnedRepositoryRunnerContainers, RUNNER_WORK_DIR } from './chunk-
|
|
4
|
-
import { SANDBOX_REPO_DIR, Display, InitError, ACTIVATION_LABEL, PRODUCT_NAME, CONFIG_DIR, CLI_NAME, RUNNER_DIR, ClackDisplay, ConfigDirError, ExecHostError, LOCKS_DIR, assertProtectedDirectoryIdentities, repositoryRunnerEnvironment } from './chunk-
|
|
2
|
+
import { CODEX_MODELS, purgeRunLogs, withFriendlyErrors, DEFAULT_LOG_RETENTION_DAYS, readEnvFile, resolveEnv } from './chunk-IVE7QDGC.js';
|
|
3
|
+
import { buildImage, RunnerLifecycleError, removeRepositoryRunner, removeImage, defaultImageName, validateExistingRepositoryRunner, RUNNER_INSTALL_METADATA, RUNNER_CONTROLLER_LOCK, lockOwnsProcess, recoverRepositoryRunner, REPOSITORY_RUNNER_OWNER_ENV, removeOwnedRepositoryRunnerContainers, RUNNER_WORK_DIR } from './chunk-KSTSHZNH.js';
|
|
4
|
+
import { SANDBOX_REPO_DIR, Display, InitError, ACTIVATION_LABEL, PRODUCT_NAME, CONFIG_DIR, CLI_NAME, RUNNER_DIR, ClackDisplay, ConfigDirError, ExecHostError, LOCKS_DIR, assertProtectedDirectoryIdentities, repositoryRunnerEnvironment } from './chunk-BAP7BWQ2.js';
|
|
5
5
|
import { NodeContext, NodeRuntime, NodeFileSystem } from '@effect/platform-node';
|
|
6
6
|
import { Effect, Layer, Option, Exit, Cause } from 'effect';
|
|
7
7
|
import { Options, Command } from '@effect/cli';
|
|
@@ -65,12 +65,20 @@ var CODEX_CHATGPT_AUTH_OPTIONS = `{
|
|
|
65
65
|
var roleModelEnvExample = (agentName) => agentName === "codex" ? `# Optional model choices for Shipyard workflows.
|
|
66
66
|
# Choose models available to your Codex CLI account: https://learn.chatgpt.com/docs/models
|
|
67
67
|
# The provider must support each value. Aliases can change their target over time.
|
|
68
|
-
|
|
69
|
-
|
|
68
|
+
SHIPYARD_ROUTINE_MODEL=gpt-6-luna
|
|
69
|
+
SHIPYARD_STRONG_MODEL=gpt-6-sol
|
|
70
|
+
# Optional reasoning effort per role: low, medium, high, xhigh, or max.
|
|
71
|
+
# Leave unset to use the provider's default effort.
|
|
72
|
+
SHIPYARD_ROUTINE_REASONING_EFFORT=max
|
|
73
|
+
SHIPYARD_STRONG_REASONING_EFFORT=high` : `# Optional model choices for Shipyard workflows.
|
|
70
74
|
# Choose aliases or model IDs available to your Claude Code provider: https://code.claude.com/docs/en/model-config
|
|
71
75
|
# The provider must support each value. Aliases can change their target over time.
|
|
72
76
|
# SHIPYARD_ROUTINE_MODEL=sonnet
|
|
73
|
-
# SHIPYARD_STRONG_MODEL=opus
|
|
77
|
+
# SHIPYARD_STRONG_MODEL=opus
|
|
78
|
+
# Optional reasoning effort per role: low, medium, high, xhigh, or max.
|
|
79
|
+
# Leave unset to use the provider's default effort.
|
|
80
|
+
# SHIPYARD_ROUTINE_REASONING_EFFORT=high
|
|
81
|
+
# SHIPYARD_STRONG_REASONING_EFFORT=high`;
|
|
74
82
|
var TEMPLATES = [
|
|
75
83
|
{
|
|
76
84
|
name: "simple-loop",
|
|
@@ -1424,6 +1432,9 @@ var defaultAdapters2 = {
|
|
|
1424
1432
|
resolveEnvironment: (repoDir) => Effect.runPromise(
|
|
1425
1433
|
resolveEnv(repoDir).pipe(Effect.provide(NodeFileSystem.layer))
|
|
1426
1434
|
),
|
|
1435
|
+
readEnvironmentFile: (repoDir) => Effect.runPromise(
|
|
1436
|
+
readEnvFile(repoDir).pipe(Effect.provide(NodeFileSystem.layer))
|
|
1437
|
+
),
|
|
1427
1438
|
run: async (command, args, options) => {
|
|
1428
1439
|
const result = await execFileAsync2(command, [...args], {
|
|
1429
1440
|
cwd: options.cwd,
|
|
@@ -1528,6 +1539,14 @@ var requireRunnerContext = async (repoDir, adapters) => {
|
|
|
1528
1539
|
"The official repository runner executable is missing. Reinstall the repository runner."
|
|
1529
1540
|
);
|
|
1530
1541
|
}
|
|
1542
|
+
const configuredEnvironment = await adapters.readEnvironmentFile(repoDir).catch((error) => {
|
|
1543
|
+
throw controlFailure("Reading repository credentials", error);
|
|
1544
|
+
});
|
|
1545
|
+
if (!configuredEnvironment.GH_TOKEN?.trim()) {
|
|
1546
|
+
throw new RunnerControlError(
|
|
1547
|
+
"Set GH_TOKEN in .shipyard/.env before starting the repository runner."
|
|
1548
|
+
);
|
|
1549
|
+
}
|
|
1531
1550
|
for (const [command, purpose] of [
|
|
1532
1551
|
["git", "reading the repository remote"],
|
|
1533
1552
|
["npx", "running the local Shipyard package"],
|
|
@@ -2381,7 +2400,7 @@ var runnerCommand = Command.make(
|
|
|
2381
2400
|
purgeRunnerCommand
|
|
2382
2401
|
])
|
|
2383
2402
|
);
|
|
2384
|
-
var VERSION = "0.
|
|
2403
|
+
var VERSION = "0.11.0" ;
|
|
2385
2404
|
var SHIPYARD_PACKAGE_NAME = "@snappedly-tools/shipyard";
|
|
2386
2405
|
var isMissingPath = (error) => error !== null && typeof error === "object" && "code" in error && error.code === "ENOENT";
|
|
2387
2406
|
var lstatIfPresent = async (path) => {
|