@superblocksteam/sdk 2.0.129 → 2.0.130-next.1

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.
Files changed (75) hide show
  1. package/.turbo/turbo-build.log +1 -1
  2. package/dist/cli-replacement/automatic-upgrades.d.ts.map +1 -1
  3. package/dist/cli-replacement/automatic-upgrades.js +235 -42
  4. package/dist/cli-replacement/automatic-upgrades.js.map +1 -1
  5. package/dist/cli-replacement/automatic-upgrades.test.js +406 -3
  6. package/dist/cli-replacement/automatic-upgrades.test.js.map +1 -1
  7. package/dist/cli-replacement/dev.d.mts.map +1 -1
  8. package/dist/cli-replacement/dev.mjs +8 -9
  9. package/dist/cli-replacement/dev.mjs.map +1 -1
  10. package/dist/cli-replacement/home-npmrc.d.mts +6 -0
  11. package/dist/cli-replacement/home-npmrc.d.mts.map +1 -1
  12. package/dist/cli-replacement/home-npmrc.mjs +22 -0
  13. package/dist/cli-replacement/home-npmrc.mjs.map +1 -1
  14. package/dist/client.billing-usage.test.d.ts +2 -0
  15. package/dist/client.billing-usage.test.d.ts.map +1 -0
  16. package/dist/client.billing-usage.test.js +66 -0
  17. package/dist/client.billing-usage.test.js.map +1 -0
  18. package/dist/client.d.ts +41 -0
  19. package/dist/client.d.ts.map +1 -1
  20. package/dist/client.js +15 -1
  21. package/dist/client.js.map +1 -1
  22. package/dist/dev-utils/dev-server-metrics.boot.test.d.mts +2 -0
  23. package/dist/dev-utils/dev-server-metrics.boot.test.d.mts.map +1 -0
  24. package/dist/dev-utils/dev-server-metrics.boot.test.mjs +55 -0
  25. package/dist/dev-utils/dev-server-metrics.boot.test.mjs.map +1 -0
  26. package/dist/dev-utils/dev-server-metrics.d.mts +32 -0
  27. package/dist/dev-utils/dev-server-metrics.d.mts.map +1 -1
  28. package/dist/dev-utils/dev-server-metrics.mjs +60 -0
  29. package/dist/dev-utils/dev-server-metrics.mjs.map +1 -1
  30. package/dist/dev-utils/dev-server-metrics.test.mjs +18 -1
  31. package/dist/dev-utils/dev-server-metrics.test.mjs.map +1 -1
  32. package/dist/dev-utils/dev-server.d.mts +28 -2
  33. package/dist/dev-utils/dev-server.d.mts.map +1 -1
  34. package/dist/dev-utils/dev-server.mjs +68 -7
  35. package/dist/dev-utils/dev-server.mjs.map +1 -1
  36. package/dist/dev-utils/dev-server.status.test.mjs +28 -1
  37. package/dist/dev-utils/dev-server.status.test.mjs.map +1 -1
  38. package/dist/flag.d.ts +14 -0
  39. package/dist/flag.d.ts.map +1 -1
  40. package/dist/flag.js +17 -0
  41. package/dist/flag.js.map +1 -1
  42. package/dist/flag.test.d.ts +2 -0
  43. package/dist/flag.test.d.ts.map +1 -0
  44. package/dist/flag.test.js +54 -0
  45. package/dist/flag.test.js.map +1 -0
  46. package/dist/index.d.ts +2 -1
  47. package/dist/index.d.ts.map +1 -1
  48. package/dist/index.js +3 -0
  49. package/dist/index.js.map +1 -1
  50. package/dist/sdk.d.ts +3 -1
  51. package/dist/sdk.d.ts.map +1 -1
  52. package/dist/sdk.js +11 -1
  53. package/dist/sdk.js.map +1 -1
  54. package/dist/types/common.d.ts +1 -0
  55. package/dist/types/common.d.ts.map +1 -1
  56. package/dist/types/common.js.map +1 -1
  57. package/package.json +8 -8
  58. package/src/cli-replacement/automatic-upgrades.test.ts +556 -3
  59. package/src/cli-replacement/automatic-upgrades.ts +251 -54
  60. package/src/cli-replacement/dev.mts +9 -10
  61. package/src/cli-replacement/home-npmrc.mts +45 -0
  62. package/src/client.billing-usage.test.ts +73 -0
  63. package/src/client.ts +66 -1
  64. package/src/dev-utils/dev-server-metrics.boot.test.mts +83 -0
  65. package/src/dev-utils/dev-server-metrics.mts +65 -0
  66. package/src/dev-utils/dev-server-metrics.test.mts +24 -1
  67. package/src/dev-utils/dev-server.mts +96 -7
  68. package/src/dev-utils/dev-server.status.test.mts +35 -1
  69. package/src/flag.test.ts +63 -0
  70. package/src/flag.ts +24 -0
  71. package/src/index.ts +9 -0
  72. package/src/sdk.ts +20 -0
  73. package/src/types/common.ts +1 -0
  74. package/tsconfig.tsbuildinfo +1 -1
  75. package/turbo.json +2 -1
