@forgezero/agent 0.1.113 → 0.1.114

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.
@@ -917,7 +917,7 @@ async function postSignedNode(options, path, body) {
917
917
  }
918
918
 
919
919
  // src/version.ts
920
- var VERSION3 = "0.1.113";
920
+ var VERSION3 = "0.1.114";
921
921
 
922
922
  // src/agent-heartbeat.ts
923
923
  function readAgentHostMetrics() {
package/dist/bootstrap.js CHANGED
@@ -1460,7 +1460,7 @@ var UPDATE_RETRY_BASE_MS = 5 * 60000;
1460
1460
  var UPDATE_RETRY_MAX_MS = 24 * 60 * 60000;
1461
1461
 
1462
1462
  // src/version.ts
1463
- var VERSION = "0.1.113";
1463
+ var VERSION = "0.1.114";
1464
1464
 
1465
1465
  // src/software.ts
1466
1466
  var PINNED_BUN_VERSION = "1.3.14";
package/dist/fz-agent.js CHANGED
@@ -9528,7 +9528,7 @@ async function writeAndCloseProcessInput(input, value) {
9528
9528
  }
9529
9529
 
9530
9530
  // src/version.ts
9531
- var VERSION2 = "0.1.113";
9531
+ var VERSION2 = "0.1.114";
9532
9532
 
9533
9533
  // src/ssh-bootstrap.ts
9534
9534
  class SshBootstrapError extends Error {
package/dist/fz.js CHANGED
@@ -4841,7 +4841,7 @@ var UPDATE_RETRY_BASE_MS = 5 * 60000;
4841
4841
  var UPDATE_RETRY_MAX_MS = 24 * 60 * 60000;
4842
4842
 
4843
4843
  // src/version.ts
4844
- var VERSION2 = "0.1.113";
4844
+ var VERSION2 = "0.1.114";
4845
4845
 
4846
4846
  // src/software.ts
4847
4847
  var PINNED_BUN_VERSION = "1.3.14";
@@ -17971,13 +17971,21 @@ async function applyOperatorMetalBootstrap(request, mode, options = {}) {
17971
17971
  if (typeof publicIdentity2 !== "string")
17972
17972
  throw new Error("remote Metal bootstrap omitted its public identity");
17973
17973
  const identity = parseMetalPublicIdentity(publicIdentity2);
17974
- writeOwnerJson2(request.metalIdentityEvidenceFile, {
17974
+ const evidence = {
17975
17975
  format: 1,
17976
17976
  kind: "forgezero-operator-metal-identity",
17977
17977
  metalHostname: config.metalHostname,
17978
17978
  metalHostKeySha256: request.target.hostKeySha256,
17979
17979
  ...identity
17980
- }, "operator metal identity evidence");
17980
+ };
17981
+ if (existsSync11(request.metalIdentityEvidenceFile)) {
17982
+ const current2 = readOperatorMetalIdentityEvidence(request.metalIdentityEvidenceFile, request);
17983
+ if (current2.nodeKey !== evidence.nodeKey || current2.publicKeys.ed25519 !== evidence.publicKeys.ed25519 || current2.publicKeys.mlDsa !== evidence.publicKeys.mlDsa) {
17984
+ throw new Error("remote Metal repair returned a different public identity");
17985
+ }
17986
+ } else {
17987
+ writeOwnerJson2(request.metalIdentityEvidenceFile, evidence, "operator metal identity evidence");
17988
+ }
17981
17989
  }
17982
17990
  return { plan, output };
17983
17991
  } finally {
@@ -366,7 +366,7 @@ function systemdAgentEgressDirectives(loopbackTcpPorts = []) {
366
366
  }
367
367
 
368
368
  // src/version.ts
369
- var VERSION = "0.1.113";
369
+ var VERSION = "0.1.114";
370
370
 
371
371
  // src/otel-collector.ts
372
372
  var FORGEZERO_OTEL_COLLECTOR_UNIT = "forgezero-otel-collector.service";
@@ -1460,7 +1460,7 @@ var UPDATE_RETRY_BASE_MS = 5 * 60000;
1460
1460
  var UPDATE_RETRY_MAX_MS = 24 * 60 * 60000;
1461
1461
 
1462
1462
  // src/version.ts
1463
- var VERSION = "0.1.113";
1463
+ var VERSION = "0.1.114";
1464
1464
 
1465
1465
  // src/software.ts
1466
1466
  var PINNED_BUN_VERSION = "1.3.14";
@@ -7417,13 +7417,21 @@ async function applyOperatorMetalBootstrap(request, mode, options = {}) {
7417
7417
  if (typeof publicIdentity2 !== "string")
7418
7418
  throw new Error("remote Metal bootstrap omitted its public identity");
7419
7419
  const identity = parseMetalPublicIdentity(publicIdentity2);
7420
- writeOwnerJson2(request.metalIdentityEvidenceFile, {
7420
+ const evidence = {
7421
7421
  format: 1,
7422
7422
  kind: "forgezero-operator-metal-identity",
7423
7423
  metalHostname: config.metalHostname,
7424
7424
  metalHostKeySha256: request.target.hostKeySha256,
7425
7425
  ...identity
7426
- }, "operator metal identity evidence");
7426
+ };
7427
+ if (existsSync7(request.metalIdentityEvidenceFile)) {
7428
+ const current2 = readOperatorMetalIdentityEvidence(request.metalIdentityEvidenceFile, request);
7429
+ if (current2.nodeKey !== evidence.nodeKey || current2.publicKeys.ed25519 !== evidence.publicKeys.ed25519 || current2.publicKeys.mlDsa !== evidence.publicKeys.mlDsa) {
7430
+ throw new Error("remote Metal repair returned a different public identity");
7431
+ }
7432
+ } else {
7433
+ writeOwnerJson2(request.metalIdentityEvidenceFile, evidence, "operator metal identity evidence");
7434
+ }
7427
7435
  }
7428
7436
  return { plan, output };
7429
7437
  } finally {
@@ -3004,7 +3004,7 @@ function requestSoftware(requirements, socketPath = DEFAULT_SOFTWARE_HELPER_SOCK
3004
3004
  }
3005
3005
 
3006
3006
  // src/version.ts
3007
- var VERSION3 = "0.1.113";
3007
+ var VERSION3 = "0.1.114";
3008
3008
 
3009
3009
  // src/egress-policy.ts
3010
3010
  import { realpathSync as realpathSync3 } from "node:fs";
package/dist/provision.js CHANGED
@@ -3004,7 +3004,7 @@ function requestSoftware(requirements, socketPath = DEFAULT_SOFTWARE_HELPER_SOCK
3004
3004
  }
3005
3005
 
3006
3006
  // src/version.ts
3007
- var VERSION3 = "0.1.113";
3007
+ var VERSION3 = "0.1.114";
3008
3008
 
3009
3009
  // src/egress-policy.ts
3010
3010
  import { realpathSync as realpathSync3 } from "node:fs";
package/dist/version.d.ts CHANGED
@@ -1,2 +1,2 @@
1
1
  /** One package version shared by both public binaries. Pinned to package.json by tests. */
2
- export declare const VERSION = "0.1.113";
2
+ export declare const VERSION = "0.1.114";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@forgezero/agent",
3
- "version": "0.1.113",
3
+ "version": "0.1.114",
4
4
  "type": "module",
5
5
  "scripts": {
6
6
  "check": "tsc --noEmit",