@inquir/compute-cli 0.3.0 → 0.4.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 (106) hide show
  1. package/README.md +528 -406
  2. package/dist/commands/admin-tenants.d.ts +11 -0
  3. package/dist/commands/admin-tenants.d.ts.map +1 -0
  4. package/dist/commands/admin-tenants.js +318 -0
  5. package/dist/commands/admin-tenants.js.map +1 -0
  6. package/dist/commands/admin.d.ts +2 -0
  7. package/dist/commands/admin.d.ts.map +1 -0
  8. package/dist/commands/admin.js +445 -0
  9. package/dist/commands/admin.js.map +1 -0
  10. package/dist/commands/apps-describe.d.ts +9 -0
  11. package/dist/commands/apps-describe.d.ts.map +1 -0
  12. package/dist/commands/apps-describe.js +125 -0
  13. package/dist/commands/apps-describe.js.map +1 -0
  14. package/dist/commands/apps-instances.d.ts +18 -0
  15. package/dist/commands/apps-instances.d.ts.map +1 -0
  16. package/dist/commands/apps-instances.js +87 -0
  17. package/dist/commands/apps-instances.js.map +1 -0
  18. package/dist/commands/apps-observability.d.ts +15 -0
  19. package/dist/commands/apps-observability.d.ts.map +1 -0
  20. package/dist/commands/apps-observability.js +310 -0
  21. package/dist/commands/apps-observability.js.map +1 -0
  22. package/dist/commands/apps-promote.d.ts +31 -0
  23. package/dist/commands/apps-promote.d.ts.map +1 -0
  24. package/dist/commands/apps-promote.js +115 -0
  25. package/dist/commands/apps-promote.js.map +1 -0
  26. package/dist/commands/apps-resources.d.ts +6 -0
  27. package/dist/commands/apps-resources.d.ts.map +1 -0
  28. package/dist/commands/apps-resources.js +107 -0
  29. package/dist/commands/apps-resources.js.map +1 -0
  30. package/dist/commands/apps.d.ts +118 -2
  31. package/dist/commands/apps.d.ts.map +1 -1
  32. package/dist/commands/apps.js +999 -110
  33. package/dist/commands/apps.js.map +1 -1
  34. package/dist/commands/config.d.ts.map +1 -1
  35. package/dist/commands/config.js +7 -3
  36. package/dist/commands/config.js.map +1 -1
  37. package/dist/commands/delete.d.ts.map +1 -1
  38. package/dist/commands/delete.js +10 -2
  39. package/dist/commands/delete.js.map +1 -1
  40. package/dist/commands/deploy.js +3 -3
  41. package/dist/commands/deploy.js.map +1 -1
  42. package/dist/commands/init.js +15 -15
  43. package/dist/commands/login.d.ts.map +1 -1
  44. package/dist/commands/login.js +78 -33
  45. package/dist/commands/login.js.map +1 -1
  46. package/dist/commands/logout.d.ts.map +1 -1
  47. package/dist/commands/logout.js +37 -5
  48. package/dist/commands/logout.js.map +1 -1
  49. package/dist/commands/mcp.d.ts +13 -0
  50. package/dist/commands/mcp.d.ts.map +1 -1
  51. package/dist/commands/mcp.js +184 -77
  52. package/dist/commands/mcp.js.map +1 -1
  53. package/dist/commands/projects.d.ts.map +1 -1
  54. package/dist/commands/projects.js +107 -11
  55. package/dist/commands/projects.js.map +1 -1
  56. package/dist/index.js +9 -1
  57. package/dist/index.js.map +1 -1
  58. package/dist/lib/finite-source-command-client.d.ts +3 -0
  59. package/dist/lib/finite-source-command-client.d.ts.map +1 -0
  60. package/dist/lib/finite-source-command-client.js +3 -0
  61. package/dist/lib/finite-source-command-client.js.map +1 -0
  62. package/dist/lib/mcp-io.d.ts +23 -0
  63. package/dist/lib/mcp-io.d.ts.map +1 -0
  64. package/dist/lib/mcp-io.js +185 -0
  65. package/dist/lib/mcp-io.js.map +1 -0
  66. package/dist/lib/mcp-source-commands.d.ts +17 -0
  67. package/dist/lib/mcp-source-commands.d.ts.map +1 -0
  68. package/dist/lib/mcp-source-commands.js +345 -0
  69. package/dist/lib/mcp-source-commands.js.map +1 -0
  70. package/dist/utils/api.d.ts +39 -14
  71. package/dist/utils/api.d.ts.map +1 -1
  72. package/dist/utils/api.js +43 -6
  73. package/dist/utils/api.js.map +1 -1
  74. package/dist/utils/apps-presentation.d.ts +8 -1
  75. package/dist/utils/apps-presentation.d.ts.map +1 -1
  76. package/dist/utils/apps-presentation.js +35 -1
  77. package/dist/utils/apps-presentation.js.map +1 -1
  78. package/dist/utils/auth.d.ts +21 -1
  79. package/dist/utils/auth.d.ts.map +1 -1
  80. package/dist/utils/auth.js +119 -22
  81. package/dist/utils/auth.js.map +1 -1
  82. package/dist/utils/browser.d.ts +12 -0
  83. package/dist/utils/browser.d.ts.map +1 -1
  84. package/dist/utils/browser.js +37 -16
  85. package/dist/utils/browser.js.map +1 -1
  86. package/dist/utils/errors.d.ts.map +1 -1
  87. package/dist/utils/errors.js +41 -0
  88. package/dist/utils/errors.js.map +1 -1
  89. package/dist/utils/msys-path.d.ts +14 -0
  90. package/dist/utils/msys-path.d.ts.map +1 -0
  91. package/dist/utils/msys-path.js +55 -0
  92. package/dist/utils/msys-path.js.map +1 -0
  93. package/dist/utils/package-metadata.js +1 -1
  94. package/dist/utils/project-context.d.ts.map +1 -1
  95. package/dist/utils/project-context.js +7 -5
  96. package/dist/utils/project-context.js.map +1 -1
  97. package/dist/utils/project-lookup.d.ts +10 -0
  98. package/dist/utils/project-lookup.d.ts.map +1 -0
  99. package/dist/utils/project-lookup.js +52 -0
  100. package/dist/utils/project-lookup.js.map +1 -0
  101. package/dist/utils/source-pack.d.ts +24 -0
  102. package/dist/utils/source-pack.d.ts.map +1 -0
  103. package/dist/utils/source-pack.js +63 -0
  104. package/dist/utils/source-pack.js.map +1 -0
  105. package/package.json +26 -26
  106. package/skill/SKILL.md +73 -67
