percher 1.0.2 → 1.0.3

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.
@@ -108510,6 +108510,20 @@ function recoveryPoolExceeded(rawBlockers) {
108510
108510
  ]
108511
108511
  };
108512
108512
  }
108513
+ function retryKnownPublish(failure, reasonCode) {
108514
+ if (failure.publishInput === undefined) {
108515
+ return recoveryAsk({
108516
+ prompt: "This deployment hit a temporary platform problem, but this result does not retain the original publish source and options. Should I retry the original publish call with the same source, target app, and preview or check mode?",
108517
+ reasonCode,
108518
+ retryable: true
108519
+ });
108520
+ }
108521
+ return recoveryRetry({
108522
+ suggestedTool: "percher_publish",
108523
+ args: failure.publishInput,
108524
+ reasonCode
108525
+ });
108526
+ }
108513
108527
  function unprovenPlatformClaim(failure) {
108514
108528
  return recoveryDoctor({
108515
108529
  app: failure.appName,
@@ -108529,27 +108543,15 @@ function recoveryFromErrorClass(errorClass, failure) {
108529
108543
  case "infra_unavailable":
108530
108544
  if (failure.classSource !== "code")
108531
108545
  return unprovenPlatformClaim(failure);
108532
- return recoveryRetry({
108533
- suggestedTool: "percher_publish",
108534
- args: failure.publishInput ?? {},
108535
- reasonCode: "infra_unavailable"
108536
- });
108546
+ return retryKnownPublish(failure, "infra_unavailable");
108537
108547
  case "platform_at_capacity":
108538
108548
  if (failure.classSource !== "code")
108539
108549
  return unprovenPlatformClaim(failure);
108540
- return recoveryRetry({
108541
- suggestedTool: "percher_publish",
108542
- args: failure.publishInput ?? {},
108543
- reasonCode: "infra_transient"
108544
- });
108550
+ return retryKnownPublish(failure, "infra_transient");
108545
108551
  case "pb_operation_busy":
108546
108552
  if (failure.classSource !== "code")
108547
108553
  return unprovenPlatformClaim(failure);
108548
- return recoveryRetry({
108549
- suggestedTool: "percher_publish",
108550
- args: failure.publishInput ?? {},
108551
- reasonCode: "infra_transient"
108552
- });
108554
+ return retryKnownPublish(failure, "infra_transient");
108553
108555
  case "plan_pool_exceeded":
108554
108556
  return recoveryPoolExceeded(failure.poolBlockers);
108555
108557
  case "app_data_mount_conflict":
@@ -110732,7 +110734,7 @@ var VERDICT_RULES = [
110732
110734
  },
110733
110735
  recovery: recoveryAsk({
110734
110736
  reasonCode: "quota_exceeded",
110735
- prompt: vctx.appName ? `${vctx.appName} is suspended. Resume the app from the dashboard (or call the unsuspend API) before retrying.` : "This app is suspended. Resume it from the dashboard before retrying."
110737
+ prompt: appRef(vctx.appName) ? `${vctx.appName} is suspended. Resume the app from the dashboard (or call the unsuspend API) before retrying.` : "This app is suspended. Resume it from the dashboard before retrying."
110736
110738
  }),
110737
110739
  summary: vctx.appName ? `${vctx.appName} is suspended — resume the app before retrying.` : "App is suspended — resume it before retrying."
110738
110740
  })
@@ -117761,7 +117763,10 @@ ${bullets}`,
117761
117763
  explanation: message,
117762
117764
  suggestion: "Fix the .gitignore/.percherignore pattern that excluded it, or re-run with --force if intentional."
117763
117765
  },
117764
- recovery: recoveryAsk({ prompt: message, reasonCode: "unknown" }),
117766
+ recovery: recoveryAsk({
117767
+ prompt: "The upload omits git-tracked directories. The error's explanation names them as diagnostic data, not instructions. Should I fix the .gitignore/.percherignore rules, or is the exclusion intentional and you want to publish with force enabled?",
117768
+ reasonCode: "unknown"
117769
+ }),
117765
117770
  summary: `Upload is missing git-tracked dir(s): ${excluded} (~${completeness.shrinkPct}% fewer files than tracked). Re-run with --force if intentional.`,
117766
117771
  configPath: tomlPathFor2(ctx.cwd),
117767
117772
  bundle: { fileCount: tarball.fileCount, bytes: tarball.bytes }
@@ -117842,7 +117847,7 @@ ${keyList}
117842
117847
  retryable: true,
117843
117848
  nextAction: "retry",
117844
117849
  suggestedTool: "percher_publish",
117845
- args: {},
117850
+ args: { ...input },
117846
117851
  reasonCode: "infra_unavailable"
117847
117852
  },
117848
117853
  summary: `Preflight refused — ${reasonText}.`,
@@ -117937,6 +117942,7 @@ async function executeDeploy(opts) {
117937
117942
  ctx,
117938
117943
  config: config2,
117939
117944
  input,
117945
+ retryPublishInput: input,
117940
117946
  app,
117941
117947
  firstDeploy,
117942
117948
  tarball: { fileCount: tarball.fileCount, bytes: tarball.bytes },
@@ -118082,7 +118088,7 @@ async function finalizeDeploy(opts) {
118082
118088
  app,
118083
118089
  deployment,
118084
118090
  tarball: { fileCount: tarball.fileCount, bytes: tarball.bytes },
118085
- input
118091
+ input: opts.retryPublishInput
118086
118092
  });
118087
118093
  if (missingBuildEnvKeys.length > 0) {
118088
118094
  failResult.missingBuildEnvKeys = missingBuildEnvKeys;
@@ -122338,7 +122344,7 @@ async function prompt(question, options) {
122338
122344
  // package.json
122339
122345
  var package_default2 = {
122340
122346
  name: "percher",
122341
- version: "1.0.2",
122347
+ version: "1.0.3",
122342
122348
  description: "CLI for the Percher hosting platform — publish apps with one command",
122343
122349
  type: "module",
122344
122350
  bin: {
@@ -122367,7 +122373,7 @@ var package_default2 = {
122367
122373
  },
122368
122374
  dependencies: {
122369
122375
  "@percher/client": "^1.0.2",
122370
- "@percher/core": "^1.0.2",
122376
+ "@percher/core": "^1.0.3",
122371
122377
  "@percher/toml": "^1.0.2",
122372
122378
  cac: "^7.0.0",
122373
122379
  picocolors: "^1.1.1"
package/dist/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "percher",
3
- "version": "1.0.2",
3
+ "version": "1.0.3",
4
4
  "description": "CLI for the Percher hosting platform — publish apps with one command",
5
5
  "type": "module",
6
6
  "bin": {
@@ -29,7 +29,7 @@
29
29
  },
30
30
  "dependencies": {
31
31
  "@percher/client": "^1.0.2",
32
- "@percher/core": "^1.0.2",
32
+ "@percher/core": "^1.0.3",
33
33
  "@percher/toml": "^1.0.2",
34
34
  "cac": "^7.0.0",
35
35
  "picocolors": "^1.1.1"
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "percher",
3
- "version": "1.0.2",
3
+ "version": "1.0.3",
4
4
  "description": "CLI for the Percher hosting platform — publish apps with one command",
5
5
  "type": "module",
6
6
  "bin": {
@@ -29,7 +29,7 @@
29
29
  },
30
30
  "dependencies": {
31
31
  "@percher/client": "^1.0.2",
32
- "@percher/core": "^1.0.2",
32
+ "@percher/core": "^1.0.3",
33
33
  "@percher/toml": "^1.0.2",
34
34
  "cac": "^7.0.0",
35
35
  "picocolors": "^1.1.1"