@capgo/cli 8.42.2 → 8.43.0

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.
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Detect transport-level failures from supabase-js / fetch when an RPC or HTTP
3
+ * call could not reach the server. Uses categorizeCliError as the single source
4
+ * of truth so network/timeout classification stays aligned with telemetry.
5
+ */
6
+ export declare function isTransientNetworkError(error: unknown): boolean;
@@ -0,0 +1,13 @@
1
+ export declare const TWO_FACTOR_COMPLIANCE_NETWORK_MESSAGE = "Cannot reach Capgo to verify 2FA compliance. Check your network connection and try again.";
2
+ /**
3
+ * User-facing 2FA compliance connectivity failure. Unlike CliUserError, this
4
+ * remains eligible for PostHog `$exception` capture so operational connectivity
5
+ * issues stay visible while the CLI shows a stable recovery message.
6
+ */
7
+ export declare class TwoFactorComplianceNetworkError extends Error {
8
+ constructor(message?: string);
9
+ }
10
+ /** Maps Supabase RPC transport failures to user-facing 2FA compliance errors. */
11
+ export declare function throwTwoFactorComplianceRpcError(error: {
12
+ message?: string;
13
+ }): void;
@@ -1521,6 +1521,7 @@ export type Database = {
1521
1521
  apps_with_cli_onboarding_builds_24h: number;
1522
1522
  apps_with_manual_builds_24h: number;
1523
1523
  apps_with_preview: number;
1524
+ users_with_2fa: number;
1524
1525
  apps_active: number | null;
1525
1526
  average_ltv: number;
1526
1527
  build_avg_seconds_day_android: number;
@@ -1616,6 +1617,7 @@ export type Database = {
1616
1617
  apps_with_cli_onboarding_builds_24h?: number;
1617
1618
  apps_with_manual_builds_24h?: number;
1618
1619
  apps_with_preview?: number;
1620
+ users_with_2fa?: number;
1619
1621
  apps_active?: number | null;
1620
1622
  average_ltv?: number;
1621
1623
  build_avg_seconds_day_android?: number;
@@ -1711,6 +1713,7 @@ export type Database = {
1711
1713
  apps_with_cli_onboarding_builds_24h?: number;
1712
1714
  apps_with_manual_builds_24h?: number;
1713
1715
  apps_with_preview?: number;
1716
+ users_with_2fa?: number;
1714
1717
  apps_active?: number | null;
1715
1718
  average_ltv?: number;
1716
1719
  build_avg_seconds_day_android?: number;
@@ -35,6 +35,8 @@ export declare const UPLOAD_TIMEOUT_ERROR_NAME = "BundleUploadTimeoutError";
35
35
  /** User-facing error when the standard HTTP PUT upload exceeds its wall-clock timeout. */
36
36
  export declare function uploadTimeoutMessage(timeoutMs: number): string;
37
37
  export declare const PACKNAME = "package.json";
38
+ /** Stable PostHog fingerprint for incomplete Capgo server config before Supabase client creation. */
39
+ export declare const CAPGO_SERVER_CONFIG_MISSING_MESSAGE = "Cannot connect to server please try again later";
38
40
  export type ArrayElement<ArrayType extends readonly unknown[]> = ArrayType extends readonly (infer ElementType)[] ? ElementType : never;
39
41
  export type Organization = ArrayElement<Database['public']['Functions']['get_orgs_v7']['Returns']>;
40
42
  export declare const regexSemver: RegExp;
@@ -190,6 +192,7 @@ export declare function readCapgoCliApiErrorPayload(error: unknown): Promise<{
190
192
  error?: string;
191
193
  message?: string;
192
194
  } | null>;
195
+ export declare function formatCapgoCliInvokeError(error: unknown): Promise<string>;
193
196
  /**
194
197
  * Invoke Capgo HTTP APIs formerly reached via supabase.functions.invoke.
195
198
  * Capgo cloud -> hostApi / hostFilesApi. Self-host -> /functions/v1.
@@ -381,7 +384,9 @@ export declare function createSupabaseClient(apikey: string, supaHost?: string,
381
384
  external_url?: string | null;
382
385
  id?: number;
383
386
  key_id?: string | null;
384
- link?: string | null;
387
+ link
388
+ /** Stable PostHog fingerprint for incomplete Capgo server config before Supabase client creation. */
389
+ ?: string | null;
385
390
  manifest?: Database["public"]["CompositeTypes"]["manifest_entry"][] | null;
386
391
  manifest_count?: number;
387
392
  min_update_version?: string | null;
@@ -492,9 +497,7 @@ export declare function createSupabaseClient(apikey: string, supaHost?: string,
492
497
  };
493
498
  Insert: {
494
499
  allow_device_custom_id?: boolean;
495
- allow_preview
496
- /** Tag Type */
497
- ? /** Tag Type */: boolean;
500
+ allow_preview?: boolean;
498
501
  android_store_url?: string | null;
499
502
  app_id: string;
500
503
  build_timeout_seconds?: number;
@@ -1642,6 +1645,7 @@ export declare function createSupabaseClient(apikey: string, supaHost?: string,
1642
1645
  apps_with_cli_onboarding_builds_24h: number;
1643
1646
  apps_with_manual_builds_24h: number;
1644
1647
  apps_with_preview: number;
1648
+ users_with_2fa: number;
1645
1649
  apps_active: number | null;
1646
1650
  average_ltv: number;
1647
1651
  build_avg_seconds_day_android: number;
@@ -1737,6 +1741,7 @@ export declare function createSupabaseClient(apikey: string, supaHost?: string,
1737
1741
  apps_with_cli_onboarding_builds_24h?: number;
1738
1742
  apps_with_manual_builds_24h?: number;
1739
1743
  apps_with_preview?: number;
1744
+ users_with_2fa?: number;
1740
1745
  apps_active?: number | null;
1741
1746
  average_ltv?: number;
1742
1747
  build_avg_seconds_day_android?: number;
@@ -1832,6 +1837,7 @@ export declare function createSupabaseClient(apikey: string, supaHost?: string,
1832
1837
  apps_with_cli_onboarding_builds_24h?: number;
1833
1838
  apps_with_manual_builds_24h?: number;
1834
1839
  apps_with_preview?: number;
1840
+ users_with_2fa?: number;
1835
1841
  apps_active?: number | null;
1836
1842
  average_ltv?: number;
1837
1843
  build_avg_seconds_day_android?: number;
@@ -5944,4 +5950,6 @@ interface PromptAndSyncOptions {
5944
5950
  validateIosUpdater?: boolean;
5945
5951
  packageJsonPath?: string;
5946
5952
  }
5953
+ export type IosUpdaterSyncValidation = ReturnType<typeof validateIosUpdaterSync>;
5954
+ export declare function throwIfIosUpdaterSyncInvalid(syncValidation: IosUpdaterSyncValidation, platformRunner: string, onFailure?: () => void): void;
5947
5955
  export declare function promptAndSyncCapacitor(isInit?: boolean, orgId?: string, apikey?: string, options?: PromptAndSyncOptions): Promise<void>;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@capgo/cli",
3
3
  "type": "module",
4
- "version": "8.42.2",
4
+ "version": "8.43.0",
5
5
  "description": "A CLI to upload to capgo servers",
6
6
  "author": "Martin martin@capgo.app",
7
7
  "license": "Apache 2.0",
@@ -72,7 +72,7 @@
72
72
  "test:regex": "bun test/test-regex-validation.mjs",
73
73
  "test:upload": "bun test/test-upload-validation.mjs",
74
74
  "test:fail-on-incompatible": "bun test/test-fail-on-incompatible.mjs",
75
- "test:native-dependencies": "bun test/test-native-dependencies.mjs",
75
+ "test:native-dependencies": "bun test/test-native-dependencies.mjs && bun test/test-get-remote-dependencies.mjs",
76
76
  "test:package-json-guard": "bun test/test-package-json-guard.mjs",
77
77
  "test:credentials": "bun test/test-credentials.mjs",
78
78
  "test:asc-key-protocol": "bun test/test-asc-key-protocol.mjs",
@@ -109,17 +109,20 @@
109
109
  "test:app-list-output-text": "bun test/test-app-list-output-text.mjs",
110
110
  "test:doctor-analytics": "bun test/test-doctor-analytics.mjs",
111
111
  "test:posthog-exception": "bun test/test-posthog-exception.mjs",
112
+ "test:create-supabase-client": "bun test/test-create-supabase-client.mjs",
112
113
  "test:onboarding-recovery": "bun test/test-onboarding-recovery.mjs",
113
114
  "test:onboarding-progress": "bun test/test-onboarding-progress.mjs",
114
115
  "test:onboarding-run-targets": "bun test/test-onboarding-run-targets.mjs",
115
116
  "test:run-device-command": "bun test/test-run-device-command.mjs",
116
117
  "test:init-app-conflict": "bun test/test-init-app-conflict.mjs",
118
+ "test:channel-add-exists": "bun test/test-channel-add-exists.mjs",
117
119
  "test:wait-log": "bun test/test-wait-log.mjs",
118
120
  "test:init-guardrails": "bun test/test-init-guardrails.mjs",
119
121
  "test:init-replay": "bun test/test-init-replay.mjs",
120
122
  "test:init-telemetry": "bun test/test-init-telemetry.mjs",
121
123
  "test:capacitor-config-target": "bun test/test-capacitor-config-target.mjs",
122
- "test:init-monorepo-targeting": "bun run test:capacitor-config-target && bun test/test-init-monorepo-targeting.mjs",
124
+ "test:cli-user-error-config": "bun test/test-cli-user-error-config.mjs",
125
+ "test:init-monorepo-targeting": "bun run test:capacitor-config-target && bun run test:cli-user-error-config && bun test/test-init-monorepo-targeting.mjs",
123
126
  "test:prompt-preferences": "bun test/test-prompt-preferences.mjs",
124
127
  "test:esm-sdk": "node test/test-sdk-esm.mjs",
125
128
  "test:auth-session": "bun test/test-auth-session.mjs",
@@ -167,7 +170,7 @@
167
170
  "test:android-version": "bun test/test-android-version.mjs",
168
171
  "test:platform-flow-contract": "bun test/test-platform-flow-contract.mjs",
169
172
  "test:tail-engine-shared": "bun test/test-tail-engine-shared.mjs",
170
- "test": "bun run build && bun run test:helper-dce && bun run test:version-detection:setup && bun run test:bundle && bun run test:functional && bun run test:semver && bun run test:auto-bump-version && bun run test:auto-bump-ai-diff && bun run test:version-edge-cases && bun run test:regex && bun run test:upload && bun run test:fail-on-incompatible && bun run test:native-dependencies && bun run test:package-json-guard && bun run test:credentials && bun run test:credentials-validation && bun run test:android-service-account-validation && bun run test:build-zip-filter && bun run test:checksum && bun run test:build-needed && bun run test:ci-prompts && bun run test:ci-secrets && bun run test:android-onboarding-progress && bun run test:onboarding-telemetry && bun run test:v2-event-migration && bun run test:analytics && bun run test:cli-headers && bun run test:authenticated-command-invocation && bun run test:analytics-error-category && bun run test:analytics-org-resolver && bun run test:supabase-perf && bun run test:preview-qr && bun run test:app-set-options && bun run test:mcp-analytics && bun run test:mcp-instructions && bun run test:mcp-live-update-onboarding && bun run test:mcp-stdout-guard && bun run test:mcp-platform-select && bun run test:mcp-explain-scopes && bun run test:mcp-oauth-reopen && bun run test:mcp-broker-oauth && bun run test:mcp-broker-session && bun run test:mcp-credentials-manage && bun run test:mcp-resume-prompt && bun run test:mcp-build-job && bun run test:mcp-build-tools && bun run test:app-created-source && bun run test:app-list-output-text && bun run test:doctor-analytics && bun run test:posthog-exception && bun run test:build-platform-selection && bun run test:builder-project-discovery && bun run test:onboarding-recovery && bun run test:onboarding-progress && bun run test:onboarding-run-targets && bun run test:run-device-command && bun run test:init-monorepo-targeting && bun run test:init-app-conflict && bun run test:wait-log && bun run test:init-guardrails && bun run test:init-replay && bun run test:init-telemetry && bun run test:prompt-preferences && bun run test:esm-sdk && bun run test:mcp && bun run test:mcp-no-key-handshake && bun run test:auth-session && bun run test:version-detection && bun run test:platform-paths && bun run test:project-type-detection && bun run test:payload-split && bun run test:manifest-path-encoding && bun run test:macos-signing && bun run test:asc-key-protocol && bun run test:apple-api-import-helpers && bun run test:apple-api-verify-key && bun run test:bundle-id-detector && bun run test:apple-api-app-list && bun run test:app-verification && bun run test:pbxproj-parser && bun run test:ai-log-capture && bun run test:ai-analyze-flow && bun run test:cicd-failure-help && bun run test:ai-sse-parser && bun run test:ai-render-markdown && bun run test:ai-stream-markdown && bun run test:ai-onboarding-mode && bun run test:ai-fit && bun run test:platform-layout && bun run test:frame-fit && bun run test:onboarding-min-size && bun run test:min-size-gate && bun run test:shell-size-gate && bun run test:build-log-sanitize && bun run test:build-output-viewport && bun run test:diff-viewer-viewport && bun run test:build-complete-exit && bun run test:ai-analyze-stream && bun run test:support-mailto && bun run test:support-redact && bun run test:support-internal-log && bun run test:support-help-menu && bun run test:support-contact && bun run test:support-upload-prompt && bun run test:support-bundle-files && bun run test:self-update && bun run test:update-prompt && bun run test:apple-api-cert-create && bun run test:android-tail-engine && bun run test:android-tail-render && bun run test:android-tail-routing && bun run test:dev-gate-stripped && bun run test:frame-fit-ios-shared && bun run test:ios-confirm-app-id && bun run test:ios-create-new && bun run test:ios-e2e && bun run test:ios-flow-contract && bun run test:ios-import-discovery && bun run test:ios-import-export && bun run test:ios-import-pickers && bun run test:ios-import-recovery && bun run test:ios-recovery && bun run test:ios-resume && bun run test:ios-tail-handoff && bun run test:ios-tui-render && bun run test:p8-error && bun run test:ios-tui-routing && bun run test:ios-updater-sync-validation && bun run test:ios-verify-app && bun run test:ios-marketing-version && bun run test:android-version && bun run test:platform-flow-contract && bun run test:tail-engine-shared && bun run test:prescan && bun run test:android-reporting-api && bun run test:android-app-verification && bun run test:android-rename && bun run test:appflow-auth && bun run test:appflow-api-map && bun run test:appflow-validate && bun run test:appflow-flow && bun run test:appflow-gapfill && bun run test:appflow-engine && bun run test:appflow-tail && bun run test:appflow-fetch && bun run test:appflow-sa-decode && bun run test:app-permission-helper && bun run test:organization-set-api-host && bun run test:trial-warning && bun run test:plan-validation",
173
+ "test": "bun run build && bun run test:helper-dce && bun run test:version-detection:setup && bun run test:bundle && bun run test:functional && bun run test:semver && bun run test:auto-bump-version && bun run test:auto-bump-ai-diff && bun run test:version-edge-cases && bun run test:regex && bun run test:upload && bun run test:fail-on-incompatible && bun run test:native-dependencies && bun run test:package-json-guard && bun run test:credentials && bun run test:credentials-validation && bun run test:android-service-account-validation && bun run test:build-zip-filter && bun run test:checksum && bun run test:build-needed && bun run test:ci-prompts && bun run test:ci-secrets && bun run test:android-onboarding-progress && bun run test:onboarding-telemetry && bun run test:v2-event-migration && bun run test:analytics && bun run test:cli-headers && bun run test:authenticated-command-invocation && bun run test:analytics-error-category && bun run test:analytics-org-resolver && bun run test:supabase-perf && bun run test:preview-qr && bun run test:app-set-options && bun run test:mcp-analytics && bun run test:mcp-instructions && bun run test:mcp-live-update-onboarding && bun run test:mcp-stdout-guard && bun run test:mcp-platform-select && bun run test:mcp-explain-scopes && bun run test:mcp-oauth-reopen && bun run test:mcp-broker-oauth && bun run test:mcp-broker-session && bun run test:mcp-credentials-manage && bun run test:mcp-resume-prompt && bun run test:mcp-build-job && bun run test:mcp-build-tools && bun run test:app-created-source && bun run test:app-list-output-text && bun run test:doctor-analytics && bun run test:posthog-exception && bun run test:create-supabase-client && bun run test:build-platform-selection && bun run test:builder-project-discovery && bun run test:onboarding-recovery && bun run test:onboarding-progress && bun run test:onboarding-run-targets && bun run test:run-device-command && bun run test:init-monorepo-targeting && bun run test:init-app-conflict && bun run test:channel-add-exists && bun run test:wait-log && bun run test:init-guardrails && bun run test:init-replay && bun run test:init-telemetry && bun run test:prompt-preferences && bun run test:esm-sdk && bun run test:mcp && bun run test:mcp-no-key-handshake && bun run test:auth-session && bun run test:version-detection && bun run test:platform-paths && bun run test:project-type-detection && bun run test:payload-split && bun run test:manifest-path-encoding && bun run test:macos-signing && bun run test:asc-key-protocol && bun run test:apple-api-import-helpers && bun run test:apple-api-verify-key && bun run test:bundle-id-detector && bun run test:apple-api-app-list && bun run test:app-verification && bun run test:pbxproj-parser && bun run test:ai-log-capture && bun run test:ai-analyze-flow && bun run test:cicd-failure-help && bun run test:ai-sse-parser && bun run test:ai-render-markdown && bun run test:ai-stream-markdown && bun run test:ai-onboarding-mode && bun run test:ai-fit && bun run test:platform-layout && bun run test:frame-fit && bun run test:onboarding-min-size && bun run test:min-size-gate && bun run test:shell-size-gate && bun run test:build-log-sanitize && bun run test:build-output-viewport && bun run test:diff-viewer-viewport && bun run test:build-complete-exit && bun run test:ai-analyze-stream && bun run test:support-mailto && bun run test:support-redact && bun run test:support-internal-log && bun run test:support-help-menu && bun run test:support-contact && bun run test:support-upload-prompt && bun run test:support-bundle-files && bun run test:self-update && bun run test:update-prompt && bun run test:apple-api-cert-create && bun run test:android-tail-engine && bun run test:android-tail-render && bun run test:android-tail-routing && bun run test:dev-gate-stripped && bun run test:frame-fit-ios-shared && bun run test:ios-confirm-app-id && bun run test:ios-create-new && bun run test:ios-e2e && bun run test:ios-flow-contract && bun run test:ios-import-discovery && bun run test:ios-import-export && bun run test:ios-import-pickers && bun run test:ios-import-recovery && bun run test:ios-recovery && bun run test:ios-resume && bun run test:ios-tail-handoff && bun run test:ios-tui-render && bun run test:p8-error && bun run test:ios-tui-routing && bun run test:ios-updater-sync-validation && bun run test:ios-verify-app && bun run test:ios-marketing-version && bun run test:android-version && bun run test:platform-flow-contract && bun run test:tail-engine-shared && bun run test:prescan && bun run test:android-reporting-api && bun run test:android-app-verification && bun run test:android-rename && bun run test:appflow-auth && bun run test:appflow-api-map && bun run test:appflow-validate && bun run test:appflow-flow && bun run test:appflow-gapfill && bun run test:appflow-engine && bun run test:appflow-tail && bun run test:appflow-fetch && bun run test:appflow-sa-decode && bun run test:app-permission-helper && bun run test:2fa-compliance-network && bun run test:organization-set-api-host && bun run test:trial-warning && bun run test:plan-validation",
171
174
  "test:build-platform-selection": "bun test/test-build-platform-selection.mjs",
172
175
  "test:builder-project-discovery": "bun test/test-builder-project-discovery.mjs",
173
176
  "test:ai-log-capture": "bun test/test-ai-log-capture.mjs",
@@ -210,6 +213,7 @@
210
213
  "test:appflow-fetch": "bun test/test-appflow-fetch.mjs",
211
214
  "test:appflow-sa-decode": "bun test/test-appflow-sa-decode.mjs",
212
215
  "test:app-permission-helper": "bun test/test-app-permission-helper.mjs",
216
+ "test:2fa-compliance-network": "bun test/test-2fa-compliance-network.mjs",
213
217
  "test:organization-set-api-host": "bun test/test-organization-set-api-host.mjs",
214
218
  "test:trial-warning": "bun test/test-trial-warning.mjs",
215
219
  "test:plan-validation": "bun test/test-plan-validation.mjs",