package/dist/utils/api.js CHANGED
@@ -1,5 +1,6 @@
1
- import { createClient, createRemoteFunction as sdkCreateRemoteFunction, deployRemoteFunction as sdkDeployRemoteFunction, invokeRemote as sdkInvokeRemote, listRemoteFunctions as sdkListRemoteFunctions, listRemoteInvocations as sdkListRemoteInvocations, resolveRemoteFunction as sdkResolveRemoteFunction, updateRemoteFunction as sdkUpdateRemoteFunction, queueDeploy as sdkQueueDeploy, getDeployStatus as sdkGetDeployStatus, listFunctionDeploys as sdkListFunctionDeploys, rollbackDeploy as sdkRollbackDeploy, streamDeployLogs as sdkStreamDeployLogs, deleteRemoteFunction as sdkDeleteRemoteFunction, getMe as sdkGetMe, listWorkspaces as sdkListWorkspaces, listApplications as sdkListApplications, getApplication as sdkGetApplication, getAppLimits as sdkGetAppLimits, createApplication as sdkCreateApplication, listAppBackups as sdkListAppBackups, getAppBackup as sdkGetAppBackup, createAppBackup as sdkCreateAppBackup, deleteAppBackup as sdkDeleteAppBackup, restoreAppBackup as sdkRestoreAppBackup, getAppConnectionUrl as sdkGetAppConnectionUrl, connectApps as sdkConnectApps, archiveApplication as sdkArchiveApplication, createRelease as sdkCreateRelease, redeployApplication as sdkRedeployApplication, getRelease as sdkGetRelease, promoteRelease as sdkPromoteRelease, rollbackApplication as sdkRollbackApplication, stopRelease as sdkStopRelease, execInApplication as sdkExecInApplication, streamReleaseLogs as sdkStreamReleaseLogs, addApplicationDomain as sdkAddApplicationDomain, verifyApplicationDomain as sdkVerifyApplicationDomain, listApplicationDomains as sdkListApplicationDomains, removeApplicationDomain as sdkRemoveApplicationDomain, updateApplication as sdkUpdateApplication, wakeApplication as sdkWakeApplication, pauseApplication as sdkPauseApplication, queueBuild as sdkQueueBuild, getBuild as sdkGetBuild, listBuilds as sdkListBuilds, cancelBuild as sdkCancelBuild, streamBuildLogs as sdkStreamBuildLogs, } from '../sdk.js';
2
- import { addProjectResource as sdkAddProjectResource, createProject as sdkCreateProject, getProject as sdkGetProject, listProjects as sdkListProjects, } from '../sdk.js';
1
+ import { createClient, createRemoteFunction as sdkCreateRemoteFunction, deployRemoteFunction as sdkDeployRemoteFunction, invokeRemote as sdkInvokeRemote, listRemoteFunctions as sdkListRemoteFunctions, listRemoteInvocations as sdkListRemoteInvocations, resolveRemoteFunction as sdkResolveRemoteFunction, updateRemoteFunction as sdkUpdateRemoteFunction, queueDeploy as sdkQueueDeploy, getDeployStatus as sdkGetDeployStatus, listFunctionDeploys as sdkListFunctionDeploys, rollbackDeploy as sdkRollbackDeploy, streamDeployLogs as sdkStreamDeployLogs, deleteRemoteFunction as sdkDeleteRemoteFunction, getMe as sdkGetMe, listWorkspaces as sdkListWorkspaces, listApplications as sdkListApplications, getApplication as sdkGetApplication, getAppLimits as sdkGetAppLimits, createApplication as sdkCreateApplication, listAppBackups as sdkListAppBackups, getAppBackup as sdkGetAppBackup, createAppBackup as sdkCreateAppBackup, deleteAppBackup as sdkDeleteAppBackup, restoreAppBackup as sdkRestoreAppBackup, getAppConnectionUrl as sdkGetAppConnectionUrl, connectApps as sdkConnectApps, archiveApplication as sdkArchiveApplication, createRelease as sdkCreateRelease, redeployApplication as sdkRedeployApplication, getRelease as sdkGetRelease, promoteRelease as sdkPromoteRelease, getApplicationRollout as sdkGetApplicationRollout, rollbackApplication as sdkRollbackApplication, stopRelease as sdkStopRelease, execInApplication as sdkExecInApplication, streamReleaseLogs as sdkStreamReleaseLogs, addApplicationDomain as sdkAddApplicationDomain, verifyApplicationDomain as sdkVerifyApplicationDomain, listApplicationDomains as sdkListApplicationDomains, removeApplicationDomain as sdkRemoveApplicationDomain, updateApplication as sdkUpdateApplication, getAppLocation as sdkGetAppLocation, wakeApplication as sdkWakeApplication, pauseApplication as sdkPauseApplication, queueBuild as sdkQueueBuild, getBuild as sdkGetBuild, listBuilds as sdkListBuilds, cancelBuild as sdkCancelBuild, streamBuildLogs as sdkStreamBuildLogs, } from '../sdk.js';
2
+ import { addProjectResource as sdkAddProjectResource, createProject as sdkCreateProject, getProject as sdkGetProject, listProjects as sdkListProjects, removeProjectResource as sdkRemoveProjectResource, } from '../sdk.js';
3
+ import { getProductionReplacement as sdkGetProductionReplacement, } from '@inquir/compute';
3
4
  import { resolveAuthConfig } from './auth.js';
4
5
  import { authRequiredError, CliError, ExitCode } from './errors.js';
5
6
  import { registerSecret } from './redact.js';
@@ -24,6 +25,7 @@ export async function createApiClient(options = {}) {
24
25
  baseUrl: resolved.apiUrl,
25
26
  apiKey: credential,
26
27
  workspaceId,
28
+ fetchImpl: options.fetchImpl,
27
29
  });
28
30
  }