@@ -1,4 +1,4 @@
1
1
 
2
- > @superblocksteam/sdk@2.0.129 build /home/runner/work/superblocks/superblocks/packages/cli/packages/sdk
2
+ > @superblocksteam/sdk@2.0.130-next.1 build /home/runner/work/superblocks/superblocks/packages/cli/packages/sdk
3
3
  > tsc --build
4
4
 
@@ -1 +1 @@
1
- {"version":3,"file":"automatic-upgrades.d.ts","sourceRoot":"","sources":["../../src/cli-replacement/automatic-upgrades.ts"],"names":[],"mappings":"AAMA,OAAO,EAAkB,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAa7E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qDAAqD,CAAC;AAMvF,OAAO,KAAK,EAAE,2CAA2C,EAAE,MAAM,oBAAoB,CAAC;AAQtF,eAAO,MAAM,sBAAsB,KAAK,CAAC;AAEzC;;;;;;;;;;;GAWG;AACH,wBAAgB,sBAAsB,CACpC,EAAE,EAAE;IAAE,KAAK,EAAE,YAAY,CAAC,OAAO,CAAC,CAAA;CAAE,EACpC,WAAW,EAAE,MAAM,GAClB,MAAM,EAAE,CAQV;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,eAAe,CAC7B,cAAc,EAAE,MAAM,EACtB,OAAO,CAAC,EAAE,MAAM,EAChB,OAAO,GAAE,MAAM,CAAC,UAAwB,GACvC,MAAM,CAAC,UAAU,CAcnB;AAiOD,wBAAsB,gCAAgC,CACpD,WAAW,EAAE,WAAW,EACxB,MAAM,EAAE,2CAA2C,EACnD,YAAY,GAAE,OAAe,EAC7B,cAAc,GAAE,OAAe,EAM/B,MAAM,GAAE,MAAsB,GAC7B,OAAO,CAAC;IACT,UAAU,EAAE,OAAO,CAAC;IACpB,eAAe,EAAE,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;CAClC,CAAC,CAiND"}
1
+ {"version":3,"file":"automatic-upgrades.d.ts","sourceRoot":"","sources":["../../src/cli-replacement/automatic-upgrades.ts"],"names":[],"mappings":"AAMA,OAAO,EAAkB,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAc7E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qDAAqD,CAAC;AAMvF,OAAO,KAAK,EAAE,2CAA2C,EAAE,MAAM,oBAAoB,CAAC;AAWtF,eAAO,MAAM,sBAAsB,KAAK,CAAC;AAEzC;;;;;;;;;;;GAWG;AACH,wBAAgB,sBAAsB,CACpC,EAAE,EAAE;IAAE,KAAK,EAAE,YAAY,CAAC,OAAO,CAAC,CAAA;CAAE,EACpC,WAAW,EAAE,MAAM,GAClB,MAAM,EAAE,CAQV;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,eAAe,CAC7B,cAAc,EAAE,MAAM,EACtB,OAAO,CAAC,EAAE,MAAM,EAChB,OAAO,GAAE,MAAM,CAAC,UAAwB,GACvC,MAAM,CAAC,UAAU,CAcnB;AAoUD,wBAAsB,gCAAgC,CACpD,WAAW,EAAE,WAAW,EACxB,MAAM,EAAE,2CAA2C,EACnD,YAAY,GAAE,OAAe,EAC7B,cAAc,GAAE,OAAe,EAM/B,MAAM,GAAE,MAAsB,GAC7B,OAAO,CAAC;IACT,UAAU,EAAE,OAAO,CAAC;IACpB,eAAe,EAAE,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;CAClC,CAAC,CA+SD"}
@@ -8,13 +8,16 @@ import { detect } from "package-manager-detector/detect";
8
8
  import gt from "semver/functions/gt.js";
