@capgo/cli 8.42.3 → 8.43.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.
@@ -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,32 @@
1
+ export declare const TWO_FACTOR_COMPLIANCE_NETWORK_MESSAGE = "Cannot reach Capgo to verify 2FA compliance. Check your network connection and try again.";
2
+ export declare const TWO_FACTOR_PREFLIGHT_NETWORK_WARNING = "Could not verify 2FA compliance due to a network error. Continuing \u2014 Capgo will still enforce 2FA on this action if required.";
3
+ export declare const TWO_FACTOR_PREFLIGHT_MAX_ATTEMPTS = 3;
4
+ /**
5
+ * User-facing 2FA compliance connectivity failure. Unlike CliUserError, this
6
+ * remains eligible for PostHog `$exception` capture so operational connectivity
7
+ * issues stay visible while the CLI shows a stable recovery message.
8
+ */
9
+ export declare class TwoFactorComplianceNetworkError extends Error {
10
+ constructor(message?: string);
11
+ }
12
+ /** Retries transient transport failures before the preflight fail-open path runs. */
13
+ export declare function callTwoFactorComplianceRpcWithRetry<T>(rpcCall: () => PromiseLike<{
14
+ data: T | null;
15
+ error: {
16
+ message?: string;
17
+ } | null;
18
+ }>): Promise<{
19
+ data: T | null;
20
+ error: {
21
+ message?: string;
22
+ } | null;
23
+ }>;
24
+ /** Warn, capture telemetry, and let the command continue when the preflight probe is unreachable. */
25
+ export declare function warnAndContinueTwoFactorPreflightNetworkFailure(options: {
26
+ silent?: boolean;
27
+ telemetryFunctionName: string;
28
+ }): Promise<void>;
29
+ /** Maps Supabase RPC transport failures to user-facing 2FA compliance errors. */
30
+ export declare function throwTwoFactorComplianceRpcError(error: {
31
+ message?: string;
32
+ }): 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;
@@ -192,6 +192,7 @@ export declare function readCapgoCliApiErrorPayload(error: unknown): Promise<{
192
192
  error?: string;
193
193
  message?: string;
194
194
  } | null>;
195
+ export declare function formatCapgoCliInvokeError(error: unknown): Promise<string>;
195
196
  /**
196
197
  * Invoke Capgo HTTP APIs formerly reached via supabase.functions.invoke.
197
198
  * Capgo cloud -> hostApi / hostFilesApi. Self-host -> /functions/v1.
@@ -499,9 +500,7 @@ export declare function createSupabaseClient(apikey: string, supaHost?: string,
499
500
  app_id: string;
500
501
  build_timeout_seconds?: number;
501
502
  build_timeout_updated_at?: string;
502
- block_provider_infra_requests
503
- /** Tag Type */
504
- ? /** Tag Type */: boolean;
503
+ block_provider_infra_requests?: boolean;
505
504
  channel_device_count?: number;
506
505
  created_at?: string | null;
507
506
  created_from_onboarding?: boolean;