29
31
  export async function listRemoteFunctions(options = {}) {
@@ -102,6 +104,9 @@ export async function createProject(input, options = {}) {
102
104
  export async function addProjectResource(project, resource, options = {}) {
103
105
  return sdkAddProjectResource(await createApiClient(options), project, resource);
104
106
  }
107
+ export async function removeProjectResource(project, resource, options = {}) {
108
+ return sdkRemoveProjectResource(await createApiClient(options), project, resource);
109
+ }
105
110
  // --- App runtime plane (long-lived container services) --------------------
106
111
  export async function listApplications(listOptions = {}, options = {}) {
107
112
  return sdkListApplications(await createApiClient(options), listOptions);
@@ -182,12 +187,36 @@ export async function redeployApplication(applicationId, input = {}, options = {
182
187
  export async function getRelease(releaseId, options = {}) {
183
188
  return sdkGetRelease(await createApiClient(options), releaseId);
184
189
  }
190
+ export { isPromoteAccepted } from '@inquir/compute';
191
+ /**
192
+ * The application's active stop-first production replacement, or null when
193
+ * there is none or it cannot be read (an older server, a missing scope).
194
+ * Pass `client` to reuse one transport across polls.
195
+ */
196
+ export async function getProductionReplacement(applicationId, options = {}, client) {
197
+ try {
198
+ const status = await sdkGetProductionReplacement(client ?? await createApiClient(options), applicationId);
199
+ return status.operation ?? null;
200
+ }
201
+ catch {
202
+ return null;
203
+ }
204
+ }
205
+ /** 200: promoted; 202 (isPromoteAccepted): a rolling rollout the server goes on with in the background. */
185
206
  export async function promoteRelease(releaseId, options = {}) {
186
207
  return sdkPromoteRelease(await createApiClient(options), releaseId);
187
208
  }
209
+ /** One rollout of an application: what a 202 promote's pollUrl names (apps:read). */
210
+ export async function getApplicationRollout(applicationId, rolloutId, options = {}) {
211
+ return sdkGetApplicationRollout(await createApiClient(options), applicationId, rolloutId);
212
+ }
188
213
  export async function updateApplication(applicationId, patch, options = {}) {
189
214
  return sdkUpdateApplication(await createApiClient(options), applicationId, patch);
190
215
  }
216
+ /** Where a service runs and may run (experimental service location). */
217
+ export async function getAppLocation(applicationId, options = {}) {
218
+ return sdkGetAppLocation(await createApiClient(options), applicationId);
219
+ }
191
220
  export async function wakeApplication(applicationId, options = {}) {
192
221
  return sdkWakeApplication(await createApiClient(options), applicationId);
193
222
  }
@@ -197,8 +226,15 @@ export async function pauseApplication(applicationId, options = {}) {
197
226
  export async function queueBuild(applicationId, input, options = {}) {
198
227
  return sdkQueueBuild(await createApiClient(options), applicationId, input);
199
228
  }
200
- export async function getBuild(buildId, options = {}) {
201
- return sdkGetBuild(await createApiClient(options), buildId);
229
+ export async function getBuild(buildId, options = {}, signal) {
230
+ const client = await createApiClient(options);
231
+ signal?.throwIfAborted();
232
+ // Match deploy observation: abort covers headers and the response body,
233
+ // without changing authentication or workspace scope for this request.
234
+ return sdkGetBuild(signal ? {
235
+ ...client,
236
+ fetchImpl: (input, init) => client.fetchImpl(input, { ...init, signal }),
237
+ } : client, buildId);
202
238
  }
203
239
  export async function listBuilds(applicationId, options = {}) {
204
240
  return sdkListBuilds(await createApiClient(options), applicationId);
@@ -208,6 +244,7 @@ export async function cancelBuild(buildId, options = {}) {
208
244
  }
209
245
  export async function* streamBuildLogs(buildId, options = {}, signal) {
210
246
  const client = await createApiClient(options);
247
+ signal?.throwIfAborted();
211
248
  yield* sdkStreamBuildLogs(client, buildId, signal);
212
249
  }
213
250
  export async function rollbackApplication(applicationId, options = {}) {
@@ -216,8 +253,8 @@ export async function rollbackApplication(applicationId, options = {}) {
216
253
  export async function stopRelease(releaseId, options = {}) {
217
254
  return sdkStopRelease(await createApiClient(options), releaseId);
218
255
  }
219
- export async function execInApplication(applicationId, command, timeoutMs, options = {}) {
220
- return sdkExecInApplication(await createApiClient(options), applicationId, command, timeoutMs);
256
+ export async function execInApplication(applicationId, command, timeoutMs, options = {}, target = {}) {
257
+ return sdkExecInApplication(await createApiClient(options), applicationId, command, timeoutMs, target);
221
258
  }
222
259
  export async function* streamReleaseLogs(releaseId, streamOptions = {}, options = {}, signal) {
223
260
  const client = await createApiClient(options);
@@ -1 +1 @@
1
- {"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/utils/api.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,oBAAoB,IAAI,uBAAuB,EAC/C,oBAAoB,IAAI,uBAAuB,EAC/C,YAAY,IAAI,eAAe,EAC/B,mBAAmB,IAAI,sBAAsB,EAC7C,qBAAqB,IAAI,wBAAwB,EACjD,qBAAqB,IAAI,wBAAwB,EACjD,oBAAoB,IAAI,uBAAuB,EAC/C,WAAW,IAAI,cAAc,EAC7B,eAAe,IAAI,kBAAkB,EACrC,mBAAmB,IAAI,sBAAsB,EAC7C,cAAc,IAAI,iBAAiB,EACnC,gBAAgB,IAAI,mBAAmB,EACvC,oBAAoB,IAAI,uBAAuB,EAC/C,KAAK,IAAI,QAAQ,EACjB,cAAc,IAAI,iBAAiB,EACnC,gBAAgB,IAAI,mBAAmB,EACvC,cAAc,IAAI,iBAAiB,EACnC,YAAY,IAAI,eAAe,EAC/B,iBAAiB,IAAI,oBAAoB,EACzC,cAAc,IAAI,iBAAiB,EACnC,YAAY,IAAI,eAAe,EAC/B,eAAe,IAAI,kBAAkB,EACrC,eAAe,IAAI,kBAAkB,EACrC,gBAAgB,IAAI,mBAAmB,EACvC,mBAAmB,IAAI,sBAAsB,EAC7C,WAAW,IAAI,cAAc,EAC7B,kBAAkB,IAAI,qBAAqB,EAC3C,aAAa,IAAI,gBAAgB,EACjC,mBAAmB,IAAI,sBAAsB,EAC7C,UAAU,IAAI,aAAa,EAC3B,cAAc,IAAI,iBAAiB,EACnC,mBAAmB,IAAI,sBAAsB,EAC7C,WAAW,IAAI,cAAc,EAC7B,iBAAiB,IAAI,oBAAoB,EACzC,iBAAiB,IAAI,oBAAoB,EACzC,oBAAoB,IAAI,uBAAuB,EAC/C,uBAAuB,IAAI,0BAA0B,EACrD,sBAAsB,IAAI,yBAAyB,EACnD,uBAAuB,IAAI,0BAA0B,EACrD,iBAAiB,IAAI,oBAAoB,EACzC,eAAe,IAAI,kBAAkB,EACrC,gBAAgB,IAAI,mBAAmB,EACvC,UAAU,IAAI,aAAa,EAC3B,QAAQ,IAAI,WAAW,EACvB,UAAU,IAAI,aAAa,EAC3B,WAAW,IAAI,cAAc,EAC7B,eAAe,IAAI,kBAAkB,GAuCtC,MAAM,WAAW,CAAC;AAOnB,OAAO,EACL,kBAAkB,IAAI,qBAAqB,EAC3C,aAAa,IAAI,gBAAgB,EACjC,UAAU,IAAI,aAAa,EAC3B,YAAY,IAAI,eAAe,GAGhC,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAC9C,OAAO,EAAE,iBAAiB,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACpE,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAwB7C,+EAA+E;AAC/E,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,UAA6B,EAAE;IAC/D,MAAM,QAAQ,GAAG,MAAM,iBAAiB,CAAC,OAAO,CAAC,CAAC;IAClD,IAAI,CAAC,QAAQ,CAAC,KAAK,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;QACxC,MAAM,iBAAiB,EAAE,CAAC;IAC5B,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,UAA6B,EAAE;IACnE,MAAM,QAAQ,GAAG,MAAM,iBAAiB,CAAC,OAAO,CAAC,CAAC;IAClD,+EAA+E;IAC/E,MAAM,UAAU,GAAG,QAAQ,CAAC,KAAK,IAAI,QAAQ,CAAC,MAAM,CAAC;IACrD,cAAc,CAAC,UAAU,CAAC,CAAC;IAC3B,8EAA8E;IAC9E,0EAA0E;IAC1E,2EAA2E;IAC3E,MAAM,eAAe,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC;IACzF,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IAC1F,OAAO,YAAY,CAAC;QAClB,OAAO,EAAE,QAAQ,CAAC,MAAM;QACxB,MAAM,EAAE,UAAU;QAClB,WAAW;KACZ,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,UAA6B,EAAE;IACvE,OAAO,sBAAsB,CAAC,MAAM,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC;AAChE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,UAAkB,EAAE,UAA6B,EAAE;IAC7F,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,OAAO,CAAC,CAAC;IAC9C,MAAM,SAAS,GAAG,MAAM,sBAAsB,CAAC,MAAM,CAAC,CAAC;IACvD,MAAM,WAAW,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,UAAU,CAAC,CAAC;IACjE,IAAI,WAAW,EAAE,CAAC;QAChB,OAAO,WAAW,CAAC;IACrB,CAAC;IACD,OAAO,wBAAwB,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;AACtD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,UAAkB,EAAE,OAAgB,EAAE,UAA6B,EAAE;IACtG,OAAO,eAAe,CAAC,MAAM,eAAe,CAAC,OAAO,CAAC,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;AAC9E,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAC,KAAgC,EAAE,UAA6B,EAAE;IAC1G,OAAO,uBAAuB,CAAC,MAAM,eAAe,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC,CAAC;AACxE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAC,UAAkB,EAAE,KAAgC,EAAE,UAA6B,EAAE;IAC9H,OAAO,uBAAuB,CAAC,MAAM,eAAe,CAAC,OAAO,CAAC,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC;AACpF,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAC,UAAkB,EAAE,gBAA6C,EAAE,EAAE,UAA6B,EAAE;IAC7I,OAAO,uBAAuB,CAAC,MAAM,eAAe,CAAC,OAAO,CAAC,EAAE,UAAU,EAAE,aAAa,CAAC,CAAC;AAC5F,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,UAAkB,EAAE,cAAmD,EAAE,EAAE,UAA6B,EAAE;IACpJ,OAAO,wBAAwB,CAAC,MAAM,eAAe,CAAC,OAAO,CAAC,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC;AAC3F,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAC,UAAkB,EAAE,UAA6B,EAAE;IAC5F,OAAO,uBAAuB,CAAC,MAAM,eAAe,CAAC,OAAO,CAAC,EAAE,UAAU,CAAC,CAAC;AAC7E,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,KAAuB,EAAE,UAA6B,EAAE;IACxF,OAAO,cAAc,CAAC,MAAM,eAAe,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC,CAAC;AAC/D,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,QAAgB,EAChB,UAA6B,EAAE,EAC/B,MAAoB;IAEpB,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,OAAO,CAAC,CAAC;IAC9C,MAAM,EAAE,cAAc,EAAE,CAAC;IACzB,sEAAsE;IACtE,yEAAyE;IACzE,OAAO,kBAAkB,CAAC,MAAM,CAAC,CAAC,CAAC;QACjC,GAAG,MAAM;QACT,SAAS,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,CAAC;KACzE,CAAC,CAAC,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;AACxB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,UAAkB,EAAE,cAAmD,EAAE,EAAE,UAA6B,EAAE;IAClJ,OAAO,sBAAsB,CAAC,MAAM,eAAe,CAAC,OAAO,CAAC,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC;AACzF,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,UAAkB,EAAE,QAAgB,EAAE,kBAAyC,EAAE,EAAE,UAA6B,EAAE;IACrJ,OAAO,iBAAiB,CAAC,MAAM,eAAe,CAAC,OAAO,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,eAAe,CAAC,CAAC;AAClG,CAAC;AAED,MAAM,CAAC,KAAK,SAAS,CAAC,CAAC,gBAAgB,CAAC,QAAgB,EAAE,UAA6B,EAAE,EAAE,MAAoB;IAC7G,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,OAAO,CAAC,CAAC;IAC9C,MAAM,EAAE,cAAc,EAAE,CAAC;IACzB,KAAK,CAAC,CAAC,mBAAmB,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;AACvD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,KAAK,CAAC,UAA6B,EAAE;IACzD,OAAO,QAAQ,CAAC,MAAM,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC;AAClD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,UAA6B,EAAE;IAClE,6EAA6E;IAC7E,yEAAyE;IACzE,2EAA2E;IAC3E,oCAAoC;IACpC,OAAO,iBAAiB,CAAC,MAAM,eAAe,CAAC,EAAE,GAAG,OAAO,EAAE,qBAAqB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AAC/F,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,cAAmD,EAAE,EACrD,UAA6B,EAAE;IAE/B,OAAO,eAAe,CAAC,MAAM,eAAe,CAAC,OAAO,CAAC,EAAE,WAAW,CAAC,CAAC;AACtE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,OAAe,EAAE,UAA6B,EAAE;IAC/E,OAAO,aAAa,CAAC,MAAM,eAAe,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,CAAC;AAChE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,KAAyB,EAAE,UAA6B,EAAE;IAC5F,OAAO,gBAAgB,CAAC,MAAM,eAAe,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC,CAAC;AACjE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,OAAe,EACf,QAA4B,EAC5B,UAA6B,EAAE;IAE/B,OAAO,qBAAqB,CAAC,MAAM,eAAe,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;AAClF,CAAC;AAED,6EAA6E;AAE7E,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,cAAmD,EAAE,EACrD,UAA6B,EAAE;IAE/B,OAAO,mBAAmB,CAAC,MAAM,eAAe,CAAC,OAAO,CAAC,EAAE,WAAW,CAAC,CAAC;AAC1E,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,aAAqB,EACrB,UAA6B,EAAE;IAE/B,OAAO,iBAAiB,CAAC,MAAM,eAAe,CAAC,OAAO,CAAC,EAAE,aAAa,CAAC,CAAC;AAC1E,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,KAA6B,EAC7B,UAA6B,EAAE;IAE/B,OAAO,oBAAoB,CAAC,MAAM,eAAe,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC,CAAC;AACrE,CAAC;AAED,0EAA0E;AAC1E,0EAA0E;AAC1E,cAAc;AACd,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,UAA6B,EAAE;IAChE,OAAO,eAAe,CAAC,MAAM,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC;AACzD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,aAAqB,EACrB,cAAwE,EAAE,EAC1E,UAA6B,EAAE;IAE/B,OAAO,iBAAiB,CAAC,MAAM,eAAe,CAAC,OAAO,CAAC,EAAE,aAAa,EAAE,WAAW,CAAC,CAAC;AACvF,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,aAAqB,EACrB,QAAgB,EAChB,UAA6B,EAAE;IAE/B,OAAO,eAAe,CAAC,MAAM,eAAe,CAAC,OAAO,CAAC,EAAE,aAAa,EAAE,QAAQ,CAAC,CAAC;AAClF,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,aAAqB,EACrB,UAA6B,EAAE;IAE/B,OAAO,kBAAkB,CAAC,MAAM,eAAe,CAAC,OAAO,CAAC,EAAE,aAAa,CAAC,CAAC;AAC3E,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,aAAqB,EACrB,QAAgB,EAChB,UAA6B,EAAE;IAE/B,OAAO,kBAAkB,CAAC,MAAM,eAAe,CAAC,OAAO,CAAC,EAAE,aAAa,EAAE,QAAQ,CAAC,CAAC;AACrF,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,aAAqB,EACrB,QAAgB,EAChB,UAA6B,EAAE;IAE/B,OAAO,mBAAmB,CAAC,MAAM,eAAe,CAAC,OAAO,CAAC,EAAE,aAAa,EAAE,QAAQ,CAAC,CAAC;AACtF,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,aAAqB,EACrB,UAA6B,EAAE;IAE/B,OAAO,sBAAsB,CAAC,MAAM,eAAe,CAAC,OAAO,CAAC,EAAE,aAAa,CAAC,CAAC;AAC/E,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,aAAqB,EACrB,MAAc,EACd,UAAuD,EAAE;IAEzD,MAAM,EAAE,SAAS,EAAE,GAAG,UAAU,EAAE,GAAG,OAAO,CAAC;IAC7C,OAAO,cAAc,CAAC,MAAM,eAAe,CAAC,UAAU,CAAC,EAAE,aAAa,EAAE,MAAM,EAAE;QAC9E,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACpC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,aAAqB,EACrB,UAA6B,EAAE;IAE/B,OAAO,qBAAqB,CAAC,MAAM,eAAe,CAAC,OAAO,CAAC,EAAE,aAAa,CAAC,CAAC;AAC9E,CAAC;AAED,iGAAiG;AACjG,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,UAAkB,EAClB,UAA6B,EAAE;IAE/B,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,OAAO,CAAC,CAAC;IAC9C,MAAM,MAAM,GAAkB,EAAE,CAAC;IACjC,IAAI,MAA0B,CAAC;IAC/B,GAAG,CAAC;QACF,MAAM,IAAI,GAAG,MAAM,mBAAmB,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,CAAC;QACvE,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,UAAU,CAAC,CAAC;QAC/D,IAAI,MAAM;YAAE,OAAO,MAAM,CAAC;QAC1B,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC,CAAC;QACpE,MAAM,GAAG,IAAI,CAAC,UAAU,IAAI,SAAS,CAAC;IACxC,CAAC,QAAQ,MAAM,EAAE;IACjB,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC;IAC1C,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtB,MAAM,IAAI,QAAQ,CAAC,gCAAgC,UAAU,2BAA2B,EAAE;YACxF,IAAI,EAAE,uBAAuB;YAC7B,QAAQ,EAAE,QAAQ,CAAC,KAAK;SACzB,CAAC,CAAC;IACL,CAAC;IACD,MAAM,IAAI,QAAQ,CAAC,gBAAgB,UAAU,aAAa,EAAE;QAC1D,IAAI,EAAE,uBAAuB;QAC7B,QAAQ,EAAE,QAAQ,CAAC,KAAK;QACxB,GAAG,EAAE,qCAAqC;KAC3C,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,aAAqB,EACrB,KAAyB,EACzB,UAA6B,EAAE;IAE/B,OAAO,gBAAgB,CAAC,MAAM,eAAe,CAAC,OAAO,CAAC,EAAE,aAAa,EAAE,KAAK,CAAC,CAAC;AAChF,CAAC;AAED,0EAA0E;AAC1E,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,aAAqB,EACrB,QAA+B,EAAE,EACjC,UAA6B,EAAE;IAE/B,OAAO,sBAAsB,CAAC,MAAM,eAAe,CAAC,OAAO,CAAC,EAAE,aAAa,EAAE,KAAK,CAAC,CAAC;AACtF,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,SAAiB,EACjB,UAA6B,EAAE;IAE/B,OAAO,aAAa,CAAC,MAAM,eAAe,CAAC,OAAO,CAAC,EAAE,SAAS,CAAC,CAAC;AAClE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,SAAiB,EACjB,UAA6B,EAAE;IAE/B,OAAO,iBAAiB,CAAC,MAAM,eAAe,CAAC,OAAO,CAAC,EAAE,SAAS,CAAC,CAAC;AACtE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,aAAqB,EACrB,KAAsC,EACtC,UAA6B,EAAE;IAE/B,OAAO,oBAAoB,CAAC,MAAM,eAAe,CAAC,OAAO,CAAC,EAAE,aAAa,EAAE,KAAK,CAAC,CAAC;AACpF,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,aAAqB,EACrB,UAA6B,EAAE;IAE/B,OAAO,kBAAkB,CAAC,MAAM,eAAe,CAAC,OAAO,CAAC,EAAE,aAAa,CAAC,CAAC;AAC3E,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,aAAqB,EACrB,UAA6B,EAAE;IAE/B,OAAO,mBAAmB,CAAC,MAAM,eAAe,CAAC,OAAO,CAAC,EAAE,aAAa,CAAC,CAAC;AAC5E,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,aAAqB,EACrB,KAAsB,EACtB,UAA6B,EAAE;IAE/B,OAAO,aAAa,CAAC,MAAM,eAAe,CAAC,OAAO,CAAC,EAAE,aAAa,EAAE,KAAK,CAAC,CAAC;AAC7E,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAC,OAAe,EAAE,UAA6B,EAAE;IAC7E,OAAO,WAAW,CAAC,MAAM,eAAe,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,CAAC;AAC9D,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,aAAqB,EACrB,UAA6B,EAAE;IAE/B,OAAO,aAAa,CAAC,MAAM,eAAe,CAAC,OAAO,CAAC,EAAE,aAAa,CAAC,CAAC;AACtE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,OAAe,EACf,UAA6B,EAAE;IAE/B,OAAO,cAAc,CAAC,MAAM,eAAe,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,CAAC;AACjE,CAAC;AAED,MAAM,CAAC,KAAK,SAAS,CAAC,CAAC,eAAe,CACpC,OAAe,EACf,UAA6B,EAAE,EAC/B,MAAoB;IAEpB,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,OAAO,CAAC,CAAC;IAC9C,KAAK,CAAC,CAAC,kBAAkB,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;AACrD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,aAAqB,EACrB,UAA6B,EAAE;IAE/B,OAAO,sBAAsB,CAAC,MAAM,eAAe,CAAC,OAAO,CAAC,EAAE,aAAa,CAAC,CAAC;AAC/E,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,SAAiB,EACjB,UAA6B,EAAE;IAE/B,OAAO,cAAc,CAAC,MAAM,eAAe,CAAC,OAAO,CAAC,EAAE,SAAS,CAAC,CAAC;AACnE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,aAAqB,EACrB,OAAe,EACf,SAA6B,EAC7B,UAA6B,EAAE;IAE/B,OAAO,oBAAoB,CAAC,MAAM,eAAe,CAAC,OAAO,CAAC,EAAE,aAAa,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;AACjG,CAAC;AAED,MAAM,CAAC,KAAK,SAAS,CAAC,CAAC,iBAAiB,CACtC,SAAiB,EACjB,gBAAmC,EAAE,EACrC,UAA6B,EAAE,EAC/B,MAAoB;IAEpB,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,OAAO,CAAC,CAAC;IAC9C,KAAK,CAAC,CAAC,oBAAoB,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE,GAAG,aAAa,EAAE,MAAM,EAAE,CAAC,CAAC;AAC/E,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,aAAqB,EACrB,QAAgB,EAChB,UAA6B,EAAE;IAE/B,OAAO,uBAAuB,CAAC,MAAM,eAAe,CAAC,OAAO,CAAC,EAAE,aAAa,EAAE,QAAQ,CAAC,CAAC;AAC1F,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,aAAqB,EACrB,QAAgB,EAChB,UAA6B,EAAE;IAE/B,OAAO,0BAA0B,CAAC,MAAM,eAAe,CAAC,OAAO,CAAC,EAAE,aAAa,EAAE,QAAQ,CAAC,CAAC;AAC7F,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,aAAqB,EACrB,UAA6B,EAAE;IAE/B,OAAO,yBAAyB,CAAC,MAAM,eAAe,CAAC,OAAO,CAAC,EAAE,aAAa,CAAC,CAAC;AAClF,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,aAAqB,EACrB,QAAgB,EAChB,UAA6B,EAAE;IAE/B,OAAO,0BAA0B,CAAC,MAAM,eAAe,CAAC,OAAO,CAAC,EAAE,aAAa,EAAE,QAAQ,CAAC,CAAC;AAC7F,CAAC"}
1
+ {"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/utils/api.ts"],"names":[],"mappings":"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"}
@@ -15,9 +15,16 @@ export interface ReleasePresentation {
15
15
  /** Next step for a failed release, when the reason is recognisable. */
16
16
  hint?: string;
17
17
  }
18
+ /**
19
+ * A PENDING release that is the target of a stop-first production
20
+ * replacement is not pulling anything: the current replica is stopped first.
21
+ * Its replica is released when its lease runs out (up to about two minutes),
22
+ * and the service does not answer until the new one is healthy.
23
+ */
24
+ export declare function replacementPhaseMeaning(phase: string): string | undefined;
18
25
  /** Recognisable failure reasons → the one thing to check first. */
19
26
  export declare function failureHint(reason: string | undefined): string | undefined;
20
- export declare function presentRelease(release: Pick<Release, 'status' | 'kind' | 'failureReason'>): ReleasePresentation;
27
+ export declare function presentRelease(release: Pick<Release, 'status' | 'kind' | 'failureReason' | 'serving'>): ReleasePresentation;
21
28
  /** "37s", "2m 05s" */
22
29
  export declare function formatElapsed(ms: number): string;
23
30
  /** Human sizes: a backup column exists to be compared at a glance. */
@@ -1 +1 @@
1
- {"version":3,"file":"apps-presentation.d.ts","sourceRoot":"","sources":["../../src/utils/apps-presentation.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAiB,MAAM,UAAU,CAAC;AAEvD,MAAM,WAAW,mBAAmB;IAClC,8CAA8C;IAC9C,KAAK,EAAE,MAAM,CAAC;IACd,2BAA2B;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,+BAA+B;IAC/B,QAAQ,EAAE,OAAO,CAAC;IAClB,uEAAuE;IACvE,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAcD,mEAAmE;AACnE,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAkB1E;AAED,wBAAgB,cAAc,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,QAAQ,GAAG,MAAM,GAAG,eAAe,CAAC,GAAG,mBAAmB,CAa/G;AAED,sBAAsB;AACtB,wBAAgB,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAMhD;AAED,sEAAsE;AACtE,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,CAW7E;AAED,uFAAuF;AACvF,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAQxD;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,MAAM,GAAG,SAAS,EACxB,gBAAgB,EAAE,MAAM,GAAG,SAAS,GACnC,MAAM,GAAG,SAAS,CAGpB"}
1
+ {"version":3,"file":"apps-presentation.d.ts","sourceRoot":"","sources":["../../src/utils/apps-presentation.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAiB,MAAM,UAAU,CAAC;AAEvD,MAAM,WAAW,mBAAmB;IAClC,8CAA8C;IAC9C,KAAK,EAAE,MAAM,CAAC;IACd,2BAA2B;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,+BAA+B;IAC/B,QAAQ,EAAE,OAAO,CAAC;IAClB,uEAAuE;IACvE,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAcD;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAiBzE;AAED,mEAAmE;AACnE,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAkB1E;AAED,wBAAgB,cAAc,CAC5B,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,QAAQ,GAAG,MAAM,GAAG,eAAe,GAAG,SAAS,CAAC,GACtE,mBAAmB,CAuBrB;AAED,sBAAsB;AACtB,wBAAgB,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAMhD;AAED,sEAAsE;AACtE,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,CAW7E;AAED,uFAAuF;AACvF,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAQxD;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,MAAM,GAAG,SAAS,EACxB,gBAAgB,EAAE,MAAM,GAAG,SAAS,GACnC,MAAM,GAAG,SAAS,CAGpB"}
@@ -5,7 +5,7 @@
5
5
  * how long it has been happening, and what to do next.
6
6
  */
7
7
  const LABELS = {
8
- PENDING: { label: 'queued', meaning: 'waiting to start (pulling the image)', inFlight: true },
8
+ PENDING: { label: 'queued', meaning: 'waiting to start (placement, then the image pull if the runner lacks it)', inFlight: true },
9
9
  STARTING: { label: 'starting', meaning: 'container is being created', inFlight: true },
10
10
  HEALTHCHECK: { label: 'health check', meaning: 'waiting for the service to answer', inFlight: true },
11
11
  READY: { label: 'healthy', meaning: 'passed its health check, not routed', inFlight: false },
@@ -15,6 +15,30 @@ const LABELS = {
15
15
  STOPPED: { label: 'stopped', meaning: 'stopped', inFlight: false },
16
16
  FAILED: { label: 'failed', meaning: 'did not become healthy', inFlight: false },
17
17
  };
18
+ /**
19
+ * A PENDING release that is the target of a stop-first production
20
+ * replacement is not pulling anything: the current replica is stopped first.
21
+ * Its replica is released when its lease runs out (up to about two minutes),
22
+ * and the service does not answer until the new one is healthy.
23
+ */
24
+ export function replacementPhaseMeaning(phase) {
25
+ switch (phase) {
26
+ case 'RESERVED':
27
+ case 'STOPPING_SOURCE':
28
+ return 'replacing production in place: stopping the current replica first (up to ~2 min; the service is down until the new one is healthy)';
29
+ case 'STARTING_TARGET':
30
+ return 'replacing production in place: starting the new replica';
31
+ case 'STOPPING_TARGET':
32
+ case 'STARTING_ROLLBACK':
33
+ return 'replacement failed: restoring the previous release';
34
+ case 'CANCELLING':
35
+ return 'replacement cancelled: restoring the previous release';
36
+ case 'OPERATOR_REQUIRED':
37
+ return 'replacement stopped and needs an operator (inquir apps describe <app>)';
38
+ default:
39
+ return undefined;
40
+ }
41
+ }
18
42
  /** Recognisable failure reasons → the one thing to check first. */
19
43
  export function failureHint(reason) {
20
44
  if (!reason)
@@ -38,6 +62,16 @@ export function failureHint(reason) {
38
62
  }
39
63
  export function presentRelease(release) {
40
64
  const base = LABELS[release.status] ?? { label: release.status.toLowerCase(), meaning: '', inFlight: false };
65
+ if (release.status === 'STARTING' && release.serving) {
66
+ // Production already points here; what runs is up to the pinned runner.
67
+ return {
68
+ ...base,
69
+ meaning: `waiting for its replica on the pinned runner (${release.serving.ready}/${release.serving.desired} ready)`,
70
+ ...(release.serving.failedStarts > 0
71
+ ? { hint: 'The platform retries with backoff. The reason comes from the runner the volumes are pinned to: check it and its logs.' }
72
+ : {}),
73
+ };
74
+ }
41
75
  if (release.status === 'ACTIVE') {
42
76
  return {
43
77
  ...base,
@@ -1 +1 @@
1
- {"version":3,"file":"apps-presentation.js","sourceRoot":"","sources":["../../src/utils/apps-presentation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"apps-presentation.js","sourceRoot":"","sources":["../../src/utils/apps-presentation.ts"],"names":[],"mappings":"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"}
@@ -8,6 +8,10 @@ export interface EnvironmentConfig {
8
8
  apiKey?: string;
9
9
  /** Personal Access Token from `inquir login` (user-scoped credential). */
10
10
  token?: string;
11
+ /** Only browser-issued sessions belong to the CLI; imported PATs do not. */
12
+ tokenSession?: StoredCliSession;
13
+ /** Explicit logout prevents a partial profile from inheriting credentials. */
14
+ loggedOut?: boolean;
11
15
  /** Active workspace selector (tenant id or slug) for user-scoped credentials. */
12
16
  workspaceId?: string;
13
17
  /** Cached identity for `inquir whoami` after login. */
@@ -29,6 +33,21 @@ export interface ResolvedAuthConfig {
29
33
  export declare const DEFAULT_API_URL = "https://api.inquir.org";
30
34
  /** API base identity: URL canonicalization includes the scheme and base path. */
31
35
  export declare function sameApiEndpoint(left: string, right: string): boolean;
36
+ export interface StoredCliSession {
37
+ source: 'cli-browser';
38
+ apiUrl: string;
39
+ tokenHash: string;
40
+ tokenId?: string;
41
+ expiresAt?: string;
42
+ }
43
+ export declare function cliSession(apiUrl: string, token: string, details?: {
44
+ tokenId?: string;
45
+ expiresAt?: string;
46
+ }): StoredCliSession;
47
+ /** Stale metadata must never turn a subsequently imported PAT into an owned session. */
48
+ export declare function ownedCliSession(slice: EnvironmentConfig): StoredCliSession | undefined;
49
+ /** Compare raw credentials too: another profile may use this token as an API key. */
50
+ export declare function configReferencesToken(config: AuthConfig, token: string, except?: EnvironmentConfig): boolean;
32
51
  /** Absolute path to the active CLI config file (for `config path` / `doctor`). */
33
52
  export declare function getConfigFilePath(): string;
34
53
  export declare function loadAuthConfig(): Promise<AuthConfig>;
@@ -36,6 +55,7 @@ export declare function saveAuthConfig(nextConfig: AuthConfig): Promise<void>;
36
55
  export declare function clearAuthConfig(): Promise<void>;
37
56
  /** Resolve the active environment name from overrides or environment variables. */
38
57
  export declare function resolveEnvironmentName(override?: string): string | undefined;
58
+ export declare function updateAuthConfig<T>(mutate: (config: AuthConfig) => T | Promise<T>): Promise<T>;
39
59
  export declare function resolveAuthConfig(overrides?: Partial<AuthConfig> & {
40
60
  environment?: string;
41
61
  projectWorkspaceId?: string;
@@ -49,5 +69,5 @@ behavior?: {
49
69
  * and persist. The same loaded config is available for coordinated profile
50
70
  * updates, such as retaining API bindings when login changes the default.
51
71
  */
52
- export declare function updateEnvironmentConfig(environment: string | undefined, mutate: (slice: EnvironmentConfig, config: AuthConfig) => void): Promise<void>;
72
+ export declare function updateEnvironmentConfig<T>(environment: string | undefined, mutate: (slice: EnvironmentConfig, config: AuthConfig) => T | Promise<T>, afterSave?: (result: T, config: AuthConfig) => Promise<void>): Promise<T>;
53
73
  //# sourceMappingURL=auth.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../src/utils/auth.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,iBAAiB;IAChC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,0EAA0E;IAC1E,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,iFAAiF;IACjF,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,uDAAuD;IACvD,IAAI,CAAC,EAAE,UAAU,CAAC;CACnB;AAED,MAAM,WAAW,UAAW,SAAQ,iBAAiB;IACnD,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;IACjD,yFAAyF;IACzF,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,UAAU,CAAC;CACnB;AAED,8FAA8F;AAC9F,eAAO,MAAM,eAAe,2BAA2B,CAAC;AAExD,iFAAiF;AACjF,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAMpE;AAcD,kFAAkF;AAClF,wBAAgB,iBAAiB,IAAI,MAAM,CAE1C;AAED,wBAAsB,cAAc,IAAI,OAAO,CAAC,UAAU,CAAC,CA2B1D;AAED,wBAAsB,cAAc,CAAC,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAS1E;AAED,wBAAsB,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC,CAMrD;AAWD,mFAAmF;AACnF,wBAAgB,sBAAsB,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAK5E;AAED,wBAAsB,iBAAiB,CACrC,SAAS,GAAE,OAAO,CAAC,UAAU,CAAC,GAAG;IAAE,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,kBAAkB,CAAC,EAAE,MAAM,CAAA;CAAO;AAC3F,8EAA8E;AAC9E,QAAQ,GAAE;IAAE,uBAAuB,CAAC,EAAE,OAAO,CAAA;CAAO,GACnD,OAAO,CAAC,kBAAkB,CAAC,CAkE7B;AAED;;;;GAIG;AACH,wBAAsB,uBAAuB,CAC3C,WAAW,EAAE,MAAM,GAAG,SAAS,EAC/B,MAAM,EAAE,CAAC,KAAK,EAAE,iBAAiB,EAAE,MAAM,EAAE,UAAU,KAAK,IAAI,GAC7D,OAAO,CAAC,IAAI,CAAC,CAYf"}
1
+ {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../src/utils/auth.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import fs from 'node:fs/promises';
2
2
  import os from 'node:os';
3
3
  import path from 'node:path';
4
+ import { createHash, randomUUID } from 'node:crypto';
4
5
  import { CliError, ExitCode, usageError } from './errors.js';
5
6
  /** Default when no config, env, or flags set — first-party prod API (see proxy/Caddyfile). */
6
7
  export const DEFAULT_API_URL = 'https://api.inquir.org';
@@ -13,6 +14,21 @@ export function sameApiEndpoint(left, right) {
13
14
  return left === right;
14
15
  }
15
16
  }
17
+ export function cliSession(apiUrl, token, details = {}) {
18
+ return { source: 'cli-browser', apiUrl, tokenHash: createHash('sha256').update(token).digest('hex'), ...details };
19
+ }
20
+ /** Stale metadata must never turn a subsequently imported PAT into an owned session. */
21
+ export function ownedCliSession(slice) {
22
+ const session = slice.tokenSession;
23
+ return slice.token && session?.source === 'cli-browser' &&
24
+ session.tokenHash === createHash('sha256').update(slice.token).digest('hex')
25
+ ? session : undefined;
26
+ }
27
+ /** Compare raw credentials too: another profile may use this token as an API key. */
28
+ export function configReferencesToken(config, token, except) {
29
+ return [process.env.INQUIR_TOKEN, process.env.INQUIR_API_KEY, process.env.LAMBDA_API_KEY].includes(token) ||
30
+ [config, ...Object.values(config.environments ?? {})].some((slice) => slice && slice !== except && !slice.loggedOut && (slice.token === token || slice.apiKey === token));
31
+ }
16
32
  // Paths are resolved lazily (not module-level constants) so `os.homedir()` can
17
33
  // be overridden in tests and respects HOME changes at runtime.
18
34
  function configDir() {
@@ -62,8 +78,27 @@ export async function loadAuthConfig() {
62
78
  }
63
79
  export async function saveAuthConfig(nextConfig) {
64
80
  await fs.mkdir(configDir(), { recursive: true, mode: 0o700 });
65
- // Credentials live here — write with owner-only permissions.
66
- await fs.writeFile(configFile(), `${JSON.stringify(nextConfig, null, 2)}\n`, { encoding: 'utf8', mode: 0o600 });
81
+ // Readers (including an older CLI) see a complete old or new file, never a
82
+ // truncated credential store. Keep the temporary file on the same volume.
83
+ const target = configFile();
84
+ const temporary = `${target}.${randomUUID()}.tmp`;
85
+ try {
86
+ const file = await fs.open(temporary, 'wx', 0o600);
87
+ try {
88
+ await file.writeFile(`${JSON.stringify(nextConfig, null, 2)}\n`, 'utf8');
89
+ await file.sync();
90
+ }
91
+ finally {
92
+ await file.close();
93
+ }
94
+ await fs.rename(temporary, target);
95
+ }
96
+ finally {
97
+ await fs.unlink(temporary).catch((error) => {
98
+ if (error.code !== 'ENOENT')
99
+ throw error;
100
+ });
101
+ }
67
102
  try {
68
103
  await fs.chmod(configFile(), 0o600);
69
104
  }
@@ -94,6 +129,59 @@ export function resolveEnvironmentName(override) {
94
129
  }
95
130
  return override ?? envValue(process.env.INQUIR_ENV) ?? envValue(process.env.LAMBDA_ENV) ?? undefined;
96
131
  }
132
+ /** Serialize credential mutations across CLI processes, including self-revocation. */
133
+ async function withAuthConfigLock(operation) {
134
+ await fs.mkdir(configDir(), { recursive: true, mode: 0o700 });
135
+ const lockPath = `${configFile()}.lock`;
136
+ const deadline = Date.now() + 10_000;
137
+ let lock;
138
+ for (;;) {
139
+ try {
140
+ lock = await fs.open(lockPath, 'wx', 0o600);
141
+ break;
142
+ }
143
+ catch (error) {
144
+ if (error.code !== 'EEXIST')
145
+ throw error;
146
+ if (Date.now() >= deadline) {
147
+ // Never steal a lock on a timeout: its owner may be between a remote
148
+ // revocation and a local write. A crash needs explicit local recovery.
149
+ throw new CliError('CLI configuration is locked by another command.', {
150
+ code: 'AUTH_CONFIG_LOCKED',
151
+ fix: `Wait for the other CLI command. If it crashed, close all CLI commands before removing ${lockPath}.`,
152
+ });
153
+ }
154
+ await new Promise((resolve) => setTimeout(resolve, 25));
155
+ }
156
+ }
157
+ try {
158
+ await lock.writeFile(JSON.stringify({ pid: process.pid, createdAt: new Date().toISOString() }), 'utf8');
159
+ return await operation();
160
+ }
161
+ finally {
162
+ await lock.close();
163
+ await fs.unlink(lockPath);
164
+ }
165
+ }
166
+ export async function updateAuthConfig(mutate) {
167
+ return withAuthConfigLock(async () => {
168
+ const config = await loadAuthConfig();
169
+ const before = JSON.stringify(config);
170
+ const result = await mutate(config);
171
+ await assertConfigUnchanged(before);
172
+ await saveAuthConfig(config);
173
+ return result;
174
+ });
175
+ }
176
+ async function assertConfigUnchanged(before) {
177
+ // An older CLI or an editor may ignore the lock. Do not overwrite a change
178
+ // observed while awaiting remote revocation or other asynchronous work.
179
+ if (JSON.stringify(await loadAuthConfig()) !== before) {
180
+ throw new CliError('CLI configuration changed during this command.', {
181
+ code: 'AUTH_CONFIG_CHANGED', fix: 'Retry after the other CLI command has finished.',
182
+ });
183
+ }
184
+ }
97
185
  export async function resolveAuthConfig(overrides = {},
98
186
  /** Only login may resolve defaults while creating a new named environment. */
99
187
  behavior = {}) {
@@ -119,10 +207,10 @@ behavior = {}) {
119
207
  // Partial named profiles may share the default credential only while they
120
208
  // target the same API. A profile pointing elsewhere must never resurrect a
121
209
  // default token/key or workspace after its own login is cleared.
122
- const inheritedConfig = environmentConfig.apiUrl &&
123
- !sameApiEndpoint(environmentConfig.apiUrl, fileConfig.apiUrl ?? DEFAULT_API_URL)
124
- ? {}
210
+ const inheritedConfig = environmentConfig.loggedOut || fileConfig.loggedOut || (environmentConfig.apiUrl &&
211
+ !sameApiEndpoint(environmentConfig.apiUrl, fileConfig.apiUrl ?? DEFAULT_API_URL)) ? {}
125
212
  : fileConfig;
213
+ const storedEnvironment = environmentConfig.loggedOut ? {} : environmentConfig;
126
214
  const apiUrl = overrides.apiUrl
127
215
  ?? envValue(process.env.INQUIR_API_URL)
128
216
  ?? envValue(process.env.LAMBDA_API_URL)
@@ -132,22 +220,22 @@ behavior = {}) {
132
220
  const apiKey = overrides.apiKey
133
221
  ?? envValue(process.env.INQUIR_API_KEY)
134
222
  ?? envValue(process.env.LAMBDA_API_KEY)
135
- ?? environmentConfig.apiKey
223
+ ?? storedEnvironment.apiKey
136
224
  ?? inheritedConfig.apiKey
137
225
  ?? undefined;
138
226
  const token = overrides.token
139
227
  ?? envValue(process.env.INQUIR_TOKEN)
140
- ?? environmentConfig.token
228
+ ?? storedEnvironment.token
141
229
  ?? inheritedConfig.token
142
230
  ?? undefined;
143
231
  const workspaceId = overrides.workspaceId // explicit --workspace
144
232
  ?? envValue(process.env.INQUIR_WORKSPACE) // env var
145
- ?? environmentConfig.workspaceId // named credential environment
233
+ ?? storedEnvironment.workspaceId // named credential environment
146
234
  ?? overrides.projectWorkspaceId // project link (inquir.config.json)
147
235
  ?? inheritedConfig.workspaceId // stored default for the same API
148
236
  ?? undefined;
149
237
  // A cached identity from another token is not this profile's identity.
150
- const user = environmentConfig.user ?? (environmentConfig.token && environmentConfig.token !== inheritedConfig.token
238
+ const user = storedEnvironment.user ?? (storedEnvironment.token && storedEnvironment.token !== inheritedConfig.token
151
239
  ? undefined
152
240
  : inheritedConfig.user);
153
241
  return { apiUrl, apiKey, token, workspaceId, user };
@@ -157,18 +245,27 @@ behavior = {}) {
157
245
  * and persist. The same loaded config is available for coordinated profile
158
246
  * updates, such as retaining API bindings when login changes the default.
159
247
  */
160
- export async function updateEnvironmentConfig(environment, mutate) {
161
- const config = await loadAuthConfig();
162
- const envName = resolveEnvironmentName(environment);
163
- if (envName) {
164
- config.environments = config.environments ?? {};
165
- const slice = config.environments[envName] ?? {};
166
- mutate(slice, config);
167
- config.environments[envName] = slice;
168
- }
169
- else {
170
- mutate(config, config);
171
- }
172
- await saveAuthConfig(config);
248
+ export async function updateEnvironmentConfig(environment, mutate, afterSave) {
249
+ return withAuthConfigLock(async () => {
250
+ const config = await loadAuthConfig();
251
+ const before = JSON.stringify(config);
252
+ const envName = resolveEnvironmentName(environment);
253
+ let slice = config;
254
+ if (envName) {
255
+ config.environments = config.environments ?? {};
256
+ const existing = Object.prototype.hasOwnProperty.call(config.environments, envName)
257
+ ? config.environments[envName] : undefined;
258
+ if (existing !== undefined && (!existing || typeof existing !== 'object' || Array.isArray(existing))) {
259
+ throw new CliError(`Invalid credential environment: ${envName}`, { code: 'INVALID_ENVIRONMENT', exitCode: ExitCode.USAGE });
260
+ }
261
+ slice = existing ?? {};
262
+ Object.defineProperty(config.environments, envName, { value: slice, writable: true, enumerable: true, configurable: true });
263
+ }
264
+ const result = await mutate(slice, config);
265
+ await assertConfigUnchanged(before);
266
+ await saveAuthConfig(config);
267
+ await afterSave?.(result, config);
268
+ return result;
269
+ });
173
270
  }
174
271
  //# sourceMappingURL=auth.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/utils/auth.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/utils/auth.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,15 @@
1
+ /**
2
+ * Only absolute http(s) URLs are ever handed to a launcher. The URL can come
3
+ * from the server (device-login verification URL), so anything else — other
4
+ * schemes, option-looking strings, or text with shell metacharacters that
5
+ * would not survive URL parsing — is refused.
6
+ */
7
+ export declare function browserLaunchUrl(url: string): string | null;
8
+ /** Launcher command for the platform. No shell is involved on any platform. */
9
+ export declare function browserLaunchCommand(href: string, platform?: NodeJS.Platform): {
10
+ command: string;
11
+ args: string[];
12
+ };
1
13
  /**
2
14
  * Best-effort open of a URL in the user's default browser. Resolves to `true`
3
15
  * if a launcher process was spawned, `false` otherwise (caller should then print
@@ -1 +1 @@
1
- {"version":3,"file":"browser.d.ts","sourceRoot":"","sources":["../../src/utils/browser.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAyBhD"}
1
+ {"version":3,"file":"browser.d.ts","sourceRoot":"","sources":["../../src/utils/browser.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAW3D;AAED,+EAA+E;AAC/E,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,MAAM,EACZ,QAAQ,GAAE,MAAM,CAAC,QAA2B,GAC3C;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,EAAE,CAAA;CAAE,CAWrC;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAchD"}