percher 0.5.2 → 0.5.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.
@@ -17228,8 +17228,8 @@ var require_lines = __commonJS((exports) => {
17228
17228
  if (isOnlyWhitespace(sliced)) {
17229
17229
  continue;
17230
17230
  }
17231
- var diff = Math.abs(info.indent - lastIndent);
17232
- counts[diff] = ~~counts[diff] + 1;
17231
+ var diff2 = Math.abs(info.indent - lastIndent);
17232
+ counts[diff2] = ~~counts[diff2] + 1;
17233
17233
  lastIndent = info.indent;
17234
17234
  }
17235
17235
  var maxCount = -1;
@@ -17255,12 +17255,12 @@ var require_lines = __commonJS((exports) => {
17255
17255
  Lines2.prototype.isPrecededOnlyByWhitespace = function(pos) {
17256
17256
  var info = this.infos[pos.line - 1];
17257
17257
  var indent = Math.max(info.indent, 0);
17258
- var diff = pos.column - indent;
17259
- if (diff <= 0) {
17258
+ var diff2 = pos.column - indent;
17259
+ if (diff2 <= 0) {
17260
17260
  return true;
17261
17261
  }
17262
17262
  var start = info.sliceStart;
17263
- var end = Math.min(start + diff, info.sliceEnd);
17263
+ var end = Math.min(start + diff2, info.sliceEnd);
17264
17264
  var prefix = info.line.slice(start, end);
17265
17265
  return isOnlyWhitespace(prefix);
17266
17266
  };
@@ -105518,6 +105518,17 @@ class AppsResource {
105518
105518
  commitSha
105519
105519
  });
105520
105520
  }
105521
+ getChanges(appRef, opts = {}) {
105522
+ const params = new URLSearchParams;
105523
+ if (opts.base)
105524
+ params.set("base", opts.base);
105525
+ if (opts.head)
105526
+ params.set("head", opts.head);
105527
+ if (opts.patch)
105528
+ params.set("patch", "1");
105529
+ const qs = params.toString();
105530
+ return this.http.get(`/apps/${encodeURIComponent(appRef)}/changes${qs ? `?${qs}` : ""}`);
105531
+ }
105521
105532
  async getCrashReport(appRef) {
105522
105533
  try {
105523
105534
  return await this.http.get(`/apps/${encodeURIComponent(appRef)}/crash-report`);
@@ -105748,6 +105759,12 @@ class ExportResource {
105748
105759
  const path = downloadUrl.startsWith("http") ? new URL(downloadUrl).pathname + new URL(downloadUrl).search : downloadUrl;
105749
105760
  return this.http.stream(path);
105750
105761
  }
105762
+ gitBundle(appRef, signal) {
105763
+ return this.http.stream(`/apps/${encodeURIComponent(appRef)}/export/git`, signal);
105764
+ }
105765
+ checkGitBundle(appRef) {
105766
+ return this.http.get(`/apps/${encodeURIComponent(appRef)}/export/git/check`);
105767
+ }
105751
105768
  }
105752
105769
 
105753
105770
  // ../client/dist/sse.js
@@ -106092,7 +106109,7 @@ import { join as join7, resolve as resolve4 } from "node:path";
106092
106109
  // ../core/dist/templates.js
106093
106110
  import { existsSync as existsSync4, mkdirSync as mkdirSync4, readdirSync, readFileSync as readFileSync5, statSync, writeFileSync as writeFileSync4 } from "node:fs";
106094
106111
  import { basename, join as join6, normalize, relative, resolve as resolve3 } from "node:path";
106095
- var __dirname = "C:\\dev\\Percher-lakebed-clean\\packages\\core\\dist";
106112
+ var __dirname = "C:\\dev\\Percher\\packages\\core\\dist";
106096
106113
  var TEMPLATES_DIR = resolve3(import.meta.dirname ?? __dirname, "../templates");
106097
106114
  var PLACEHOLDER = "__APP_NAME__";
106098
106115
  function listTemplates() {
@@ -106708,6 +106725,27 @@ var diagnoseInputSchema = exports_external.object({
106708
106725
  logLines: exports_external.number().int().min(0).max(200).optional(),
106709
106726
  recencyHours: exports_external.number().positive().max(24 * 30).optional()
106710
106727
  });
106728
+ // ../core/dist/commands/diff.js
106729
+ var diffInputSchema = exports_external.object({
106730
+ app: exports_external.string().optional(),
106731
+ base: exports_external.string().optional(),
106732
+ head: exports_external.string().optional(),
106733
+ patch: exports_external.boolean().optional()
106734
+ });
106735
+ async function diff(ctx, input = {}) {
106736
+ const name = input.app ?? readPercherTomlAppName(ctx.cwd);
106737
+ if (!name) {
106738
+ throw new PercherCoreError("No app specified and no percher.toml found", {
106739
+ code: "diff.no-app",
106740
+ hint: "Pass --app <name> or run from a directory with percher.toml."
106741
+ });
106742
+ }
106743
+ return ctx.client.apps.getChanges(name, {
106744
+ base: input.base,
106745
+ head: input.head,
106746
+ patch: input.patch
106747
+ });
106748
+ }
106711
106749
  // ../core/dist/commands/doctor.js
106712
106750
  import { existsSync as existsSync8 } from "node:fs";
106713
106751
  import { join as join12 } from "node:path";
@@ -107730,9 +107768,11 @@ async function doctor(ctx, input = {}) {
107730
107768
  let buildLogClassification;
107731
107769
  let buildProblems;
107732
107770
  let crashReport;
107771
+ let suspectDeploy;
107733
107772
  try {
107734
107773
  const diag = await ctx.client.apps.getDiagnostics(appName);
107735
107774
  appStatus = diag.app.status;
107775
+ suspectDeploy = diag.suspectDeploy ?? undefined;
107736
107776
  lastDeployStatus = diag.lastDeploy?.status;
107737
107777
  lastDeployId = diag.lastDeploy?.id;
107738
107778
  containerState = diag.container.state;
@@ -107928,7 +107968,8 @@ async function doctor(ctx, input = {}) {
107928
107968
  inputMode: input.mode,
107929
107969
  buildLogClassification,
107930
107970
  buildProblems,
107931
- crashReport
107971
+ crashReport,
107972
+ suspectDeploy
107932
107973
  });
107933
107974
  }
107934
107975
  var TRANSITIONAL_DEPLOY_STATUSES = new Set(["queued", "building", "deploying"]);
@@ -107948,7 +107989,8 @@ function summarize(checks3, vctx = {}) {
107948
107989
  status: verdict.status,
107949
107990
  diagnosis: verdict.diagnosis,
107950
107991
  recovery: verdict.recovery,
107951
- summary: verdict.summary
107992
+ summary: verdict.summary,
107993
+ ...vctx.suspectDeploy ? { suspectDeploy: vctx.suspectDeploy } : {}
107952
107994
  };
107953
107995
  }
107954
107996
  function buildVerdictRuleContext(checks3, vctx) {
@@ -108450,12 +108492,18 @@ async function envList(ctx, input = {}) {
108450
108492
  return masked;
108451
108493
  }
108452
108494
  // ../core/dist/commands/export.js
108495
+ import { randomUUID } from "node:crypto";
108496
+ import { rename } from "node:fs/promises";
108453
108497
  import { isAbsolute, resolve as resolvePath } from "node:path";
108454
108498
  var exportInputSchema = exports_external.object({
108455
108499
  app: exports_external.string().optional(),
108456
108500
  out: exports_external.string().optional(),
108457
108501
  deliveryKind: exports_external.enum(["cli", "mcp"]).default("cli")
108458
108502
  });
108503
+ var exportGitInputSchema = exports_external.object({
108504
+ app: exports_external.string().optional(),
108505
+ out: exports_external.string().optional()
108506
+ });
108459
108507
  function resolveAppName3(ctx, provided) {
108460
108508
  const name = provided ?? readPercherTomlAppName(ctx.cwd);
108461
108509
  if (!name) {
@@ -108467,8 +108515,8 @@ function resolveAppName3(ctx, provided) {
108467
108515
  return name;
108468
108516
  }
108469
108517
  async function streamToFile(outPath, source) {
108470
- const file2 = Bun.file(outPath);
108471
- const writer = file2.writer();
108518
+ const tmpPath = `${outPath}.part-${randomUUID()}`;
108519
+ const writer = Bun.file(tmpPath).writer();
108472
108520
  let bytes = 0;
108473
108521
  const reader = source.getReader();
108474
108522
  try {
@@ -108487,8 +108535,15 @@ async function streamToFile(outPath, source) {
108487
108535
  await writer.end();
108488
108536
  } catch {}
108489
108537
  try {
108490
- await Bun.write(outPath, "");
108491
- await Bun.file(outPath).delete?.();
108538
+ await Bun.file(tmpPath).delete?.();
108539
+ } catch {}
108540
+ throw err;
108541
+ }
108542
+ try {
108543
+ await rename(tmpPath, outPath);
108544
+ } catch (err) {
108545
+ try {
108546
+ await Bun.file(tmpPath).delete?.();
108492
108547
  } catch {}
108493
108548
  throw err;
108494
108549
  }
@@ -108525,6 +108580,25 @@ async function exportApp(ctx, input) {
108525
108580
  includedSecrets: false
108526
108581
  };
108527
108582
  }
108583
+ async function exportGitBundle(ctx, input) {
108584
+ const name = resolveAppName3(ctx, input.app);
108585
+ const res = await ctx.client.export.gitBundle(name);
108586
+ if (!res.body) {
108587
+ throw new PercherCoreError("Git bundle download returned an empty body", {
108588
+ code: "export.empty-body",
108589
+ hint: "Try again — if it persists, the app may have no deploy history yet."
108590
+ });
108591
+ }
108592
+ const filenameFromHeader = (() => {
108593
+ const cd = res.headers.get("Content-Disposition") ?? "";
108594
+ const m = cd.match(/filename="?([^";]+)"?/);
108595
+ return m?.[1];
108596
+ })();
108597
+ const filename = input.out ?? filenameFromHeader ?? `${name}.bundle`;
108598
+ const outPath = resolveOutPath(ctx.cwd, filename);
108599
+ const { bytes } = await streamToFile(outPath, res.body);
108600
+ return { appName: name, outPath, bytes };
108601
+ }
108528
108602
  // ../core/dist/commands/forgejo.js
108529
108603
  var FORGEJO_URL_RE = /^https:\/\/[\w.-]+\/[\w.-]+\/[\w.-]+(\.git)?$/;
108530
108604
  var forgejoConnectInputSchema = exports_external.object({
@@ -113301,7 +113375,7 @@ var renameInputSchema = exports_external.object({
113301
113375
  app: exports_external.string().optional(),
113302
113376
  name: exports_external.string().min(3).max(40)
113303
113377
  });
113304
- async function rename(ctx, input) {
113378
+ async function rename2(ctx, input) {
113305
113379
  const appRef = input.app ?? readPercherTomlAppName(ctx.cwd);
113306
113380
  if (!appRef) {
113307
113381
  throw new PercherCoreError("No app specified and no percher.toml found", {
@@ -114829,7 +114903,7 @@ function registerAppsCommands(cli, ctx) {
114829
114903
  }
114830
114904
  });
114831
114905
  cli.command("rename <name> [app]", "Rename an app (changes its subdomain)").action(async (name, app) => {
114832
- const result = await rename(ctx, { app, name });
114906
+ const result = await rename2(ctx, { app, name });
114833
114907
  await writeLine(ctx, `${import_picocolors4.default.green("✓")} Renamed to ${result.name} — now live at ${result.url}`);
114834
114908
  await writeLine(ctx, ` Previous name: ${result.previousName} (reserved for 60 days)`);
114835
114909
  if (result.tomlUpdated) {
@@ -114941,6 +115015,20 @@ function registerAppsCommands(cli, ctx) {
114941
115015
  const counterColor = result.status === "ok" ? import_picocolors4.default.green : result.status === "in_progress" ? import_picocolors4.default.yellow : import_picocolors4.default.red;
114942
115016
  await writeLine(ctx, counterColor(counter));
114943
115017
  await writeLine(ctx, result.summary);
115018
+ if (result.suspectDeploy) {
115019
+ const s = result.suspectDeploy;
115020
+ const head = (s.commitSha ?? s.deployId).slice(0, 10);
115021
+ await writeLine(ctx, "");
115022
+ await writeLine(ctx, import_picocolors4.default.bold(`Likely broken by a deploy (${s.confidence} confidence):`));
115023
+ await writeLine(ctx, ` Suspect: ${head}`);
115024
+ if (s.lastHealthyCommitSha) {
115025
+ const base = s.lastHealthyCommitSha.slice(0, 10);
115026
+ await writeLine(ctx, ` Last working: ${base}`);
115027
+ await writeLine(ctx, import_picocolors4.default.dim(` See what changed: percher diff ${base} ${head}${app ? ` --app ${app}` : ""}`));
115028
+ }
115029
+ for (const e of s.evidence)
115030
+ await writeLine(ctx, import_picocolors4.default.dim(` · ${e}`));
115031
+ }
114944
115032
  }
114945
115033
  if (result.status === "blocked" || result.status === "needs_action") {
114946
115034
  throw new SilentExitError;
@@ -115201,7 +115289,36 @@ function registerDeploysCommands(cli, ctx, argv) {
115201
115289
  for (const v of list) {
115202
115290
  const message = v.message.split(`
115203
115291
  `)[0]?.trim() ?? "";
115204
- await writeLine(ctx, `${v.sha} ${v.timestamp} ${message}`);
115292
+ const channelLabels = {
115293
+ cli: "CLI",
115294
+ mcp: "MCP",
115295
+ dashboard: "Dashboard",
115296
+ github: "GitHub",
115297
+ "forgejo-webhook": "Forgejo"
115298
+ };
115299
+ const label = v.channel ? channelLabels[v.channel] ?? v.channel : null;
115300
+ const suffix = label ? ` · via ${label}` : "";
115301
+ await writeLine(ctx, `${v.sha} ${v.timestamp} ${message}${suffix}`);
115302
+ }
115303
+ });
115304
+ cli.command("diff [base] [head]", "Show what changed between two deploy versions").option("--app <name>", "App name (overrides percher.toml)").option("--patch", "Include the unified diff per file (owner-only)").action(async (base, head, options) => {
115305
+ const result = await diff(ctx, {
115306
+ app: options.app,
115307
+ base,
115308
+ head,
115309
+ patch: options.patch
115310
+ });
115311
+ const { summary, files } = result;
115312
+ await writeLine(ctx, `${summary.filesChanged} file${summary.filesChanged === 1 ? "" : "s"} changed · ${import_picocolors7.default.green(`+${summary.additions}`)} ${import_picocolors7.default.red(`−${summary.deletions}`)} (${result.base.slice(0, 10)} → ${result.head.slice(0, 10)})`);
115313
+ for (const f of files) {
115314
+ const stat = f.binary ? import_picocolors7.default.dim("binary") : `${import_picocolors7.default.green(`+${f.additions}`)} ${import_picocolors7.default.red(`−${f.deletions}`)}`;
115315
+ await writeLine(ctx, ` ${f.status} ${f.path} ${stat}${f.truncated ? import_picocolors7.default.dim(" (truncated)") : ""}`);
115316
+ if (options.patch && f.patch) {
115317
+ await writeLine(ctx, f.patch.replace(/\n$/, ""));
115318
+ }
115319
+ }
115320
+ if (result.truncated) {
115321
+ await writeLine(ctx, import_picocolors7.default.dim("… some patches omitted (response size limit)"));
115205
115322
  }
115206
115323
  });
115207
115324
  cli.command("preview <action> [arg] [arg2]", "Preview deploys: promote <id> | discard <id> | branch set <branch> | branch unset | branch show").option("--app <name>", "App name (overrides percher.toml)").action(async (action, arg, arg2, options) => {
@@ -115317,7 +115434,13 @@ function registerEnvCommands(cli, ctx) {
115317
115434
  // src/commands/export.ts
115318
115435
  var import_picocolors9 = __toESM(require_picocolors(), 1);
115319
115436
  function registerExportCommands(cli, ctx) {
115320
- cli.command("export [app]", "Download an export bundle for an app (no secrets)").option("--out <path>", "Where to write the .tar.gz (defaults to ./{name}-{date}.tar.gz)").action(async (app, options) => {
115437
+ cli.command("export [app]", "Download an export bundle for an app (no secrets)").option("--out <path>", "Where to write the file (defaults to ./{name}-{date}.tar.gz)").option("--git", "Export the whole deploy history as a git bundle (.bundle) — re-clone with `git clone`").action(async (app, options) => {
115438
+ if (options.git) {
115439
+ const result2 = await exportGitBundle(ctx, { app, out: options.out });
115440
+ await writeLine(ctx, `${import_picocolors9.default.green("✓")} exported ${result2.appName} deploy history → ${result2.outPath} (${(result2.bytes / 1024).toFixed(1)} KB)`);
115441
+ await writeLine(ctx, import_picocolors9.default.dim(`Re-clone it anywhere with: git clone ${result2.outPath}`));
115442
+ return;
115443
+ }
115321
115444
  const result = await exportApp(ctx, {
115322
115445
  app,
115323
115446
  out: options.out,
@@ -115852,7 +115975,7 @@ async function renderError(stderr, error48) {
115852
115975
  // package.json
115853
115976
  var package_default = {
115854
115977
  name: "percher",
115855
- version: "0.5.2",
115978
+ version: "0.5.3",
115856
115979
  description: "CLI for the Percher hosting platform — publish apps with one command",
115857
115980
  type: "module",
115858
115981
  bin: {
@@ -0,0 +1,3 @@
1
+ import type { Context } from "@percher/core";
2
+ export declare function createCliContext(): Promise<Context>;
3
+ //# sourceMappingURL=context.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAI7C,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,OAAO,CAAC,CA4BzD"}
@@ -0,0 +1,31 @@
1
+ import { PercherClient } from "@percher/client";
2
+ import { openUrl } from "./open";
3
+ import { prompt } from "./prompt";
4
+ export async function createCliContext() {
5
+ const client = new PercherClient();
6
+ const encoder = new TextEncoder();
7
+ const stdout = new WritableStream({
8
+ write(chunk) {
9
+ process.stdout.write(chunk);
10
+ },
11
+ });
12
+ const stderr = new WritableStream({
13
+ write(chunk) {
14
+ process.stderr.write(chunk);
15
+ },
16
+ });
17
+ return {
18
+ client,
19
+ cwd: process.cwd(),
20
+ stdout,
21
+ stderr,
22
+ env: process.env,
23
+ prompt,
24
+ openUrl,
25
+ interactiveLogin: true,
26
+ status(message) {
27
+ process.stderr.write(encoder.encode(`${message}\n`));
28
+ },
29
+ };
30
+ }
31
+ //# sourceMappingURL=context.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.js","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,OAAO,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AACjC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,MAAM,CAAC,KAAK,UAAU,gBAAgB;IACpC,MAAM,MAAM,GAAG,IAAI,aAAa,EAAE,CAAC;IACnC,MAAM,OAAO,GAAG,IAAI,WAAW,EAAE,CAAC;IAElC,MAAM,MAAM,GAAG,IAAI,cAAc,CAAa;QAC5C,KAAK,CAAC,KAAK;YACT,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC9B,CAAC;KACF,CAAC,CAAC;IACH,MAAM,MAAM,GAAG,IAAI,cAAc,CAAa;QAC5C,KAAK,CAAC,KAAK;YACT,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC9B,CAAC;KACF,CAAC,CAAC;IAEH,OAAO;QACL,MAAM;QACN,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE;QAClB,MAAM;QACN,MAAM;QACN,GAAG,EAAE,OAAO,CAAC,GAAyC;QACtD,MAAM;QACN,OAAO;QACP,gBAAgB,EAAE,IAAI;QACtB,MAAM,CAAC,OAAe;YACpB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,OAAO,IAAI,CAAC,CAAC,CAAC;QACvD,CAAC;KACF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { Context } from "@percher/core";
2
+ export declare function run(argv: string[], ctxOverride?: Context): Promise<number>;
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAgC7C,wBAAsB,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,WAAW,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAmYhF"}
package/dist/index.js ADDED
@@ -0,0 +1,385 @@
1
+ import * as core from "@percher/core";
2
+ import cac from "cac";
3
+ import pc from "picocolors";
4
+ import { createCliContext } from "./context";
5
+ import { renderError } from "./output";
6
+ const VERSION = "0.0.1";
7
+ /** Thrown after doctor output is printed, to signal non-zero exit without an error message. */
8
+ class DoctorFailedError {
9
+ failCount;
10
+ constructor(failCount) {
11
+ this.failCount = failCount;
12
+ }
13
+ }
14
+ function parseKeyValue(pairs) {
15
+ const out = {};
16
+ for (const p of pairs) {
17
+ const idx = p.indexOf("=");
18
+ if (idx === -1)
19
+ throw new Error(`Expected KEY=VALUE, got "${p}"`);
20
+ out[p.slice(0, idx)] = p.slice(idx + 1);
21
+ }
22
+ return out;
23
+ }
24
+ async function writeLine(ctx, line) {
25
+ const writer = ctx.stdout.getWriter();
26
+ try {
27
+ await writer.write(new TextEncoder().encode(`${line}\n`));
28
+ }
29
+ finally {
30
+ writer.releaseLock();
31
+ }
32
+ }
33
+ export async function run(argv, ctxOverride) {
34
+ const cli = cac("percher");
35
+ cli
36
+ .command("init", "Generate percher.toml for this project")
37
+ .option("--force", "Overwrite existing percher.toml")
38
+ .option("--name <name>", "Override detected app name")
39
+ .action(async (options) => {
40
+ const ctx = ctxOverride ?? (await createCliContext());
41
+ const result = await core.init(ctx, { force: options.force, name: options.name });
42
+ await writeLine(ctx, `${pc.green("✓")} wrote ${result.path}`);
43
+ });
44
+ cli
45
+ .command("push", "Package and deploy this project")
46
+ .option("--dry-run", "Show what would be deployed, don't upload")
47
+ .option("--force", "Skip size warnings")
48
+ .option("--preview", "Deploy as preview (does not replace the live version)")
49
+ .action(async (options) => {
50
+ const ctx = ctxOverride ?? (await createCliContext());
51
+ const result = await core.push(ctx, {
52
+ dryRun: options.dryRun,
53
+ force: options.force,
54
+ preview: options.preview,
55
+ });
56
+ if (result.dryRun) {
57
+ await writeLine(ctx, `Dry run: ${result.fileCount} files, ${(result.bytes / 1024).toFixed(1)} KB`);
58
+ }
59
+ else {
60
+ await writeLine(ctx, `${pc.green("✓")} deployed to ${result.deployment?.url ?? result.app.url}`);
61
+ }
62
+ });
63
+ cli
64
+ .command("logs [app]", "Stream application logs")
65
+ .option("--tail <n>", "Return the last N lines and exit", { type: [Number] })
66
+ .option("--no-follow", "Don't stream new lines")
67
+ .action(async (app, options) => {
68
+ const ctx = ctxOverride ?? (await createCliContext());
69
+ await core.logs(ctx, {
70
+ app,
71
+ tail: options.tail ? Number(options.tail) : undefined,
72
+ follow: options.follow !== false,
73
+ });
74
+ });
75
+ cli
76
+ .command("env <action> [...args]", "Manage env vars (set KEY=VALUE | unset KEY | list)")
77
+ .option("--app <name>", "App name (overrides percher.toml)")
78
+ .action(async (action, args, options) => {
79
+ const ctx = ctxOverride ?? (await createCliContext());
80
+ if (action === "set") {
81
+ await core.envSet(ctx, { app: options.app, values: parseKeyValue(args) });
82
+ await writeLine(ctx, `${pc.green("✓")} env vars updated`);
83
+ }
84
+ else if (action === "unset") {
85
+ const key = args[0];
86
+ if (!key)
87
+ throw new Error("Expected key to unset");
88
+ await core.envUnset(ctx, { app: options.app, key });
89
+ await writeLine(ctx, `${pc.green("✓")} unset ${key}`);
90
+ }
91
+ else if (action === "list") {
92
+ const env = await core.envList(ctx, { app: options.app });
93
+ for (const [k, v] of Object.entries(env)) {
94
+ await writeLine(ctx, `${k}=${v}`);
95
+ }
96
+ }
97
+ else {
98
+ throw new Error(`Unknown env action "${action}". Use set | unset | list.`);
99
+ }
100
+ });
101
+ cli
102
+ .command("open [app]", "Open the app URL in your browser")
103
+ .action(async (app) => {
104
+ const ctx = ctxOverride ?? (await createCliContext());
105
+ const url = await core.open(ctx, { app });
106
+ await writeLine(ctx, url);
107
+ });
108
+ cli
109
+ .command("login", "Authenticate with Percher")
110
+ .option("--token <token>", "Dev: skip browser, use a token")
111
+ .option("--api-url <url>", "Override API URL")
112
+ .action(async (options) => {
113
+ const ctx = ctxOverride ?? (await createCliContext());
114
+ await core.login(ctx, { token: options.token, apiUrl: options.apiUrl });
115
+ });
116
+ cli
117
+ .command("versions [app]", "List deployed versions for an app")
118
+ .action(async (app) => {
119
+ const ctx = ctxOverride ?? (await createCliContext());
120
+ const list = await core.versions(ctx, { app });
121
+ for (const v of list) {
122
+ await writeLine(ctx, `${v.sha.slice(0, 10)} ${v.timestamp} ${v.message}`);
123
+ }
124
+ });
125
+ cli
126
+ .command("rollback <sha> [app]", "Roll back to a previous version")
127
+ .action(async (sha, app) => {
128
+ const ctx = ctxOverride ?? (await createCliContext());
129
+ const result = await core.rollback(ctx, { app, commitSha: sha });
130
+ await writeLine(ctx, `${pc.green("✓")} rolled back to ${sha.slice(0, 10)} (status: ${result.status})`);
131
+ });
132
+ cli
133
+ .command("generate", "Generate .env.example and TypeScript types from percher.toml")
134
+ .action(async () => {
135
+ const ctx = ctxOverride ?? (await createCliContext());
136
+ const result = await core.generate(ctx);
137
+ for (const f of result.files) {
138
+ await writeLine(ctx, `${pc.green("✓")} ${f}`);
139
+ }
140
+ });
141
+ cli
142
+ .command("data [app]", "Show app data status and collections")
143
+ .option("--json", "Output as JSON")
144
+ .action(async (app, options) => {
145
+ const ctx = ctxOverride ?? (await createCliContext());
146
+ const result = await core.data(ctx, { app, json: options.json });
147
+ if (options.json) {
148
+ await writeLine(ctx, JSON.stringify(result, null, 2));
149
+ }
150
+ else {
151
+ await writeLine(ctx, `${pc.bold("Data")} Mode: ${result.mode} Status: ${result.status}`);
152
+ await writeLine(ctx, "");
153
+ if (result.collections.length > 0) {
154
+ await writeLine(ctx, pc.bold("Collections"));
155
+ for (const col of result.collections) {
156
+ await writeLine(ctx, ` ${col.name.padEnd(20)} ${pc.dim(col.type)}`);
157
+ }
158
+ await writeLine(ctx, "");
159
+ }
160
+ await writeLine(ctx, `Collections: ${result.stats.collections} Records: ${result.stats.totalRecords}`);
161
+ if (result.adminUrl) {
162
+ await writeLine(ctx, "");
163
+ await writeLine(ctx, `Admin: ${result.adminUrl}`);
164
+ }
165
+ }
166
+ });
167
+ cli
168
+ .command("dev [app]", "Watch files and deploy on changes")
169
+ .option("--confirm", "Prompt before each push (default: auto-push)")
170
+ .action(async (app, options) => {
171
+ const ctx = ctxOverride ?? (await createCliContext());
172
+ const controller = new AbortController();
173
+ // Handle Ctrl+C gracefully
174
+ const onSignal = () => controller.abort();
175
+ process.on("SIGINT", onSignal);
176
+ process.on("SIGTERM", onSignal);
177
+ await writeLine(ctx, pc.bold("Percher Dev"));
178
+ await writeLine(ctx, "───────────");
179
+ await writeLine(ctx, "");
180
+ try {
181
+ await core.dev(ctx, { app }, {
182
+ signal: controller.signal,
183
+ async writeLine(line) {
184
+ const timestamp = new Date().toLocaleTimeString("sv-SE", { hour12: false });
185
+ await writeLine(ctx, `${pc.dim(`[${timestamp}]`)} ${line}`);
186
+ },
187
+ async onFilesChanged(_files) {
188
+ if (options.confirm) {
189
+ const answer = await ctx.prompt("Push changes? [Y/n]", { default: "y" });
190
+ return /^y(es)?$|^$/i.test(answer.trim());
191
+ }
192
+ return true; // auto-push by default
193
+ },
194
+ });
195
+ }
196
+ finally {
197
+ process.removeListener("SIGINT", onSignal);
198
+ process.removeListener("SIGTERM", onSignal);
199
+ }
200
+ await writeLine(ctx, "");
201
+ await writeLine(ctx, pc.dim("Dev session ended."));
202
+ });
203
+ cli
204
+ .command("doctor [app]", "Check app health and connectivity")
205
+ .option("--json", "Output as JSON")
206
+ .action(async (app, options) => {
207
+ const ctx = ctxOverride ?? (await createCliContext());
208
+ const result = await core.doctor(ctx, { app, json: options.json });
209
+ if (options.json) {
210
+ await writeLine(ctx, JSON.stringify(result, null, 2));
211
+ }
212
+ else {
213
+ await writeLine(ctx, `${pc.bold("Percher Doctor")}`);
214
+ await writeLine(ctx, "──────────────");
215
+ await writeLine(ctx, "");
216
+ for (const check of result.checks) {
217
+ const icon = check.status === "pass"
218
+ ? pc.green("✓")
219
+ : check.status === "fail"
220
+ ? pc.red("✗")
221
+ : check.status === "warn"
222
+ ? pc.yellow("!")
223
+ : pc.dim("—");
224
+ await writeLine(ctx, `${icon} ${pc.bold(check.name.padEnd(20))} ${check.message}`);
225
+ }
226
+ await writeLine(ctx, "");
227
+ const summary = `${result.passed}/${result.total} checks passed`;
228
+ if (result.failed > 0) {
229
+ await writeLine(ctx, pc.red(summary));
230
+ }
231
+ else if (result.warned > 0) {
232
+ await writeLine(ctx, pc.yellow(summary));
233
+ }
234
+ else {
235
+ await writeLine(ctx, pc.green(summary));
236
+ }
237
+ }
238
+ // Signal non-zero exit for CI/agent use
239
+ if (result.failed > 0) {
240
+ throw new DoctorFailedError(result.failed);
241
+ }
242
+ });
243
+ cli
244
+ .command("create [name]", "Create a new app from a template")
245
+ .option("--template <template>", "Template to use (node, python, static, nextjs, hono, express)")
246
+ .option("--force", "Overwrite existing files in target directory")
247
+ .option("--list-templates", "List available templates")
248
+ .action(async (name, options) => {
249
+ const ctx = ctxOverride ?? (await createCliContext());
250
+ if (options.listTemplates) {
251
+ const templates = core.listTemplates();
252
+ await writeLine(ctx, pc.bold("Available templates:"));
253
+ for (const t of templates) {
254
+ await writeLine(ctx, ` ${t}`);
255
+ }
256
+ return;
257
+ }
258
+ if (!name) {
259
+ throw new Error("App name is required. Usage: percher create <name> --template <template>");
260
+ }
261
+ if (!options.template) {
262
+ const templates = core.listTemplates();
263
+ await writeLine(ctx, `${pc.red("✗")} --template is required. Available: ${templates.join(", ")}`);
264
+ return;
265
+ }
266
+ const result = await core.create(ctx, {
267
+ name,
268
+ template: options.template,
269
+ force: options.force,
270
+ });
271
+ await writeLine(ctx, `${pc.green("✓")} created ${result.name} from ${result.template}`);
272
+ for (const f of result.files) {
273
+ await writeLine(ctx, ` ${pc.dim(f)}`);
274
+ }
275
+ await writeLine(ctx, "");
276
+ await writeLine(ctx, "Next steps:");
277
+ await writeLine(ctx, ` cd ${result.name}`);
278
+ await writeLine(ctx, " bunx percher push");
279
+ });
280
+ cli
281
+ .command("preview <action> [deployId]", "Manage preview deploys (promote | discard)")
282
+ .option("--app <name>", "App name (overrides percher.toml)")
283
+ .action(async (action, deployId, options) => {
284
+ const ctx = ctxOverride ?? (await createCliContext());
285
+ const appRef = options.app ?? core.readPercherTomlAppName(ctx.cwd);
286
+ if (!appRef)
287
+ throw new Error("App name required. Use --app or run from a project directory.");
288
+ if (action === "promote") {
289
+ if (!deployId)
290
+ throw new Error("Deploy ID required. Usage: percher preview promote <id>");
291
+ const result = await ctx.client.apps.promotePreview(appRef, deployId);
292
+ await writeLine(ctx, `${pc.green("✓")} Preview promoted to live. Status: ${result.status}`);
293
+ }
294
+ else if (action === "discard") {
295
+ if (!deployId)
296
+ throw new Error("Deploy ID required. Usage: percher preview discard <id>");
297
+ await ctx.client.apps.discardPreview(appRef, deployId);
298
+ await writeLine(ctx, `${pc.green("✓")} Preview discarded.`);
299
+ }
300
+ else {
301
+ throw new Error(`Unknown preview action "${action}". Use promote | discard.`);
302
+ }
303
+ });
304
+ cli
305
+ .command("domains <action> [domain]", "Manage custom domains (add | verify | list | remove)")
306
+ .option("--app <name>", "App name (overrides percher.toml)")
307
+ .action(async (action, domain, options) => {
308
+ const ctx = ctxOverride ?? (await createCliContext());
309
+ if (action === "add") {
310
+ if (!domain)
311
+ throw new Error("Domain is required. Usage: percher domains add <domain>");
312
+ const result = await core.domainAdd(ctx, { app: options.app, domain });
313
+ await writeLine(ctx, `${pc.green("✓")} Domain ${result.domain} added.`);
314
+ await writeLine(ctx, "");
315
+ await writeLine(ctx, "Add these DNS records:");
316
+ await writeLine(ctx, ` TXT ${result.dnsInstructions.txt.name} ${result.dnsInstructions.txt.value}`);
317
+ await writeLine(ctx, ` CNAME ${result.domain} ${result.dnsInstructions.cname.value}`);
318
+ if (result.dnsInstructions.a) {
319
+ await writeLine(ctx, ` A ${result.domain} ${result.dnsInstructions.a.values.join(", ")}`);
320
+ }
321
+ await writeLine(ctx, "");
322
+ await writeLine(ctx, "Then run:");
323
+ await writeLine(ctx, ` percher domains verify ${result.domain}${options.app ? ` --app ${options.app}` : ""}`);
324
+ }
325
+ else if (action === "verify") {
326
+ if (!domain)
327
+ throw new Error("Domain is required. Usage: percher domains verify <domain>");
328
+ const result = await core.domainVerify(ctx, { app: options.app, domain });
329
+ if (result.status === "verified") {
330
+ await writeLine(ctx, `${pc.green("✓")} Domain verified. ${result.domain} is now live.`);
331
+ }
332
+ else {
333
+ await writeLine(ctx, `${pc.yellow("!")} ${result.domain}: ${result.failureReason}`);
334
+ }
335
+ }
336
+ else if (action === "list") {
337
+ const list = await core.domainList(ctx, { app: options.app });
338
+ if (list.length === 0) {
339
+ await writeLine(ctx, "No custom domains.");
340
+ }
341
+ else {
342
+ for (const d of list) {
343
+ await writeLine(ctx, `${d.domain.padEnd(40)} ${d.status}`);
344
+ }
345
+ }
346
+ }
347
+ else if (action === "remove") {
348
+ if (!domain)
349
+ throw new Error("Domain is required. Usage: percher domains remove <domain>");
350
+ await core.domainRemove(ctx, { app: options.app, domain });
351
+ await writeLine(ctx, `${pc.green("✓")} Domain removed.`);
352
+ }
353
+ else {
354
+ throw new Error(`Unknown domains action "${action}". Use add | verify | list | remove.`);
355
+ }
356
+ });
357
+ cli
358
+ .command("resume [app]", "Resume an app suspended for inactivity")
359
+ .action(async (app) => {
360
+ const ctx = ctxOverride ?? (await createCliContext());
361
+ const result = await core.resume(ctx, { app });
362
+ await writeLine(ctx, `${pc.green("✓")} ${result.message}`);
363
+ });
364
+ cli.command("whoami", "Show the signed-in user").action(async () => {
365
+ const ctx = ctxOverride ?? (await createCliContext());
366
+ const me = await core.whoami(ctx);
367
+ await writeLine(ctx, `Signed in as ${me.email} (${me.userId})`);
368
+ });
369
+ cli.help();
370
+ cli.version(VERSION);
371
+ try {
372
+ cli.parse(["percher", "percher", ...argv], { run: false });
373
+ await cli.runMatchedCommand();
374
+ return 0;
375
+ }
376
+ catch (err) {
377
+ // Doctor prints its own output — just exit 1 without extra error message
378
+ if (err instanceof DoctorFailedError)
379
+ return 1;
380
+ const ctx = ctxOverride ?? (await createCliContext());
381
+ await renderError(ctx.stderr, err);
382
+ return 1;
383
+ }
384
+ }
385
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/open.d.ts ADDED
@@ -0,0 +1,2 @@
1
+ export declare function openUrl(url: string): Promise<void>;
2
+ //# sourceMappingURL=open.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"open.d.ts","sourceRoot":"","sources":["../src/open.ts"],"names":[],"mappings":"AAEA,wBAAsB,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAUxD"}
package/dist/open.js ADDED
@@ -0,0 +1,16 @@
1
+ import { spawn } from "node:child_process";
2
+ export async function openUrl(url) {
3
+ const platform = process.platform;
4
+ try {
5
+ if (platform === "darwin")
6
+ spawn("open", [url], { detached: true, stdio: "ignore" }).unref();
7
+ else if (platform === "win32")
8
+ spawn("cmd", ["/c", "start", "", url], { detached: true, stdio: "ignore" }).unref();
9
+ else
10
+ spawn("xdg-open", [url], { detached: true, stdio: "ignore" }).unref();
11
+ }
12
+ catch {
13
+ // Silently swallow — the caller should have printed the URL already.
14
+ }
15
+ }
16
+ //# sourceMappingURL=open.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"open.js","sourceRoot":"","sources":["../src/open.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAE3C,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,GAAW;IACvC,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;IAClC,IAAI,CAAC;QACH,IAAI,QAAQ,KAAK,QAAQ;YAAE,KAAK,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC;aACxF,IAAI,QAAQ,KAAK,OAAO;YAC3B,KAAK,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC;;YACjF,KAAK,CAAC,UAAU,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC;IAC7E,CAAC;IAAC,MAAM,CAAC;QACP,qEAAqE;IACvE,CAAC;AACH,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare function renderError(stderr: WritableStream<Uint8Array>, error: unknown): Promise<void>;
2
+ //# sourceMappingURL=output.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"output.d.ts","sourceRoot":"","sources":["../src/output.ts"],"names":[],"mappings":"AAKA,wBAAsB,WAAW,CAC/B,MAAM,EAAE,cAAc,CAAC,UAAU,CAAC,EAClC,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,IAAI,CAAC,CAgCf"}
package/dist/output.js ADDED
@@ -0,0 +1,44 @@
1
+ import { PercherApiError } from "@percher/client";
2
+ import { PercherCoreError } from "@percher/core";
3
+ import { PercherTomlError } from "@percher/toml";
4
+ import pc from "picocolors";
5
+ export async function renderError(stderr, error) {
6
+ const writer = stderr.getWriter();
7
+ const encoder = new TextEncoder();
8
+ const lines = [];
9
+ if (error instanceof PercherTomlError) {
10
+ lines.push(`${pc.red(`error (${error.code}):`)} ${error.message}`);
11
+ if (error.tomlLine !== undefined) {
12
+ lines.push(pc.dim(` at percher.toml line ${error.tomlLine}`));
13
+ }
14
+ for (const issue of error.issues ?? []) {
15
+ lines.push(`${pc.dim(" · ") + pc.yellow(issue.path.join("."))}: ${issue.message}`);
16
+ }
17
+ }
18
+ else if (error instanceof PercherApiError) {
19
+ lines.push(`${pc.red("error:")} ${error.message}`);
20
+ lines.push(pc.dim(` ${error.code} (HTTP ${error.status})`));
21
+ if (error.requestId)
22
+ lines.push(pc.dim(` request: ${error.requestId}`));
23
+ }
24
+ else if (error instanceof PercherCoreError) {
25
+ lines.push(`${pc.red(`error (${error.code}):`)} ${error.message}`);
26
+ if (error.hint)
27
+ lines.push(pc.dim(` ${error.hint}`));
28
+ }
29
+ else if (error instanceof Error) {
30
+ lines.push(`${pc.red("unexpected error:")} ${error.message}`);
31
+ if (error.stack)
32
+ lines.push(pc.dim(error.stack.split("\n").slice(1, 4).join("\n")));
33
+ }
34
+ else {
35
+ lines.push(`${pc.red("unexpected error:")} ${String(error)}`);
36
+ }
37
+ try {
38
+ await writer.write(encoder.encode(`${lines.join("\n")}\n`));
39
+ }
40
+ finally {
41
+ writer.releaseLock();
42
+ }
43
+ }
44
+ //# sourceMappingURL=output.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"output.js","sourceRoot":"","sources":["../src/output.ts"],"names":[],"mappings":"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"}
package/dist/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "percher",
3
- "version": "0.5.2",
3
+ "version": "0.5.3",
4
4
  "description": "CLI for the Percher hosting platform — publish apps with one command",
5
5
  "type": "module",
6
6
  "bin": {
@@ -0,0 +1,4 @@
1
+ export declare function prompt(question: string, options?: {
2
+ default?: string;
3
+ }): Promise<string>;
4
+ //# sourceMappingURL=prompt.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prompt.d.ts","sourceRoot":"","sources":["../src/prompt.ts"],"names":[],"mappings":"AAGA,wBAAsB,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;IAAE,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAS9F"}
package/dist/prompt.js ADDED
@@ -0,0 +1,14 @@
1
+ import { stdin as input, stdout as output } from "node:process";
2
+ import { createInterface } from "node:readline/promises";
3
+ export async function prompt(question, options) {
4
+ const rl = createInterface({ input, output });
5
+ try {
6
+ const suffix = options?.default ? ` [${options.default}]` : "";
7
+ const answer = await rl.question(`${question}${suffix} `);
8
+ return answer.trim() || options?.default || "";
9
+ }
10
+ finally {
11
+ rl.close();
12
+ }
13
+ }
14
+ //# sourceMappingURL=prompt.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prompt.js","sourceRoot":"","sources":["../src/prompt.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,IAAI,KAAK,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,cAAc,CAAC;AAChE,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAEzD,MAAM,CAAC,KAAK,UAAU,MAAM,CAAC,QAAgB,EAAE,OAA8B;IAC3E,MAAM,EAAE,GAAG,eAAe,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;IAC9C,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/D,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,GAAG,QAAQ,GAAG,MAAM,GAAG,CAAC,CAAC;QAC1D,OAAO,MAAM,CAAC,IAAI,EAAE,IAAI,OAAO,EAAE,OAAO,IAAI,EAAE,CAAC;IACjD,CAAC;YAAS,CAAC;QACT,EAAE,CAAC,KAAK,EAAE,CAAC;IACb,CAAC;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"apps.d.ts","sourceRoot":"","sources":["../../../src/commands/apps.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAE5D,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AA0B/B;;;;;GAKG;AACH,wBAAsB,mBAAmB,CACvC,GAAG,EAAE,OAAO,EACZ,MAAM,EAAE,aAAa,EACrB,OAAO,GAAE;IAAE,OAAO,CAAC,EAAE,OAAO,CAAA;CAAO,GAClC,OAAO,CAAC,IAAI,CAAC,CA0Qf;AAED,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,GAAG,IAAI,CA0fjE"}
1
+ {"version":3,"file":"apps.d.ts","sourceRoot":"","sources":["../../../src/commands/apps.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAE5D,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AA0B/B;;;;;GAKG;AACH,wBAAsB,mBAAmB,CACvC,GAAG,EAAE,OAAO,EACZ,MAAM,EAAE,aAAa,EACrB,OAAO,GAAE;IAAE,OAAO,CAAC,EAAE,OAAO,CAAA;CAAO,GAClC,OAAO,CAAC,IAAI,CAAC,CA0Qf;AAED,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,GAAG,IAAI,CA8gBjE"}
@@ -639,6 +639,21 @@ export function registerAppsCommands(cli, ctx) {
639
639
  // is what humans should read when there's any divergence
640
640
  // between the per-check fails and the overall verdict.
641
641
  await writeLine(ctx, result.summary);
642
+ // FUTURE25 Fas 3 — "which deploy broke the app?".
643
+ if (result.suspectDeploy) {
644
+ const s = result.suspectDeploy;
645
+ const head = (s.commitSha ?? s.deployId).slice(0, 10);
646
+ await writeLine(ctx, "");
647
+ await writeLine(ctx, pc.bold(`Likely broken by a deploy (${s.confidence} confidence):`));
648
+ await writeLine(ctx, ` Suspect: ${head}`);
649
+ if (s.lastHealthyCommitSha) {
650
+ const base = s.lastHealthyCommitSha.slice(0, 10);
651
+ await writeLine(ctx, ` Last working: ${base}`);
652
+ await writeLine(ctx, pc.dim(` See what changed: percher diff ${base} ${head}${app ? ` --app ${app}` : ""}`));
653
+ }
654
+ for (const e of s.evidence)
655
+ await writeLine(ctx, pc.dim(` · ${e}`));
656
+ }
642
657
  }
643
658
  // Signal non-zero exit for CI/agent use. Codex round 2 fix on
644
659
  // Phase 2a: the previous `result.failed > 0` gate caused
@@ -1 +1 @@
1
- {"version":3,"file":"apps.js","sourceRoot":"","sources":["../../../src/commands/apps.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"apps.js","sourceRoot":"","sources":["../../../src/commands/apps.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"deploys.d.ts","sourceRoot":"","sources":["../../../src/commands/deploys.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAE7C,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAW/B,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI,CAyRpF"}
1
+ {"version":3,"file":"deploys.d.ts","sourceRoot":"","sources":["../../../src/commands/deploys.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAE7C,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAW/B,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI,CA6UpF"}
@@ -177,7 +177,44 @@ export function registerDeploysCommands(cli, ctx, argv) {
177
177
  // from the commit message so the output is one row per
178
178
  // version, no blank gaps.
179
179
  const message = v.message.split("\n")[0]?.trim() ?? "";
180
- await writeLine(ctx, `${v.sha} ${v.timestamp} ${message}`);
180
+ // FUTURE25 Fas 1 — surface the deploy channel (how it was triggered).
181
+ const channelLabels = {
182
+ cli: "CLI",
183
+ mcp: "MCP",
184
+ dashboard: "Dashboard",
185
+ github: "GitHub",
186
+ "forgejo-webhook": "Forgejo",
187
+ };
188
+ const label = v.channel ? (channelLabels[v.channel] ?? v.channel) : null;
189
+ const suffix = label ? ` · via ${label}` : "";
190
+ await writeLine(ctx, `${v.sha} ${v.timestamp} ${message}${suffix}`);
191
+ }
192
+ });
193
+ // FUTURE25 Fas 2 — file diff between two deploy versions.
194
+ cli
195
+ .command("diff [base] [head]", "Show what changed between two deploy versions")
196
+ .option("--app <name>", "App name (overrides percher.toml)")
197
+ .option("--patch", "Include the unified diff per file (owner-only)")
198
+ .action(async (base, head, options) => {
199
+ const result = await core.diff(ctx, {
200
+ app: options.app,
201
+ base,
202
+ head,
203
+ patch: options.patch,
204
+ });
205
+ const { summary, files } = result;
206
+ await writeLine(ctx, `${summary.filesChanged} file${summary.filesChanged === 1 ? "" : "s"} changed · ${pc.green(`+${summary.additions}`)} ${pc.red(`−${summary.deletions}`)} (${result.base.slice(0, 10)} → ${result.head.slice(0, 10)})`);
207
+ for (const f of files) {
208
+ const stat = f.binary
209
+ ? pc.dim("binary")
210
+ : `${pc.green(`+${f.additions}`)} ${pc.red(`−${f.deletions}`)}`;
211
+ await writeLine(ctx, ` ${f.status} ${f.path} ${stat}${f.truncated ? pc.dim(" (truncated)") : ""}`);
212
+ if (options.patch && f.patch) {
213
+ await writeLine(ctx, f.patch.replace(/\n$/, ""));
214
+ }
215
+ }
216
+ if (result.truncated) {
217
+ await writeLine(ctx, pc.dim("… some patches omitted (response size limit)"));
181
218
  }
182
219
  });
183
220
  cli
@@ -1 +1 @@
1
- {"version":3,"file":"deploys.js","sourceRoot":"","sources":["../../../src/commands/deploys.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"deploys.js","sourceRoot":"","sources":["../../../src/commands/deploys.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,IAAI,MAAM,eAAe,CAAC;AAEtC,OAAO,EAAE,MAAM,YAAY,CAAC;AAC5B,OAAO,EACL,iBAAiB,EACjB,qBAAqB,EACrB,YAAY,EACZ,iBAAiB,EACjB,eAAe,EACf,SAAS,GACV,MAAM,cAAc,CAAC;AAEtB,MAAM,UAAU,uBAAuB,CAAC,GAAQ,EAAE,GAAY,EAAE,IAAc;IAC5E,GAAG;QACD,mEAAmE;QACnE,kEAAkE;QAClE,+DAA+D;QAC/D,kEAAkE;QAClE,mEAAmE;QACnE,oDAAoD;SACnD,OAAO,CACN,yBAAyB,EACzB,6DAA6D,CAC9D;SACA,MAAM,CAAC,aAAa,EAAE,mDAAmD,CAAC;QAC3E,mEAAmE;QACnE,oEAAoE;QACpE,6CAA6C;SAC5C,MAAM,CAAC,cAAc,EAAE,2DAA2D,CAAC;SACnF,MAAM,CAAC,iBAAiB,EAAE,yDAAyD,CAAC;SACpF,MAAM,CAAC,KAAK,EAAE,GAAuB,EAAE,KAAe,EAAE,OAA2B,EAAE,EAAE;QACtF,uEAAuE;QACvE,mEAAmE;QACnE,mEAAmE;QACnE,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;YACtB,kEAAkE;YAClE,8DAA8D;YAC9D,+DAA+D;YAC/D,2DAA2D;YAC3D,8DAA8D;YAC9D,aAAa;YACb,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;YACpC,MAAM,EAAE,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YACnF,MAAM,iBAAiB,CAAC,GAAG,EAAE;gBAC3B,EAAE;gBACF,iEAAiE;gBACjE,+DAA+D;gBAC/D,iEAAiE;gBACjE,6BAA6B;gBAC7B,GAAG,EAAG,OAAmC,CAAC,GAAyB;gBACnE,YAAY,EAAE,OAAO,CAAE,OAAmC,CAAC,YAAY,CAAC;aACzE,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QAED,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC7E,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,GAAG,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC;QACzD,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtB,MAAM,SAAS,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC;YAChD,OAAO;QACT,CAAC;QACD,MAAM,SAAS,CACb,GAAG,EACH,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CACtH,CAAC;QACF,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;YACrB,MAAM,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAC3B,MAAM,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YACnC,MAAM,OAAO,GAAG,qBAAqB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAC9D,MAAM,GAAG,GAAG,CAAC,CAAC,YAAY;gBACxB,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,GAAG,CAAC;gBACtD,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAChB,MAAM,OAAO,GACX,CAAC,CAAC,MAAM,KAAK,MAAM;gBACjB,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC;gBAClB,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,QAAQ;oBACrB,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC;oBAChB,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YAC1B,MAAM,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,OAAO,KAAK,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC;QAChF,CAAC;IACH,CAAC,CAAC,CAAC;IAEL,GAAG;SACA,OAAO,CAAC,sBAAsB,EAAE,4CAA4C,CAAC;SAC7E,MAAM,CAAC,cAAc,EAAE,4CAA4C,CAAC;SACpE,MAAM,CAAC,iBAAiB,EAAE,0CAA0C,CAAC;SACrE,MAAM,CAAC,KAAK,EAAE,EAAsB,EAAE,OAAiD,EAAE,EAAE;QAC1F,iEAAiE;QACjE,+DAA+D;QAC/D,6DAA6D;QAC7D,8DAA8D;QAC9D,MAAM,iBAAiB,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,YAAY,EAAE,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;IAC7F,CAAC,CAAC,CAAC;IAEL,GAAG;SACA,OAAO,CAAC,sBAAsB,EAAE,iCAAiC,CAAC;SAClE,MAAM,CAAC,KAAK,EAAE,GAAW,EAAE,GAAuB,EAAE,EAAE;QACrD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC;QACjE,MAAM,SAAS,CACb,GAAG,EACH,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,mBAAmB,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,MAAM,CAAC,MAAM,GAAG,CACjF,CAAC;IACJ,CAAC,CAAC,CAAC;IAEL,GAAG;SACA,OAAO,CAAC,sBAAsB,EAAE,4DAA4D,CAAC;SAC7F,MAAM,CAAC,cAAc,EAAE,8CAA8C,CAAC;SACtE,MAAM,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE;QAClC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE;YACvC,GAAG,EAAE,OAAO,CAAC,GAAG;YAChB,QAAQ;SACT,CAAC,CAAC;QACH,IAAI,MAAM,CAAC,MAAM,KAAK,aAAa,EAAE,CAAC;YACpC,MAAM,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,oCAAoC,CAAC,CAAC;YACzE,MAAM,IAAI,eAAe,EAAE,CAAC;QAC9B,CAAC;QACD,IAAI,MAAM,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;YAC/B,MAAM,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,KAAK,EAAE,KAAK,IAAI,kBAAkB,EAAE,CAAC,CAAC;YACpF,IAAI,MAAM,CAAC,KAAK,EAAE,WAAW,EAAE,CAAC;gBAC9B,MAAM,SAAS,CAAC,GAAG,EAAE,KAAK,MAAM,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;YACxD,CAAC;YACD,IAAI,MAAM,CAAC,KAAK,EAAE,UAAU,EAAE,CAAC;gBAC7B,MAAM,SAAS,CAAC,GAAG,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;YAC/D,CAAC;YACD,MAAM,IAAI,eAAe,EAAE,CAAC;QAC9B,CAAC;QACD,MAAM,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;QAC3D,IAAI,MAAM,CAAC,iBAAiB,IAAI,MAAM,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpE,MAAM,SAAS,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YACzB,MAAM,SAAS,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC,CAAC;YACvD,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,iBAAiB,EAAE,CAAC;gBACzC,MAAM,SAAS,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;YACjC,CAAC;YACD,MAAM,SAAS,CACb,GAAG,EACH,EAAE,CAAC,GAAG,CACJ,+HAA+H,CAChI,CACF,CAAC;QACJ,CAAC;IACH,CAAC,CAAC,CAAC;IAEL,GAAG;SACA,OAAO,CAAC,YAAY,EAAE,yBAAyB,CAAC;SAChD,MAAM,CAAC,YAAY,EAAE,kCAAkC,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC;SAC5E,MAAM,CAAC,aAAa,EAAE,wBAAwB,CAAC;SAC/C,MAAM,CACL,oBAAoB,EACpB,+EAA+E,CAChF;SACA,MAAM,CAAC,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE;QAC7B,oEAAoE;QACpE,iEAAiE;QACjE,sDAAsD;QACtD,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;YAChC,MAAM,QAAQ,GACZ,OAAO,OAAO,CAAC,KAAK,KAAK,QAAQ,IAAI,OAAO,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;YAC5F,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE;gBAC5C,GAAG;gBACH,EAAE,EAAE,QAAQ;gBACZ,YAAY,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI;aAC1C,CAAC,CAAC;YACH,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAC;YACpC,MAAM,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC;YAC9D,MAAM,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAChF,MAAM,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,qBAAqB,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;YAC5F,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC;gBACxB,MAAM,SAAS,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;gBACzB,MAAM,SAAS,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;gBAChD,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;oBACnD,MAAM,SAAS,CAAC,GAAG,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC;gBACpC,CAAC;YACH,CAAC;YACD,IAAI,QAAQ,EAAE,CAAC;gBACb,MAAM,SAAS,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;gBACzB,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBACnC,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;gBACxD,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC;gBACjC,MAAM,MAAM,GACV,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM;oBACxB,CAAC,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,SAAS,IAAI,CAAC,MAAM,OAAO,KAAK,CAAC,MAAM,SAAS,CAAC,EAAE;oBACvF,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;gBAC3B,MAAM,SAAS,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;gBAC7B,KAAK,MAAM,IAAI,IAAI,IAAI,EAAE,CAAC;oBACxB,MAAM,SAAS,CAAC,GAAG,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC;gBACpC,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,MAAM,SAAS,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAC,CAAC;YAC3E,CAAC;YACD,OAAO;QACT,CAAC;QACD,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;YACnB,GAAG;YACH,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS;YACrD,MAAM,EAAE,OAAO,CAAC,MAAM,KAAK,KAAK;SACjC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEL,GAAG;SACA,OAAO,CAAC,gBAAgB,EAAE,mCAAmC,CAAC;SAC9D,MAAM,CAAC,KAAK,EAAE,GAAuB,EAAE,EAAE;QACxC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;QAC/C,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;YACrB,uDAAuD;YACvD,yDAAyD;YACzD,yDAAyD;YACzD,mDAAmD;YACnD,uDAAuD;YACvD,sDAAsD;YACtD,yDAAyD;YACzD,uDAAuD;YACvD,0BAA0B;YAC1B,MAAM,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;YACvD,sEAAsE;YACtE,MAAM,aAAa,GAA2B;gBAC5C,GAAG,EAAE,KAAK;gBACV,GAAG,EAAE,KAAK;gBACV,SAAS,EAAE,WAAW;gBACtB,MAAM,EAAE,QAAQ;gBAChB,iBAAiB,EAAE,SAAS;aAC7B,CAAC;YACF,MAAM,KAAK,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;YACzE,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,WAAW,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/C,MAAM,SAAS,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,SAAS,KAAK,OAAO,GAAG,MAAM,EAAE,CAAC,CAAC;QACxE,CAAC;IACH,CAAC,CAAC,CAAC;IAEL,0DAA0D;IAC1D,GAAG;SACA,OAAO,CAAC,oBAAoB,EAAE,+CAA+C,CAAC;SAC9E,MAAM,CAAC,cAAc,EAAE,mCAAmC,CAAC;SAC3D,MAAM,CAAC,SAAS,EAAE,gDAAgD,CAAC;SACnE,MAAM,CACL,KAAK,EACH,IAAwB,EACxB,IAAwB,EACxB,OAA0C,EAC1C,EAAE;QACF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;YAClC,GAAG,EAAE,OAAO,CAAC,GAAG;YAChB,IAAI;YACJ,IAAI;YACJ,KAAK,EAAE,OAAO,CAAC,KAAK;SACrB,CAAC,CAAC;QACH,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC;QAClC,MAAM,SAAS,CACb,GAAG,EACH,GAAG,OAAO,CAAC,YAAY,QAAQ,OAAO,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,cAAc,EAAE,CAAC,KAAK,CACxF,IAAI,OAAO,CAAC,SAAS,EAAE,CACxB,IAAI,EAAE,CAAC,GAAG,CAAC,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC,MAAM,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CACpG,CAAC;QACF,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;YACtB,MAAM,IAAI,GAAG,CAAC,CAAC,MAAM;gBACnB,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC;gBAClB,CAAC,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,CAAC,EAAE,CAAC;YAClE,MAAM,SAAS,CACb,GAAG,EACH,KAAK,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,IAAI,KAAK,IAAI,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAChF,CAAC;YACF,IAAI,OAAO,CAAC,KAAK,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC;gBAC7B,MAAM,SAAS,CAAC,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC;YACnD,CAAC;QACH,CAAC;QACD,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;YACrB,MAAM,SAAS,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,8CAA8C,CAAC,CAAC,CAAC;QAC/E,CAAC;IACH,CAAC,CACF,CAAC;IAEJ,GAAG;SACA,OAAO,CACN,+BAA+B,EAC/B,iGAAiG,CAClG;SACA,MAAM,CAAC,cAAc,EAAE,mCAAmC,CAAC;SAC3D,MAAM,CACL,KAAK,EACH,MAAc,EACd,GAAuB,EACvB,IAAwB,EACxB,OAAyB,EACzB,EAAE;QACF,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;YACxB,MAAM,gBAAgB,CAAC,GAAG,EAAE,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC;YAC/C,OAAO;QACT,CAAC;QAED,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,IAAI,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACnE,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CAAC,+DAA+D,CAAC,CAAC;QACnF,CAAC;QACD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,IAAI,CAAC,GAAG;gBAAE,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAC;YACrF,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;YACjE,MAAM,SAAS,CACb,GAAG,EACH,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,sCAAsC,MAAM,CAAC,MAAM,EAAE,CACtE,CAAC;QACJ,CAAC;aAAM,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YAChC,IAAI,CAAC,GAAG;gBAAE,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAC;YACrF,MAAM,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;YAClD,MAAM,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;QAC9D,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,KAAK,CAAC,2BAA2B,MAAM,oCAAoC,CAAC,CAAC;QACzF,CAAC;IACH,CAAC,CACF,CAAC;IAEJ,KAAK,UAAU,gBAAgB,CAC7B,GAAuB,EACvB,MAA0B,EAC1B,GAAY;QAEZ,IAAI,GAAG,KAAK,KAAK,EAAE,CAAC;YAClB,IAAI,CAAC,MAAM;gBAAE,MAAM,IAAI,KAAK,CAAC,6DAA6D,CAAC,CAAC;YAC5F,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,GAAG,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,CAAC;YAC5D,MAAM,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,2BAA2B,MAAM,IAAI,CAAC,CAAC;YAC5E,IAAI,CAAC,CAAC,UAAU;gBAAE,MAAM,SAAS,CAAC,GAAG,EAAE,2BAA2B,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;YAC3F,MAAM,SAAS,CACb,GAAG,EACH,CAAC,CAAC,MAAM,KAAK,OAAO;gBAClB,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,+DAA+D,CAAC;gBAC5E,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,oCAAoC,CAAC,CACjD,CAAC;YACF,OAAO;QACT,CAAC;QACD,IAAI,GAAG,KAAK,OAAO,EAAE,CAAC;YACpB,MAAM,IAAI,CAAC,kBAAkB,CAAC,GAAG,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;YAC5C,MAAM,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;YACjE,OAAO;QACT,CAAC;QACD,IAAI,GAAG,KAAK,MAAM,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;YACxC,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,GAAG,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;YACrD,IAAI,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC;gBACrB,MAAM,SAAS,CAAC,GAAG,EAAE,wBAAwB,CAAC,CAAC;gBAC/C,MAAM,SAAS,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,gDAAgD,CAAC,CAAC,CAAC;gBAC/E,OAAO;YACT,CAAC;YACD,MAAM,SAAS,CAAC,GAAG,EAAE,mBAAmB,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;YACpE,IAAI,CAAC,CAAC,UAAU;gBAAE,MAAM,SAAS,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC;YACrE,MAAM,SAAS,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;YAC/C,OAAO;QACT,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,kCAAkC,GAAG,qCAAqC,CAAC,CAAC;IAC9F,CAAC;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"export.d.ts","sourceRoot":"","sources":["../../../src/commands/export.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAE7C,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAI/B,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,GAAG,IAAI,CAqBnE"}
1
+ {"version":3,"file":"export.d.ts","sourceRoot":"","sources":["../../../src/commands/export.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAE7C,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAI/B,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,GAAG,IAAI,CAkCnE"}
@@ -4,8 +4,15 @@ import { writeLine } from "../cli-utils";
4
4
  export function registerExportCommands(cli, ctx) {
5
5
  cli
6
6
  .command("export [app]", "Download an export bundle for an app (no secrets)")
7
- .option("--out <path>", "Where to write the .tar.gz (defaults to ./{name}-{date}.tar.gz)")
7
+ .option("--out <path>", "Where to write the file (defaults to ./{name}-{date}.tar.gz)")
8
+ .option("--git", "Export the whole deploy history as a git bundle (.bundle) — re-clone with `git clone`")
8
9
  .action(async (app, options) => {
10
+ if (options.git) {
11
+ const result = await core.exportGitBundle(ctx, { app, out: options.out });
12
+ await writeLine(ctx, `${pc.green("✓")} exported ${result.appName} deploy history → ${result.outPath} (${(result.bytes / 1024).toFixed(1)} KB)`);
13
+ await writeLine(ctx, pc.dim(`Re-clone it anywhere with: git clone ${result.outPath}`));
14
+ return;
15
+ }
9
16
  const result = await core.exportApp(ctx, {
10
17
  app,
11
18
  out: options.out,
@@ -1 +1 @@
1
- {"version":3,"file":"export.js","sourceRoot":"","sources":["../../../src/commands/export.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,IAAI,MAAM,eAAe,CAAC;AAEtC,OAAO,EAAE,MAAM,YAAY,CAAC;AAC5B,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzC,MAAM,UAAU,sBAAsB,CAAC,GAAQ,EAAE,GAAY;IAC3D,GAAG;SACA,OAAO,CAAC,cAAc,EAAE,mDAAmD,CAAC;SAC5E,MAAM,CAAC,cAAc,EAAE,iEAAiE,CAAC;SACzF,MAAM,CAAC,KAAK,EAAE,GAAuB,EAAE,OAAO,EAAE,EAAE;QACjD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE;YACvC,GAAG;YACH,GAAG,EAAE,OAAO,CAAC,GAAG;YAChB,YAAY,EAAE,KAAK;SACpB,CAAC,CAAC;QACH,MAAM,SAAS,CACb,GAAG,EACH,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,aAAa,MAAM,CAAC,OAAO,MAAM,MAAM,CAAC,OAAO,KAAK,CAAC,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAC3G,CAAC;QACF,MAAM,SAAS,CACb,GAAG,EACH,EAAE,CAAC,GAAG,CACJ,+HAA+H,CAChI,CACF,CAAC;IACJ,CAAC,CAAC,CAAC;AACP,CAAC"}
1
+ {"version":3,"file":"export.js","sourceRoot":"","sources":["../../../src/commands/export.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,IAAI,MAAM,eAAe,CAAC;AAEtC,OAAO,EAAE,MAAM,YAAY,CAAC;AAC5B,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzC,MAAM,UAAU,sBAAsB,CAAC,GAAQ,EAAE,GAAY;IAC3D,GAAG;SACA,OAAO,CAAC,cAAc,EAAE,mDAAmD,CAAC;SAC5E,MAAM,CAAC,cAAc,EAAE,8DAA8D,CAAC;SACtF,MAAM,CACL,OAAO,EACP,uFAAuF,CACxF;SACA,MAAM,CAAC,KAAK,EAAE,GAAuB,EAAE,OAAO,EAAE,EAAE;QACjD,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;YAChB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,GAAG,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;YAC1E,MAAM,SAAS,CACb,GAAG,EACH,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,aAAa,MAAM,CAAC,OAAO,qBAAqB,MAAM,CAAC,OAAO,KAAK,CAAC,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAC1H,CAAC;YACF,MAAM,SAAS,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,wCAAwC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;YACvF,OAAO;QACT,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE;YACvC,GAAG;YACH,GAAG,EAAE,OAAO,CAAC,GAAG;YAChB,YAAY,EAAE,KAAK;SACpB,CAAC,CAAC;QACH,MAAM,SAAS,CACb,GAAG,EACH,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,aAAa,MAAM,CAAC,OAAO,MAAM,MAAM,CAAC,OAAO,KAAK,CAAC,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAC3G,CAAC;QACF,MAAM,SAAS,CACb,GAAG,EACH,EAAE,CAAC,GAAG,CACJ,+HAA+H,CAChI,CACF,CAAC;IACJ,CAAC,CAAC,CAAC;AACP,CAAC"}
@@ -0,0 +1,12 @@
1
+ const server = Bun.serve({
2
+ port: Number(process.env.PORT ?? 3000),
3
+ fetch(req) {
4
+ const url = new URL(req.url);
5
+ if (url.pathname === "/health") {
6
+ return Response.json({ status: "ok" });
7
+ }
8
+ return new Response("Hello from __APP_NAME__!");
9
+ },
10
+ });
11
+
12
+ console.log(`Listening on http://localhost:${server.port}`);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "percher",
3
- "version": "0.5.2",
3
+ "version": "0.5.3",
4
4
  "description": "CLI for the Percher hosting platform — publish apps with one command",
5
5
  "type": "module",
6
6
  "bin": {