@synkro-sh/cli 1.6.63 → 1.6.64

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/bootstrap.js CHANGED
@@ -10318,7 +10318,7 @@ function writeConfigEnv(opts) {
10318
10318
  `SYNKRO_CREDENTIALS_PATH=${shellQuoteSingle(credsPath)}`,
10319
10319
  `SYNKRO_TIER=${shellQuoteSingle(safeTier)}`,
10320
10320
  `SYNKRO_INFERENCE=${shellQuoteSingle(safeInference)}`,
10321
- `SYNKRO_VERSION=${shellQuoteSingle("1.6.63")}`
10321
+ `SYNKRO_VERSION=${shellQuoteSingle("1.6.64")}`
10322
10322
  ];
10323
10323
  if (safeSynkroBin) lines.push(`SYNKRO_CLI_BIN=${shellQuoteSingle(safeSynkroBin)}`);
10324
10324
  if (safeUserId) lines.push(`SYNKRO_USER_ID=${shellQuoteSingle(safeUserId)}`);
@@ -10429,18 +10429,31 @@ async function verifyCloudGrader(jwt2) {
10429
10429
  body: JSON.stringify({ role: "grade-edit", payload: probe, content: probe, agent_kind: "claude_code" }),
10430
10430
  signal: AbortSignal.timeout(12e4)
10431
10431
  });
10432
- const body = await r.json().catch(() => ({}));
10432
+ const raw = await r.text();
10433
+ let body = {};
10434
+ try {
10435
+ body = JSON.parse(raw);
10436
+ } catch {
10437
+ }
10433
10438
  if (r.ok && typeof body.result === "string" && body.result.includes("<synkro-verdict>")) {
10434
10439
  console.log(" \u2713 smoke grade passed \u2014 cloud grading is live\n");
10435
10440
  return true;
10436
10441
  }
10437
- console.warn(` \u26A0 smoke grade did not return a verdict (HTTP ${r.status}).`);
10438
- console.warn(" The container is provisioned but grading is not healthy \u2014 likely the Claude");
10439
- console.warn(" setup-token. Re-run `synkro install` to re-authorize the hosted worker.\n");
10442
+ const detail = (body.error || raw || "").trim().slice(0, 300) || "(empty response)";
10443
+ console.warn(` \u2717 smoke grade FAILED (HTTP ${r.status}): ${detail}`);
10444
+ if (/no grader worker ready/i.test(detail)) {
10445
+ console.warn(" \u2192 the worker pool never registered (cold-start, or the pool failed to boot).");
10446
+ } else if (/connection lost|network|502/i.test(detail)) {
10447
+ console.warn(" \u2192 the container dropped the connection mid-grade \u2014 the claude worker crashed or hung (most often a bad/expired setup-token).");
10448
+ } else {
10449
+ console.warn(" \u2192 the worker returned an error; most often a bad/expired Claude setup-token.");
10450
+ }
10451
+ console.warn(" Re-run `synkro install` \u2192 cloud to re-authorize the hosted worker.\n");
10440
10452
  return false;
10441
- } catch {
10442
- console.warn(" \u26A0 smoke grade timed out / connection dropped \u2014 grading is not responding.");
10443
- console.warn(" The container is provisioned but not grading; re-run `synkro install`.\n");
10453
+ } catch (e) {
10454
+ const reason = e?.name === "TimeoutError" ? "the grade never returned within 120s (worker hung \u2014 usually claude auth)" : `the request failed (${e?.message || "network"})`;
10455
+ console.warn(` \u2717 smoke grade FAILED: ${reason}.`);
10456
+ console.warn(" The container is provisioned but a grade does not complete; re-run `synkro install` \u2192 cloud.\n");
10444
10457
  return false;
10445
10458
  }
10446
10459
  }
@@ -13849,7 +13862,7 @@ var args = process.argv.slice(2);
13849
13862
  var cmd = args[0] || "";
13850
13863
  var subArgs = args.slice(1);
13851
13864
  function printVersion() {
13852
- console.log("1.6.63");
13865
+ console.log("1.6.64");
13853
13866
  }
13854
13867
  function printHelp2() {
13855
13868
  console.log(`Synkro CLI \u2014 runtime safety for AI coding agents