@uapkg/cli 1.1.10 → 1.2.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.
Files changed (165) hide show
  1. package/dist/app/CompositionRoot.d.ts +6 -0
  2. package/dist/app/CompositionRoot.d.ts.map +1 -1
  3. package/dist/app/CompositionRoot.js +16 -0
  4. package/dist/app/CompositionRoot.js.map +1 -1
  5. package/dist/app/UAPKGApplication.d.ts.map +1 -1
  6. package/dist/app/UAPKGApplication.js +62 -2
  7. package/dist/app/UAPKGApplication.js.map +1 -1
  8. package/dist/build/BuildMetadata.d.ts +12 -0
  9. package/dist/build/BuildMetadata.d.ts.map +1 -0
  10. package/dist/build/BuildMetadata.js +6 -0
  11. package/dist/cli/UAPKGCommandLine.d.ts +98 -3
  12. package/dist/cli/UAPKGCommandLine.d.ts.map +1 -1
  13. package/dist/cli/UAPKGCommandLine.js +69 -0
  14. package/dist/cli/UAPKGCommandLine.js.map +1 -1
  15. package/dist/cli/parsing/UAPKGCommandLineParser.d.ts.map +1 -1
  16. package/dist/cli/parsing/UAPKGCommandLineParser.js +8 -1
  17. package/dist/cli/parsing/UAPKGCommandLineParser.js.map +1 -1
  18. package/dist/cli/parsing/UAPKGParserRegistry.d.ts.map +1 -1
  19. package/dist/cli/parsing/UAPKGParserRegistry.js +12 -0
  20. package/dist/cli/parsing/UAPKGParserRegistry.js.map +1 -1
  21. package/dist/cli/parsing/modules/LifecycleCommandModule.d.ts +11 -0
  22. package/dist/cli/parsing/modules/LifecycleCommandModule.d.ts.map +1 -0
  23. package/dist/cli/parsing/modules/LifecycleCommandModule.js +56 -0
  24. package/dist/cli/parsing/modules/LifecycleCommandModule.js.map +1 -0
  25. package/dist/cli/parsing/modules/LoginCommandModule.d.ts +7 -0
  26. package/dist/cli/parsing/modules/LoginCommandModule.d.ts.map +1 -0
  27. package/dist/cli/parsing/modules/LoginCommandModule.js +34 -0
  28. package/dist/cli/parsing/modules/LoginCommandModule.js.map +1 -0
  29. package/dist/cli/parsing/modules/LogoutCommandModule.d.ts +7 -0
  30. package/dist/cli/parsing/modules/LogoutCommandModule.d.ts.map +1 -0
  31. package/dist/cli/parsing/modules/LogoutCommandModule.js +29 -0
  32. package/dist/cli/parsing/modules/LogoutCommandModule.js.map +1 -0
  33. package/dist/cli/parsing/modules/PublishCommandModule.d.ts +7 -0
  34. package/dist/cli/parsing/modules/PublishCommandModule.d.ts.map +1 -0
  35. package/dist/cli/parsing/modules/PublishCommandModule.js +50 -0
  36. package/dist/cli/parsing/modules/PublishCommandModule.js.map +1 -0
  37. package/dist/cli/parsing/modules/RegistryCommandModule.d.ts.map +1 -1
  38. package/dist/cli/parsing/modules/RegistryCommandModule.js +31 -2
  39. package/dist/cli/parsing/modules/RegistryCommandModule.js.map +1 -1
  40. package/dist/cli/parsing/modules/RequestsCommandModule.d.ts +7 -0
  41. package/dist/cli/parsing/modules/RequestsCommandModule.d.ts.map +1 -0
  42. package/dist/cli/parsing/modules/RequestsCommandModule.js +63 -0
  43. package/dist/cli/parsing/modules/RequestsCommandModule.js.map +1 -0
  44. package/dist/cli/parsing/modules/WhoamiCommandModule.d.ts +7 -0
  45. package/dist/cli/parsing/modules/WhoamiCommandModule.d.ts.map +1 -0
  46. package/dist/cli/parsing/modules/WhoamiCommandModule.js +29 -0
  47. package/dist/cli/parsing/modules/WhoamiCommandModule.js.map +1 -0
  48. package/dist/cli-bootstrap.d.ts +2 -0
  49. package/dist/cli-bootstrap.d.ts.map +1 -0
  50. package/dist/cli-bootstrap.js +17 -0
  51. package/dist/cli-bootstrap.js.map +1 -0
  52. package/dist/cli.js +24 -17
  53. package/dist/commands/InstallCommand.d.ts.map +1 -1
  54. package/dist/commands/InstallCommand.js +21 -6
  55. package/dist/commands/InstallCommand.js.map +1 -1
  56. package/dist/commands/LoginCommand.d.ts +17 -0
  57. package/dist/commands/LoginCommand.d.ts.map +1 -0
  58. package/dist/commands/LoginCommand.js +73 -0
  59. package/dist/commands/LoginCommand.js.map +1 -0
  60. package/dist/commands/LogoutCommand.d.ts +15 -0
  61. package/dist/commands/LogoutCommand.d.ts.map +1 -0
  62. package/dist/commands/LogoutCommand.js +38 -0
  63. package/dist/commands/LogoutCommand.js.map +1 -0
  64. package/dist/commands/PackageLifecycleCommand.d.ts +28 -0
  65. package/dist/commands/PackageLifecycleCommand.d.ts.map +1 -0
  66. package/dist/commands/PackageLifecycleCommand.js +134 -0
  67. package/dist/commands/PackageLifecycleCommand.js.map +1 -0
  68. package/dist/commands/PostinstallCandidateBuilder.d.ts +1 -1
  69. package/dist/commands/PostinstallCandidateBuilder.d.ts.map +1 -1
  70. package/dist/commands/PostinstallCandidateBuilder.js +4 -1
  71. package/dist/commands/PostinstallCandidateBuilder.js.map +1 -1
  72. package/dist/commands/PublishCommand.d.ts +32 -0
  73. package/dist/commands/PublishCommand.d.ts.map +1 -0
  74. package/dist/commands/PublishCommand.js +260 -0
  75. package/dist/commands/PublishCommand.js.map +1 -0
  76. package/dist/commands/RegistryCommand.d.ts +13 -3
  77. package/dist/commands/RegistryCommand.d.ts.map +1 -1
  78. package/dist/commands/RegistryCommand.js +115 -11
  79. package/dist/commands/RegistryCommand.js.map +1 -1
  80. package/dist/commands/RequestsCommand.d.ts +21 -0
  81. package/dist/commands/RequestsCommand.d.ts.map +1 -0
  82. package/dist/commands/RequestsCommand.js +98 -0
  83. package/dist/commands/RequestsCommand.js.map +1 -0
  84. package/dist/commands/WhoamiCommand.d.ts +32 -0
  85. package/dist/commands/WhoamiCommand.d.ts.map +1 -0
  86. package/dist/commands/WhoamiCommand.js +75 -0
  87. package/dist/commands/WhoamiCommand.js.map +1 -0
  88. package/dist/commands/add/DependencyAddResolver.d.ts.map +1 -1
  89. package/dist/commands/add/DependencyAddResolver.js +4 -2
  90. package/dist/commands/add/DependencyAddResolver.js.map +1 -1
  91. package/dist/control-plane/AccountManager.d.ts +110 -0
  92. package/dist/control-plane/AccountManager.d.ts.map +1 -0
  93. package/dist/control-plane/AccountManager.js +1014 -0
  94. package/dist/control-plane/AccountManager.js.map +1 -0
  95. package/dist/control-plane/ArtifactObserver.d.ts +24 -0
  96. package/dist/control-plane/ArtifactObserver.d.ts.map +1 -0
  97. package/dist/control-plane/ArtifactObserver.js +63 -0
  98. package/dist/control-plane/ArtifactObserver.js.map +1 -0
  99. package/dist/control-plane/AuthMetadataStore.d.ts +15 -0
  100. package/dist/control-plane/AuthMetadataStore.d.ts.map +1 -0
  101. package/dist/control-plane/AuthMetadataStore.js +116 -0
  102. package/dist/control-plane/AuthMetadataStore.js.map +1 -0
  103. package/dist/control-plane/AuthStoragePaths.d.ts +11 -0
  104. package/dist/control-plane/AuthStoragePaths.d.ts.map +1 -0
  105. package/dist/control-plane/AuthStoragePaths.js +17 -0
  106. package/dist/control-plane/AuthStoragePaths.js.map +1 -0
  107. package/dist/control-plane/AuthenticationSelector.d.ts +21 -0
  108. package/dist/control-plane/AuthenticationSelector.d.ts.map +1 -0
  109. package/dist/control-plane/AuthenticationSelector.js +64 -0
  110. package/dist/control-plane/AuthenticationSelector.js.map +1 -0
  111. package/dist/control-plane/ControlPlaneClient.d.ts +32 -0
  112. package/dist/control-plane/ControlPlaneClient.d.ts.map +1 -0
  113. package/dist/control-plane/ControlPlaneClient.js +280 -0
  114. package/dist/control-plane/ControlPlaneClient.js.map +1 -0
  115. package/dist/control-plane/ControlPlaneEndpoints.d.ts +13 -0
  116. package/dist/control-plane/ControlPlaneEndpoints.d.ts.map +1 -0
  117. package/dist/control-plane/ControlPlaneEndpoints.js +19 -0
  118. package/dist/control-plane/ControlPlaneEndpoints.js.map +1 -0
  119. package/dist/control-plane/ControlPlaneTypes.d.ts +168 -0
  120. package/dist/control-plane/ControlPlaneTypes.d.ts.map +1 -0
  121. package/dist/control-plane/ControlPlaneTypes.js +93 -0
  122. package/dist/control-plane/ControlPlaneTypes.js.map +1 -0
  123. package/dist/control-plane/CredentialStore.d.ts +28 -0
  124. package/dist/control-plane/CredentialStore.d.ts.map +1 -0
  125. package/dist/control-plane/CredentialStore.js +87 -0
  126. package/dist/control-plane/CredentialStore.js.map +1 -0
  127. package/dist/control-plane/DPoPKeyStore.d.ts +11 -0
  128. package/dist/control-plane/DPoPKeyStore.d.ts.map +1 -0
  129. package/dist/control-plane/DPoPKeyStore.js +54 -0
  130. package/dist/control-plane/DPoPKeyStore.js.map +1 -0
  131. package/dist/control-plane/GitHubActionsOidcCredentialProvider.d.ts +6 -0
  132. package/dist/control-plane/GitHubActionsOidcCredentialProvider.d.ts.map +1 -0
  133. package/dist/control-plane/GitHubActionsOidcCredentialProvider.js +67 -0
  134. package/dist/control-plane/GitHubActionsOidcCredentialProvider.js.map +1 -0
  135. package/dist/control-plane/PublishIdempotencyStore.d.ts +18 -0
  136. package/dist/control-plane/PublishIdempotencyStore.d.ts.map +1 -0
  137. package/dist/control-plane/PublishIdempotencyStore.js +71 -0
  138. package/dist/control-plane/PublishIdempotencyStore.js.map +1 -0
  139. package/dist/control-plane/RegistryGrantLock.d.ts +35 -0
  140. package/dist/control-plane/RegistryGrantLock.d.ts.map +1 -0
  141. package/dist/control-plane/RegistryGrantLock.js +199 -0
  142. package/dist/control-plane/RegistryGrantLock.js.map +1 -0
  143. package/dist/control-plane/RegistryTrustResolver.d.ts +17 -0
  144. package/dist/control-plane/RegistryTrustResolver.d.ts.map +1 -0
  145. package/dist/control-plane/RegistryTrustResolver.js +140 -0
  146. package/dist/control-plane/RegistryTrustResolver.js.map +1 -0
  147. package/dist/index.d.ts +16 -3
  148. package/dist/index.d.ts.map +1 -1
  149. package/dist/index.js +16 -2
  150. package/dist/index.js.map +1 -1
  151. package/dist/postinstall/markers/MarkerIntegrityValidator.d.ts +1 -1
  152. package/dist/prompts/InkPromptService.d.ts +1 -0
  153. package/dist/prompts/InkPromptService.d.ts.map +1 -1
  154. package/dist/prompts/InkPromptService.js +20 -0
  155. package/dist/prompts/InkPromptService.js.map +1 -1
  156. package/dist/prompts/PromptService.d.ts +2 -0
  157. package/dist/prompts/PromptService.d.ts.map +1 -1
  158. package/dist/reporting/JsonReporter.d.ts +2 -0
  159. package/dist/reporting/JsonReporter.d.ts.map +1 -1
  160. package/dist/reporting/JsonReporter.js +6 -0
  161. package/dist/reporting/JsonReporter.js.map +1 -1
  162. package/package.json +21 -15
  163. package/dist/cli.d.ts +0 -3
  164. package/dist/cli.d.ts.map +0 -1
  165. package/dist/cli.js.map +0 -1
