@hs-x/cli 0.2.0 → 0.2.2

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 (63) hide show
  1. package/README.md +97 -986
  2. package/dist/account-store.d.ts.map +1 -1
  3. package/dist/account-store.js +9 -1
  4. package/dist/account-store.js.map +1 -1
  5. package/dist/cli/index.d.ts.map +1 -1
  6. package/dist/cli/index.js +14 -8
  7. package/dist/cli/index.js.map +1 -1
  8. package/dist/cloudflare-oauth.d.ts.map +1 -1
  9. package/dist/cloudflare-oauth.js +1 -1
  10. package/dist/cloudflare-oauth.js.map +1 -1
  11. package/dist/commands/account.d.ts.map +1 -1
  12. package/dist/commands/account.js +3 -0
  13. package/dist/commands/account.js.map +1 -1
  14. package/dist/commands/connect.d.ts.map +1 -1
  15. package/dist/commands/connect.js +49 -3
  16. package/dist/commands/connect.js.map +1 -1
  17. package/dist/commands/deploy.d.ts.map +1 -1
  18. package/dist/commands/deploy.js +205 -8
  19. package/dist/commands/deploy.js.map +1 -1
  20. package/dist/commands/dev.d.ts +7 -0
  21. package/dist/commands/dev.d.ts.map +1 -1
  22. package/dist/commands/dev.js +332 -2
  23. package/dist/commands/dev.js.map +1 -1
  24. package/dist/commands/help-command.d.ts +1 -1
  25. package/dist/commands/help-command.d.ts.map +1 -1
  26. package/dist/commands/help-command.js +48 -15
  27. package/dist/commands/help-command.js.map +1 -1
  28. package/dist/commands/init.d.ts +4 -2
  29. package/dist/commands/init.d.ts.map +1 -1
  30. package/dist/commands/init.js +46 -2
  31. package/dist/commands/init.js.map +1 -1
  32. package/dist/commands/link.d.ts +16 -1
  33. package/dist/commands/link.d.ts.map +1 -1
  34. package/dist/commands/link.js +224 -11
  35. package/dist/commands/link.js.map +1 -1
  36. package/dist/commands/migrate.d.ts +16 -0
  37. package/dist/commands/migrate.d.ts.map +1 -1
  38. package/dist/commands/migrate.js +468 -4
  39. package/dist/commands/migrate.js.map +1 -1
  40. package/dist/constants.d.ts +1 -1
  41. package/dist/constants.js +1 -1
  42. package/dist/dev/invoke.d.ts +76 -0
  43. package/dist/dev/invoke.d.ts.map +1 -0
  44. package/dist/dev/invoke.js +227 -0
  45. package/dist/dev/invoke.js.map +1 -0
  46. package/dist/errors-registry.d.ts.map +1 -1
  47. package/dist/errors-registry.js +113 -0
  48. package/dist/errors-registry.js.map +1 -1
  49. package/dist/help.d.ts +10 -0
  50. package/dist/help.d.ts.map +1 -1
  51. package/dist/help.js +209 -3
  52. package/dist/help.js.map +1 -1
  53. package/dist/init/templates.d.ts.map +1 -1
  54. package/dist/init/templates.js +27 -8
  55. package/dist/init/templates.js.map +1 -1
  56. package/dist/reporter/style.d.ts +1 -0
  57. package/dist/reporter/style.d.ts.map +1 -1
  58. package/dist/reporter/style.js +4 -0
  59. package/dist/reporter/style.js.map +1 -1
  60. package/dist/tenant-state.d.ts.map +1 -1
  61. package/dist/tenant-state.js +63 -10
  62. package/dist/tenant-state.js.map +1 -1
  63. package/package.json +17 -7
@@ -2,8 +2,8 @@ import * as Args from '@effect/cli/Args';
2
2
  import * as Command from '@effect/cli/Command';
3
3
  import * as Options from '@effect/cli/Options';
4
4
  import { FileSystem, Path } from '@effect/platform';
5
- import { generateLegacyCardProject } from '@hs-x/codegen';
6
- import { classifyMigrationInput, validateProject } from '@hs-x/validator';
5
+ import { generateLegacyCardProject, generateMigratedHsxProject, } from '@hs-x/codegen';
6
+ import { classifyMigrationInput, detectMigrationSource, planCutover, validateProject } from '@hs-x/validator';
7
7
  import { Effect, Option } from 'effect';
8
8
  import { cliError, exitWith } from '../cli-error.js';
9
9
  import { accountIdOption, controlPlaneUrlOption, cwdOption, jsonOption, runHandler, userIdOption, } from '../cli/kit.js';