9
9
  import valid from "semver/functions/valid.js";
10
10
  import { NON_SB_ORG_UPDATE_ERROR, traceFunction, } from "@superblocksteam/shared";
11
- import { bucketNpmRegistryHost, redactNpmRegistryHostsFromText, } from "@superblocksteam/telemetry";
11
+ import { bucketNpmRegistryHost, recordNpmInstall, redactNpmRegistryHostsFromText, } from "@superblocksteam/telemetry";
12
12
  import { classifyNpmExecStderr } from "@superblocksteam/vite-plugin-file-sync/npm-error-parser";
13
13
  import { getTracer } from "../telemetry/index.js";
14
14
  import { getErrorMeta, getLogger } from "../telemetry/logging.js";
15
15
  import { superblocksLogsPath, superblocksNpmrcPath } from "./home-npmrc.mjs";
16
16
  import { stripUpgradedCliLockfiles } from "./post-upgrade-lockfile-strip.mjs";
17
17
  import { getCurrentCliVersion, clearCliVersionCache, } from "./version-detection.js";
18
+ // Child exit code that asks the `superblocks dev` parent supervisor to re-exec
19
+ // the dev server after the CLI upgrades its own on-disk binary. Full exit-code
20
+ // contract: packages/cli/packages/cli/src/commands/dev-parent.mts.
18
21
  export const AUTO_UPGRADE_EXIT_CODE = 99;