@@ -0,0 +1,260 @@
1
+ import { execFile } from 'node:child_process';
2
+ import { randomUUID } from 'node:crypto';
3
+ import { existsSync } from 'node:fs';
4
+ import { readFile } from 'node:fs/promises';
5
+ import { isAbsolute, join } from 'node:path';
6
+ import { promisify } from 'node:util';
7
+ import { readPackageClaimsFromArchive } from '@uapkg/package-claims';
8
+ import { getRegistryRepoPath } from '@uapkg/registry-core';
9
+ import { describeControlPlaneError } from '../control-plane/AccountManager.js';
10
+ import { ArtifactObserver } from '../control-plane/ArtifactObserver.js';
11
+ import { AuthenticationSelector } from '../control-plane/AuthenticationSelector.js';
12
+ import { ControlPlaneClient } from '../control-plane/ControlPlaneClient.js';
13
+ import { ControlPlaneError, } from '../control-plane/ControlPlaneTypes.js';
14
+ import { PublishIdempotencyStore } from '../control-plane/PublishIdempotencyStore.js';
15
+ import { InkPromptService } from '../prompts/InkPromptService.js';
16
+ const execFileAsync = promisify(execFile);
17
+ const TERMINAL_STATUSES = new Set([
18
+ 'ready',
19
+ 'ready_superseded',
20
+ 'rejected',
21
+ 'operationally_failed',
22
+ ]);
23
+ const SUCCESS_STATUSES = new Set(['ready', 'ready_superseded']);
24
+ const PUBLISH_WATCH_TIMEOUT_MS = 30 * 60 * 1000;
25
+ /**
26
+ * Artifact-first publish (PS-REQ-002): the CLI observes the exact release
27
+ * artifact (download or `--asset-path`), reads packaged claims from it, and
28
+ * submits the route-derived publish operation. The packaged archive — never
29
+ * the working tree — is what gets published.
30
+ */
31
+ export class PublishCommand {
32
+ root;
33
+ options;
34
+ constructor(root, options) {
35
+ this.root = root;
36
+ this.options = options;
37
+ }
38
+ async execute() {
39
+ try {
40
+ const manifestResult = await this.root.packageManifest.readManifest();
41
+ if (!manifestResult.ok) {
42
+ throw new Error(manifestResult.diagnostics[0]?.message ?? 'Unable to read uapkg.json.');
43
+ }
44
+ const manifest = manifestResult.value;
45
+ const registryAlias = this.options.registry ?? manifest.publish?.registry;
46
+ const trust = await this.root.registryTrustResolver.resolve(registryAlias);
47
+ const source = await this.resolveSource(manifest.version, manifest.publish);
48
+ const observer = new ArtifactObserver();
49
+ const artifact = this.options.assetPath
50
+ ? await observer.observeLocalArchive(resolveAssetPath(this.root.cwd, this.options.assetPath))
51
+ : await observer.downloadReleaseAsset(source.repository, source.releaseTag, source.assetName);
52
+ try {
53
+ const claimsResult = await readPackageClaimsFromArchive(artifact.archivePath);
54
+ if (!claimsResult.ok) {
55
+ throw new Error(claimsResult.diagnostics[0]?.message ?? 'Unable to read the packaged uapkg.json from the artifact.');
56
+ }
57
+ const claims = claimsResult.value;
58
+ if (this.options.outputFormat === 'text' &&
59
+ (claims.name !== manifest.name || claims.version !== manifest.version)) {
60
+ process.stderr.write(`Publishing ${claims.name}@${claims.version} from the packaged artifact (local manifest says ${manifest.name}@${manifest.version}).\n`);
61
+ }
62
+ const registryType = await readTrustedRegistryType(trust.cacheShortId);
63
+ if (registryType === 'public' && claims.private) {
64
+ throw new Error(`"${claims.name}" is marked private in its packaged manifest; a public UAPKG registry does not accept private packages.`);
65
+ }
66
+ const scopedOwner = scopedOwnerName(claims.name);
67
+ const configuredOwner = normalizeOwner(this.options.owner ?? manifest.publish?.owner);
68
+ if (scopedOwner && configuredOwner && configuredOwner.toLowerCase() !== scopedOwner.toLowerCase()) {
69
+ throw new Error(`Package "${claims.name}" belongs to the "${scopedOwner}" namespace; --owner cannot select "${configuredOwner}".`);
70
+ }
71
+ const owner = scopedOwner ?? configuredOwner;
72
+ const selector = new AuthenticationSelector(this.root.accountManager, new InkPromptService());
73
+ const requestedScopes = this.options.detach
74
+ ? ['publishing.request.create']
75
+ : ['publishing.request.create', 'publishing.request.read.self'];
76
+ let authentication = await selector.select(this.options.auth, trust, requestedScopes, true);
77
+ const submission = {
78
+ registryId: trust.registryId,
79
+ ...(owner ? { ownerOrganizationName: owner } : {}),
80
+ payload: {
81
+ packageName: claims.name,
82
+ packageVersion: claims.version,
83
+ source,
84
+ observedIntegrity: { sha256: artifact.sha256, sizeBytes: artifact.sizeBytes },
85
+ claims,
86
+ },
87
+ };
88
+ const idempotencyStore = new PublishIdempotencyStore();
89
+ const submissionDigest = PublishIdempotencyStore.submissionDigest('publish', submission);
90
+ const idempotencyKey = idempotencyStore.getOrCreate(submissionDigest, () => randomUUID());
91
+ const client = new ControlPlaneClient(trust.apiBaseUrl);
92
+ const created = await client.submitRegistryRequest(authentication.credential, 'publish', submission, {
93
+ idempotencyKey,
94
+ otp: authentication.otp,
95
+ });
96
+ if (this.options.detach) {
97
+ this.printCreated(created.requestId, created.status, trust.alias);
98
+ return 0;
99
+ }
100
+ let request = await client.getRegistryRequest(authentication.credential, created.requestId);
101
+ let previousStatus = '';
102
+ const deadline = Date.now() + PUBLISH_WATCH_TIMEOUT_MS;
103
+ while (!TERMINAL_STATUSES.has(request.status)) {
104
+ if (Date.now() >= deadline) {
105
+ throw new Error(`Timed out waiting for publishing request ${request.id}. Check it with \`uapkg requests status ${request.id}\`.`);
106
+ }
107
+ if (this.options.outputFormat === 'text' && request.status !== previousStatus) {
108
+ process.stdout.write(`${request.id}: ${request.status}${request.currentStep ? ` (${request.currentStep})` : ''}\n`);
109
+ previousStatus = request.status;
110
+ }
111
+ await delay(2_000);
112
+ try {
113
+ request = await client.getRegistryRequest(authentication.credential, created.requestId);
114
+ }
115
+ catch (error) {
116
+ if (!(error instanceof ControlPlaneError) || error.status !== 401)
117
+ throw error;
118
+ if (authentication.kind === 'gat')
119
+ throw error;
120
+ if (authentication.kind === 'login') {
121
+ this.root.accountManager.invalidateAccessCredentials(trust);
122
+ }
123
+ authentication = await selector.select(authentication.kind, trust, ['publishing.request.read.self'], false);
124
+ request = await client.getRegistryRequest(authentication.credential, created.requestId);
125
+ }
126
+ }
127
+ idempotencyStore.clear(submissionDigest);
128
+ if (SUCCESS_STATUSES.has(request.status)) {
129
+ let refreshWarning;
130
+ try {
131
+ await this.root.registryTrustResolver.forceRefresh(trust);
132
+ }
133
+ catch (error) {
134
+ refreshWarning = error instanceof Error ? error.message : String(error);
135
+ }
136
+ this.printTerminal(request, trust.alias, refreshWarning);
137
+ return 0;
138
+ }
139
+ this.printTerminal(request, trust.alias);
140
+ return 1;
141
+ }
142
+ finally {
143
+ await artifact.cleanup();
144
+ }
145
+ }
146
+ catch (error) {
147
+ process.stderr.write(`${describeControlPlaneError(error)}\n`);
148
+ return 1;
149
+ }
150
+ }
151
+ async resolveSource(packageVersion, manifestPublish) {
152
+ const repository = normalizeGitHubRepository(this.options.repository ?? manifestPublish?.repository ?? (await this.gitOrigin()));
153
+ const releaseTag = (this.options.tag ?? `v${packageVersion}`).trim();
154
+ const assetName = (this.options.asset ?? manifestPublish?.asset ?? 'package.tgz').trim();
155
+ if (!releaseTag)
156
+ throw new Error('The GitHub Release tag cannot be empty.');
157
+ if (!assetName || assetName.includes('/') || assetName.includes('\\')) {
158
+ throw new Error('The GitHub Release asset must be a file name, not a path.');
159
+ }
160
+ return {
161
+ type: 'github_release',
162
+ repository,
163
+ releaseTag,
164
+ assetName,
165
+ };
166
+ }
167
+ async gitOrigin() {
168
+ const git = this.root.config.get('git') ?? 'git';
169
+ try {
170
+ const { stdout } = await execFileAsync(git, ['remote', 'get-url', 'origin'], {
171
+ cwd: this.root.cwd,
172
+ timeout: 10_000,
173
+ });
174
+ return stdout.trim();
175
+ }
176
+ catch (error) {
177
+ throw new Error('Unable to derive the GitHub repository from remote "origin". Use --repository.', {
178
+ cause: error,
179
+ });
180
+ }
181
+ }
182
+ printCreated(requestId, status, registryAlias) {
183
+ if (this.options.outputFormat === 'json') {
184
+ process.stdout.write(`${JSON.stringify({ ok: true, registry: registryAlias, requestId, status })}\n`);
185
+ return;
186
+ }
187
+ process.stdout.write(`Publishing request ${requestId} submitted to "${registryAlias}" (${status}).\n`);
188
+ }
189
+ printTerminal(request, registryAlias, refreshWarning) {
190
+ if (this.options.outputFormat === 'json') {
191
+ process.stdout.write(`${JSON.stringify({
192
+ ok: SUCCESS_STATUSES.has(request.status),
193
+ registry: registryAlias,
194
+ request,
195
+ ...(refreshWarning ? { registryRefreshWarning: refreshWarning } : {}),
196
+ })}\n`);
197
+ return;
198
+ }
199
+ process.stdout.write(`Publishing request ${request.id}: ${request.status}.\n`);
200
+ if (request.status === 'ready_superseded') {
201
+ process.stdout.write('The publication was accepted; a newer change to the same package is already projected.\n');
202
+ }
203
+ if (refreshWarning) {
204
+ process.stderr.write(`Package publication succeeded, but the local registry refresh failed: ${refreshWarning}\n`);
205
+ }
206
+ }
207
+ }
208
+ /** Reads the installer-trusted registry type from the projected registry snapshot. */
209
+ async function readTrustedRegistryType(cacheShortId) {
210
+ const metaPath = join(getRegistryRepoPath(cacheShortId), '.uapkg', 'registry.meta.json');
211
+ if (!existsSync(metaPath))
212
+ return undefined;
213
+ try {
214
+ const raw = await readFile(metaPath, 'utf8');
215
+ const parsed = JSON.parse(raw);
216
+ const value = parsed.registry?.registryType;
217
+ return value === 'public' || value === 'private' ? value : undefined;
218
+ }
219
+ catch {
220
+ return undefined;
221
+ }
222
+ }
223
+ function resolveAssetPath(cwd, assetPath) {
224
+ return isAbsolute(assetPath) ? assetPath : join(cwd, assetPath);
225
+ }
226
+ function normalizeGitHubRepository(input) {
227
+ let value = input.trim();
228
+ const scp = value.match(/^git@github\.com:([^/]+)\/(.+)$/i);
229
+ if (scp)
230
+ value = `${scp[1]}/${scp[2]}`;
231
+ if (value.includes('://')) {
232
+ const url = new URL(value);
233
+ if (url.hostname.toLowerCase() !== 'github.com') {
234
+ throw new Error('Publishing sources must be hosted on github.com in UAPKG v1.');
235
+ }
236
+ value = url.pathname.replace(/^\/+/, '');
237
+ }
238
+ value = value.replace(/\.git$/i, '').replace(/\/+$/, '');
239
+ if (!/^[A-Za-z0-9_.-]+\/[A-Za-z0-9_.-]+$/.test(value)) {
240
+ throw new Error('Expected a GitHub repository in owner/repository form.');
241
+ }
242
+ return value.toLowerCase();
243
+ }
244
+ function scopedOwnerName(packageName) {
245
+ const match = packageName.match(/^@([^/]+)\/[^/]+$/);
246
+ return match?.[1]?.toLowerCase();
247
+ }
248
+ function normalizeOwner(value) {
249
+ if (value === undefined)
250
+ return undefined;
251
+ const owner = value.trim().toLowerCase();
252
+ if (!/^[a-z0-9][a-z0-9-_]*$/.test(owner)) {
253
+ throw new Error('The publish owner must be a valid UAPKG organization name.');
254
+ }
255
+ return owner;
256
+ }
257
+ function delay(milliseconds) {
258
+ return new Promise((resolve) => setTimeout(resolve, milliseconds));
259
+ }
260
+ //# sourceMappingURL=PublishCommand.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PublishCommand.js","sourceRoot":"","sources":["../../src/commands/PublishCommand.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
+ import type { CompositionRoot } from '../app/CompositionRoot.js';
1
2
  import type { UAPKGConfigScope, UAPKGOutputFormat, UAPKGRegistryAction } from '../cli/UAPKGCommandLine.js';
