@package-broker/cli 0.19.7 → 2.0.0-rc.1

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 (181) hide show
  1. package/LICENSE +661 -0
  2. package/dist/.tsbuildinfo +1 -0
  3. package/dist/bin.d.ts +3 -0
  4. package/dist/bin.d.ts.map +1 -0
  5. package/dist/bin.js +12 -0
  6. package/dist/bin.js.map +1 -0
  7. package/dist/build-artifacts.d.ts +27 -0
  8. package/dist/build-artifacts.d.ts.map +1 -0
  9. package/dist/build-artifacts.js +169 -0
  10. package/dist/build-artifacts.js.map +1 -0
  11. package/dist/build-assets.d.ts +36 -0
  12. package/dist/build-assets.d.ts.map +1 -0
  13. package/dist/build-assets.js +224 -0
  14. package/dist/build-assets.js.map +1 -0
  15. package/dist/build.d.ts +31 -0
  16. package/dist/build.d.ts.map +1 -0
  17. package/dist/build.js +277 -0
  18. package/dist/build.js.map +1 -0
  19. package/dist/cli.d.ts +2 -0
  20. package/dist/cli.d.ts.map +1 -0
  21. package/dist/cli.js +801 -0
  22. package/dist/cli.js.map +1 -0
  23. package/dist/cloudflare/d1-http-executor.d.ts +30 -0
  24. package/dist/cloudflare/d1-http-executor.d.ts.map +1 -0
  25. package/dist/cloudflare/d1-http-executor.js +230 -0
  26. package/dist/cloudflare/d1-http-executor.js.map +1 -0
  27. package/dist/cloudflare/d1-http-response.d.ts +4 -0
  28. package/dist/cloudflare/d1-http-response.d.ts.map +1 -0
  29. package/dist/cloudflare/d1-http-response.js +113 -0
  30. package/dist/cloudflare/d1-http-response.js.map +1 -0
  31. package/dist/commands/admin.d.ts +47 -0
  32. package/dist/commands/admin.d.ts.map +1 -0
  33. package/dist/commands/admin.js +447 -0
  34. package/dist/commands/admin.js.map +1 -0
  35. package/dist/commands/built-manifest.d.ts +13 -0
  36. package/dist/commands/built-manifest.d.ts.map +1 -0
  37. package/dist/commands/built-manifest.js +197 -0
  38. package/dist/commands/built-manifest.js.map +1 -0
  39. package/dist/commands/cloudflare/api.d.ts +129 -0
  40. package/dist/commands/cloudflare/api.d.ts.map +1 -0
  41. package/dist/commands/cloudflare/api.js +480 -0
  42. package/dist/commands/cloudflare/api.js.map +1 -0
  43. package/dist/commands/cloudflare/deploy.d.ts +81 -0
  44. package/dist/commands/cloudflare/deploy.d.ts.map +1 -0
  45. package/dist/commands/cloudflare/deploy.js +1848 -0
  46. package/dist/commands/cloudflare/deploy.js.map +1 -0
  47. package/dist/commands/cloudflare/inventory.d.ts +243 -0
  48. package/dist/commands/cloudflare/inventory.d.ts.map +1 -0
  49. package/dist/commands/cloudflare/inventory.js +786 -0
  50. package/dist/commands/cloudflare/inventory.js.map +1 -0
  51. package/dist/commands/cloudflare/janitor.d.ts +10 -0
  52. package/dist/commands/cloudflare/janitor.d.ts.map +1 -0
  53. package/dist/commands/cloudflare/janitor.js +84 -0
  54. package/dist/commands/cloudflare/janitor.js.map +1 -0
  55. package/dist/commands/cloudflare/migrations-check.d.ts +5 -0
  56. package/dist/commands/cloudflare/migrations-check.d.ts.map +1 -0
  57. package/dist/commands/cloudflare/migrations-check.js +10 -0
  58. package/dist/commands/cloudflare/migrations-check.js.map +1 -0
  59. package/dist/commands/cloudflare/provision.d.ts +79 -0
  60. package/dist/commands/cloudflare/provision.d.ts.map +1 -0
  61. package/dist/commands/cloudflare/provision.js +961 -0
  62. package/dist/commands/cloudflare/provision.js.map +1 -0
  63. package/dist/commands/cloudflare/queue-consumer.d.ts +4 -0
  64. package/dist/commands/cloudflare/queue-consumer.d.ts.map +1 -0
  65. package/dist/commands/cloudflare/queue-consumer.js +57 -0
  66. package/dist/commands/cloudflare/queue-consumer.js.map +1 -0
  67. package/dist/commands/cloudflare/setup.d.ts +48 -0
  68. package/dist/commands/cloudflare/setup.d.ts.map +1 -0
  69. package/dist/commands/cloudflare/setup.js +836 -0
  70. package/dist/commands/cloudflare/setup.js.map +1 -0
  71. package/dist/commands/cloudflare/smoke.d.ts +29 -0
  72. package/dist/commands/cloudflare/smoke.d.ts.map +1 -0
  73. package/dist/commands/cloudflare/smoke.js +715 -0
  74. package/dist/commands/cloudflare/smoke.js.map +1 -0
  75. package/dist/commands/cloudflare/teardown.d.ts +62 -0
  76. package/dist/commands/cloudflare/teardown.d.ts.map +1 -0
  77. package/dist/commands/cloudflare/teardown.js +906 -0
  78. package/dist/commands/cloudflare/teardown.js.map +1 -0
  79. package/dist/commands/cloudflare/worker-settings.d.ts +4 -0
  80. package/dist/commands/cloudflare/worker-settings.d.ts.map +1 -0
  81. package/dist/commands/cloudflare/worker-settings.js +93 -0
  82. package/dist/commands/cloudflare/worker-settings.js.map +1 -0
  83. package/dist/commands/cloudflare.d.ts +55 -0
  84. package/dist/commands/cloudflare.d.ts.map +1 -0
  85. package/dist/commands/cloudflare.js +393 -0
  86. package/dist/commands/cloudflare.js.map +1 -0
  87. package/dist/commands/import-cutover.d.ts +5 -0
  88. package/dist/commands/import-cutover.d.ts.map +1 -0
  89. package/dist/commands/import-cutover.js +25 -0
  90. package/dist/commands/import-cutover.js.map +1 -0
  91. package/dist/commands/import-private-packagist.d.ts +38 -0
  92. package/dist/commands/import-private-packagist.d.ts.map +1 -0
  93. package/dist/commands/import-private-packagist.js +232 -0
  94. package/dist/commands/import-private-packagist.js.map +1 -0
  95. package/dist/commands/import-satis.d.ts +11 -0
  96. package/dist/commands/import-satis.d.ts.map +1 -0
  97. package/dist/commands/import-satis.js +112 -0
  98. package/dist/commands/import-satis.js.map +1 -0
  99. package/dist/commands/import.d.ts +22 -0
  100. package/dist/commands/import.d.ts.map +1 -0
  101. package/dist/commands/import.js +343 -0
  102. package/dist/commands/import.js.map +1 -0
  103. package/dist/commands/openapi-specs.d.ts +4 -0
  104. package/dist/commands/openapi-specs.d.ts.map +1 -0
  105. package/dist/commands/openapi-specs.js +94 -0
  106. package/dist/commands/openapi-specs.js.map +1 -0
  107. package/dist/commands/openapi.d.ts +12 -0
  108. package/dist/commands/openapi.d.ts.map +1 -0
  109. package/dist/commands/openapi.js +44 -0
  110. package/dist/commands/openapi.js.map +1 -0
  111. package/dist/commands/source.d.ts +8 -0
  112. package/dist/commands/source.d.ts.map +1 -0
  113. package/dist/commands/source.js +61 -0
  114. package/dist/commands/source.js.map +1 -0
  115. package/dist/commands/sqlite.d.ts +11 -0
  116. package/dist/commands/sqlite.d.ts.map +1 -0
  117. package/dist/commands/sqlite.js +76 -0
  118. package/dist/commands/sqlite.js.map +1 -0
  119. package/dist/import/client.d.ts +71 -0
  120. package/dist/import/client.d.ts.map +1 -0
  121. package/dist/import/client.js +348 -0
  122. package/dist/import/client.js.map +1 -0
  123. package/dist/import/credential-refs.d.ts +2 -0
  124. package/dist/import/credential-refs.d.ts.map +1 -0
  125. package/dist/import/credential-refs.js +22 -0
  126. package/dist/import/credential-refs.js.map +1 -0
  127. package/dist/import/cutover.d.ts +64 -0
  128. package/dist/import/cutover.d.ts.map +1 -0
  129. package/dist/import/cutover.js +544 -0
  130. package/dist/import/cutover.js.map +1 -0
  131. package/dist/import/private-packagist/api.d.ts +57 -0
  132. package/dist/import/private-packagist/api.d.ts.map +1 -0
  133. package/dist/import/private-packagist/api.js +246 -0
  134. package/dist/import/private-packagist/api.js.map +1 -0
  135. package/dist/import/private-packagist/dates.d.ts +30 -0
  136. package/dist/import/private-packagist/dates.d.ts.map +1 -0
  137. package/dist/import/private-packagist/dates.js +189 -0
  138. package/dist/import/private-packagist/dates.js.map +1 -0
  139. package/dist/import/private-packagist/map.d.ts +48 -0
  140. package/dist/import/private-packagist/map.d.ts.map +1 -0
  141. package/dist/import/private-packagist/map.js +162 -0
  142. package/dist/import/private-packagist/map.js.map +1 -0
  143. package/dist/import/private-packagist/plan.d.ts +61 -0
  144. package/dist/import/private-packagist/plan.d.ts.map +1 -0
  145. package/dist/import/private-packagist/plan.js +936 -0
  146. package/dist/import/private-packagist/plan.js.map +1 -0
  147. package/dist/import/private-packagist/snapshot.d.ts +31 -0
  148. package/dist/import/private-packagist/snapshot.d.ts.map +1 -0
  149. package/dist/import/private-packagist/snapshot.js +406 -0
  150. package/dist/import/private-packagist/snapshot.js.map +1 -0
  151. package/dist/import/satis.d.ts +93 -0
  152. package/dist/import/satis.d.ts.map +1 -0
  153. package/dist/import/satis.js +873 -0
  154. package/dist/import/satis.js.map +1 -0
  155. package/dist/index.d.ts +3 -2
  156. package/dist/index.d.ts.map +1 -1
  157. package/dist/index.js +3 -96
  158. package/dist/index.js.map +1 -1
  159. package/dist/manifest.d.ts +55 -0
  160. package/dist/manifest.d.ts.map +1 -0
  161. package/dist/manifest.js +125 -0
  162. package/dist/manifest.js.map +1 -0
  163. package/dist/migrations-collect.d.ts +6 -0
  164. package/dist/migrations-collect.d.ts.map +1 -0
  165. package/dist/migrations-collect.js +39 -0
  166. package/dist/migrations-collect.js.map +1 -0
  167. package/dist/prebuilt-expected.json +7 -0
  168. package/dist/prebuilt.d.ts +27 -0
  169. package/dist/prebuilt.d.ts.map +1 -0
  170. package/dist/prebuilt.js +391 -0
  171. package/dist/prebuilt.js.map +1 -0
  172. package/package.json +21 -25
  173. package/README.md +0 -29
  174. package/dist/__tests__/migrate.test.d.ts +0 -2
  175. package/dist/__tests__/migrate.test.d.ts.map +0 -1
  176. package/dist/__tests__/migrate.test.js +0 -116
  177. package/dist/__tests__/migrate.test.js.map +0 -1
  178. package/dist/migrate.d.ts +0 -40
  179. package/dist/migrate.d.ts.map +0 -1
  180. package/dist/migrate.js +0 -335
  181. package/dist/migrate.js.map +0 -1
