@noodleseed/one 0.10.0 → 0.12.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 (153) hide show
  1. package/dist/cli.d.ts.map +1 -1
  2. package/dist/cli.js +16 -4
  3. package/dist/cli.js.map +1 -1
  4. package/dist/commands/archive-ops.d.ts +3 -0
  5. package/dist/commands/archive-ops.d.ts.map +1 -0
  6. package/dist/commands/archive-ops.js +168 -0
  7. package/dist/commands/archive-ops.js.map +1 -0
  8. package/dist/commands/org-admin.d.ts +17 -0
  9. package/dist/commands/org-admin.d.ts.map +1 -0
  10. package/dist/commands/org-admin.js +241 -0
  11. package/dist/commands/org-admin.js.map +1 -0
  12. package/dist/commands/policy-ops.d.ts.map +1 -1
  13. package/dist/commands/policy-ops.js +123 -1
  14. package/dist/commands/policy-ops.js.map +1 -1
  15. package/dist/commands/session.d.ts +1 -15
  16. package/dist/commands/session.d.ts.map +1 -1
  17. package/dist/commands/session.js +15 -170
  18. package/dist/commands/session.js.map +1 -1
  19. package/dist/commands/shared.d.ts.map +1 -1
  20. package/dist/commands/shared.js +13 -5
  21. package/dist/commands/shared.js.map +1 -1
  22. package/dist/commands/update-ops.d.ts +29 -0
  23. package/dist/commands/update-ops.d.ts.map +1 -0
  24. package/dist/commands/update-ops.js +315 -0
  25. package/dist/commands/update-ops.js.map +1 -0
  26. package/dist/config.d.ts +2 -0
  27. package/dist/config.d.ts.map +1 -1
  28. package/dist/config.js.map +1 -1
  29. package/dist/update-binary.d.ts +38 -0
  30. package/dist/update-binary.d.ts.map +1 -0
  31. package/dist/update-binary.js +144 -0
  32. package/dist/update-binary.js.map +1 -0
  33. package/dist/update-check.d.ts +40 -0
  34. package/dist/update-check.d.ts.map +1 -0
  35. package/dist/update-check.js +212 -0
  36. package/dist/update-check.js.map +1 -0
  37. package/dist/update-render.d.ts +17 -0
  38. package/dist/update-render.d.ts.map +1 -0
  39. package/dist/update-render.js +39 -0
  40. package/dist/update-render.js.map +1 -0
  41. package/dist/update.d.ts +10 -9
  42. package/dist/update.d.ts.map +1 -1
  43. package/dist/update.js +21 -89
  44. package/dist/update.js.map +1 -1
  45. package/node_modules/@noodle-borg/agent-kit/dist/curated/command-groups.d.ts.map +1 -1
  46. package/node_modules/@noodle-borg/agent-kit/dist/curated/command-groups.js +13 -1
  47. package/node_modules/@noodle-borg/agent-kit/dist/curated/command-groups.js.map +1 -1
  48. package/node_modules/@noodle-borg/agent-kit/dist/generated/surface.d.ts.map +1 -1
  49. package/node_modules/@noodle-borg/agent-kit/dist/generated/surface.js +2 -0
  50. package/node_modules/@noodle-borg/agent-kit/dist/generated/surface.js.map +1 -1
  51. package/node_modules/@noodle-borg/agent-kit/package.json +1 -1
  52. package/node_modules/@noodle-borg/service/dist/archive-sweeper.d.ts +43 -0
  53. package/node_modules/@noodle-borg/service/dist/archive-sweeper.d.ts.map +1 -0
  54. package/node_modules/@noodle-borg/service/dist/archive-sweeper.js +122 -0
  55. package/node_modules/@noodle-borg/service/dist/archive-sweeper.js.map +1 -0
  56. package/node_modules/@noodle-borg/service/dist/commercial-plans.d.ts +11 -0
  57. package/node_modules/@noodle-borg/service/dist/commercial-plans.d.ts.map +1 -0
  58. package/node_modules/@noodle-borg/service/dist/commercial-plans.js +119 -0
  59. package/node_modules/@noodle-borg/service/dist/commercial-plans.js.map +1 -0
  60. package/node_modules/@noodle-borg/service/dist/deployment-versioning.d.ts +2 -0
  61. package/node_modules/@noodle-borg/service/dist/deployment-versioning.d.ts.map +1 -1
  62. package/node_modules/@noodle-borg/service/dist/deployment-versioning.js +1 -1
  63. package/node_modules/@noodle-borg/service/dist/deployment-versioning.js.map +1 -1
  64. package/node_modules/@noodle-borg/service/dist/index.d.ts +3 -1
  65. package/node_modules/@noodle-borg/service/dist/index.d.ts.map +1 -1
  66. package/node_modules/@noodle-borg/service/dist/index.js +2 -0
  67. package/node_modules/@noodle-borg/service/dist/index.js.map +1 -1
  68. package/node_modules/@noodle-borg/service/dist/options.d.ts +9 -0
  69. package/node_modules/@noodle-borg/service/dist/options.d.ts.map +1 -1
  70. package/node_modules/@noodle-borg/service/dist/policy.d.ts +3 -0
  71. package/node_modules/@noodle-borg/service/dist/policy.d.ts.map +1 -1
  72. package/node_modules/@noodle-borg/service/dist/policy.js +32 -0
  73. package/node_modules/@noodle-borg/service/dist/policy.js.map +1 -1
  74. package/node_modules/@noodle-borg/service/dist/registry-state.d.ts +25 -0
  75. package/node_modules/@noodle-borg/service/dist/registry-state.d.ts.map +1 -0
  76. package/node_modules/@noodle-borg/service/dist/registry-state.js +119 -0
  77. package/node_modules/@noodle-borg/service/dist/registry-state.js.map +1 -0
  78. package/node_modules/@noodle-borg/service/dist/registry.d.ts +7 -6
  79. package/node_modules/@noodle-borg/service/dist/registry.d.ts.map +1 -1
  80. package/node_modules/@noodle-borg/service/dist/registry.js +44 -44
  81. package/node_modules/@noodle-borg/service/dist/registry.js.map +1 -1
  82. package/node_modules/@noodle-borg/service/dist/routes/archive.d.ts +16 -0
  83. package/node_modules/@noodle-borg/service/dist/routes/archive.d.ts.map +1 -0
  84. package/node_modules/@noodle-borg/service/dist/routes/archive.js +83 -0
  85. package/node_modules/@noodle-borg/service/dist/routes/archive.js.map +1 -0
  86. package/node_modules/@noodle-borg/service/dist/routes/control-plane.d.ts +1 -18
  87. package/node_modules/@noodle-borg/service/dist/routes/control-plane.d.ts.map +1 -1
  88. package/node_modules/@noodle-borg/service/dist/routes/control-plane.js +18 -260
  89. package/node_modules/@noodle-borg/service/dist/routes/control-plane.js.map +1 -1
  90. package/node_modules/@noodle-borg/service/dist/routes/deployments.d.ts +17 -0
  91. package/node_modules/@noodle-borg/service/dist/routes/deployments.d.ts.map +1 -0
  92. package/node_modules/@noodle-borg/service/dist/routes/deployments.js +88 -0
  93. package/node_modules/@noodle-borg/service/dist/routes/deployments.js.map +1 -0
  94. package/node_modules/@noodle-borg/service/dist/routes/org-admin.d.ts +40 -0
  95. package/node_modules/@noodle-borg/service/dist/routes/org-admin.d.ts.map +1 -0
  96. package/node_modules/@noodle-borg/service/dist/routes/org-admin.js +353 -0
  97. package/node_modules/@noodle-borg/service/dist/routes/org-admin.js.map +1 -0
  98. package/node_modules/@noodle-borg/service/dist/routes/paths.d.ts +15 -0
  99. package/node_modules/@noodle-borg/service/dist/routes/paths.d.ts.map +1 -1
  100. package/node_modules/@noodle-borg/service/dist/routes/paths.js +47 -0
  101. package/node_modules/@noodle-borg/service/dist/routes/paths.js.map +1 -1
  102. package/node_modules/@noodle-borg/service/dist/routes/plans.d.ts +20 -0
  103. package/node_modules/@noodle-borg/service/dist/routes/plans.d.ts.map +1 -0
  104. package/node_modules/@noodle-borg/service/dist/routes/plans.js +217 -0
  105. package/node_modules/@noodle-borg/service/dist/routes/plans.js.map +1 -0
  106. package/node_modules/@noodle-borg/service/dist/routes/policies.d.ts.map +1 -1
  107. package/node_modules/@noodle-borg/service/dist/routes/policies.js +7 -0
  108. package/node_modules/@noodle-borg/service/dist/routes/policies.js.map +1 -1
  109. package/node_modules/@noodle-borg/service/dist/routes/rollback.d.ts.map +1 -1
  110. package/node_modules/@noodle-borg/service/dist/routes/rollback.js +19 -1
  111. package/node_modules/@noodle-borg/service/dist/routes/rollback.js.map +1 -1
  112. package/node_modules/@noodle-borg/service/dist/service.d.ts.map +1 -1
  113. package/node_modules/@noodle-borg/service/dist/service.js +107 -4
  114. package/node_modules/@noodle-borg/service/dist/service.js.map +1 -1
  115. package/node_modules/@noodle-borg/service/dist/store/control-plane.d.ts +14 -0
  116. package/node_modules/@noodle-borg/service/dist/store/control-plane.d.ts.map +1 -1
  117. package/node_modules/@noodle-borg/service/dist/store/control-plane.js +38 -0
  118. package/node_modules/@noodle-borg/service/dist/store/control-plane.js.map +1 -1
  119. package/node_modules/@noodle-borg/service/dist/store/json-file.d.ts +25 -0
  120. package/node_modules/@noodle-borg/service/dist/store/json-file.d.ts.map +1 -0
  121. package/node_modules/@noodle-borg/service/dist/store/json-file.js +163 -0
  122. package/node_modules/@noodle-borg/service/dist/store/json-file.js.map +1 -0
  123. package/node_modules/@noodle-borg/service/dist/store/postgres-control-plane.d.ts +14 -0
  124. package/node_modules/@noodle-borg/service/dist/store/postgres-control-plane.d.ts.map +1 -1
  125. package/node_modules/@noodle-borg/service/dist/store/postgres-control-plane.js +16 -0
  126. package/node_modules/@noodle-borg/service/dist/store/postgres-control-plane.js.map +1 -1
  127. package/node_modules/@noodle-borg/service/dist/store/postgres-policy.d.ts.map +1 -1
  128. package/node_modules/@noodle-borg/service/dist/store/postgres-policy.js +10 -4
  129. package/node_modules/@noodle-borg/service/dist/store/postgres-policy.js.map +1 -1
  130. package/node_modules/@noodle-borg/service/dist/store/postgres-rows.d.ts +60 -0
  131. package/node_modules/@noodle-borg/service/dist/store/postgres-rows.d.ts.map +1 -0
  132. package/node_modules/@noodle-borg/service/dist/store/postgres-rows.js +101 -0
  133. package/node_modules/@noodle-borg/service/dist/store/postgres-rows.js.map +1 -0
  134. package/node_modules/@noodle-borg/service/dist/store/postgres-schema.d.ts.map +1 -1
  135. package/node_modules/@noodle-borg/service/dist/store/postgres-schema.js +10 -0
  136. package/node_modules/@noodle-borg/service/dist/store/postgres-schema.js.map +1 -1
  137. package/node_modules/@noodle-borg/service/dist/store/postgres.d.ts +20 -6
  138. package/node_modules/@noodle-borg/service/dist/store/postgres.d.ts.map +1 -1
  139. package/node_modules/@noodle-borg/service/dist/store/postgres.js +74 -122
  140. package/node_modules/@noodle-borg/service/dist/store/postgres.js.map +1 -1
  141. package/node_modules/@noodle-borg/service/dist/store/records.d.ts +35 -0
  142. package/node_modules/@noodle-borg/service/dist/store/records.d.ts.map +1 -0
  143. package/node_modules/@noodle-borg/service/dist/store/records.js +87 -0
  144. package/node_modules/@noodle-borg/service/dist/store/records.js.map +1 -0
  145. package/node_modules/@noodle-borg/service/dist/store/validate.d.ts +19 -0
  146. package/node_modules/@noodle-borg/service/dist/store/validate.d.ts.map +1 -0
  147. package/node_modules/@noodle-borg/service/dist/store/validate.js +61 -0
  148. package/node_modules/@noodle-borg/service/dist/store/validate.js.map +1 -0
  149. package/node_modules/@noodle-borg/service/dist/store.d.ts +68 -44
  150. package/node_modules/@noodle-borg/service/dist/store.d.ts.map +1 -1
  151. package/node_modules/@noodle-borg/service/dist/store.js +48 -213
  152. package/node_modules/@noodle-borg/service/dist/store.js.map +1 -1
  153. package/package.json +2 -2