@@ -68,9 +68,15 @@ function isRecord(value) {
68
68
  export function migrateHelpText() {
69
69
  return `hs-x migrate
70
70
 
71
+ Migrate a legacy HubSpot app (2023.2 / 2025.1 / 2025.2) to a 2026.03 HS-X
72
+ project. The generated project is a NET-NEW dupe for testing in \`hs-x dev\`;
73
+ your original app keeps running untouched until cutover.
74
+
71
75
  Commands:
72
- hs-x migrate inspect <path> [--json] Classify a legacy migration input
73
- hs-x migrate report <path> [--json] Summarize migration readiness
76
+ hs-x migrate run [path] [--out <dir>] [--json] Detect, classify, and generate the dupe (the one command)
77
+ hs-x migrate cutover [path] [--json] Dry-run plan: what cutover changes on the ORIGINAL app
78
+ hs-x migrate inspect <path> [--json] Classify a legacy migration input
79
+ hs-x migrate report <path> [--json] Summarize migration readiness
74
80
  hs-x migrate cards <path> [--project <dir>] [--json]
75
81
  hs-x migrate swap-cards --app-id <id> --legacy-card-id <id> --replacement-card-id <id> [--helpdesk-card-id <id>] [--local-hubspot] [--json]
76
82
 
@@ -79,6 +85,47 @@ Run hs-x migrate <subcommand> --help for details on each step.
79
85
  }
80
86
  export function migrateSubcommandHelpText(sub) {
81
87
  switch (sub) {
88
+ case 'run':
89
+ return `hs-x migrate run [path]
90
+
91
+ The one-command migration: detect the legacy source (a project tree with
92
+ hsproject.json, or a migration.json input), classify every component, and
93
+ generate a NET-NEW 2026.03 HS-X project (the dupe) from everything portable —
94
+ app cards, serverless functions, webhook subscriptions, workflow actions.
95
+
96
+ Pieces needing a human decision (external receivers, endpoint URL contracts)
97
+ are listed with doc links; they gate CUTOVER, not the dupe — test it in
98
+ \`hs-x dev\` first. Re-run safely after resolving findings.
99
+
100
+ Arguments:
101
+ path Legacy source (default: current directory)
102
+
103
+ Flags:
104
+ --out <dir> Output directory (default: migrated-app)
105
+ --cwd <dir> Resolve paths relative to <dir>
106
+ --json Emit JSON result
107
+
108
+ Exits 1 only when nothing portable could be generated or validation fails.
109
+ `;
110
+ case 'cutover':
111
+ return `hs-x migrate cutover [path]
112
+
113
+ Print the DRY-RUN cutover plan: the ordered steps that migrate the ORIGINAL
114
+ app in place to 2026.03 — keeping its app id, installs, OAuth grants, and
115
+ listing — once the dupe has proven the migration in \`hs-x dev\`.
116
+
117
+ The plan is honest about the one-way door (no downgrade from 2026.03) and
118
+ lists every open decision (external receivers, endpoint contracts,
119
+ marketplace listing) that gates execution. Execution itself never runs
120
+ without an explicit human go; --execute is refused in this build.
121
+
122
+ Arguments:
123
+ path The ORIGINAL legacy source (default: current directory)
124
+
125
+ Flags:
126
+ --json Emit the plan as JSON
127
+ --cwd <dir> Resolve paths relative to <dir>
128
+ `;
82
129
  case 'inspect':
83
130
  return `hs-x migrate inspect <path>
84
131
 
@@ -172,6 +219,24 @@ function readMigrationInputEff(path) {
172
219
  const fs = yield* FileSystem.FileSystem;
173
220
  const pathSvc = yield* Path.Path;
174
221
  const info = yield* fs.stat(path).pipe(Effect.mapError((cause) => cliError('HSX_E_INTERNAL', `Could not read ${path}: ${String(cause)}`)));
222
+ if (info.type === 'Directory') {
223
+ const fixture = pathSvc.join(path, 'migration.json');
224
+ const hasFixture = yield* fs.exists(fixture).pipe(Effect.orElseSucceed(() => false));
225
+ if (!hasFixture) {
226
+ // Locked decision #4 (local-source half): a legacy PROJECT tree —
227
+ // hsproject.json names the platform version; component configs
228
+ // (serverless.json, webhooks/workflow-action hsmeta) assemble into
229
+ // the classifier input via detectMigrationSource.
230
+ const detected = yield* Effect.tryPromise({
231
+ try: () => detectMigrationSource(path),
232
+ catch: (cause) => cliError('HSX_E_INTERNAL', `Could not inspect ${path}: ${String(cause)}`),
233
+ });
234
+ if (detected.entry === 'unknown') {
235
+ return yield* Effect.fail(cliError('HSX_E_INPUT_BAD_FIELD', `${path} has no migration.json and no hsproject.json — nothing to migrate. Point at a legacy project root or a migration input file.`));
236
+ }
237
+ return detected.input;
238
+ }
239
+ }
175
240
  const file = info.type === 'Directory' ? pathSvc.join(path, 'migration.json') : path;
176
241
  const contents = yield* fs.readFileString(file).pipe(Effect.mapError((cause) => cliError('HSX_E_INTERNAL', `Could not read ${file}: ${String(cause)}`)));
177
242
  return yield* Effect.try({
@@ -300,6 +365,104 @@ function migrateCardsBody(opts) {
300
365
  }
301
366
  });
302
367
  }
368
+ /**
369
+ * The one-command flow (launch headline): detect → classify → generate the
370
+ * dupe project from every PORTABLE piece → report skipped pieces and
371
+ * pre-cutover decisions → guided next step into `hs-x dev`. Decision-type
372
+ * findings (forwarding/url-contract) never block dupe generation — the dupe
373
+ * is a testbed (locked decision #2); they gate CUTOVER, which is a separate
374
+ * command. Exit 1 only when nothing portable could be generated.
375
+ */
376
+ function migrateRunBody(opts) {
377
+ return Effect.gen(function* () {
378
+ const cwd = yield* Cwd;
379
+ const pathSvc = yield* Path.Path;
380
+ const reporter = yield* Reporter;
381
+ const root = Option.getOrElse(opts.cwd, () => cwd);
382
+ const sourcePath = pathSvc.resolve(root, opts.path);
383
+ const input = yield* readMigrationInputEff(sourcePath);
384
+ const result = classifyMigrationInput(input);
385
+ let generated;
386
+ let generationError;
387
+ try {
388
+ generated = generateMigratedHsxProject(input);
389
+ }
390
+ catch (error) {
391
+ generationError = error instanceof Error ? error.message : String(error);
392
+ }
393
+ const hasCapabilities = generated !== undefined &&
394
+ Object.keys(generated.files).some((file) => file.startsWith('src/workers/') || file.includes('/cards/'));
395
+ if (!generated || !hasCapabilities) {
396
+ const response = {
397
+ ok: false,
398
+ command: 'migrate run',
399
+ ...result,
400
+ ...(generationError ? { error: generationError } : {}),
401
+ };
402
+ if (opts.json) {
403
+ yield* reporter.raw(`${JSON.stringify(response, null, 2)}\n`);
404
+ }
405
+ else {
406
+ yield* reporter.raw(renderMigrationInspect(response));
407
+ yield* reporter.error('HSX_E_MIGRATE_NOTHING_PORTABLE', generationError ?? 'No portable components detected in this source.', {
408
+ hint: 'Resolve the findings above, then re-run `hs-x migrate run`.',
409
+ docs_url: 'https://hs-x.dev/docs/guides/migrate',
410
+ });
411
+ yield* reporter.done(undefined, 1);
412
+ }
413
+ return yield* Effect.fail(exitWith(1));
414
+ }
415
+ const outputRoot = pathSvc.resolve(root, Option.getOrUndefined(opts.out) ?? 'migrated-app');
416
+ yield* writeProjectFilesEff(outputRoot, generated.files);
417
+ const validation = yield* Effect.promise(() => validateProject({ root: outputRoot }));
418
+ const response = {
419
+ ok: validation.ok,
420
+ command: 'migrate run',
421
+ outputRoot,
422
+ createdFiles: Object.keys(generated.files).sort(),
423
+ inspect: result,
424
+ validation,
425
+ };
426
+ if (opts.json) {
427
+ yield* reporter.raw(`${JSON.stringify(response, null, 2)}\n`);
428
+ }
429
+ else {
430
+ yield* reporter.header(pathSvc.basename(outputRoot));
431
+ const genStep = yield* reporter.step('Generated migrated HS-X project (the dupe)');
432
+ yield* genStep.ok(`${response.createdFiles.length} files ${outputRoot}`);
433
+ if (result.automatable.length > 0) {
434
+ yield* reporter.info(`Ported automatically:`);
435
+ for (const finding of result.automatable)
436
+ yield* reporter.info(` - ${finding.message}`);
437
+ }
438
+ if (result.manualWork.length > 0) {
439
+ yield* reporter.info('Decisions before cutover (the dupe is a testbed; these do not block it):');
440
+ for (const finding of result.manualWork) {
441
+ yield* reporter.info(` - [${finding.code}] ${finding.message} docs: https://hs-x.dev/docs/guides/migrate#${finding.code.replace(/\./g, '-')}`);
442
+ }
443
+ }
444
+ const vStep = yield* reporter.step('Validation');
445
+ if (validation.ok) {
446
+ yield* vStep.ok();
447
+ }
448
+ else {
449
+ yield* vStep.fail(`${validation.diagnostics.length} issue(s)`);
450
+ for (const d of validation.diagnostics) {
451
+ yield* reporter.error(d.code ?? 'diagnostic', d.message ?? JSON.stringify(d));
452
+ }
453
+ }
454
+ yield* reporter.info('');
455
+ yield* reporter.info('Next steps:');
456
+ yield* reporter.info(` cd ${pathSvc.relative(root, outputRoot) || '.'} && bun install`);
457
+ yield* reporter.info(' hs-x dev # test every migrated capability locally');
458
+ yield* reporter.info(' hs-x deploy # upload the dupe as a NET-NEW app when ready');
459
+ yield* reporter.done(validation.ok ? 'Migrated' : 'Failed', validation.ok ? 0 : 1);
460
+ }
461
+ if (!validation.ok) {
462
+ return yield* Effect.fail(exitWith(1));
463
+ }
464
+ });
465
+ }
303
466
  function migrateSwapCardsBody(opts, argv) {
304
467
  return Effect.gen(function* () {
305
468
  const reporter = yield* Reporter;
@@ -387,7 +550,308 @@ function swapCardsArgv(opts) {
387
550
  argv.push('--user-id', opts.userId.value);
388
551
  return argv;
389
552
  }
553
+ const migrateRunPathArg = Args.text({ name: 'path' }).pipe(Args.withDefault('.'));
554
+ const migrateOutOption = Options.text('out').pipe(Options.optional);
555
+ /**
556
+ * `hs-x migrate cutover [path]` — DRY-RUN ONLY today (locked decision #2:
557
+ * cutover never executes against a real app without explicit human go).
558
+ * Prints the ordered plan of what cutover will change on the ORIGINAL app,
559
+ * in place, plus the open decisions gating execution.
560
+ */
561
+ /**
562
+ * Cutover EXECUTE (2026-06-10 authorization): may run ONLY against net-new
563
+ * throwaway apps on the owner's developer account 46993937 — never client
564
+ * apps. 2025.2 sources execute the config-only path (platformVersion bump +
565
+ * in-place re-upload of the ORIGINAL tree, same app id). 2023.2/2025.1
566
+ * (`hs project migrate` semantics) stay gated until that API path is
567
+ * grounded and rehearsed.
568
+ */
569
+ const CUTOVER_REHEARSAL_DEVELOPER_ACCOUNT = '46993937';
570
+ function executeCutover(input) {
571
+ const { opts, sourcePath, reporter } = input;
572
+ return Effect.gen(function* () {
573
+ const fs = yield* FileSystem.FileSystem;
574
+ const developerAccountId = process.env.HSX_HUBSPOT_DEVELOPER_ACCOUNT_ID ?? '';
575
+ if (developerAccountId !== CUTOVER_REHEARSAL_DEVELOPER_ACCOUNT) {
576
+ return yield* Effect.fail(cliError('HSX_E_CUTOVER_EXECUTE_GATED', `Cutover execution is authorized only for throwaway apps on developer account ${CUTOVER_REHEARSAL_DEVELOPER_ACCOUNT} (got ${developerAccountId || 'none'}). Real-app cutover needs an explicit per-app human go.`));
577
+ }
578
+ const detected = yield* Effect.tryPromise({
579
+ try: () => detectMigrationSource(sourcePath),
580
+ catch: (cause) => cliError('HSX_E_INTERNAL', `Could not inspect ${sourcePath}: ${String(cause)}`),
581
+ });
582
+ const classification = classifyMigrationInput(detected.input);
583
+ const plan = planCutover(detected, classification);
584
+ if (plan.openDecisions.length > 0) {
585
+ return yield* Effect.fail(cliError('HSX_E_CUTOVER_EXECUTE_GATED', `${plan.openDecisions.length} open decision(s) gate execution: ${plan.openDecisions
586
+ .map((decision) => decision.code)
587
+ .join(', ')}. Resolve them, re-run the dry-run, then execute.`));
588
+ }
589
+ if (plan.sourceVersion !== '2025.2') {
590
+ return yield* Effect.fail(cliError('HSX_E_CUTOVER_EXECUTE_GATED', `Execute currently supports the 2025.2 config-only path; ${plan.sourceVersion} sources go through \`hs project migrate\` semantics, which stay human-driven until that leg is rehearsed.`));
591
+ }
592
+ // 2025.2 config-only execute: bump platformVersion IN PLACE, re-upload
593
+ // the original tree (same project name => same app id), watch the build.
594
+ const projectConfigPath = `${sourcePath}/hsproject.json`;
595
+ const rawProject = yield* fs
596
+ .readFileString(projectConfigPath)
597
+ .pipe(Effect.mapError(() => cliError('HSX_E_INTERNAL', `Could not read ${projectConfigPath}.`)));
598
+ const projectJson = JSON.parse(rawProject);
599
+ const previousVersion = projectJson.platformVersion;
600
+ projectJson.platformVersion = '2026.03';
601
+ yield* fs
602
+ .writeFileString(projectConfigPath, `${JSON.stringify(projectJson, null, 2)}\n`)
603
+ .pipe(Effect.mapError(() => cliError('HSX_E_INTERNAL', `Could not write ${projectConfigPath}.`)));
604
+ yield* reporter.info(`platformVersion: ${String(previousVersion)} → 2026.03 (in place).`);
605
+ // Re-upload the ORIGINAL tree in place. Raw legacy trees are HubSpot
606
+ // projects, not HS-X projects, so the uploader is HubSpot's own CLI —
607
+ // the exact mechanic rehearsed live 2026-06-10 (hubspot-datatable-demo:
608
+ // build #1 @2025.2 → bump → build #2 @2026.03, same app).
609
+ yield* reporter.info('Uploading the original project in place (hs project upload)…');
610
+ const result = yield* Effect.tryPromise({
611
+ try: async () => {
612
+ const proc = Bun.spawn({
613
+ cmd: ['hs', 'project', 'upload', '--message', 'HS-X cutover: platformVersion → 2026.03'],
614
+ cwd: sourcePath,
615
+ env: { ...process.env },
616
+ stdout: 'pipe',
617
+ stderr: 'pipe',
618
+ });
619
+ const [stdout, stderr, exitCode] = await Promise.all([
620
+ new Response(proc.stdout).text(),
621
+ new Response(proc.stderr).text(),
622
+ proc.exited,
623
+ ]);
624
+ return { stdout, stderr, exitCode };
625
+ },
626
+ catch: (cause) => cliError('HSX_E_CUTOVER_EXECUTE_FAILED', `Could not run \`hs project upload\` (${String(cause)}). Cutover drives HubSpot's own CLI — install it (npm i -g @hubspot/cli) and authenticate (hs accounts auth).`),
627
+ });
628
+ const uploadOutput = `${result.stdout}\n${result.stderr}`;
629
+ const buildLine = /Build #(\d+) succeeded/.exec(uploadOutput) ??
630
+ /Built [\w-]+ #(\d+)/.exec(uploadOutput);
631
+ if (result.exitCode !== 0 || !buildLine) {
632
+ // Roll the version bump back so a failed execute leaves the tree as found.
633
+ projectJson.platformVersion = previousVersion;
634
+ yield* fs
635
+ .writeFileString(projectConfigPath, `${JSON.stringify(projectJson, null, 2)}\n`)
636
+ .pipe(Effect.orDie);
637
+ return yield* Effect.fail(cliError('HSX_E_CUTOVER_EXECUTE_FAILED', `In-place upload did not reach a successful build (exit ${result.exitCode}); platformVersion rolled back. Output tail: ${uploadOutput.slice(-300)}`));
638
+ }
639
+ yield* reporter.info(`HubSpot build #${buildLine[1]} succeeded — original app is on 2026.03.`);
640
+ yield* reporter.info('Next: verify capabilities, then deprecate/delete the dupe.');
641
+ yield* reporter.done('Cutover executed');
642
+ });
643
+ }
644
+ function migrateCutoverBody(opts) {
645
+ return Effect.gen(function* () {
646
+ const cwd = yield* Cwd;
647
+ const pathSvc = yield* Path.Path;
648
+ const reporter = yield* Reporter;
649
+ const root = Option.getOrElse(opts.cwd, () => cwd);
650
+ const sourcePath = pathSvc.resolve(root, opts.path);
651
+ if (opts.execute) {
652
+ return yield* executeCutover({ opts, sourcePath, reporter });
653
+ }
654
+ const detected = yield* Effect.tryPromise({
655
+ try: () => detectMigrationSource(sourcePath),
656
+ catch: (cause) => cliError('HSX_E_INTERNAL', `Could not inspect ${sourcePath}: ${String(cause)}`),
657
+ });
658
+ if (detected.entry === 'unknown') {
659
+ return yield* Effect.fail(cliError('HSX_E_INPUT_BAD_FIELD', `${sourcePath} has no migration.json and no hsproject.json — nothing to plan. Point at the ORIGINAL legacy app's source.`));
660
+ }
661
+ const classification = classifyMigrationInput(detected.input);
662
+ const plan = planCutover(detected, classification);
663
+ if (opts.json) {
664
+ yield* reporter.raw(`${JSON.stringify({ ok: true, command: 'migrate cutover', mode: 'dry-run', ...plan }, null, 2)}\n`);
665
+ return;
666
+ }
667
+ yield* reporter.header(`cutover plan (dry-run) — ${plan.sourceVersion} source`);
668
+ yield* reporter.info('ONE-WAY: the original app cannot downgrade from 2026.03 after cutover.');
669
+ yield* reporter.info('');
670
+ for (const phase of ['preflight', 'in-place', 'post']) {
671
+ const phaseSteps = plan.steps.filter((step) => step.phase === phase);
672
+ if (phaseSteps.length === 0)
673
+ continue;
674
+ yield* reporter.info(`${phase.toUpperCase()}:`);
675
+ for (const step of phaseSteps) {
676
+ yield* reporter.info(` - ${step.title}${step.gatedBy ? ` [gated: ${step.gatedBy}]` : ''}`);
677
+ yield* reporter.info(` ${step.detail}`);
678
+ }
679
+ yield* reporter.info('');
680
+ }
681
+ if (plan.openDecisions.length > 0) {
682
+ yield* reporter.info(`${plan.openDecisions.length} open decision(s) gate execution — resolve them, re-run this plan, then request execution.`);
683
+ }
684
+ else {
685
+ yield* reporter.info('No open decisions. Execution still requires an explicit human go (see LAUNCH-PLAN NEEDS HUMAN).');
686
+ }
687
+ yield* reporter.done('Planned');
688
+ });
689
+ }
690
+ const migrateExecuteOption = Options.boolean('execute').pipe(Options.withDefault(false));
691
+ const migrateCutoverPathArg = Args.text({ name: 'path' }).pipe(Args.withDefault('.'));
692
+ /**
693
+ * `hs-x migrate pull --app-id <id>` — live-app pull (locked decision #4,
694
+ * live half): fetch a UI-configured legacy app's definition via HubSpot
695
+ * APIs (PAK auth) and write the migration.json input the classifier and
696
+ * generator already consume. Endpoints grounded 2026-06-10:
697
+ * cards GET /crm/extensions/cards-dev/2026-03/{appId}; webhooks
698
+ * GET /webhooks/v3/{appId}/settings + /subscriptions; workflow actions
699
+ * GET /automation/v4/actions/{appId}.
700
+ */
701
+ function migratePullBody(opts) {
702
+ return Effect.gen(function* () {
703
+ const cwd = yield* Cwd;
704
+ const pathSvc = yield* Path.Path;
705
+ const fs = yield* FileSystem.FileSystem;
706
+ const reporter = yield* Reporter;
707
+ const root = Option.getOrElse(opts.cwd, () => cwd);
708
+ const personalAccessKey = process.env.HSX_HUBSPOT_PAK;
709
+ const portalId = process.env.HSX_HUBSPOT_DEVELOPER_ACCOUNT_ID;
710
+ if (!personalAccessKey || !portalId) {
711
+ return yield* Effect.fail(cliError('HSX_E_INPUT_MISSING_VALUE', 'Live pull needs HSX_HUBSPOT_PAK and HSX_HUBSPOT_DEVELOPER_ACCOUNT_ID (or `hs-x connect hubspot`).'));
712
+ }
713
+ const pulled = yield* Effect.tryPromise({
714
+ try: async () => {
715
+ const { exchangePersonalAccessKey } = await import('@hs-x/hubspot');
716
+ const { accessToken } = await exchangePersonalAccessKey({
717
+ personalAccessKey,
718
+ portalId: Number(portalId),
719
+ });
720
+ const warnings = [];
721
+ // Legacy developer endpoints (cards-dev, webhooks settings, v4
722
+ // actions) document hapikey auth — the developer API key, not the
723
+ // PAK token. Use it when present; bearer covers the rest.
724
+ const developerApiKey = process.env.HSX_HUBSPOT_DEVELOPER_API_KEY;
725
+ if (!developerApiKey) {
726
+ warnings.push('HSX_HUBSPOT_DEVELOPER_API_KEY not set — legacy dev surfaces (cards, webhooks, actions) often return empty without it (`hs-x connect hubspot --developer-api-key …`).');
727
+ }
728
+ // 403/404 are per-surface facts (app lacks the feature, or the token
729
+ // lacks that scope) — record and keep pulling the other surfaces.
730
+ const get = async (path) => {
731
+ const url = new URL(`https://api.hubapi.com${path}`);
732
+ if (developerApiKey)
733
+ url.searchParams.set('hapikey', developerApiKey);
734
+ const response = await fetch(url, {
735
+ ...(developerApiKey ? {} : { headers: { authorization: `Bearer ${accessToken}` } }),
736
+ });
737
+ if (response.status === 404 || response.status === 403) {
738
+ if (response.status === 403)
739
+ warnings.push(`GET ${path} → 403 (scope or feature not available)`);
740
+ return undefined;
741
+ }
742
+ if (!response.ok) {
743
+ throw new Error(`GET ${path} → ${response.status}`);
744
+ }
745
+ return response.json();
746
+ };
747
+ const [cards, webhookSettings, webhookSubscriptions, actions] = await Promise.all([
748
+ get(`/crm/extensions/cards-dev/2026-03/${opts.appId}`),
749
+ get(`/webhooks/v3/${opts.appId}/settings`),
750
+ get(`/webhooks/v3/${opts.appId}/subscriptions`),
751
+ get(`/automation/v4/actions/${opts.appId}?limit=100`),
752
+ ]);
753
+ return { cards, webhookSettings, webhookSubscriptions, actions, warnings };
754
+ },
755
+ catch: (cause) => cliError('HSX_E_INTERNAL', `Live pull failed: ${cause instanceof Error ? cause.message : String(cause)}`),
756
+ });
757
+ const input = {
758
+ legacyApp: {
759
+ appId: opts.appId,
760
+ name: Option.getOrElse(opts.appName, () => `app-${opts.appId}`),
761
+ portalId,
762
+ },
763
+ };
764
+ const detected = [];
765
+ const cardResults = isRecord(pulled.cards) && Array.isArray(pulled.cards.results)
766
+ ? pulled.cards.results.filter(isRecord)
767
+ : [];
768
+ if (cardResults.length > 0) {
769
+ const card = cardResults[0];
770
+ const title = isRecord(card.title) ? '' : String(card.title ?? '');
771
+ const fetchData = isRecord(card.fetch) ? card.fetch : {};
772
+ input.legacyCard = {
773
+ id: String(card.id ?? ''),
774
+ title: title || String((isRecord(card.display) && card.display.title) ?? 'Migrated card'),
775
+ objectTypes: Array.isArray(fetchData.objectTypes)
776
+ ? fetchData.objectTypes
777
+ .filter(isRecord)
778
+ .map((objectType) => String(objectType.name ?? ''))
779
+ .filter(Boolean)
780
+ : [],
781
+ fetchUrl: String(fetchData.targetUrl ?? ''),
782
+ };
783
+ detected.push(`legacy cards ×${cardResults.length}${cardResults.length > 1 ? ' (first pulled; re-run per card id for the rest)' : ''}`);
784
+ }
785
+ if (isRecord(pulled.webhookSettings) && pulled.webhookSettings.targetUrl) {
786
+ const subscriptionResults = isRecord(pulled.webhookSubscriptions) && Array.isArray(pulled.webhookSubscriptions.results)
787
+ ? pulled.webhookSubscriptions.results.filter(isRecord)
788
+ : [];
789
+ input.webhooks = {
790
+ settings: {
791
+ targetUrl: pulled.webhookSettings.targetUrl,
792
+ ...(isRecord(pulled.webhookSettings.throttling)
793
+ ? { maxConcurrentRequests: pulled.webhookSettings.throttling.maxConcurrentRequests }
794
+ : {}),
795
+ },
796
+ subscriptions: {
797
+ legacyCrmObjects: subscriptionResults.map((subscription) => ({
798
+ subscriptionType: String(subscription.eventType ?? subscription.subscriptionType ?? ''),
799
+ ...(subscription.propertyName ? { propertyName: subscription.propertyName } : {}),
800
+ active: subscription.active !== false,
801
+ })),
802
+ },
803
+ };
804
+ detected.push(`webhooks ×${subscriptionResults.length}`);
805
+ }
806
+ const actionResults = isRecord(pulled.actions) && Array.isArray(pulled.actions.results)
807
+ ? pulled.actions.results.filter(isRecord)
808
+ : [];
809
+ if (actionResults.length > 0) {
810
+ input.workflowActions = actionResults.map((action) => ({
811
+ uid: String(action.id ?? ''),
812
+ actionUrl: String(action.actionUrl ?? ''),
813
+ labels: action.labels ?? {},
814
+ inputFields: action.inputFields ?? [],
815
+ ...(Array.isArray(action.objectTypes) ? { objectTypes: action.objectTypes } : {}),
816
+ ...(Array.isArray(action.functions) && action.functions.length > 0
817
+ ? { functions: action.functions }
818
+ : {}),
819
+ }));
820
+ detected.push(`workflow actions ×${actionResults.length}`);
821
+ }
822
+ const outPath = pathSvc.resolve(root, opts.out);
823
+ yield* fs
824
+ .writeFileString(outPath, `${JSON.stringify(input, null, 2)}\n`)
825
+ .pipe(Effect.mapError(() => cliError('HSX_E_INTERNAL', `Could not write ${outPath}.`)));
826
+ if (opts.json) {
827
+ yield* reporter.raw(`${JSON.stringify({ ok: true, command: 'migrate pull', appId: opts.appId, out: outPath, detected }, null, 2)}\n`);
828
+ return;
829
+ }
830
+ yield* reporter.header(`pulled app ${opts.appId}`);
831
+ for (const warning of pulled.warnings) {
832
+ yield* reporter.info(`note: ${warning}`);
833
+ }
834
+ yield* reporter.info(detected.length > 0 ? `Detected: ${detected.join(', ')}` : 'Nothing portable detected on this app.');
835
+ yield* reporter.info(`Wrote ${outPath} — next: hs-x migrate run ${pathSvc.relative(cwd, outPath) || opts.out}`);
836
+ yield* reporter.done('Pulled');
837
+ });
838
+ }
839
+ const migratePullAppIdOption = Options.text('app-id');
840
+ const migratePullNameOption = Options.text('app-name').pipe(Options.optional);
841
+ const migratePullOutOption = Options.text('out').pipe(Options.withDefault('migration.json'));
842
+ const migratePullCmd = Command.make('pull', {
843
+ appId: migratePullAppIdOption,
844
+ appName: migratePullNameOption,
845
+ out: migratePullOutOption,
846
+ cwd: cwdOption,
847
+ json: jsonOption,
848
+ }, (opts) => runHandler('migrate', { json: opts.json }, migratePullBody(opts)));
849
+ const migrateCutoverCmd = Command.make('cutover', { path: migrateCutoverPathArg, cwd: cwdOption, json: jsonOption, execute: migrateExecuteOption }, (opts) => runHandler('migrate', { json: opts.json }, migrateCutoverBody(opts)));
850
+ const migrateRunCmd = Command.make('run', { path: migrateRunPathArg, out: migrateOutOption, cwd: cwdOption, json: jsonOption }, (opts) => runHandler('migrate', { json: opts.json }, migrateRunBody(opts)));
390
851
  export const migrateCmd = Command.make('migrate').pipe(Command.withSubcommands([
852
+ migrateRunCmd,
853
+ migratePullCmd,
854
+ migrateCutoverCmd,
391
855
  migrateInspectCmd,
392
856
  migrateReportCmd,
393
857
  migrateCardsCmd,
@@ -1 +1 @@
1
- {"version":3,"file":"migrate.js","sourceRoot":"","sources":["../../src/commands/migrate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"migrate.js","sourceRoot":"","sources":["../../src/commands/migrate.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- export declare const CLI_VERSION = "0.2.0";
1
+ export declare const CLI_VERSION = "0.2.2";
2
2
  /** Brand orange (#ff5e1f) as ANSI 24-bit foreground SGR parameters. */
3
3
  export declare const BRAND_ORANGE_SGR = "38;2;255;94;31";
4
4
  //# sourceMappingURL=constants.d.ts.map
package/dist/constants.js CHANGED
@@ -2,7 +2,7 @@
2
2
  // `^${CLI_VERSION}` @hs-x/* dependency ranges. MUST equal package.json's
3
3
  // version (version-sync.test.ts enforces it): @hs-x/cli@0.1.3 shipped
4
4
  // reporting 0.1.0, which read as a stale install.
5
- export const CLI_VERSION = '0.2.0';
5
+ export const CLI_VERSION = '0.2.2';
6
6
  /** Brand orange (#ff5e1f) as ANSI 24-bit foreground SGR parameters. */
7
7
  export const BRAND_ORANGE_SGR = '38;2;255;94;31';
8
8
  //# sourceMappingURL=constants.js.map