@forgezero/agent 0.1.61 → 0.1.63

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.
@@ -45,6 +45,8 @@ export interface InstallOptions {
45
45
  controlSocketPath?: string;
46
46
  repository?: string;
47
47
  branch?: string;
48
+ bootstrapBundlePath?: string;
49
+ bootstrapBundleManifestPath?: string;
48
50
  profile?: string;
49
51
  deployRoot?: string;
50
52
  publicApiUrl?: string;
@@ -31,7 +31,8 @@ var SOFTWARE_CATALOG = [
31
31
  { id: "cloudflared", version: "2026.7.3", status: "active", os: "ubuntu", osVersion: "26.04", architecture: "x64", evidence: "reviewed-strategy-and-tests" },
32
32
  { id: "cloudflare-warp", version: "2026.6.822.0-min", status: "active", os: "ubuntu", osVersion: "26.04", architecture: "x64", evidence: "reviewed-strategy-and-tests" },
33
33
  { id: "ufw", version: "ubuntu-26.04", status: "active", os: "ubuntu", osVersion: "26.04", architecture: "x64", evidence: "reviewed-strategy-and-tests" },
34
- { id: "openssh-client", version: "ubuntu-26.04", status: "active", os: "ubuntu", osVersion: "26.04", architecture: "x64", evidence: "reviewed-strategy-and-tests" }
34
+ { id: "openssh-client", version: "ubuntu-26.04", status: "active", os: "ubuntu", osVersion: "26.04", architecture: "x64", evidence: "reviewed-strategy-and-tests" },
35
+ { id: "git", version: "ubuntu-26.04", status: "active", os: "ubuntu", osVersion: "26.04", architecture: "x64", evidence: "reviewed-strategy-and-tests" }
35
36
  ];
36
37
  var UBUNTU_2604_X64 = [
37
38
  { requirement: { id: "bun", version: "1.3.14" } },
@@ -41,7 +42,8 @@ var UBUNTU_2604_X64 = [
41
42
  { requirement: { id: "cloudflared", version: "2026.7.3" } },
42
43
  { requirement: { id: "cloudflare-warp", version: "2026.6.822.0-min" } },
43
44
  { requirement: { id: "ufw", version: "ubuntu-26.04" } },
44
- { requirement: { id: "openssh-client", version: "ubuntu-26.04" } }
45
+ { requirement: { id: "openssh-client", version: "ubuntu-26.04" } },
46
+ { requirement: { id: "git", version: "ubuntu-26.04" } }
45
47
  ];
46
48
  var path = "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin";
47
49
  var DOCKER_DAEMON_PATH = "/etc/docker/daemon.json";
@@ -128,7 +130,7 @@ async function executeSoftwareOperation(operation) {
128
130
  const supported = observed && observed.some((part, index) => part > minimum[index] && observed.slice(0, index).every((prior, priorIndex) => prior === minimum[priorIndex])) || observed?.every((part, index) => part === minimum[index]);
129
131
  return { ...result, exitCode: result.exitCode === 0 && supported ? 0 : 1 };
130
132
  });
131
- const binaries = software === "ufw" ? ["/usr/sbin/ufw"] : ["/usr/bin/ssh", "/usr/bin/scp", "/usr/bin/ssh-keyscan", "/usr/bin/ssh-keygen"];
133
+ const binaries = software === "ufw" ? ["/usr/sbin/ufw"] : software === "git" ? ["/usr/bin/git"] : ["/usr/bin/ssh", "/usr/bin/scp", "/usr/bin/ssh-keyscan", "/usr/bin/ssh-keygen"];
132
134
  try {
133
135
  binaries.forEach((binary) => accessSync(binary));
134
136
  return { exitCode: 0, output: "" };
@@ -136,7 +138,7 @@ async function executeSoftwareOperation(operation) {
136
138
  return { exitCode: 1, output: cause instanceof Error ? cause.message : String(cause) };
137
139
  }
138
140
  }
139
- if (software === "docker" || software === "nginx" || software === "ufw" || software === "openssh-client") {
141
+ if (software === "docker" || software === "nginx" || software === "ufw" || software === "openssh-client" || software === "git") {
140
142
  const packageName = software === "openssh-client" ? "openssh-client" : software === "docker" ? "docker.io" : software;
141
143
  const installed = await aptInstall(packageName);
142
144
  if (installed.exitCode !== 0 || software !== "nginx" && software !== "docker")
@@ -236,7 +238,7 @@ function validateSoftwareRequirements(value, _options = {}) {
236
238
  if (Object.keys(row).some((key) => key !== "id" && key !== "version")) {
237
239
  throw new Error("software requirement contains an unknown field");
238
240
  }
239
- if (!["bun", "docker", "nginx", "arangodb", "cloudflared", "cloudflare-warp", "ufw", "openssh-client"].includes(String(row.id)) || typeof row.version !== "string" || !/^[A-Za-z0-9][A-Za-z0-9.-]{0,31}$/.test(row.version)) {
241
+ if (!["bun", "docker", "nginx", "arangodb", "cloudflared", "cloudflare-warp", "ufw", "openssh-client", "git"].includes(String(row.id)) || typeof row.version !== "string" || !/^[A-Za-z0-9][A-Za-z0-9.-]{0,31}$/.test(row.version)) {
240
242
  throw new Error("software requirement coordinate is invalid");
241
243
  }
242
244
  const requirement = { id: row.id, version: row.version };
@@ -31,7 +31,8 @@ var SOFTWARE_CATALOG = [
31
31
  { id: "cloudflared", version: "2026.7.3", status: "active", os: "ubuntu", osVersion: "26.04", architecture: "x64", evidence: "reviewed-strategy-and-tests" },
32
32
  { id: "cloudflare-warp", version: "2026.6.822.0-min", status: "active", os: "ubuntu", osVersion: "26.04", architecture: "x64", evidence: "reviewed-strategy-and-tests" },
33
33
  { id: "ufw", version: "ubuntu-26.04", status: "active", os: "ubuntu", osVersion: "26.04", architecture: "x64", evidence: "reviewed-strategy-and-tests" },
34
- { id: "openssh-client", version: "ubuntu-26.04", status: "active", os: "ubuntu", osVersion: "26.04", architecture: "x64", evidence: "reviewed-strategy-and-tests" }
34
+ { id: "openssh-client", version: "ubuntu-26.04", status: "active", os: "ubuntu", osVersion: "26.04", architecture: "x64", evidence: "reviewed-strategy-and-tests" },
35
+ { id: "git", version: "ubuntu-26.04", status: "active", os: "ubuntu", osVersion: "26.04", architecture: "x64", evidence: "reviewed-strategy-and-tests" }
35
36
  ];
36
37
  var UBUNTU_2604_X64 = [
37
38
  { requirement: { id: "bun", version: "1.3.14" } },
@@ -41,7 +42,8 @@ var UBUNTU_2604_X64 = [
41
42
  { requirement: { id: "cloudflared", version: "2026.7.3" } },
42
43
  { requirement: { id: "cloudflare-warp", version: "2026.6.822.0-min" } },
43
44
  { requirement: { id: "ufw", version: "ubuntu-26.04" } },
44
- { requirement: { id: "openssh-client", version: "ubuntu-26.04" } }
45
+ { requirement: { id: "openssh-client", version: "ubuntu-26.04" } },
46
+ { requirement: { id: "git", version: "ubuntu-26.04" } }
45
47
  ];
46
48
  var path = "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin";
47
49
  var DOCKER_DAEMON_PATH = "/etc/docker/daemon.json";
@@ -128,7 +130,7 @@ async function executeSoftwareOperation(operation) {
128
130
  const supported = observed && observed.some((part, index) => part > minimum[index] && observed.slice(0, index).every((prior, priorIndex) => prior === minimum[priorIndex])) || observed?.every((part, index) => part === minimum[index]);
129
131
  return { ...result, exitCode: result.exitCode === 0 && supported ? 0 : 1 };
130
132
  });
131
- const binaries = software === "ufw" ? ["/usr/sbin/ufw"] : ["/usr/bin/ssh", "/usr/bin/scp", "/usr/bin/ssh-keyscan", "/usr/bin/ssh-keygen"];
133
+ const binaries = software === "ufw" ? ["/usr/sbin/ufw"] : software === "git" ? ["/usr/bin/git"] : ["/usr/bin/ssh", "/usr/bin/scp", "/usr/bin/ssh-keyscan", "/usr/bin/ssh-keygen"];
132
134
  try {
133
135
  binaries.forEach((binary) => accessSync(binary));
134
136
  return { exitCode: 0, output: "" };
@@ -136,7 +138,7 @@ async function executeSoftwareOperation(operation) {
136
138
  return { exitCode: 1, output: cause instanceof Error ? cause.message : String(cause) };
137
139
  }
138
140
  }
139
- if (software === "docker" || software === "nginx" || software === "ufw" || software === "openssh-client") {
141
+ if (software === "docker" || software === "nginx" || software === "ufw" || software === "openssh-client" || software === "git") {
140
142
  const packageName = software === "openssh-client" ? "openssh-client" : software === "docker" ? "docker.io" : software;
141
143
  const installed = await aptInstall(packageName);
142
144
  if (installed.exitCode !== 0 || software !== "nginx" && software !== "docker")
@@ -236,7 +238,7 @@ function validateSoftwareRequirements(value, _options = {}) {
236
238
  if (Object.keys(row).some((key) => key !== "id" && key !== "version")) {
237
239
  throw new Error("software requirement contains an unknown field");
238
240
  }
239
- if (!["bun", "docker", "nginx", "arangodb", "cloudflared", "cloudflare-warp", "ufw", "openssh-client"].includes(String(row.id)) || typeof row.version !== "string" || !/^[A-Za-z0-9][A-Za-z0-9.-]{0,31}$/.test(row.version)) {
241
+ if (!["bun", "docker", "nginx", "arangodb", "cloudflared", "cloudflare-warp", "ufw", "openssh-client", "git"].includes(String(row.id)) || typeof row.version !== "string" || !/^[A-Za-z0-9][A-Za-z0-9.-]{0,31}$/.test(row.version)) {
240
242
  throw new Error("software requirement coordinate is invalid");
241
243
  }
242
244
  const requirement = { id: row.id, version: row.version };
@@ -31,7 +31,8 @@ var SOFTWARE_CATALOG = [
31
31
  { id: "cloudflared", version: "2026.7.3", status: "active", os: "ubuntu", osVersion: "26.04", architecture: "x64", evidence: "reviewed-strategy-and-tests" },
32
32
  { id: "cloudflare-warp", version: "2026.6.822.0-min", status: "active", os: "ubuntu", osVersion: "26.04", architecture: "x64", evidence: "reviewed-strategy-and-tests" },
33
33
  { id: "ufw", version: "ubuntu-26.04", status: "active", os: "ubuntu", osVersion: "26.04", architecture: "x64", evidence: "reviewed-strategy-and-tests" },
34
- { id: "openssh-client", version: "ubuntu-26.04", status: "active", os: "ubuntu", osVersion: "26.04", architecture: "x64", evidence: "reviewed-strategy-and-tests" }
34
+ { id: "openssh-client", version: "ubuntu-26.04", status: "active", os: "ubuntu", osVersion: "26.04", architecture: "x64", evidence: "reviewed-strategy-and-tests" },
35
+ { id: "git", version: "ubuntu-26.04", status: "active", os: "ubuntu", osVersion: "26.04", architecture: "x64", evidence: "reviewed-strategy-and-tests" }
35
36
  ];
36
37
  var UBUNTU_2604_X64 = [
37
38
  { requirement: { id: "bun", version: "1.3.14" } },
@@ -41,7 +42,8 @@ var UBUNTU_2604_X64 = [
41
42
  { requirement: { id: "cloudflared", version: "2026.7.3" } },
42
43
  { requirement: { id: "cloudflare-warp", version: "2026.6.822.0-min" } },
43
44
  { requirement: { id: "ufw", version: "ubuntu-26.04" } },
44
- { requirement: { id: "openssh-client", version: "ubuntu-26.04" } }
45
+ { requirement: { id: "openssh-client", version: "ubuntu-26.04" } },
46
+ { requirement: { id: "git", version: "ubuntu-26.04" } }
45
47
  ];
46
48
  var path = "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin";
47
49
  var DOCKER_DAEMON_PATH = "/etc/docker/daemon.json";
@@ -128,7 +130,7 @@ async function executeSoftwareOperation(operation) {
128
130
  const supported = observed && observed.some((part, index) => part > minimum[index] && observed.slice(0, index).every((prior, priorIndex) => prior === minimum[priorIndex])) || observed?.every((part, index) => part === minimum[index]);
129
131
  return { ...result, exitCode: result.exitCode === 0 && supported ? 0 : 1 };
130
132
  });
131
- const binaries = software === "ufw" ? ["/usr/sbin/ufw"] : ["/usr/bin/ssh", "/usr/bin/scp", "/usr/bin/ssh-keyscan", "/usr/bin/ssh-keygen"];
133
+ const binaries = software === "ufw" ? ["/usr/sbin/ufw"] : software === "git" ? ["/usr/bin/git"] : ["/usr/bin/ssh", "/usr/bin/scp", "/usr/bin/ssh-keyscan", "/usr/bin/ssh-keygen"];
132
134
  try {
133
135
  binaries.forEach((binary) => accessSync(binary));
134
136
  return { exitCode: 0, output: "" };
@@ -136,7 +138,7 @@ async function executeSoftwareOperation(operation) {
136
138
  return { exitCode: 1, output: cause instanceof Error ? cause.message : String(cause) };
137
139
  }
138
140
  }
139
- if (software === "docker" || software === "nginx" || software === "ufw" || software === "openssh-client") {
141
+ if (software === "docker" || software === "nginx" || software === "ufw" || software === "openssh-client" || software === "git") {
140
142
  const packageName = software === "openssh-client" ? "openssh-client" : software === "docker" ? "docker.io" : software;
141
143
  const installed = await aptInstall(packageName);
142
144
  if (installed.exitCode !== 0 || software !== "nginx" && software !== "docker")
@@ -236,7 +238,7 @@ function validateSoftwareRequirements(value, _options = {}) {
236
238
  if (Object.keys(row).some((key) => key !== "id" && key !== "version")) {
237
239
  throw new Error("software requirement contains an unknown field");
238
240
  }
239
- if (!["bun", "docker", "nginx", "arangodb", "cloudflared", "cloudflare-warp", "ufw", "openssh-client"].includes(String(row.id)) || typeof row.version !== "string" || !/^[A-Za-z0-9][A-Za-z0-9.-]{0,31}$/.test(row.version)) {
241
+ if (!["bun", "docker", "nginx", "arangodb", "cloudflared", "cloudflare-warp", "ufw", "openssh-client", "git"].includes(String(row.id)) || typeof row.version !== "string" || !/^[A-Za-z0-9][A-Za-z0-9.-]{0,31}$/.test(row.version)) {
240
242
  throw new Error("software requirement coordinate is invalid");
241
243
  }
242
244
  const requirement = { id: row.id, version: row.version };
@@ -8,6 +8,7 @@ import { type RunResult } from './pipeline';
8
8
  import type { SecretCache } from './cache';
9
9
  import type { AttestationSource } from './socket';
10
10
  import { type CapacityCalibration, type CapacityCalibrationOptions } from './capacity-calibration';
11
+ import { type BootstrapBundleManifest } from './bootstrap-bundle';
11
12
  export interface CommandInput {
12
13
  argv: readonly string[];
13
14
  cwd?: string;
@@ -55,12 +56,27 @@ export type GitSourceAuth = {
55
56
  kind: 'vault-token';
56
57
  secret: string;
57
58
  username?: string;
59
+ }
60
+ /** One-claim credential delivered only inside the hybrid-sealed node response. */
61
+ | {
62
+ kind: 'ephemeral-token';
63
+ token: string;
64
+ expiresAtTs: number;
65
+ username?: string;
58
66
  };
59
67
  export interface DeploymentOptions {
60
68
  /** Queue key. The same deployment target is serial; different targets may run in parallel. */
61
69
  key: string;
62
70
  repository: string;
63
71
  branch: string;
72
+ /**
73
+ * Release-generation-one source copied by the attended operator. It is a
74
+ * local Git bundle, never a network credential or a persistent CI source.
75
+ */
76
+ bootstrapBundle?: {
77
+ path: string;
78
+ manifest: BootstrapBundleManifest;
79
+ };
64
80
  profile: string;
65
81
  root: string;
66
82
  publicApiUrl?: string;