19
22
  /**
20
23
  * Build the argument vector for the global CLI auto-upgrade install.
@@ -122,6 +125,12 @@ async function upgradeCliWithOclif(targetVersion) {
122
125
  return false;
123
126
  }
124
127
  }
128
+ // Returns `true` when an install command actually ran and post-install
129
+ // validation passed (every other failure throws). Returns `false` only when no
130
+ // global install command could be resolved for the detected package manager — a
131
+ // no-op the caller marks as a failed span WITHOUT throwing, so the live-edit
132
+ // pod degrades on the current version instead of crash-looping. Proper graceful
133
+ // degrade + surfacing the failed upgrade to the user is tracked by APPS-4457.
125
134
  async function upgradeCliWithPackageManager(pm, targetVersion, alias, hasAnyRegistryConfigured,
126
135
  // Directory npm should drop its per-run debug log into (the app's
127
136
  // `.superblocks/logs`). Optional so callers/tests that don't care keep
@@ -133,11 +142,56 @@ logsDir) {
133
142
  const installArgs = buildGlobalInstallArgs({ agent: pm.agent }, packageName);
134
143
  const installCommand = resolveCommand(pm.agent, "global", installArgs);
135
144
  if (!installCommand) {
145
+ // APPS-4544 (Bugbot 613adfc7): we couldn't even build a global install
146
+ // command for the detected package manager, so no upgrade happened.
147
+ // Before this PR added the `upgradeCli` span `outcome` attribute and the
148
+ // `superblocks.npm.install.*` metric, this no-op left no telemetry: the
149
+ // span kept its default `outcome=success` and no install metric was
150
+ // emitted, so an auto-upgrade that did nothing looked successful.
151
+ //
152
+ // Emit a failure sample so the histogram carries a `runner="auto_upgrade"`
153
+ // failure sample for this path, then return `false` so the caller flips
154
+ // the `upgradeCli` span to `outcome=failure`. `durationMs` is 0 because no
155
+ // install process ran; `outcome="other"` mirrors the unclassified-failure
156
+ // fallback used by the exec/validation paths below.
157
+ //
158
+ // We deliberately do NOT throw: a rejected upgrade promise routes through
159
+ // `dev.mts` to `process.exit(1)`, crash-looping the live-edit pod. The
160
+ // no-op dev-server restart that still follows (`cliUpdated` is set
161
+ // unconditionally at enqueue time in `checkVersionsAndWritePackageJson`),
162
+ // plus degrading gracefully (continue on the current version) and
163
+ // surfacing the failed upgrade to the user, are tracked by APPS-4457.
136
164
  logger.error("Could not determine how to upgrade Superblocks packages.");
137
- return;
165
+ recordNpmInstall({
166
+ runner: "auto_upgrade",
167
+ outcome: "other",
168
+ configured: hasAnyRegistryConfigured ?? false,
169
+ registryHost: undefined,
170
+ durationMs: 0,
171
+ });
172
+ return false;
138
173
  }
139
174
  const { command, args } = installCommand;
140
175
  logger.info(`Running ${command} ${args.join(" ")}...`);
176
+ // APPS-4544: emit `superblocks.npm.install.*` for the CLI auto-upgrade
177
+ // install. Until now this path's only failure signal was a structured log
178
+ // line + the rejected promise; metrics/dashboards distinguishing a
179
+ // perimeter-blocked upgrade from a working one had no `runner="auto_upgrade"`
180
+ // facet because no call site emitted it. `installStart` covers exec +
181
+ // post-install version validation so the histogram answers the operator's
182
+ // real question ("how long did the upgrade take end-to-end"), not just
183
+ // "how long did pnpm spend".
184
+ //
185
+ // `outcome` / `registryHost` are mutated from inside the exec callback
186
+ // because that's where the classifier runs; the `finally` then emits with
187
+ // whatever the callback (or a post-install validation throw below) left
188
+ // behind. `recordNpmInstall` itself coerces `outcome` through
189
+ // `normalizeInstallOutcome` and `registryHost` through `bucketNpmRegistryHost`,
190
+ // so raw `NpmInstallBlocked.reason` / hostnames can't leak past the emit
191
+ // boundary even if a future caller forgets to pre-sanitize.
192
+ const installStart = Date.now();
193
+ let outcome = "success";
194
+ let registryHost;
141
195
  let resolver;
142
196
  let rejecter;
143
197
  const promise = new Promise((resolve, reject) => {
@@ -170,6 +224,21 @@ logsDir) {
170
224
  requestedPackages: [{ name: packageName }],
171
225
  hasAnyRegistryConfigured,
172
226
  });
227
+ // Surface the structured `NpmInstallBlocked.reason` (e.g.
228
+ // `registry_unreachable`, `registry_auth_failed`) and raw host to
229
+ // the install metric below; the emitter coerces both at the emit
230
+ // boundary (`normalizeInstallOutcome` / `bucketNpmRegistryHost`),
231
+ // so a reason that isn't in `NPM_INSTALL_OUTCOMES` folds to
232
+ // `other` and a private host buckets to `private`. When the
233
+ // classifier doesn't match (network glitch, lockfile conflict, …)
234
+ // we still need to flip outcome off `success`, since the install
235
+ // did fail; default to `other` so the metric reflects the failure.
236
+ outcome = blocked?.reason ?? "other";
237
+ // `blocked?.registryHost` is already `string | undefined` (optional
238
+ // chaining yields `undefined` when `blocked` is null, and
239
+ // `NpmInstallBlocked.registryHost` is `readonly registryHost?: string`),
240
+ // so no `?? undefined` fallback is needed.
241
+ registryHost = blocked?.registryHost;
173
242
  if (blocked) {
174
243
  // Structured fields are grep-able from the message body because
175
244
  // the local logger contract limits the meta arg to
@@ -228,21 +297,55 @@ logsDir) {
228
297
  stderrBuffer += String(data);
229
298
  logger.warn(data);
230
299
  });
231
- // Wait for the install to complete, then validate the version
232
- await promise;
233
- // Clear cache to force actual version detection (not just returning cached value)
234
- clearCliVersionCache();
235
- const currentCliInfo = await getCurrentCliVersion();
236
- if (!currentCliInfo) {
237
- throw new Error("Could not get validate CLI version post-install");
300
+ try {
301
+ // Wait for the install to complete, then validate the version
302
+ await promise;
303
+ // Clear cache to force actual version detection (not just returning cached value)
304
+ clearCliVersionCache();
305
+ const currentCliInfo = await getCurrentCliVersion();
306
+ if (!currentCliInfo) {
307
+ throw new Error("Could not get validate CLI version post-install");
308
+ }
309
+ if (currentCliInfo.version !== targetVersion) {
310
+ throw new Error(`CLI version mismatch after upgrade: ${currentCliInfo.version} !== ${targetVersion}`);
311
+ }
312
+ // Now that we've validated, cache the correct version (avoids re-detection on next call)
313
+ clearCliVersionCache({ version: targetVersion, alias });
314
+ // This log line is used to end the upgrade spinner
315
+ logger.info(`Successfully upgraded packages to ${targetVersion}`);
238
316
  }
239
- if (currentCliInfo.version !== targetVersion) {
240
- throw new Error(`CLI version mismatch after upgrade: ${currentCliInfo.version} !== ${targetVersion}`);
317
+ catch (err) {
318
+ // If outcome is still "success", the install itself succeeded and we
319
+ // failed during post-install validation (missing binary / version
320
+ // mismatch). The user-visible effect is the same — auto-upgrade
321
+ // failed — so the metric flips to `other`. Exec-time failures already
322
+ // set outcome from the classified `NpmInstallBlocked.reason` (or
323
+ // `other` for unclassified errors) in the callback above.
324
+ if (outcome === "success") {
325
+ outcome = "other";
326
+ }
327
+ throw err;
328
+ }
329
+ finally {
330
+ // Both the happy path and every throw above (exec failure → callback
331
+ // sets outcome, post-install validation throw → catch sets outcome to
332
+ // `other`) flow through here. The earlier `resolveCommand` failure
333
+ // returns before `installStart`, so it never reaches this `finally`; it
334
+ // emits its own `outcome="other"` failure sample inline (with
335
+ // `durationMs: 0`, since no install ran) so that path isn't a metric gap
336
+ // either. No double-emit results because that early return skips this block.
337
+ recordNpmInstall({
338
+ runner: "auto_upgrade",
339
+ registryHost,
340
+ outcome,
341
+ configured: hasAnyRegistryConfigured ?? false,
342
+ durationMs: Date.now() - installStart,
343
+ });
241
344
  }
242
- // Now that we've validated, cache the correct version (avoids re-detection on next call)
243
- clearCliVersionCache({ version: targetVersion, alias });
244
- // This log line is used to end the upgrade spinner
245
- logger.info(`Successfully upgraded packages to ${targetVersion}`);
345
+ // Reached only when the install ran and post-install validation passed
346
+ // (every failure above throws). Signals the caller that a real upgrade
347
+ // happened so it leaves the `upgradeCli` span `outcome=success`.
348
+ return true;
246
349
  }
247
350
  export async function checkVersionsAndWritePackageJson(lockService, config, forceUpgrade = false, skipCliUpgrade = false,
248
351
  // App working directory, used to route the CLI-upgrade install's npm
@@ -339,41 +442,131 @@ appDir = process.cwd()) {
339
442
  const cliUpgradePromise = traceFunction({
340
443
  name: "upgradeCli",
341
444
  tracer,
342
- fn: async () => {
343
- logger.info(`Beginning CLI upgrade from ${currentCliInfo.version} to ${targetVersions.cli}`);
344
- const oclifUpgradeSucceeded = await traceFunction({
345
- name: "upgradeCliWithOclif",
346
- tracer,
347
- fn: async () => {
348
- return await upgradeCliWithOclif(targetVersions.cli);
349
- },
350
- });
351
- if (!oclifUpgradeSucceeded) {
352
- logger.info(`Falling back to package manager upgrade for CLI`);
353
- await traceFunction({
354
- name: "upgradePackageWithPackageManager - cli",
445
+ // APPS-4544: capture the span so the `outcome` attribute can be
446
+ // set in `finally` below. Adds a single trace-side fact so
447
+ // operators can correlate a failed upgrade span with the pod
448
+ // that crash-looped, complementing the
449
+ // `superblocks.npm.install.*` metric the package-manager and
450
+ // oclif paths emit below.
451
+ fn: async (span) => {
452
+ let outcome = "success";
453
+ try {
454
+ logger.info(`Beginning CLI upgrade from ${currentCliInfo.version} to ${targetVersions.cli}`);
455
+ const oclifStart = Date.now();
456
+ const oclifUpgradeSucceeded = await traceFunction({
457
+ name: "upgradeCliWithOclif",
355
458
  tracer,
356
459
  fn: async () => {
357
- await upgradeCliWithPackageManager(packageManager, targetVersions.cli, currentCliInfo.alias, undefined, superblocksLogsPath(appDir));
460
+ return await upgradeCliWithOclif(targetVersions.cli);
358
461
  },
359
462
  });
360
- cliUpdated = true;
463
+ if (oclifUpgradeSucceeded) {
464
+ // APPS-4544: oclif succeeded outright, so the package
465
+ // manager fallback below is skipped — record the
466
+ // upgrade in `superblocks.npm.install.*` here so the
467
+ // dashboard's "auto-upgrade succeeded" count includes
468
+ // oclif-channel installs. Failures and "not updatable"
469
+ // both flow through the fallback, which already
470
+ // records the outcome with the correct attributes
471
+ // pulled from the classifier; double-emitting from
472
+ // both branches would double-count those failures.
473
+ recordNpmInstall({
474
+ runner: "auto_upgrade",
475
+ outcome: "success",
476
+ // oclif's update channel is the public superblocks
477
+ // tarball location (not a customer-configured npm
478
+ // registry), so `configured` is false here even
479
+ // when the app shell has a private registry — the
480
+ // CLI binary upgrade does not flow through that
481
+ // registry, only library/dependency installs do.
482
+ configured: false,
483
+ // oclif resolves its tarball via its update channel,
484
+ // not a configurable npm registry, so there's no
485
+ // single host to attribute the install to. Leave
486
+ // unset and let `bucketNpmRegistryHost` map it to
487
+ // `unknown` at the emit boundary.
488
+ registryHost: undefined,
489
+ durationMs: Date.now() - oclifStart,
490
+ });
491
+ // Operator log anchor symmetric with the package-manager
492
+ // path's "Successfully upgraded packages to ..." line: the
493
+ // oclif branch records a `runner=auto_upgrade, outcome=success`
494
+ // metric but, without this, left no log entry to correlate
495
+ // the increment against on the oclif channel.
496
+ logger.info(`Successfully upgraded CLI to ${targetVersions.cli} via oclif`);
497
+ }
498
+ else {
499
+ logger.info(`Falling back to package manager upgrade for CLI`);
500
+ const cliUpgradeRan = await traceFunction({
501
+ name: "upgradePackageWithPackageManager - cli",
502
+ tracer,
503
+ fn: async () => {
504
+ return await upgradeCliWithPackageManager(packageManager, targetVersions.cli, currentCliInfo.alias, undefined, superblocksLogsPath(appDir));
505
+ },
506
+ });
507
+ if (!cliUpgradeRan) {
508
+ // No global install command could be resolved → the CLI
509
+ // upgrade was a no-op (the failure metric was already
510
+ // emitted inline). Flip the span to `failure` so the trace
511
+ // is accurate, but do NOT throw: throwing routes through
512
+ // `dev.mts` to `process.exit(1)` and crash-loops the pod.
513
+ // The no-op dev-server restart that still follows
514
+ // (`cliUpdated = true` below), graceful degrade, and user
515
+ // surfacing of the failed upgrade are tracked by APPS-4457.
516
+ outcome = "failure";
517
+ }
518
+ }
519
+ // The freshly fetched tarball may ship bundled lockfiles with
520
+ // stale public-host `resolved` URLs; strip them so the next
521
+ // install does not bypass the active registry. Non-fatal —
522
+ // a failed post-step must not crash the pod after a working
523
+ // upgrade, and (APPS-4544) must not flip the span outcome
524
+ // to `failure` either, since the actual upgrade succeeded.
525
+ // The inner traceFunction still records the strip-level
526
+ // exception on its own span, so we don't lose the signal.
527
+ try {
528
+ await traceFunction({
529
+ name: "stripUpgradedCliLockfiles",
530
+ tracer,
531
+ fn: async () => {
532
+ await stripUpgradedCliLockfiles(logger);
533
+ },
534
+ });
535
+ }
536
+ catch (stripErr) {
537
+ logger.warn(`stripUpgradedCliLockfiles failed (non-fatal): ${isNativeError(stripErr) ? stripErr.message : stripErr}`);
538
+ }
539
+ }
540
+ catch (err) {
541
+ outcome = "failure";
542
+ throw err;
543
+ }
544
+ finally {
545
+ // Closed enum string keeps the trace attribute
546
+ // queryable in TraceQL without cardinality concerns;
547
+ // `traceFunction` already records the exception itself
548
+ // via `recordException`, so this attribute is just a
549
+ // semantic label for grouping.
550
+ span.setAttribute("outcome", outcome);
361
551
  }
362
- // The freshly fetched tarball may ship bundled lockfiles with
363
- // stale public-host `resolved` URLs; strip them so the next
364
- // install does not bypass the active registry. Non-fatal — a
365
- // failed post-step must not crash the pod after a working
366
- // upgrade.
367
- await traceFunction({
368
- name: "stripUpgradedCliLockfiles",
369
- tracer,
370
- fn: async () => {
371
- await stripUpgradedCliLockfiles(logger);
372
- },
373
- });
374
552
  },
375
553
  });
376
554
  upgradePromises.push(cliUpgradePromise);
555
+ // APPS-4554: mark the CLI upgrade as pending SYNCHRONOUSLY here,
556
+ // not inside the async promise above. `dev.mts` reads
557
+ // `result.cliUpdated` as a value snapshot immediately after this
558
+ // function returns (to decide whether to restart the dev server),
559
+ // but `cliUpgradePromise` suspends at its first `await exec(...)`
560
+ // and resolves long after the return — so a `cliUpdated = true`
561
+ // set inside either the oclif or package-manager branch never
562
+ // reaches the returned snapshot. Setting it at schedule time means
563
+ // "a CLI upgrade was enqueued; restart once it succeeds." The
564
+ // success gate stays in `dev.mts`, which awaits this promise via
565
+ // `joinPackageUpgrade` before restarting and exits (no restart) if
566
+ // the upgrade rejects. This fixes both the oclif-success path
567
+ // (Bugbot: it set the flag in neither branch reliably) and the
568
+ // pre-existing package-manager race.
569
+ cliUpdated = true;
377
570
  }
378
571
  // Skip if we're in local development
379
572
  const packageJson = JSON.parse(await fs.readFile(path.join(process.cwd(), "package.json"), "utf8"));
@@ -1 +1 @@
1
- {"version":3,"file":"automatic-upgrades.js","sourceRoot":"","sources":["../../src/cli-replacement/automatic-upgrades.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"automatic-upgrades.js","sourceRoot":"","sources":["../../src/cli-replacement/automatic-upgrades.ts"],"names":[],"mappings":"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"}