@@ -0,0 +1,393 @@
1
+ import { dirname, resolve } from 'node:path';
2
+ import { ORG_SLUG_PATTERN } from '@package-broker/core/db/organization';
3
+ import { DbError } from '@package-broker/core/db/errors';
4
+ import { isoTimestamp, systemClock, ulid } from '@package-broker/core/ids';
5
+ import { MigrationLockedError } from '@package-broker/db-sqlite/migrations/lock';
6
+ import { migrate, MigrationChecksumError, } from '@package-broker/db-sqlite/migrations/runner';
7
+ import { createOrganizationBootstrap } from '@package-broker/db-sqlite/repositories/organization';
8
+ import { assertPrebuiltConfiguration, materializePrebuilt, prebuiltEnvelope, removePrebuilt, } from '../prebuilt.js';
9
+ import { createD1HttpExecutor } from '../cloudflare/d1-http-executor.js';
10
+ import { redact } from '../cloudflare/d1-http-response.js';
11
+ import { BuiltManifestError, LegacyRouteTableError, loadBuiltMigrations, builtRouteProblems, } from './built-manifest.js';
12
+ import { CloudflareError, cloudflareCredentials, commandEnvelope, failCommand, } from './cloudflare/api.js';
13
+ import { InventoryStore, InventoryTransaction, installIdentity, } from './cloudflare/inventory.js';
14
+ export function safeCloudflareDiagnostic(error, secrets) {
15
+ const name = error?.name;
16
+ const message = error?.message;
17
+ const text = typeof name === 'string' && typeof message === 'string'
18
+ ? `${name}: ${message}`
19
+ : `Error: ${String(error)}`;
20
+ return redact(text, secrets)
21
+ .replace(/[\r\n]+/g, ' ')
22
+ .replace(/[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,}/gi, '[redacted]');
23
+ }
24
+ const UUID_SHAPE = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;
25
+ const ACCOUNT_ID_SHAPE = /^[0-9a-f]{32}$/;
26
+ const TOKEN_SHAPE = /^[\x21-\x7e]+$/;
27
+ const LOCK_TTL_SECONDS = 600;
28
+ const MIGRATION_TIMEOUT_MS = 300_000;
29
+ const RESPONSE_READ_FAILED = 'd1 http response read failed';
30
+ function migrationTimeoutMs(env) {
31
+ const configured = env.PB_D1_MIGRATION_TIMEOUT_MS;
32
+ if (configured === undefined)
33
+ return MIGRATION_TIMEOUT_MS;
34
+ const timeout = Number(configured);
35
+ if (!Number.isSafeInteger(timeout) || timeout < 1 || timeout > 600_000) {
36
+ throw new CloudflareError('invalid_input', 2, false, 'migrate');
37
+ }
38
+ return timeout;
39
+ }
40
+ function outcomeUnknown(error) {
41
+ let current = error;
42
+ for (let depth = 0; depth < 8 && current instanceof Error; depth += 1) {
43
+ if (current instanceof DbError && current.message === RESPONSE_READ_FAILED)
44
+ return true;
45
+ current = current.cause;
46
+ }
47
+ return false;
48
+ }
49
+ function credentials(o, reportError) {
50
+ const apiToken = o.env.CLOUDFLARE_API_TOKEN;
51
+ const accountId = o.env.CLOUDFLARE_ACCOUNT_ID;
52
+ const secrets = [apiToken ?? '', accountId ?? ''];
53
+ if (apiToken === undefined || apiToken === '') {
54
+ reportError(new Error('CLOUDFLARE_API_TOKEN is required'), secrets);
55
+ return null;
56
+ }
57
+ if (accountId === undefined || accountId === '') {
58
+ reportError(new Error('CLOUDFLARE_ACCOUNT_ID is required'), secrets);
59
+ return null;
60
+ }
61
+ if (!TOKEN_SHAPE.test(apiToken)) {
62
+ reportError(new TypeError('CLOUDFLARE_API_TOKEN must be visible ASCII without whitespace'), secrets);
63
+ return null;
64
+ }
65
+ if (!ACCOUNT_ID_SHAPE.test(accountId)) {
66
+ reportError(new TypeError('CLOUDFLARE_ACCOUNT_ID must be 32 lowercase hex characters'), secrets);
67
+ return null;
68
+ }
69
+ if (!UUID_SHAPE.test(o.databaseId)) {
70
+ reportError(new TypeError('--database-id must be a UUID'), secrets);
71
+ return null;
72
+ }
73
+ return { apiToken, accountId };
74
+ }
75
+ function executorFor(o, credentials, timeoutMs) {
76
+ return createD1HttpExecutor({
77
+ accountId: credentials.accountId,
78
+ databaseId: o.databaseId,
79
+ apiToken: credentials.apiToken,
80
+ ...(timeoutMs === undefined ? {} : { timeoutMs }),
81
+ ...(o.fetch === undefined ? {} : { fetch: o.fetch }),
82
+ });
83
+ }
84
+ export async function migrateCloudflare(o, operations = {}) {
85
+ const diagnostics = [];
86
+ const emit = (message) => {
87
+ diagnostics.push(message);
88
+ try {
89
+ const delivered = o.diagnostic?.(message);
90
+ if (typeof delivered?.then === 'function')
91
+ void Promise.resolve(delivered).catch(() => undefined);
92
+ }
93
+ catch {
94
+ // Diagnostic delivery must not change the operation or its cleanup.
95
+ }
96
+ };
97
+ const report = (error, secrets) => {
98
+ emit(o.legacyDiagnostics
99
+ ? safeCloudflareDiagnostic(error, secrets)
100
+ : 'migration_failed: inspect the typed error and migration state');
101
+ };
102
+ const output = commandEnvelope('migrate', o.dryRun);
103
+ const result = {
104
+ exitCode: 1,
105
+ value: null,
106
+ output,
107
+ diagnostics,
108
+ };
109
+ const finish = (exitCode, value = null) => {
110
+ if (value) {
111
+ output.migrations_applied = value.applied;
112
+ output.pending_migrations = value.pending;
113
+ output.status = o.dryRun ? 'planned' : 'ok';
114
+ }
115
+ else
116
+ failCommand(output, new CloudflareError(exitCode === 2
117
+ ? 'invalid_input'
118
+ : exitCode === 6
119
+ ? 'outcome_unknown'
120
+ : 'migration_failed', exitCode, false, 'migrate'));
121
+ result.exitCode = exitCode;
122
+ result.value = value;
123
+ return result;
124
+ };
125
+ let prebuiltOut;
126
+ let release;
127
+ let secrets = [o.env.CLOUDFLARE_API_TOKEN ?? '', o.env.CLOUDFLARE_ACCOUNT_ID ?? ''];
128
+ try {
129
+ let databaseId = o.databaseId;
130
+ let journal = null;
131
+ let store;
132
+ const now = o.now ?? Date.now;
133
+ const project = dirname(resolve(o.configPath ?? 'broker.config.ts'));
134
+ let outDir = o.prebuilt
135
+ ? resolve(project, o.outDir ?? '.pb/prebuilt/cloudflare')
136
+ : resolve(o.outDir ?? '.pb/cloudflare');
137
+ if (o.prebuilt) {
138
+ await assertPrebuiltConfiguration(project, o.configPath);
139
+ const materialized = await (operations.materializePrebuilt ?? materializePrebuilt)({
140
+ project,
141
+ outDir,
142
+ });
143
+ outDir = prebuiltOut = materialized.outDir;
144
+ output.prebuilt = prebuiltEnvelope(materialized);
145
+ output.artifact_sha256 = output.prebuilt.artifact_sha256;
146
+ }
147
+ if (o.transaction && o.workerName === undefined)
148
+ throw new CloudflareError('invalid_input', 2);
149
+ if (o.workerName !== undefined || o.inventory !== undefined) {
150
+ if (!o.workerName)
151
+ throw new CloudflareError('invalid_input', 2);
152
+ const auth = cloudflareCredentials(o.env);
153
+ const identity = installIdentity({
154
+ ...auth,
155
+ workerName: o.workerName,
156
+ ...(o.environment === undefined ? {} : { environment: o.environment }),
157
+ ...(o.deploymentId === undefined ? {} : { deploymentId: o.deploymentId }),
158
+ ...(o.jurisdiction === undefined ? {} : { jurisdiction: o.jurisdiction }),
159
+ ...(o.runIdentity === undefined ? {} : { runIdentity: o.runIdentity }),
160
+ });
161
+ store = await InventoryStore.create({
162
+ project,
163
+ outDir,
164
+ identity,
165
+ ...(o.inventory === undefined ? {} : { inventory: o.inventory }),
166
+ });
167
+ if (o.transaction)
168
+ o.transaction.assertStore(store);
169
+ else if (!o.dryRun)
170
+ release = await store.lock(now());
171
+ journal = await store.read();
172
+ if (databaseId && journal?.resources.d1?.id && databaseId !== journal.resources.d1.id)
173
+ throw new CloudflareError('ownership_conflict', 8, false, 'migrate');
174
+ databaseId ??= journal?.resources.d1?.id ?? undefined;
175
+ if (!o.dryRun && (!journal || journal.resources.d1?.state !== 'complete'))
176
+ throw new CloudflareError('invalid_input', 2);
177
+ }
178
+ if (databaseId !== undefined || o.workerName === undefined) {
179
+ if (credentials({ ...o, databaseId: databaseId ?? '' }, report) === null)
180
+ return finish(2);
181
+ }
182
+ const sources = await loadBuiltMigrations(outDir);
183
+ let problems;
184
+ try {
185
+ problems = await builtRouteProblems(outDir);
186
+ }
187
+ catch (error) {
188
+ if (!(error instanceof LegacyRouteTableError))
189
+ throw error;
190
+ emit(`error: ${error.message}`);
191
+ return finish(2);
192
+ }
193
+ if (problems === null)
194
+ emit('warning: manifest has no route table; route permissions were not checked');
195
+ else {
196
+ for (const problem of problems)
197
+ emit(o.legacyDiagnostics
198
+ ? `error: ${problem}`.replace(/[\r\n]+/g, ' ')
199
+ : 'error: manifest route validation failed; run pb build again');
200
+ if (problems.length > 0)
201
+ return finish(2);
202
+ }
203
+ if (databaseId === undefined && o.dryRun && o.workerName !== undefined) {
204
+ const result = finish(0, {
205
+ applied: [],
206
+ skipped: [],
207
+ unknown: [],
208
+ pending: sources.map((s) => s.id),
209
+ });
210
+ result.output.remote_state = 'absent';
211
+ result.output.plan.push({ stage: 'migrate', action: 'remote_state_absent' });
212
+ return result;
213
+ }
214
+ const execution = { ...o, databaseId: databaseId ?? '' };
215
+ const auth = credentials(execution, report);
216
+ if (auth === null)
217
+ return finish(2);
218
+ output.database_id = execution.databaseId;
219
+ output.remote_state = 'present';
220
+ secrets = [auth.apiToken, auth.accountId];
221
+ const save = async () => {
222
+ if (journal && store) {
223
+ journal.revision++;
224
+ journal.updated_at = new Date(now()).toISOString();
225
+ await store.write(journal);
226
+ }
227
+ };
228
+ const holder = ulid();
229
+ const executor = executorFor(execution, auth, migrationTimeoutMs(o.env));
230
+ if (!o.dryRun)
231
+ emit(`lock holder ${holder}`);
232
+ const contractAllowlist = o.allowContract ?? (store !== undefined || o.json ? [] : undefined);
233
+ if (!o.dryRun && contractAllowlist !== undefined) {
234
+ const plan = await migrate(executor, sources, { holder, dryRun: true });
235
+ if (sources.some((s) => s.phase === 'contract' &&
236
+ plan.pending.includes(s.id) &&
237
+ !contractAllowlist.includes(s.id)))
238
+ throw new CloudflareError('configuration_conflict', 11, false, 'migrate');
239
+ }
240
+ const result = await migrate(executor, sources, {
241
+ holder,
242
+ dryRun: o.dryRun || o.verifyOnly === true,
243
+ lockTtlSeconds: LOCK_TTL_SECONDS,
244
+ ...(o.now === undefined ? {} : { now: o.now }),
245
+ ...(o.sleep === undefined ? {} : { sleep: o.sleep }),
246
+ onBeforeApply: async (source) => {
247
+ if (contractAllowlist !== undefined &&
248
+ source.phase === 'contract' &&
249
+ !contractAllowlist.includes(source.id))
250
+ throw new CloudflareError('configuration_conflict', 11, false, 'migrate');
251
+ if (source.phase === 'contract' && journal) {
252
+ journal.migrations.rollback_compatible = false;
253
+ if (!journal.migrations.contract_ids.includes(source.id))
254
+ journal.migrations.contract_ids.push(source.id);
255
+ await save();
256
+ }
257
+ await o.onBeforeApply?.(source);
258
+ },
259
+ log: (event) => {
260
+ if (event.level !== 'info')
261
+ emit(o.legacyDiagnostics
262
+ ? redact(`${event.level}: ${event.message}`.replace(/[\r\n]+/g, ' '), secrets)
263
+ : 'warn: migration warning; inspect migration state and lock expiry before continuing');
264
+ },
265
+ });
266
+ if (o.verifyOnly && (result.pending.length || result.unknown.length))
267
+ throw new CloudflareError('configuration_conflict', 11, false, 'migrate');
268
+ if (!o.dryRun && journal) {
269
+ journal.migrations.applied_this_transaction = o.transaction
270
+ ? o.transaction.recordAppliedMigrations(result.applied)
271
+ : result.applied;
272
+ const applied = new Set([...result.applied, ...result.skipped]);
273
+ journal.migrations.ledger = sources
274
+ .filter((s) => applied.has(s.id))
275
+ .map(({ id, checksum, phase }) => ({ id, checksum, phase }));
276
+ await save();
277
+ }
278
+ return finish(0, result);
279
+ }
280
+ catch (error) {
281
+ report(error, secrets);
282
+ if (outcomeUnknown(error)) {
283
+ emit(`outcome unknown: the change may have been applied; re-run pb cloudflare migrate to read the recorded state; if the re-run reports the lock held by the holder printed above, it expires ${LOCK_TTL_SECONDS / 60} minutes after this run started; wait and run migrate again`);
284
+ return finish(6);
285
+ }
286
+ if (error instanceof CloudflareError) {
287
+ const result = finish(error.exitCode);
288
+ failCommand(result.output, error.stage === 'prebuilt'
289
+ ? error
290
+ : new CloudflareError(error.code, error.exitCode, error.retryable, 'migrate', error.status, error.check));
291
+ return result;
292
+ }
293
+ if (error instanceof MigrationChecksumError ||
294
+ (error instanceof BuiltManifestError &&
295
+ /checksum does not match the file/.test(error.message)))
296
+ return finish(3);
297
+ if (error instanceof MigrationLockedError ||
298
+ (error instanceof DbError && error.kind === 'busy'))
299
+ return finish(4);
300
+ if (error instanceof BuiltManifestError && (o.json || o.workerName !== undefined))
301
+ return finish(2);
302
+ return finish(1);
303
+ }
304
+ finally {
305
+ if (prebuiltOut)
306
+ await removePrebuilt(prebuiltOut).catch(() => undefined);
307
+ if (release) {
308
+ try {
309
+ await release();
310
+ }
311
+ catch {
312
+ const error = new CloudflareError('install_locked', 4, false, 'migrate');
313
+ result.exitCode = failCommand(output, error).exitCode;
314
+ }
315
+ }
316
+ }
317
+ }
318
+ export async function runCloudflareMigrate(o) {
319
+ const result = await migrateCloudflare({
320
+ ...o,
321
+ legacyDiagnostics: !o.json,
322
+ ...(!o.json ? { diagnostic: o.diagnostic ?? ((message) => console.error(message)) } : {}),
323
+ });
324
+ // JSON callers only receive fixed safe diagnostics; legacy output stays compatible.
325
+ if (o.json)
326
+ console.log(JSON.stringify(result.output));
327
+ else {
328
+ if (result.value)
329
+ console.log(JSON.stringify(result.value));
330
+ }
331
+ return result.exitCode;
332
+ }
333
+ export async function bootstrapCloudflare(o) {
334
+ const diagnostics = [];
335
+ const report = (error, secrets) => {
336
+ diagnostics.push(o.legacyDiagnostics
337
+ ? safeCloudflareDiagnostic(error, secrets)
338
+ : 'org_bootstrap_failed: inspect the typed error');
339
+ };
340
+ const output = commandEnvelope('bootstrap');
341
+ const finish = (exitCode, value = null) => {
342
+ if (exitCode)
343
+ failCommand(output, new CloudflareError(exitCode === 5
344
+ ? 'organization_slug_mismatch'
345
+ : exitCode === 6
346
+ ? 'outcome_unknown'
347
+ : exitCode === 2
348
+ ? 'invalid_input'
349
+ : 'provider_failure', exitCode, false, 'org_bootstrap'));
350
+ return { exitCode, value, output, diagnostics };
351
+ };
352
+ const auth = credentials(o, report);
353
+ if (auth === null)
354
+ return finish(2);
355
+ output.database_id = o.databaseId;
356
+ const secrets = [auth.apiToken, auth.accountId];
357
+ if (!ORG_SLUG_PATTERN.test(o.slug)) {
358
+ report(new TypeError(`invalid organization slug ${JSON.stringify(o.slug)}`), secrets);
359
+ return finish(2);
360
+ }
361
+ try {
362
+ const result = await createOrganizationBootstrap(executorFor(o, auth)).bootstrap({
363
+ id: ulid(),
364
+ slug: o.slug,
365
+ name: o.name,
366
+ now: isoTimestamp(o.now === undefined ? systemClock.now() : new Date(o.now())),
367
+ });
368
+ if (!result.created && result.slug !== o.slug) {
369
+ report(Object.assign(new Error(`organization already bootstrapped as ${result.slug}`), {
370
+ name: 'AlreadyBootstrapped',
371
+ }), secrets);
372
+ return finish(5, result);
373
+ }
374
+ return finish(0, result);
375
+ }
376
+ catch (error) {
377
+ report(error, secrets);
378
+ if (outcomeUnknown(error)) {
379
+ diagnostics.push('outcome unknown: the change may have been applied; re-run pb cloudflare bootstrap; it is idempotent');
380
+ return finish(6);
381
+ }
382
+ return finish(1);
383
+ }
384
+ }
385
+ export async function runCloudflareBootstrap(o) {
386
+ const result = await bootstrapCloudflare({ ...o, legacyDiagnostics: true });
387
+ for (const diagnostic of result.diagnostics)
388
+ console.error(diagnostic);
389
+ if (result.exitCode === 0 && result.value)
390
+ console.log(JSON.stringify(result.value));
391
+ return result.exitCode;
392
+ }
393
+ //# sourceMappingURL=cloudflare.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cloudflare.js","sourceRoot":"","sources":["../../src/commands/cloudflare.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import { type CutoverOptions } from '../import/cutover.js';
2
+ export declare function runImportCutover(options: CutoverOptions & {
3
+ readonly json?: boolean;
4
+ }): Promise<number>;
5
+ //# sourceMappingURL=import-cutover.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"import-cutover.d.ts","sourceRoot":"","sources":["../../src/commands/import-cutover.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,KAAK,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAE5E,wBAAsB,gBAAgB,CACpC,OAAO,EAAE,cAAc,GAAG;IAAE,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,CAAA;CAAE,GACpD,OAAO,CAAC,MAAM,CAAC,CAoBjB"}
@@ -0,0 +1,25 @@
1
+ import { runCutoverCheck } from '../import/cutover.js';
2
+ export async function runImportCutover(options) {
3
+ const result = await runCutoverCheck(options);
4
+ if (options.json)
5
+ console.log(JSON.stringify(result));
6
+ else {
7
+ console.log(result.message);
8
+ for (const diagnostic of result.diagnostics)
9
+ console.log(`Composer ${diagnostic.step}: exit=${diagnostic.exitCode ?? 'none'}${diagnostic.errorCode ? ` error=${diagnostic.errorCode}` : ''}${diagnostic.signal ? ` signal=${diagnostic.signal}` : ''}`);
10
+ console.log(`Packages: old=${result.counts.old} new=${result.counts.new}`);
11
+ for (const name of result.differences)
12
+ console.log(`Resolution differs: ${name}`);
13
+ for (const name of result.distOnly)
14
+ console.log(`Dist reference differs (information): ${name}`);
15
+ for (const name of result.oldHostPackages)
16
+ console.log(`Old download host: ${name}`);
17
+ for (const check of result.historic) {
18
+ console.log(`Historic lock ${check.index}: ${check.ok ? 'passed' : 'failed'}`);
19
+ for (const name of check.missingPackages)
20
+ console.log(`Missing package: ${name}`);
21
+ }
22
+ }
23
+ return result.exitCode;
24
+ }
25
+ //# sourceMappingURL=import-cutover.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"import-cutover.js","sourceRoot":"","sources":["../../src/commands/import-cutover.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAuB,MAAM,sBAAsB,CAAC;AAE5E,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,OAAqD;IAErD,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,OAAO,CAAC,CAAC;IAC9C,IAAI,OAAO,CAAC,IAAI;QAAE,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;SACjD,CAAC;QACJ,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAC5B,KAAK,MAAM,UAAU,IAAI,MAAM,CAAC,WAAW;YACzC,OAAO,CAAC,GAAG,CACT,YAAY,UAAU,CAAC,IAAI,UAAU,UAAU,CAAC,QAAQ,IAAI,MAAM,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,UAAU,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAC9L,CAAC;QACJ,OAAO,CAAC,GAAG,CAAC,iBAAiB,MAAM,CAAC,MAAM,CAAC,GAAG,QAAQ,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC;QAC3E,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,WAAW;YAAE,OAAO,CAAC,GAAG,CAAC,uBAAuB,IAAI,EAAE,CAAC,CAAC;QAClF,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,QAAQ;YAChC,OAAO,CAAC,GAAG,CAAC,yCAAyC,IAAI,EAAE,CAAC,CAAC;QAC/D,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,eAAe;YAAE,OAAO,CAAC,GAAG,CAAC,sBAAsB,IAAI,EAAE,CAAC,CAAC;QACrF,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;YACpC,OAAO,CAAC,GAAG,CAAC,iBAAiB,KAAK,CAAC,KAAK,KAAK,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;YAC/E,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,eAAe;gBAAE,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,EAAE,CAAC,CAAC;QACpF,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC,QAAQ,CAAC;AACzB,CAAC"}
@@ -0,0 +1,38 @@
1
+ export interface ImportPrivatePackagistOptions {
2
+ readonly org: string;
3
+ readonly snapshot: string;
4
+ readonly apiKeyFile?: string;
5
+ readonly apiSecretFile?: string;
6
+ readonly versions?: boolean;
7
+ readonly requireOrgMatch?: boolean;
8
+ readonly env: Readonly<Record<string, string | undefined>>;
9
+ readonly fetch?: typeof globalThis.fetch;
10
+ }
11
+ export declare function runImportPrivatePackagistFetch(options: ImportPrivatePackagistOptions): Promise<number>;
12
+ export interface ImportPrivatePackagistPlanOptions {
13
+ readonly snapshot: string;
14
+ readonly map: string;
15
+ readonly out: string;
16
+ readonly credentialsOut: string;
17
+ readonly members?: string;
18
+ readonly baseline?: string;
19
+ readonly mode?: 'merge' | 'override';
20
+ readonly includeOrgAdmins?: boolean;
21
+ readonly runtime?: 'workers' | 'node';
22
+ readonly packagist?: string;
23
+ readonly compactSelection?: boolean;
24
+ readonly compactVendors?: readonly string[];
25
+ readonly acceptProjectWidening?: readonly string[];
26
+ readonly quiet?: boolean;
27
+ }
28
+ export declare function runImportPrivatePackagistPlan(options: ImportPrivatePackagistPlanOptions): Promise<number>;
29
+ export interface ImportPrivatePackagistDatesOptions {
30
+ readonly snapshot: string;
31
+ readonly map: string;
32
+ readonly baseline: string;
33
+ readonly out: string;
34
+ readonly packages?: readonly string[];
35
+ readonly quiet?: boolean;
36
+ }
37
+ export declare function runImportPrivatePackagistDates(options: ImportPrivatePackagistDatesOptions): Promise<number>;
38
+ //# sourceMappingURL=import-private-packagist.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"import-private-packagist.d.ts","sourceRoot":"","sources":["../../src/commands/import-private-packagist.ts"],"names":[],"mappings":"AAYA,MAAM,WAAW,6BAA6B;IAC5C,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,eAAe,CAAC,EAAE,OAAO,CAAC;IACnC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC;IAC3D,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,UAAU,CAAC,KAAK,CAAC;CAC1C;AAiCD,wBAAsB,8BAA8B,CAClD,OAAO,EAAE,6BAA6B,GACrC,OAAO,CAAC,MAAM,CAAC,CAyCjB;AAED,MAAM,WAAW,iCAAiC;IAChD,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,GAAG,UAAU,CAAC;IACrC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,OAAO,CAAC;IACpC,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IACtC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,gBAAgB,CAAC,EAAE,OAAO,CAAC;IACpC,QAAQ,CAAC,cAAc,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC5C,QAAQ,CAAC,qBAAqB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACnD,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;CAC1B;AAoED,wBAAsB,6BAA6B,CACjD,OAAO,EAAE,iCAAiC,GACzC,OAAO,CAAC,MAAM,CAAC,CAsDjB;AAED,MAAM,WAAW,kCAAkC;IACjD,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACtC,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,wBAAsB,8BAA8B,CAClD,OAAO,EAAE,kCAAkC,GAC1C,OAAO,CAAC,MAAM,CAAC,CAuCjB"}