package/dist/cli.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAuDA,wBAAsB,GAAG,CACvB,IAAI,EAAE,SAAS,MAAM,EAAE,EACvB,GAAG,GAAE,MAAM,CAAC,UAAwB,EACpC,IAAI,GAAE,MAAkB,GACvB,OAAO,CAAC,MAAM,CAAC,CAOjB"}
1
+ {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAmDA,wBAAsB,GAAG,CACvB,IAAI,EAAE,SAAS,MAAM,EAAE,EACvB,GAAG,GAAE,MAAM,CAAC,UAAwB,EACpC,IAAI,GAAE,MAAkB,GACvB,OAAO,CAAC,MAAM,CAAC,CAYjB"}
package/dist/cli.js CHANGED
@@ -14,6 +14,7 @@ import { realpathSync } from 'node:fs';
14
14
  import { homedir } from 'node:os';
15
15
  import { fileURLToPath } from 'node:url';
16
16
  import { runAgents } from './agents.js';
17
+ import { runArchive, runRestore } from './commands/archive-ops.js';
17
18
  import { runAudit } from './commands/audit-ops.js';
18
19
  import { runAuth } from './commands/auth-ops.js';
19
20
  import { runDev, runSmoke as runLocalSmoke, runLocalTest, runValidate, } from './commands/author-loop.js';
@@ -23,20 +24,27 @@ import { runAccess, runDeploy, runOpen, runRollback, runStatus } from './command
23
24
  import { runHostedSmoke, runInspect } from './commands/diagnostics-ops.js';
24
25
  import { runLogs } from './commands/logs-ops.js';
25
26
  import { runCheck, runDevtools } from './commands/mcp-apps.js';
27
+ import { runMembers, runOrgs } from './commands/org-admin.js';
26
28
  import { runPolicy } from './commands/policy-ops.js';
27
29
  import { runDocs, runExport, runImport, runInit, runLink, runSetup, } from './commands/project-setup.js';
28
30
  import { runServiceCommand } from './commands/service-ops.js';
29
- import { runList, runLogin, runLogout, runMembers, runOrgs, runTarget, runWhoami, } from './commands/session.js';
31
+ import { runList, runLogin, runLogout, runTarget, runWhoami } from './commands/session.js';
30
32
  import { usage } from './commands/shared.js';
33
+ import { runUpdateCommand } from './commands/update-ops.js';
31
34
  import { runDoctor } from './doctor.js';
32
35
  import { runStart } from './first-run.js';
33
36
  import { offerFirstRun } from './first-run-entry.js';
34
- import { currentCliVersion, maybeCheckForCliUpdate, runUpdateCommand } from './update.js';
37
+ import { currentCliVersion } from './update.js';
38
+ import { maybeCheckForCliUpdate } from './update-check.js';
35
39
  export async function run(argv, env = process.env, home = homedir()) {
36
40
  const [command, ...rest] = argv;
37
41
  const code = await runCommand(command, rest, env, home);
38
42
  if (code === 0) {
39
- await maybeCheckForCliUpdate({ command, env, home });
43
+ // The passive check never changes the user's exit code except under the
44
+ // explicit NOODLE_UPDATE_MODE=check contract (overlay 10 = update available).
45
+ const overlay = await maybeCheckForCliUpdate({ command, argv: rest, env, home }).catch(() => undefined);
46
+ if (overlay !== undefined)
47
+ return overlay;
40
48
  }
41
49
  return code;
42
50
  }
@@ -57,7 +65,7 @@ async function runCommand(command, rest, env, home) {
57
65
  case undefined:
58
66
  return offerFirstRun(env, home);
59
67
  case 'update':
60
- return runUpdateCommand(rest);
68
+ return runUpdateCommand(rest, { env });
61
69
  case 'init':
62
70
  return runInit(rest);
63
71
  case 'setup':
@@ -112,6 +120,10 @@ async function runCommand(command, rest, env, home) {
112
120
  return runHostedSmoke(rest, env, home);
113
121
  case 'rollback':
114
122
  return runRollback(rest, env, home);
123
+ case 'archive':
124
+ return runArchive(rest, env, home);
125
+ case 'restore':
126
+ return runRestore(rest, env, home);
115
127
  case 'access':
116
128
  return runAccess(rest, env, home);
117
129
  case 'service':
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export declare function runArchive(rest: readonly string[], env: NodeJS.ProcessEnv, home: string): Promise<number>;
2
+ export declare function runRestore(rest: readonly string[], env: NodeJS.ProcessEnv, home: string): Promise<number>;
3
+ //# sourceMappingURL=archive-ops.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"archive-ops.d.ts","sourceRoot":"","sources":["../../src/commands/archive-ops.ts"],"names":[],"mappings":"AAuFA,wBAAsB,UAAU,CAC9B,IAAI,EAAE,SAAS,MAAM,EAAE,EACvB,GAAG,EAAE,MAAM,CAAC,UAAU,EACtB,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,MAAM,CAAC,CAuEjB;AAED,wBAAsB,UAAU,CAC9B,IAAI,EAAE,SAAS,MAAM,EAAE,EACvB,GAAG,EAAE,MAAM,CAAC,UAAU,EACtB,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,MAAM,CAAC,CA6CjB"}
@@ -0,0 +1,168 @@
1
+ /**
2
+ * App soft-delete operations (ADR 0117): `noodle archive <app>` and `noodle restore <app>`.
3
+ * Archive always applies to the whole app — every environment and server version — so there is no
4
+ * `--env` flag. The service gates both on org-owner identity, hides archived apps from the default
5
+ * deployments list, serves their MCP endpoints as 410 Gone, and hard-deletes them after the
6
+ * retention window (default 30 days); `restore` undoes the archive within that window.
7
+ */
8
+ import { resolveControlPlaneToken, serviceJson } from '../control-plane.js';
9
+ import { confirm } from '../prompts.js';
10
+ import { printCliFailure, resolveTenantTarget, serviceFailure } from './shared.js';
11
+ function parseAppCommandArgs(command, rest) {
12
+ let positionalApp;
13
+ let flagApp;
14
+ let org;
15
+ let service;
16
+ let authToken;
17
+ let json = false;
18
+ let yes = false;
19
+ let failure;
20
+ for (let i = 0; i < rest.length; i++) {
21
+ const arg = rest[i];
22
+ if (arg === '--org')
23
+ org = rest[++i];
24
+ else if (arg === '--app')
25
+ flagApp = rest[++i];
26
+ else if (arg === '--service')
27
+ service = rest[++i];
28
+ else if (arg === '--auth-token')
29
+ authToken = rest[++i];
30
+ else if (arg === '--json')
31
+ json = true;
32
+ else if (arg === '--yes')
33
+ yes = true;
34
+ else if (arg === '--env') {
35
+ failure = failure ?? {
36
+ code: 'usage_error',
37
+ message: `${command} applies to the whole app; --env is not supported`,
38
+ cause: `${command === 'archive' ? 'Archiving' : 'Restoring'} always covers every environment of the app.`,
39
+ fix: 'Drop the --env flag.',
40
+ next: `noodle ${command} <app> --org <org>`,
41
+ exitCode: 2,
42
+ };
43
+ i++;
44
+ }
45
+ else if (arg?.startsWith('--')) {
46
+ failure = failure ?? {
47
+ code: 'usage_error',
48
+ message: `unknown ${command} option ${arg}`,
49
+ cause: `${arg} is not a supported ${command} option.`,
50
+ fix: `Remove the unknown option or use a supported ${command} flag.`,
51
+ next: `noodle ${command} <app> --org <org>`,
52
+ exitCode: 2,
53
+ };
54
+ }
55
+ else if (arg !== undefined && positionalApp === undefined) {
56
+ positionalApp = arg;
57
+ }
58
+ }
59
+ const app = positionalApp ?? flagApp;
60
+ return {
61
+ ...(app !== undefined ? { app } : {}),
62
+ ...(org !== undefined ? { org } : {}),
63
+ ...(service !== undefined ? { service } : {}),
64
+ ...(authToken !== undefined ? { authToken } : {}),
65
+ json,
66
+ yes,
67
+ ...(failure !== undefined ? { failure } : {}),
68
+ };
69
+ }
70
+ function authRequired(command) {
71
+ return {
72
+ code: 'auth_required',
73
+ message: 'No control-plane login token is available.',
74
+ cause: `Hosted ${command} requires an authenticated Noodle Seed Cloud identity.`,
75
+ fix: 'Sign in to the target service.',
76
+ next: 'noodle login',
77
+ exitCode: 3,
78
+ };
79
+ }
80
+ export async function runArchive(rest, env, home) {
81
+ const args = parseAppCommandArgs('archive', rest);
82
+ if (args.failure !== undefined)
83
+ return printCliFailure('archive', args.failure, args.json);
84
+ const target = resolveTenantTarget(args, home);
85
+ if (!target.ok)
86
+ return printCliFailure('archive', target.error, args.json);
87
+ if (!args.yes) {
88
+ const interactive = !args.json && process.stdin.isTTY === true && process.stdout.isTTY === true;
89
+ if (!interactive) {
90
+ return printCliFailure('archive', {
91
+ code: 'confirmation_required',
92
+ message: 'archive requires confirmation',
93
+ cause: 'Archiving stops serving every environment of the app (410 Gone) and schedules permanent deletion after the retention window.',
94
+ fix: 'Re-run with --yes to confirm non-interactively.',
95
+ next: `noodle archive ${target.app} --org ${target.org} --yes`,
96
+ exitCode: 2,
97
+ }, args.json);
98
+ }
99
+ const confirmed = await confirm(`Archive ${target.org}/${target.app}? Every environment stops serving (410 Gone); it is permanently deleted after the retention window (default 30 days) unless restored.`, { initial: false });
100
+ if (!confirmed) {
101
+ console.error('archive: cancelled');
102
+ return 2;
103
+ }
104
+ }
105
+ const resolved = await resolveControlPlaneToken({
106
+ serviceFlag: args.service ?? target.serviceUrl,
107
+ authFlag: args.authToken,
108
+ env,
109
+ home,
110
+ });
111
+ if (resolved.token === undefined) {
112
+ return printCliFailure('archive', authRequired('archive'), args.json);
113
+ }
114
+ try {
115
+ const body = await serviceJson(`${resolved.serviceUrl}/v1/orgs/${encodeURIComponent(target.org)}` +
116
+ `/apps/${encodeURIComponent(target.app)}/archive`, resolved.token, { method: 'POST' });
117
+ if (args.json) {
118
+ console.log(JSON.stringify({ ...body, service: resolved.serviceUrl }));
119
+ return 0;
120
+ }
121
+ console.log(`service: ${resolved.serviceUrl}`);
122
+ console.log(`target: ${target.org}/${target.app}`);
123
+ console.log(`archived: ${body.archive.archivedAt}${body.archive.alreadyArchived ? ' (already archived)' : ''}`);
124
+ console.log(`deployments archived: ${body.archive.archivedDeployments}`);
125
+ console.log('Endpoints now answer 410 Gone; secrets and variables are retained but inert.');
126
+ console.log(`Next: noodle restore ${target.app} --org ${target.org}`);
127
+ return 0;
128
+ }
129
+ catch (error) {
130
+ return printCliFailure('archive', serviceFailure('archive', error, 'noodle list --archived'), args.json);
131
+ }
132
+ }
133
+ export async function runRestore(rest, env, home) {
134
+ const args = parseAppCommandArgs('restore', rest);
135
+ if (args.failure !== undefined)
136
+ return printCliFailure('restore', args.failure, args.json);
137
+ const target = resolveTenantTarget(args, home);
138
+ if (!target.ok)
139
+ return printCliFailure('restore', target.error, args.json);
140
+ const resolved = await resolveControlPlaneToken({
141
+ serviceFlag: args.service ?? target.serviceUrl,
142
+ authFlag: args.authToken,
143
+ env,
144
+ home,
145
+ });
146
+ if (resolved.token === undefined) {
147
+ return printCliFailure('restore', authRequired('restore'), args.json);
148
+ }
149
+ try {
150
+ const body = await serviceJson(`${resolved.serviceUrl}/v1/orgs/${encodeURIComponent(target.org)}` +
151
+ `/apps/${encodeURIComponent(target.app)}/restore`, resolved.token, { method: 'POST' });
152
+ if (args.json) {
153
+ console.log(JSON.stringify({ ...body, service: resolved.serviceUrl }));
154
+ return 0;
155
+ }
156
+ console.log(`service: ${resolved.serviceUrl}`);
157
+ console.log(`target: ${target.org}/${target.app}`);
158
+ console.log(body.restore.alreadyActive
159
+ ? 'status: already active (nothing was archived)'
160
+ : `restored deployments: ${body.restore.restoredDeployments}`);
161
+ console.log(`Next: noodle status --org ${target.org} --app ${target.app}`);
162
+ return 0;
163
+ }
164
+ catch (error) {
165
+ return printCliFailure('restore', serviceFailure('restore', error, 'noodle list --archived'), args.json);
166
+ }
167
+ }
168
+ //# sourceMappingURL=archive-ops.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"archive-ops.js","sourceRoot":"","sources":["../../src/commands/archive-ops.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ export declare function runOrgs(rest: readonly string[], env: NodeJS.ProcessEnv, home: string): Promise<number>;
2
+ export declare function runMembers(rest: readonly string[], env: NodeJS.ProcessEnv, home: string): Promise<number>;
3
+ export declare function parseOrgArgs(rest: readonly string[]): {
4
+ readonly serviceFlag?: string;
5
+ readonly authFlag?: string;
6
+ readonly displayName?: string;
7
+ readonly name?: string;
8
+ };
9
+ export declare function parseMemberArgs(rest: readonly string[]): {
10
+ readonly serviceFlag?: string;
11
+ readonly authFlag?: string;
12
+ readonly org?: string;
13
+ readonly subject?: string;
14
+ readonly email?: string;
15
+ readonly role?: 'owner' | 'developer';
16
+ };
17
+ //# sourceMappingURL=org-admin.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"org-admin.d.ts","sourceRoot":"","sources":["../../src/commands/org-admin.ts"],"names":[],"mappings":"AAQA,wBAAsB,OAAO,CAC3B,IAAI,EAAE,SAAS,MAAM,EAAE,EACvB,GAAG,EAAE,MAAM,CAAC,UAAU,EACtB,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,MAAM,CAAC,CAgEjB;AAED,wBAAsB,UAAU,CAC9B,IAAI,EAAE,SAAS,MAAM,EAAE,EACvB,GAAG,EAAE,MAAM,CAAC,UAAU,EACtB,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,MAAM,CAAC,CAiJjB;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG;IACrD,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;CACxB,CAkBA;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG;IACxD,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,GAAG,WAAW,CAAC;CACvC,CA2BA"}
@@ -0,0 +1,241 @@
1
+ /**
2
+ * Org administration commands (moved from `session.ts` to keep both under the size gate): `orgs
3
+ * list|create|rename` and `members list|add|remove|set-role|invitations|revoke`. Every operation rides
4
+ * the authenticated `/v1/orgs/...` control-plane routes; nothing here touches storage directly.
5
+ */
6
+ import { resolveControlPlaneToken, serviceJson } from '../control-plane.js';
7
+ import { missingLogin, usage } from './shared.js';
8
+ export async function runOrgs(rest, env, home) {
9
+ const [action, maybeSlug, ...tail] = rest;
10
+ const { serviceFlag, authFlag, displayName, name } = parseOrgArgs(tail);
11
+ const json = tail.includes('--json');
12
+ const { serviceUrl, token } = await resolveControlPlaneToken({
13
+ serviceFlag,
14
+ authFlag,
15
+ env,
16
+ home,
17
+ });
18
+ if (token === undefined)
19
+ return missingLogin('orgs');
20
+ try {
21
+ if (action === 'list') {
22
+ const body = await serviceJson(`${serviceUrl}/v1/orgs`, token);
23
+ if (json) {
24
+ console.log(JSON.stringify({ ok: true, service: serviceUrl, orgs: body.orgs }));
25
+ return 0;
26
+ }
27
+ for (const org of body.orgs)
28
+ console.log(`${org.slug}\t${org.displayName ?? ''}`);
29
+ return 0;
30
+ }
31
+ if (action === 'create' && maybeSlug !== undefined) {
32
+ const body = await serviceJson(`${serviceUrl}/v1/orgs`, token, {
33
+ method: 'POST',
34
+ headers: { 'content-type': 'application/json' },
35
+ body: JSON.stringify({ slug: maybeSlug, ...(displayName ? { displayName } : {}) }),
36
+ });
37
+ if (json) {
38
+ console.log(JSON.stringify({ ok: true, service: serviceUrl, org: body.org }));
39
+ return 0;
40
+ }
41
+ console.log(`created ${body.org.slug}`);
42
+ return 0;
43
+ }
44
+ if (action === 'rename' && maybeSlug !== undefined && name !== undefined) {
45
+ const body = await serviceJson(`${serviceUrl}/v1/orgs/${encodeURIComponent(maybeSlug)}`, token, {
46
+ method: 'PATCH',
47
+ headers: { 'content-type': 'application/json' },
48
+ body: JSON.stringify({ displayName: name }),
49
+ });
50
+ if (json) {
51
+ console.log(JSON.stringify({ ok: true, service: serviceUrl, org: body.org }));
52
+ return 0;
53
+ }
54
+ console.log(`renamed ${body.org.slug} to "${body.org.displayName ?? name}"`);
55
+ return 0;
56
+ }
57
+ }
58
+ catch (error) {
59
+ console.error(`orgs: ${error.message}`);
60
+ return 1;
61
+ }
62
+ usage();
63
+ return 2;
64
+ }
65
+ export async function runMembers(rest, env, home) {
66
+ const [action, ...tail] = rest;
67
+ const args = parseMemberArgs(tail);
68
+ const json = tail.includes('--json');
69
+ const all = tail.includes('--all');
70
+ if (!args.org) {
71
+ console.error('members: --org is required');
72
+ return 2;
73
+ }
74
+ const { serviceUrl, token } = await resolveControlPlaneToken({
75
+ serviceFlag: args.serviceFlag,
76
+ authFlag: args.authFlag,
77
+ env,
78
+ home,
79
+ });
80
+ if (token === undefined)
81
+ return missingLogin('members');
82
+ try {
83
+ const base = `${serviceUrl}/v1/orgs/${encodeURIComponent(args.org)}/members`;
84
+ const invitationsBase = `${serviceUrl}/v1/orgs/${encodeURIComponent(args.org)}/invitations`;
85
+ if (action === 'list') {
86
+ const body = await serviceJson(base, token);
87
+ if (json) {
88
+ console.log(JSON.stringify({ ok: true, service: serviceUrl, org: args.org, members: body.members }));
89
+ return 0;
90
+ }
91
+ for (const member of body.members) {
92
+ console.log(`${member.email}\t${member.role}\t${member.subject}`);
93
+ }
94
+ return 0;
95
+ }
96
+ if (action === 'add' && args.subject && args.email) {
97
+ await serviceJson(base, token, {
98
+ method: 'POST',
99
+ headers: { 'content-type': 'application/json' },
100
+ body: JSON.stringify({
101
+ subject: args.subject,
102
+ email: args.email,
103
+ ...(args.role ? { role: args.role } : {}),
104
+ }),
105
+ });
106
+ if (json) {
107
+ console.log(JSON.stringify({ ok: true, service: serviceUrl, org: args.org, email: args.email }));
108
+ return 0;
109
+ }
110
+ console.log(`added ${args.email}`);
111
+ return 0;
112
+ }
113
+ if (action === 'remove' && args.subject) {
114
+ await serviceJson(`${base}/${encodeURIComponent(args.subject)}`, token, { method: 'DELETE' });
115
+ if (json) {
116
+ console.log(JSON.stringify({
117
+ ok: true,
118
+ service: serviceUrl,
119
+ org: args.org,
120
+ subject: args.subject,
121
+ removed: true,
122
+ }));
123
+ return 0;
124
+ }
125
+ console.log(`removed ${args.subject}`);
126
+ return 0;
127
+ }
128
+ if (action === 'set-role' && args.subject && args.role) {
129
+ const body = await serviceJson(`${base}/${encodeURIComponent(args.subject)}`, token, {
130
+ method: 'PATCH',
131
+ headers: { 'content-type': 'application/json' },
132
+ body: JSON.stringify({ role: args.role }),
133
+ });
134
+ if (json) {
135
+ console.log(JSON.stringify({ ok: true, service: serviceUrl, org: args.org, member: body.member }));
136
+ return 0;
137
+ }
138
+ console.log(`set ${body.member.subject} to ${body.member.role}`);
139
+ return 0;
140
+ }
141
+ if (action === 'invitations') {
142
+ const body = await serviceJson(all ? `${invitationsBase}?all=true` : invitationsBase, token);
143
+ if (json) {
144
+ console.log(JSON.stringify({
145
+ ok: true,
146
+ service: serviceUrl,
147
+ org: args.org,
148
+ invitations: body.invitations,
149
+ }));
150
+ return 0;
151
+ }
152
+ for (const invitation of body.invitations) {
153
+ console.log(`${invitation.email}\t${invitation.role}\t${invitation.status}\t${invitation.expiresAt}`);
154
+ }
155
+ return 0;
156
+ }
157
+ if (action === 'revoke' && args.email) {
158
+ const body = await serviceJson(invitationsBase, token, {
159
+ method: 'DELETE',
160
+ headers: { 'content-type': 'application/json' },
161
+ body: JSON.stringify({ email: args.email }),
162
+ });
163
+ if (json) {
164
+ console.log(JSON.stringify({
165
+ ok: true,
166
+ service: serviceUrl,
167
+ org: args.org,
168
+ email: args.email,
169
+ revoked: body.revoked,
170
+ }));
171
+ return 0;
172
+ }
173
+ console.log(`revoked ${body.revoked} invitation(s) for ${args.email}`);
174
+ return 0;
175
+ }
176
+ }
177
+ catch (error) {
178
+ console.error(`members: ${error.message}`);
179
+ return 1;
180
+ }
181
+ usage();
182
+ return 2;
183
+ }
184
+ export function parseOrgArgs(rest) {
185
+ let serviceFlag;
186
+ let authFlag;
187
+ let displayName;
188
+ let name;
189
+ for (let i = 0; i < rest.length; i++) {
190
+ const arg = rest[i];
191
+ if (arg === '--service')
192
+ serviceFlag = rest[++i];
193
+ else if (arg === '--auth-token')
194
+ authFlag = rest[++i];
195
+ else if (arg === '--display-name')
196
+ displayName = rest[++i];
197
+ else if (arg === '--name')
198
+ name = rest[++i];
199
+ }
200
+ return {
201
+ ...(serviceFlag !== undefined ? { serviceFlag } : {}),
202
+ ...(authFlag !== undefined ? { authFlag } : {}),
203
+ ...(displayName !== undefined ? { displayName } : {}),
204
+ ...(name !== undefined ? { name } : {}),
205
+ };
206
+ }
207
+ export function parseMemberArgs(rest) {
208
+ let serviceFlag;
209
+ let authFlag;
210
+ let org;
211
+ let subject;
212
+ let email;
213
+ let role;
214
+ for (let i = 0; i < rest.length; i++) {
215
+ const arg = rest[i];
216
+ if (arg === '--service')
217
+ serviceFlag = rest[++i];
218
+ else if (arg === '--auth-token')
219
+ authFlag = rest[++i];
220
+ else if (arg === '--org')
221
+ org = rest[++i];
222
+ else if (arg === '--subject')
223
+ subject = rest[++i];
224
+ else if (arg === '--email')
225
+ email = rest[++i];
226
+ else if (arg === '--role') {
227
+ const value = rest[++i];
228
+ if (value === 'owner' || value === 'developer')
229
+ role = value;
230
+ }
231
+ }
232
+ return {
233
+ ...(serviceFlag !== undefined ? { serviceFlag } : {}),
234
+ ...(authFlag !== undefined ? { authFlag } : {}),
235
+ ...(org !== undefined ? { org } : {}),
236
+ ...(subject !== undefined ? { subject } : {}),
237
+ ...(email !== undefined ? { email } : {}),
238
+ ...(role !== undefined ? { role } : {}),
239
+ };
240
+ }
241
+ //# sourceMappingURL=org-admin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"org-admin.js","sourceRoot":"","sources":["../../src/commands/org-admin.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"policy-ops.d.ts","sourceRoot":"","sources":["../../src/commands/policy-ops.ts"],"names":[],"mappings":"AAwCA,wBAAsB,SAAS,CAC7B,IAAI,EAAE,SAAS,MAAM,EAAE,EACvB,GAAG,GAAE,MAAM,CAAC,UAAwB,EACpC,IAAI,GAAE,MAAkB,GACvB,OAAO,CAAC,MAAM,CAAC,CA+CjB"}
1
+ {"version":3,"file":"policy-ops.d.ts","sourceRoot":"","sources":["../../src/commands/policy-ops.ts"],"names":[],"mappings":"AAyCA,wBAAsB,SAAS,CAC7B,IAAI,EAAE,SAAS,MAAM,EAAE,EACvB,GAAG,GAAE,MAAM,CAAC,UAAwB,EACpC,IAAI,GAAE,MAAkB,GACvB,OAAO,CAAC,MAAM,CAAC,CAkDjB"}