@@ -1644,6 +1643,7 @@ export declare function createSupabaseClient(apikey: string, supaHost?: string,
1644
1643
  apps_with_cli_onboarding_builds_24h: number;
1645
1644
  apps_with_manual_builds_24h: number;
1646
1645
  apps_with_preview: number;
1646
+ users_with_2fa: number;
1647
1647
  apps_active: number | null;
1648
1648
  average_ltv: number;
1649
1649
  build_avg_seconds_day_android: number;
@@ -1739,6 +1739,7 @@ export declare function createSupabaseClient(apikey: string, supaHost?: string,
1739
1739
  apps_with_cli_onboarding_builds_24h?: number;
1740
1740
  apps_with_manual_builds_24h?: number;
1741
1741
  apps_with_preview?: number;
1742
+ users_with_2fa?: number;
1742
1743
  apps_active?: number | null;
1743
1744
  average_ltv?: number;
1744
1745
  build_avg_seconds_day_android?: number;
@@ -1834,6 +1835,7 @@ export declare function createSupabaseClient(apikey: string, supaHost?: string,
1834
1835
  apps_with_cli_onboarding_builds_24h?: number;
1835
1836
  apps_with_manual_builds_24h?: number;
1836
1837
  apps_with_preview?: number;
1838
+ users_with_2fa?: number;
1837
1839
  apps_active?: number | null;
1838
1840
  average_ltv?: number;
1839
1841
  build_avg_seconds_day_android?: number;
@@ -2865,7 +2867,13 @@ export declare function createSupabaseClient(apikey: string, supaHost?: string,
2865
2867
  future_uuid?: string;
2866
2868
  id?: number;
2867
2869
  invite_magic_string?: string;
2868
- last_name?: string;
2870
+ last_name
2871
+ /**
2872
+ * Calculate checksums for iOS and Android native code in a dependency folder.
2873
+ * Includes both native source files and platform configuration files
2874
+ * (podspec, Package.swift, build.gradle) that define platform dependencies.
2875
+ */
2876
+ ?: string;
2869
2877
  org_id?: string;
2870
2878
  rbac_role_name?: string;
2871
2879
  updated_at?: string;
@@ -5946,4 +5954,6 @@ interface PromptAndSyncOptions {
5946
5954
  validateIosUpdater?: boolean;
5947
5955
  packageJsonPath?: string;
5948
5956
  }
5957
+ export type IosUpdaterSyncValidation = ReturnType<typeof validateIosUpdaterSync>;
5958
+ export declare function throwIfIosUpdaterSyncInvalid(syncValidation: IosUpdaterSyncValidation, platformRunner: string, onFailure?: () => void): void;
5949
5959
  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.3",
4
+ "version": "8.43.2",
5
5
  "description": "A CLI to upload to capgo servers",
6
6
  "author": "Martin martin@capgo.app",
7
7
  "license": "Apache 2.0",
@@ -65,6 +65,7 @@
65
65
  "check-posix-paths": "node test/check-posix-paths.js",
66
66
  "generate-docs": "node dist/index.js generate-docs README.md",
67
67
  "test:bundle": "bun test/test-bundle.mjs",
68
+ "test:bundle-validation": "bun test test/bundle/",
68
69
  "test:prescan": "bun test test/prescan/",
69
70
  "test:functional": "bun test/test-functional.mjs",
70
71
  "test:semver": "bun test/test-semver-validation.mjs",
@@ -72,7 +73,7 @@
72
73
  "test:regex": "bun test/test-regex-validation.mjs",
73
74
  "test:upload": "bun test/test-upload-validation.mjs",
74
75
  "test:fail-on-incompatible": "bun test/test-fail-on-incompatible.mjs",
75
- "test:native-dependencies": "bun test/test-native-dependencies.mjs",
76
+ "test:native-dependencies": "bun test/test-native-dependencies.mjs && bun test/test-get-remote-dependencies.mjs",
76
77
  "test:package-json-guard": "bun test/test-package-json-guard.mjs",
77
78
  "test:credentials": "bun test/test-credentials.mjs",
78
79
  "test:asc-key-protocol": "bun test/test-asc-key-protocol.mjs",
@@ -109,18 +110,21 @@
109
110
  "test:app-list-output-text": "bun test/test-app-list-output-text.mjs",
110
111
  "test:doctor-analytics": "bun test/test-doctor-analytics.mjs",
111
112
  "test:posthog-exception": "bun test/test-posthog-exception.mjs",
113
+ "test:cli-recovery": "bun test/test-cli-recovery.mjs",
112
114
  "test:create-supabase-client": "bun test/test-create-supabase-client.mjs",
113
115
  "test:onboarding-recovery": "bun test/test-onboarding-recovery.mjs",
114
116
  "test:onboarding-progress": "bun test/test-onboarding-progress.mjs",
115
117
  "test:onboarding-run-targets": "bun test/test-onboarding-run-targets.mjs",
116
118
  "test:run-device-command": "bun test/test-run-device-command.mjs",
117
119
  "test:init-app-conflict": "bun test/test-init-app-conflict.mjs",
120
+ "test:channel-add-exists": "bun test/test-channel-add-exists.mjs",
118
121
  "test:wait-log": "bun test/test-wait-log.mjs",
119
122
  "test:init-guardrails": "bun test/test-init-guardrails.mjs",
120
123
  "test:init-replay": "bun test/test-init-replay.mjs",
121
124
  "test:init-telemetry": "bun test/test-init-telemetry.mjs",
122
125
  "test:capacitor-config-target": "bun test/test-capacitor-config-target.mjs",
123
- "test:init-monorepo-targeting": "bun run test:capacitor-config-target && bun test/test-init-monorepo-targeting.mjs",
126
+ "test:cli-user-error-config": "bun test/test-cli-user-error-config.mjs",
127
+ "test:init-monorepo-targeting": "bun run test:capacitor-config-target && bun run test:cli-user-error-config && bun test/test-init-monorepo-targeting.mjs",
124
128
  "test:prompt-preferences": "bun test/test-prompt-preferences.mjs",
125
129
  "test:esm-sdk": "node test/test-sdk-esm.mjs",
126
130
  "test:auth-session": "bun test/test-auth-session.mjs",
@@ -168,7 +172,7 @@
168
172
  "test:android-version": "bun test/test-android-version.mjs",
169
173
  "test:platform-flow-contract": "bun test/test-platform-flow-contract.mjs",
170
174
  "test:tail-engine-shared": "bun test/test-tail-engine-shared.mjs",
171
- "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: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",
175
+ "test": "bun run build && bun run test:helper-dce && bun run test:version-detection:setup && bun run test:bundle && bun run test:bundle-validation && 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:cli-recovery && 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",
172
176
  "test:build-platform-selection": "bun test/test-build-platform-selection.mjs",
173
177
  "test:builder-project-discovery": "bun test/test-builder-project-discovery.mjs",
174
178
  "test:ai-log-capture": "bun test/test-ai-log-capture.mjs",
@@ -211,6 +215,7 @@
211
215
  "test:appflow-fetch": "bun test/test-appflow-fetch.mjs",
212
216
  "test:appflow-sa-decode": "bun test/test-appflow-sa-decode.mjs",
213
217
  "test:app-permission-helper": "bun test/test-app-permission-helper.mjs",
218
+ "test:2fa-compliance-network": "bun test/test-2fa-compliance-network.mjs",
214
219
  "test:organization-set-api-host": "bun test/test-organization-set-api-host.mjs",
215
220
  "test:trial-warning": "bun test/test-trial-warning.mjs",
216
221
  "test:plan-validation": "bun test/test-plan-validation.mjs",