2
3
  import type { Command } from './Command.js';
3
4
  export interface RegistryCommandOptions {
4
- cwd: string;
5
5
  action: UAPKGRegistryAction;
6
6
  name?: string;
7
7
  url?: string;
@@ -10,20 +10,30 @@ export interface RegistryCommandOptions {
10
10
  scope?: UAPKGConfigScope;
11
11
  output: UAPKGOutputFormat;
12
12
  }
13
+ export interface RegistryCommandRuntime {
14
+ isInteractiveTerminal(): boolean;
15
+ }
13
16
  export declare class RegistryCommand implements Command {
17
+ private readonly root;
14
18
  private readonly options;
15
- private readonly reporter;
16
- constructor(options: RegistryCommandOptions);
19
+ private readonly runtime;
20
+ private configDiagnostics;
21
+ constructor(root: CompositionRoot, options: RegistryCommandOptions, runtime?: RegistryCommandRuntime);
17
22
  execute(): Promise<number>;
18
23
  private executeList;
19
24
  private executeAdd;
20
25
  private executeRemove;
21
26
  private executeUse;
27
+ private executeAuth;
28
+ private executeRefresh;
29
+ private resolveRegistryName;
30
+ private withAuthenticationGuidance;
22
31
  private resolveRef;
23
32
  private scopeOptions;
24
33
  private persistPlan;
25
34
  private fail;
26
35
  private reportIfText;
36
+ private succeedOperational;
27
37
  private print;
28
38
  }
29
39
  //# sourceMappingURL=RegistryCommand.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"RegistryCommand.d.ts","sourceRoot":"","sources":["../../src/commands/RegistryCommand.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAE3G,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAE5C,MAAM,WAAW,sBAAsB;IACrC,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,mBAAmB,CAAC;IAC5B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,QAAQ,GAAG,KAAK,GAAG,KAAK,CAAC;IACnC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,gBAAgB,CAAC;IACzB,MAAM,EAAE,iBAAiB,CAAC;CAC3B;AAED,qBAAa,eAAgB,YAAW,OAAO;IAGjC,OAAO,CAAC,QAAQ,CAAC,OAAO;IAFpC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA4B;gBAExB,OAAO,EAAE,sBAAsB;IAE/C,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC;IAoBvC,OAAO,CAAC,WAAW;IAQnB,OAAO,CAAC,UAAU;IA6BlB,OAAO,CAAC,aAAa;IAgBrB,OAAO,CAAC,UAAU;IAgBlB,OAAO,CAAC,UAAU;IAMlB,OAAO,CAAC,YAAY;IAIpB,OAAO,CAAC,WAAW;IAKnB,OAAO,CAAC,IAAI;IAKZ,OAAO,CAAC,YAAY;IAMpB,OAAO,CAAC,KAAK;CAOd"}
1
+ {"version":3,"file":"RegistryCommand.d.ts","sourceRoot":"","sources":["../../src/commands/RegistryCommand.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,KAAK,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAC3G,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAE5C,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,mBAAmB,CAAC;IAC5B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,QAAQ,GAAG,KAAK,GAAG,KAAK,CAAC;IACnC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,gBAAgB,CAAC;IACzB,MAAM,EAAE,iBAAiB,CAAC;CAC3B;AAED,MAAM,WAAW,sBAAsB;IACrC,qBAAqB,IAAI,OAAO,CAAC;CAClC;AAMD,qBAAa,eAAgB,YAAW,OAAO;IAI3C,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,OAAO;IAL1B,OAAO,CAAC,iBAAiB,CAA6B;gBAGnC,IAAI,EAAE,eAAe,EACrB,OAAO,EAAE,sBAAsB,EAC/B,OAAO,GAAE,sBAAuC;IAGtD,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC;IAyBvC,OAAO,CAAC,WAAW;IAQnB,OAAO,CAAC,UAAU;IA6BlB,OAAO,CAAC,aAAa;IAgBrB,OAAO,CAAC,UAAU;YAgBJ,WAAW;YAoCX,cAAc;IAgC5B,OAAO,CAAC,mBAAmB;IAa3B,OAAO,CAAC,0BAA0B;IAclC,OAAO,CAAC,UAAU;IAMlB,OAAO,CAAC,YAAY;IAIpB,OAAO,CAAC,WAAW;IAKnB,OAAO,CAAC,IAAI;IAaZ,OAAO,CAAC,YAAY;IAMpB,OAAO,CAAC,kBAAkB;IAoB1B,OAAO,CAAC,KAAK;CAOd"}
@@ -1,18 +1,24 @@
1
1
  import fs from 'node:fs';
2
2
  import path from 'node:path';
3
- import { createConfig } from '@uapkg/config';
4
3
  import { createParseErrorDiagnostic } from '@uapkg/diagnostics';
5
4
  import Log from '@uapkg/log';
6
- import { DiagnosticReporter } from '../reporting/DiagnosticReporter.js';
5
+ const processRuntime = {
6
+ isInteractiveTerminal: () => process.stdin.isTTY === true && process.stderr.isTTY === true,
7
+ };
7
8
  export class RegistryCommand {
9
+ root;
8
10
  options;
9
- reporter = new DiagnosticReporter();
10
- constructor(options) {
11
+ runtime;
12
+ configDiagnostics = [];
13
+ constructor(root, options, runtime = processRuntime) {
14
+ this.root = root;
11
15
  this.options = options;
16
+ this.runtime = runtime;
12
17
  }
13
18
  async execute() {
14
- const config = createConfig({ cwd: this.options.cwd });
15
- this.reportIfText(config.getDiagnostics());
19
+ const config = this.root.config;
20
+ this.configDiagnostics = config.getDiagnostics();
21
+ this.reportIfText(this.configDiagnostics);
16
22
  switch (this.options.action) {
17
23
  case 'list':
18
24
  return this.executeList(config);
@@ -22,6 +28,10 @@ export class RegistryCommand {
22
28
  return this.executeRemove(config);
23
29
  case 'use':
24
30
  return this.executeUse(config);
31
+ case 'auth':
32
+ return this.executeAuth(config);
33
+ case 'refresh':
34
+ return this.executeRefresh(config);
25
35
  default:
26
36
  return this.fail([
27
37
  createParseErrorDiagnostic(`Unsupported registry action: ${this.options.action}`),
@@ -50,7 +60,7 @@ export class RegistryCommand {
50
60
  if (!setRef.ok)
51
61
  return this.fail(setRef.diagnostics);
52
62
  this.persistPlan(setRef.value.file, setRef.value.values);
53
- config.reload({ cwd: this.options.cwd });
63
+ config.reload({ cwd: this.root.cwd });
54
64
  this.reportIfText(config.getDiagnostics());
55
65
  this.print({
56
66
  action: 'add',
@@ -70,7 +80,7 @@ export class RegistryCommand {
70
80
  if (!plan.ok)
71
81
  return this.fail(plan.diagnostics);
72
82
  this.persistPlan(plan.value.file, plan.value.values);
73
- config.reload({ cwd: this.options.cwd });
83
+ config.reload({ cwd: this.root.cwd });
74
84
  this.reportIfText(config.getDiagnostics());
75
85
  this.print({ action: 'remove', name, scope: this.options.scope ?? 'auto' });
76
86
  return 0;
@@ -84,11 +94,83 @@ export class RegistryCommand {
84
94
  if (!plan.ok)
85
95
  return this.fail(plan.diagnostics);
86
96
  this.persistPlan(plan.value.file, plan.value.values);
87
- config.reload({ cwd: this.options.cwd });
97
+ config.reload({ cwd: this.root.cwd });
88
98
  this.reportIfText(config.getDiagnostics());
89
99
  this.print({ action: 'use', name, scope: this.options.scope ?? 'auto' });
90
100
  return 0;
91
101
  }
102
+ async executeAuth(config) {
103
+ if (this.options.scope) {
104
+ return this.fail([createParseErrorDiagnostic('registry auth does not accept --global or --local.')]);
105
+ }
106
+ const name = this.resolveRegistryName(config);
107
+ if (!name)
108
+ return 1;
109
+ const registryResult = this.root.registryCore.getOrCreateRegistry(name);
110
+ if (!registryResult.ok)
111
+ return this.fail(registryResult.diagnostics);
112
+ let accessResult = await registryResult.value.probeAccess({ interactive: false });
113
+ let usedInteractivePrompt = false;
114
+ const hasTerminal = this.runtime.isInteractiveTerminal();
115
+ if (!accessResult.ok && hasTerminal) {
116
+ usedInteractivePrompt = true;
117
+ accessResult = await registryResult.value.probeAccess({ interactive: true });
118
+ }
119
+ if (!accessResult.ok) {
120
+ return this.fail(this.withAuthenticationGuidance(accessResult.diagnostics, name, hasTerminal));
121
+ }
122
+ this.succeedOperational('auth', {
123
+ action: 'auth',
124
+ name,
125
+ accessible: true,
126
+ interactive: usedInteractivePrompt,
127
+ }, `Registry "${name}" is accessible with the current system Git credentials.`, accessResult.diagnostics);
128
+ return 0;
129
+ }
130
+ async executeRefresh(config) {
131
+ if (this.options.scope) {
132
+ return this.fail([createParseErrorDiagnostic('registry refresh does not accept --global or --local.')]);
133
+ }
134
+ const name = this.resolveRegistryName(config);
135
+ if (!name)
136
+ return 1;
137
+ const registryResult = this.root.registryCore.getOrCreateRegistry(name);
138
+ if (!registryResult.ok)
139
+ return this.fail(registryResult.diagnostics);
140
+ const refreshResult = await registryResult.value.ensureUpToDate({
141
+ bypassFreshnessCheck: true,
142
+ logicalRegistryName: name,
143
+ });
144
+ if (!refreshResult.ok)
145
+ return this.fail(refreshResult.diagnostics);
146
+ if (refreshResult.value === 'Failed') {
147
+ const diagnostics = refreshResult.diagnostics.length > 0
148
+ ? refreshResult.diagnostics
149
+ : [createParseErrorDiagnostic(`Registry "${name}" could not be refreshed.`)];
150
+ return this.fail(diagnostics);
151
+ }
152
+ this.succeedOperational('refresh', { action: 'refresh', name, result: refreshResult.value }, `Registry "${name}" refreshed.`, refreshResult.diagnostics);
153
+ return 0;
154
+ }
155
+ resolveRegistryName(config) {
156
+ const candidate = this.options.name ?? config.get('registry');
157
+ if (typeof candidate !== 'string' || candidate.trim().length === 0) {
158
+ this.fail([
159
+ createParseErrorDiagnostic(`registry ${this.options.action} requires a registry alias or a selected default registry.`),
160
+ ]);
161
+ return undefined;
162
+ }
163
+ return candidate.trim();
164
+ }
165
+ withAuthenticationGuidance(diagnostics, name, interactiveTerminalAvailable) {
166
+ return diagnostics.map((diagnostic) => ({
167
+ ...diagnostic,
168
+ message: `Git could not access registry "${name}".`,
169
+ hint: interactiveTerminalAvailable
170
+ ? 'Configure access with a system Git credential helper, SSH key/agent, or deploy key, then retry.'
171
+ : `No interactive terminal is available. Configure a system Git credential helper, GIT_ASKPASS, SSH key/agent, or CI deploy key, then retry 'uapkg registry auth ${name}'.`,
172
+ }));
173
+ }
92
174
  resolveRef() {
93
175
  const type = this.options.refType ?? 'branch';
94
176
  const value = this.options.refValue ?? 'main';
@@ -102,13 +184,35 @@ export class RegistryCommand {
102
184
  fs.writeFileSync(filePath, `${JSON.stringify(values, null, 2)}\n`, 'utf8');
103
185
  }
104
186
  fail(diagnostics) {
105
- this.reporter.reportAll(diagnostics);
187
+ if (this.options.output === 'json') {
188
+ this.root.json.emit({
189
+ status: 'error',
190
+ command: `registry ${this.options.action}`,
191
+ diagnostics: [...this.configDiagnostics, ...diagnostics],
192
+ });
193
+ }
194
+ else {
195
+ this.root.diagnostics.reportAll(diagnostics);
196
+ }
106
197
  return 1;
107
198
  }
108
199
  reportIfText(diagnostics) {
109
200
  if (this.options.output === 'text') {
110
- this.reporter.reportAll(diagnostics);
201
+ this.root.diagnostics.reportAll(diagnostics);
202
+ }
203
+ }
204
+ succeedOperational(action, data, text, diagnostics) {
205
+ if (this.options.output === 'json') {
206
+ this.root.json.emit({
207
+ status: 'ok',
208
+ command: `registry ${action}`,
209
+ data,
210
+ diagnostics: [...this.configDiagnostics, ...diagnostics],
211
+ });
212
+ return;
111
213
  }
214
+ this.root.diagnostics.reportAll(diagnostics);
215
+ process.stdout.write(`${text}\n`);
112
216
  }
113
217
  print(value) {
114
218
  if (this.options.output === 'json' || typeof value === 'object') {
@@ -1 +1 @@
1
- {"version":3,"file":"RegistryCommand.js","sourceRoot":"","sources":["../../src/commands/RegistryCommand.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RegistryCommand.js","sourceRoot":"","sources":["../../src/commands/RegistryCommand.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ import type { CompositionRoot } from '../app/CompositionRoot.js';
2
+ import type { UAPKGOutputFormat } from '../cli/UAPKGCommandLine.js';
3
+ import { type RegistryRequestStatus } from '../control-plane/ControlPlaneTypes.js';
4
+ import type { Command } from './Command.js';
5
+ export interface RequestsCommandOptions {
6
+ readonly action: 'list' | 'status';
7
+ readonly requestId?: string;
8
+ readonly registry?: string;
9
+ readonly status?: RegistryRequestStatus;
10
+ readonly watch: boolean;
11
+ readonly outputFormat: UAPKGOutputFormat;
12
+ }
13
+ export declare class RequestsCommand implements Command {
14
+ private readonly root;
15
+ private readonly options;
16
+ constructor(root: CompositionRoot, options: RequestsCommandOptions);
17
+ execute(): Promise<number>;
18
+ private printList;
19
+ private printRequest;
20
+ }
21
+ //# sourceMappingURL=RequestsCommand.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RequestsCommand.d.ts","sourceRoot":"","sources":["../../src/commands/RequestsCommand.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAGpE,OAAO,EAAqB,KAAK,qBAAqB,EAAE,MAAM,uCAAuC,CAAC;AACtG,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAE5C,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,QAAQ,CAAC;IACnC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,MAAM,CAAC,EAAE,qBAAqB,CAAC;IACxC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,YAAY,EAAE,iBAAiB,CAAC;CAC1C;AASD,qBAAa,eAAgB,YAAW,OAAO;IAE3C,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,OAAO;gBADP,IAAI,EAAE,eAAe,EACrB,OAAO,EAAE,sBAAsB;IAGrC,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC;IAgDvC,OAAO,CAAC,SAAS;IAsBjB,OAAO,CAAC,YAAY;CAqBrB"}