@nexusclawhq/cli 0.3.21 → 0.3.23

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 (238) hide show
  1. package/CHANGELOG.md +21 -0
  2. package/dist/build-info.json +4 -4
  3. package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/index.d.ts +1 -0
  4. package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/index.js +1 -0
  5. package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/index.js.map +1 -1
  6. package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/locales/en-US.d.ts +21 -0
  7. package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/locales/en-US.js +21 -0
  8. package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/locales/en-US.js.map +1 -1
  9. package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/locales/index.d.ts +42 -0
  10. package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/locales/zh-CN.d.ts +21 -0
  11. package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/locales/zh-CN.js +21 -0
  12. package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/locales/zh-CN.js.map +1 -1
  13. package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/system-object-persistence.d.ts +21 -0
  14. package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/system-object-persistence.js +29 -0
  15. package/dist/nexus-cli/node_modules/@nexusclaw/shared/dist/system-object-persistence.js.map +1 -0
  16. package/dist/nexus-cli/node_modules/@nexusclaw/shared/package.json +4 -0
  17. package/dist/nexus-cli/src/commands/commands.test.js +3 -3
  18. package/dist/nexus-cli/src/commands/commands.test.js.map +1 -1
  19. package/dist/nexus-cli/src/commands/data/query.d.ts +7 -0
  20. package/dist/nexus-cli/src/commands/data/query.js +29 -9
  21. package/dist/nexus-cli/src/commands/data/query.js.map +1 -1
  22. package/dist/nexus-cli/src/commands/data/query.test.d.ts +1 -0
  23. package/dist/nexus-cli/src/commands/data/query.test.js +31 -0
  24. package/dist/nexus-cli/src/commands/data/query.test.js.map +1 -0
  25. package/dist/nexus-cli/src/commands/deployment/history.test.d.ts +1 -0
  26. package/dist/nexus-cli/src/commands/deployment/history.test.js +16 -0
  27. package/dist/nexus-cli/src/commands/deployment/history.test.js.map +1 -0
  28. package/dist/nexus-cli/src/commands/deployment/index.d.ts +4 -0
  29. package/dist/nexus-cli/src/commands/deployment/index.js +16 -3
  30. package/dist/nexus-cli/src/commands/deployment/index.js.map +1 -1
  31. package/dist/nexus-cli/src/commands/deployment/report.d.ts +1 -0
  32. package/dist/nexus-cli/src/commands/deployment/report.js +16 -35
  33. package/dist/nexus-cli/src/commands/deployment/report.js.map +1 -1
  34. package/dist/nexus-cli/src/commands/deployment/report.test.d.ts +1 -0
  35. package/dist/nexus-cli/src/commands/deployment/report.test.js +14 -0
  36. package/dist/nexus-cli/src/commands/deployment/report.test.js.map +1 -0
  37. package/dist/nexus-cli/src/commands/deployment/resume.js +16 -2
  38. package/dist/nexus-cli/src/commands/deployment/resume.js.map +1 -1
  39. package/dist/nexus-cli/src/commands/dx-json-option.test.d.ts +1 -0
  40. package/dist/nexus-cli/src/commands/dx-json-option.test.js +50 -0
  41. package/dist/nexus-cli/src/commands/dx-json-option.test.js.map +1 -0
  42. package/dist/nexus-cli/src/commands/dx-workflows.e2e.test.js +39 -1
  43. package/dist/nexus-cli/src/commands/dx-workflows.e2e.test.js.map +1 -1
  44. package/dist/nexus-cli/src/commands/dx.js +199 -13
  45. package/dist/nexus-cli/src/commands/dx.js.map +1 -1
  46. package/dist/nexus-cli/src/commands/employee/deploy.e2e.test.js +29 -0
  47. package/dist/nexus-cli/src/commands/employee/deploy.e2e.test.js.map +1 -1
  48. package/dist/nexus-cli/src/commands/employee/deploy.js +6 -2
  49. package/dist/nexus-cli/src/commands/employee/deploy.js.map +1 -1
  50. package/dist/nexus-cli/src/commands/generate/class.js +6 -1
  51. package/dist/nexus-cli/src/commands/generate/class.js.map +1 -1
  52. package/dist/nexus-cli/src/commands/generate/component.js +6 -1
  53. package/dist/nexus-cli/src/commands/generate/component.js.map +1 -1
  54. package/dist/nexus-cli/src/commands/generate/generate-result.d.ts +6 -0
  55. package/dist/nexus-cli/src/commands/generate/generate-result.js +52 -0
  56. package/dist/nexus-cli/src/commands/generate/generate-result.js.map +1 -0
  57. package/dist/nexus-cli/src/commands/generate/project.js +6 -0
  58. package/dist/nexus-cli/src/commands/generate/project.js.map +1 -1
  59. package/dist/nexus-cli/src/commands/generate/test.js +6 -1
  60. package/dist/nexus-cli/src/commands/generate/test.js.map +1 -1
  61. package/dist/nexus-cli/src/commands/generate/trigger.js +6 -1
  62. package/dist/nexus-cli/src/commands/generate/trigger.js.map +1 -1
  63. package/dist/nexus-cli/src/commands/log/get.js +11 -6
  64. package/dist/nexus-cli/src/commands/log/get.js.map +1 -1
  65. package/dist/nexus-cli/src/commands/log/list.js +15 -11
  66. package/dist/nexus-cli/src/commands/log/list.js.map +1 -1
  67. package/dist/nexus-cli/src/commands/log-sandbox-contract.test.d.ts +1 -0
  68. package/dist/nexus-cli/src/commands/log-sandbox-contract.test.js +25 -0
  69. package/dist/nexus-cli/src/commands/log-sandbox-contract.test.js.map +1 -0
  70. package/dist/nexus-cli/src/commands/machine-json-surface.test.d.ts +1 -0
  71. package/dist/nexus-cli/src/commands/machine-json-surface.test.js +87 -0
  72. package/dist/nexus-cli/src/commands/machine-json-surface.test.js.map +1 -0
  73. package/dist/nexus-cli/src/commands/metadata/deploy.js +44 -11
  74. package/dist/nexus-cli/src/commands/metadata/deploy.js.map +1 -1
  75. package/dist/nexus-cli/src/commands/metadata/diff.js +31 -4
  76. package/dist/nexus-cli/src/commands/metadata/diff.js.map +1 -1
  77. package/dist/nexus-cli/src/commands/metadata/export.e2e.test.js +25 -19
  78. package/dist/nexus-cli/src/commands/metadata/export.e2e.test.js.map +1 -1
  79. package/dist/nexus-cli/src/commands/metadata/export.js +36 -5
  80. package/dist/nexus-cli/src/commands/metadata/export.js.map +1 -1
  81. package/dist/nexus-cli/src/commands/metadata/validate-source.d.ts +4 -0
  82. package/dist/nexus-cli/src/commands/metadata/validate-source.js +31 -2
  83. package/dist/nexus-cli/src/commands/metadata/validate-source.js.map +1 -1
  84. package/dist/nexus-cli/src/commands/metadata/validate-source.test.d.ts +1 -0
  85. package/dist/nexus-cli/src/commands/metadata/validate-source.test.js +23 -0
  86. package/dist/nexus-cli/src/commands/metadata/validate-source.test.js.map +1 -0
  87. package/dist/nexus-cli/src/commands/org/display.js +3 -3
  88. package/dist/nexus-cli/src/commands/org/display.js.map +1 -1
  89. package/dist/nexus-cli/src/commands/org/list.js +4 -2
  90. package/dist/nexus-cli/src/commands/org/list.js.map +1 -1
  91. package/dist/nexus-cli/src/commands/org/login-web.d.ts +7 -0
  92. package/dist/nexus-cli/src/commands/org/login-web.js +43 -7
  93. package/dist/nexus-cli/src/commands/org/login-web.js.map +1 -1
  94. package/dist/nexus-cli/src/commands/org/login-web.test.js +21 -0
  95. package/dist/nexus-cli/src/commands/org/login-web.test.js.map +1 -1
  96. package/dist/nexus-cli/src/commands/org/open.d.ts +1 -0
  97. package/dist/nexus-cli/src/commands/org/open.js +8 -2
  98. package/dist/nexus-cli/src/commands/org/open.js.map +1 -1
  99. package/dist/nexus-cli/src/commands/org/open.test.d.ts +1 -0
  100. package/dist/nexus-cli/src/commands/org/open.test.js +16 -0
  101. package/dist/nexus-cli/src/commands/org/open.test.js.map +1 -0
  102. package/dist/nexus-cli/src/commands/package/history.js +9 -3
  103. package/dist/nexus-cli/src/commands/package/history.js.map +1 -1
  104. package/dist/nexus-cli/src/commands/package/install.js +1 -0
  105. package/dist/nexus-cli/src/commands/package/install.js.map +1 -1
  106. package/dist/nexus-cli/src/commands/package/list.js +7 -4
  107. package/dist/nexus-cli/src/commands/package/list.js.map +1 -1
  108. package/dist/nexus-cli/src/commands/package/list.test.d.ts +1 -0
  109. package/dist/nexus-cli/src/commands/package/list.test.js +33 -0
  110. package/dist/nexus-cli/src/commands/package/list.test.js.map +1 -0
  111. package/dist/nexus-cli/src/commands/package/promote.js +32 -7
  112. package/dist/nexus-cli/src/commands/package/promote.js.map +1 -1
  113. package/dist/nexus-cli/src/commands/project/index.js +5 -3
  114. package/dist/nexus-cli/src/commands/project/index.js.map +1 -1
  115. package/dist/nexus-cli/src/commands/revision/history.js +4 -2
  116. package/dist/nexus-cli/src/commands/revision/history.js.map +1 -1
  117. package/dist/nexus-cli/src/commands/safe-write-dry-run.test.d.ts +1 -0
  118. package/dist/nexus-cli/src/commands/safe-write-dry-run.test.js +82 -0
  119. package/dist/nexus-cli/src/commands/safe-write-dry-run.test.js.map +1 -0
  120. package/dist/nexus-cli/src/commands/sandbox/create.js +30 -1
  121. package/dist/nexus-cli/src/commands/sandbox/create.js.map +1 -1
  122. package/dist/nexus-cli/src/commands/sandbox/list.js +4 -5
  123. package/dist/nexus-cli/src/commands/sandbox/list.js.map +1 -1
  124. package/dist/nexus-cli/src/commands/source/pull-baseline.test.d.ts +1 -0
  125. package/dist/nexus-cli/src/commands/source/pull-baseline.test.js +60 -0
  126. package/dist/nexus-cli/src/commands/source/pull-baseline.test.js.map +1 -0
  127. package/dist/nexus-cli/src/commands/source/pull.d.ts +7 -0
  128. package/dist/nexus-cli/src/commands/source/pull.js +32 -5
  129. package/dist/nexus-cli/src/commands/source/pull.js.map +1 -1
  130. package/dist/nexus-cli/src/commands/workforce/escalation.d.ts +2 -0
  131. package/dist/nexus-cli/src/commands/workforce/escalation.js +62 -0
  132. package/dist/nexus-cli/src/commands/workforce/escalation.js.map +1 -0
  133. package/dist/nexus-cli/src/commands/workforce/index.js +4 -0
  134. package/dist/nexus-cli/src/commands/workforce/index.js.map +1 -1
  135. package/dist/nexus-cli/src/commands/workforce/knowledge.js +5 -0
  136. package/dist/nexus-cli/src/commands/workforce/knowledge.js.map +1 -1
  137. package/dist/nexus-cli/src/commands/workforce/notification.d.ts +2 -0
  138. package/dist/nexus-cli/src/commands/workforce/notification.js +71 -0
  139. package/dist/nexus-cli/src/commands/workforce/notification.js.map +1 -0
  140. package/dist/nexus-cli/src/commands/workforce/task.js +55 -4
  141. package/dist/nexus-cli/src/commands/workforce/task.js.map +1 -1
  142. package/dist/nexus-cli/src/commands/workspace/index.js +5 -2
  143. package/dist/nexus-cli/src/commands/workspace/index.js.map +1 -1
  144. package/dist/nexus-cli/src/commands/workspace/workspace.e2e.test.js +4 -4
  145. package/dist/nexus-cli/src/commands/workspace/workspace.e2e.test.js.map +1 -1
  146. package/dist/nexus-cli/src/services/api-client.d.ts +9 -0
  147. package/dist/nexus-cli/src/services/api-client.js +99 -11
  148. package/dist/nexus-cli/src/services/api-client.js.map +1 -1
  149. package/dist/nexus-cli/src/services/api-client.test.js +118 -8
  150. package/dist/nexus-cli/src/services/api-client.test.js.map +1 -1
  151. package/dist/nexus-cli/src/services/auth-store.d.ts +3 -0
  152. package/dist/nexus-cli/src/services/auth-store.js +24 -0
  153. package/dist/nexus-cli/src/services/auth-store.js.map +1 -1
  154. package/dist/nexus-cli/src/services/auth-store.test.js +19 -0
  155. package/dist/nexus-cli/src/services/auth-store.test.js.map +1 -1
  156. package/dist/nexus-cli/src/services/pack-registry.js +7 -0
  157. package/dist/nexus-cli/src/services/pack-registry.js.map +1 -1
  158. package/dist/nexus-cli/src/services/package-manifest.d.ts +5 -0
  159. package/dist/nexus-cli/src/services/package-manifest.js +35 -0
  160. package/dist/nexus-cli/src/services/package-manifest.js.map +1 -1
  161. package/dist/nexus-cli/src/services/package-manifest.test.d.ts +1 -0
  162. package/dist/nexus-cli/src/services/package-manifest.test.js +48 -0
  163. package/dist/nexus-cli/src/services/package-manifest.test.js.map +1 -0
  164. package/dist/nexus-cli/src/services/user-service-account-remote.js +3 -1
  165. package/dist/nexus-cli/src/services/user-service-account-remote.js.map +1 -1
  166. package/dist/nexus-cli/src/services/user-service-account-remote.test.js +5 -0
  167. package/dist/nexus-cli/src/services/user-service-account-remote.test.js.map +1 -1
  168. package/dist/nexus-cli/src/services/workforce-conversation-remote.d.ts +52 -0
  169. package/dist/nexus-cli/src/services/workforce-conversation-remote.js +119 -0
  170. package/dist/nexus-cli/src/services/workforce-conversation-remote.js.map +1 -0
  171. package/dist/nexus-cli/src/services/workforce-conversation-remote.test.d.ts +1 -0
  172. package/dist/nexus-cli/src/services/workforce-conversation-remote.test.js +115 -0
  173. package/dist/nexus-cli/src/services/workforce-conversation-remote.test.js.map +1 -0
  174. package/dist/nexus-cli/src/services/workforce-guardrail-knowledge-remote.d.ts +17 -0
  175. package/dist/nexus-cli/src/services/workforce-guardrail-knowledge-remote.js +10 -0
  176. package/dist/nexus-cli/src/services/workforce-guardrail-knowledge-remote.js.map +1 -1
  177. package/dist/nexus-cli/src/services/workforce-guardrail-knowledge-remote.test.d.ts +1 -0
  178. package/dist/nexus-cli/src/services/workforce-guardrail-knowledge-remote.test.js +65 -0
  179. package/dist/nexus-cli/src/services/workforce-guardrail-knowledge-remote.test.js.map +1 -0
  180. package/dist/nexus-cli/src/services/workforce-notification-remote.d.ts +61 -0
  181. package/dist/nexus-cli/src/services/workforce-notification-remote.js +87 -0
  182. package/dist/nexus-cli/src/services/workforce-notification-remote.js.map +1 -0
  183. package/dist/nexus-cli/src/services/workforce-notification-remote.test.d.ts +1 -0
  184. package/dist/nexus-cli/src/services/workforce-notification-remote.test.js +78 -0
  185. package/dist/nexus-cli/src/services/workforce-notification-remote.test.js.map +1 -0
  186. package/dist/nexus-cli/src/services/workforce-orchestration-remote.d.ts +6 -0
  187. package/dist/nexus-cli/src/services/workforce-orchestration-remote.js +23 -12
  188. package/dist/nexus-cli/src/services/workforce-orchestration-remote.js.map +1 -1
  189. package/dist/nexus-cli/src/services/workforce-orchestration-remote.test.d.ts +1 -0
  190. package/dist/nexus-cli/src/services/workforce-orchestration-remote.test.js +18 -0
  191. package/dist/nexus-cli/src/services/workforce-orchestration-remote.test.js.map +1 -0
  192. package/dist/nexus-cli/src/services/workforce-test-remote.d.ts +1 -1
  193. package/dist/nexus-cli/src/services/workforce-test-remote.js +19 -2
  194. package/dist/nexus-cli/src/services/workforce-test-remote.js.map +1 -1
  195. package/dist/nexus-cli/src/services/workforce-test-remote.test.js +7 -1
  196. package/dist/nexus-cli/src/services/workforce-test-remote.test.js.map +1 -1
  197. package/dist/nexus-cli/src/services/workspace-health.js +6 -0
  198. package/dist/nexus-cli/src/services/workspace-health.js.map +1 -1
  199. package/dist/nexus-cli/src/services/workspace-health.test.js +65 -0
  200. package/dist/nexus-cli/src/services/workspace-health.test.js.map +1 -1
  201. package/dist/nexus-cli/src/templates/project/templates/base-crm/package.json.tpl +0 -3
  202. package/dist/nexus-cli/src/templates/project/templates/base-crm/src-index.ts.tpl +2 -0
  203. package/dist/nexus-cli/src/templates/project/templates/base-crm/tsconfig.json.tpl +2 -2
  204. package/dist/nexus-cli/src/templates/project/templates/demo-public-channel-store-delivery/package.json.tpl +0 -3
  205. package/dist/nexus-cli/src/templates/project/templates/demo-public-channel-store-delivery/src-index.ts.tpl +2 -0
  206. package/dist/nexus-cli/src/templates/project/templates/demo-public-channel-store-delivery/tsconfig.json.tpl +2 -2
  207. package/dist/nexus-cli/src/templates/project/templates/drill-code-extension-page/package.json.tpl +0 -3
  208. package/dist/nexus-cli/src/templates/project/templates/drill-code-extension-page/src-index.ts.tpl +2 -0
  209. package/dist/nexus-cli/src/templates/project/templates/drill-code-extension-page/tsconfig.json.tpl +2 -2
  210. package/dist/nexus-cli/src/templates/project/templates/empty/package.json.tpl +0 -3
  211. package/dist/nexus-cli/src/templates/project/templates/empty/src-index.ts.tpl +2 -0
  212. package/dist/nexus-cli/src/templates/project/templates/empty/tsconfig.json.tpl +2 -2
  213. package/dist/nexus-cli/src/templates/project/templates/executable-workforce/package.json.tpl +0 -3
  214. package/dist/nexus-cli/src/templates/project/templates/executable-workforce/src-index.ts.tpl +2 -0
  215. package/dist/nexus-cli/src/templates/project/templates/executable-workforce/tsconfig.json.tpl +1 -1
  216. package/dist/nexus-cli/src/templates/project/templates/industry-education/package.json.tpl +0 -3
  217. package/dist/nexus-cli/src/templates/project/templates/industry-education/src-index.ts.tpl +2 -0
  218. package/dist/nexus-cli/src/templates/project/templates/industry-education/tsconfig.json.tpl +2 -2
  219. package/dist/nexus-cli/src/templates/project/templates/industry-finance/package.json.tpl +0 -3
  220. package/dist/nexus-cli/src/templates/project/templates/industry-finance/src-index.ts.tpl +2 -0
  221. package/dist/nexus-cli/src/templates/project/templates/industry-finance/tsconfig.json.tpl +2 -2
  222. package/dist/nexus-cli/src/templates/project/templates/industry-healthcare/package.json.tpl +0 -3
  223. package/dist/nexus-cli/src/templates/project/templates/industry-healthcare/src-index.ts.tpl +2 -0
  224. package/dist/nexus-cli/src/templates/project/templates/industry-healthcare/tsconfig.json.tpl +2 -2
  225. package/dist/nexus-cli/src/templates/project/templates/industry-partner-cloud/package.json.tpl +0 -3
  226. package/dist/nexus-cli/src/templates/project/templates/industry-partner-cloud/src-index.ts.tpl +2 -0
  227. package/dist/nexus-cli/src/templates/project/templates/industry-partner-cloud/tsconfig.json.tpl +2 -2
  228. package/dist/nexus-cli/src/templates/project/templates/industry-retail/package.json.tpl +0 -3
  229. package/dist/nexus-cli/src/templates/project/templates/industry-retail/src-index.ts.tpl +2 -0
  230. package/dist/nexus-cli/src/templates/project/templates/industry-retail/tsconfig.json.tpl +2 -2
  231. package/dist/nexus-cli/src/utils/command-options.d.ts +8 -0
  232. package/dist/nexus-cli/src/utils/command-options.js +14 -0
  233. package/dist/nexus-cli/src/utils/command-options.js.map +1 -0
  234. package/dist/nexus-cli/src/utils/command-options.test.d.ts +1 -0
  235. package/dist/nexus-cli/src/utils/command-options.test.js +23 -0
  236. package/dist/nexus-cli/src/utils/command-options.test.js.map +1 -0
  237. package/dist/tsconfig.tsbuildinfo +1 -1
  238. package/package.json +1 -1
@@ -40,24 +40,55 @@ const commander_1 = require("commander");
40
40
  const api_client_1 = require("../../services/api-client");
41
41
  const spinner_1 = require("../../utils/spinner");
42
42
  const logger_1 = require("../../utils/logger");
43
+ const target_context_1 = require("../../services/target-context");
44
+ const command_options_1 = require("../../utils/command-options");
45
+ const machine_result_1 = require("../../contracts/machine-result");
43
46
  exports.exportCommand = new commander_1.Command('export')
44
47
  .description('导出当前 workspace 的 declarative metadata')
45
48
  .option('-o, --output <path>', '输出目录', '.')
49
+ .option('--workspace <path>', 'Workspace root', '.')
50
+ .option('--target-org <alias>', 'Target org alias')
51
+ .option('--env <name>', 'Environment descriptor name')
52
+ .option('--environment <name>', 'Environment descriptor name')
53
+ .option('--json', 'Output one machine-readable JSON document', false)
46
54
  .action(async (options) => {
47
- const spinner = (0, spinner_1.createSpinner)('正在导出 metadata runtime 快照...').start();
55
+ const spinner = options.json ? null : (0, spinner_1.createSpinner)('正在导出 metadata runtime 快照...').start();
48
56
  try {
49
- const apiClient = (0, api_client_1.createApiClient)();
57
+ const environmentName = (0, command_options_1.resolveEnvironmentOption)(options);
58
+ const targetOrg = environmentName
59
+ ? (0, target_context_1.resolveTargetContext)({
60
+ workspaceDir: options.workspace,
61
+ targetOrg: options.targetOrg,
62
+ environmentName,
63
+ }).context.targetOrg
64
+ : options.targetOrg;
65
+ const apiClient = (0, api_client_1.createApiClient)(targetOrg);
50
66
  const result = await apiClient.exportRuntimeMetadata();
51
67
  for (const file of result.files) {
52
68
  const targetPath = path.join(options.output, file.path);
53
69
  fs.mkdirSync(path.dirname(targetPath), { recursive: true });
54
70
  fs.writeFileSync(targetPath, file.content, 'utf-8');
55
71
  }
56
- spinner.succeed('导出完成');
57
- logger_1.logger.success(`\n已写入 ${result.files.length} 个文件到 ${options.output}`);
72
+ spinner?.succeed('导出完成');
73
+ if (options.json) {
74
+ (0, machine_result_1.emitCliResult)((0, machine_result_1.buildCliResult)({
75
+ command: 'metadata export',
76
+ phase: 'complete',
77
+ contractVersion: 'nexusclaw.cli-command-contract/v1',
78
+ ok: true,
79
+ data: {
80
+ output: path.resolve(options.output),
81
+ count: result.files.length,
82
+ files: result.files.map((file) => ({ path: file.path, hash: file.hash })),
83
+ },
84
+ }));
85
+ }
86
+ else {
87
+ logger_1.logger.success(`\n已写入 ${result.files.length} 个文件到 ${options.output}`);
88
+ }
58
89
  }
59
90
  catch (error) {
60
- spinner.fail('导出失败');
91
+ spinner?.fail('导出失败');
61
92
  logger_1.logger.error(error instanceof Error ? error.message : String(error));
62
93
  process.exit(1);
63
94
  }
@@ -1 +1 @@
1
- {"version":3,"file":"export.js","sourceRoot":"","sources":["../../../../../src/commands/metadata/export.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uCAAyB;AACzB,2CAA6B;AAC7B,yCAAoC;AACpC,0DAA4D;AAC5D,iDAAoD;AACpD,+CAA4C;AAE/B,QAAA,aAAa,GAAG,IAAI,mBAAO,CAAC,QAAQ,CAAC;KAC/C,WAAW,CAAC,uCAAuC,CAAC;KACpD,MAAM,CAAC,qBAAqB,EAAE,MAAM,EAAE,GAAG,CAAC;KAC1C,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;IACxB,MAAM,OAAO,GAAG,IAAA,uBAAa,EAAC,6BAA6B,CAAC,CAAC,KAAK,EAAE,CAAC;IAErE,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,IAAA,4BAAe,GAAE,CAAC;QACpC,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,qBAAqB,EAAE,CAAC;QAEvD,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;YAChC,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;YACxD,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAC5D,EAAE,CAAC,aAAa,CAAC,UAAU,EAAE,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACtD,CAAC;QAED,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACxB,eAAM,CAAC,OAAO,CAAC,SAAS,MAAM,CAAC,KAAK,CAAC,MAAM,SAAS,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IACxE,CAAC;IAAC,OAAO,KAAc,EAAE,CAAC;QACxB,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACrB,eAAM,CAAC,KAAK,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QACrE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"export.js","sourceRoot":"","sources":["../../../../../src/commands/metadata/export.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,6 @@
1
1
  import { Command } from 'commander';
2
+ export declare function parseValidateSourceTimeoutMs(value?: string): number;
3
+ export declare function filterValidateSourceFiles<T extends {
4
+ path: string;
5
+ }>(files: T[], pathPrefix?: string): T[];
2
6
  export declare const validateSourceCommand: Command;
@@ -4,20 +4,48 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.validateSourceCommand = void 0;
7
+ exports.parseValidateSourceTimeoutMs = parseValidateSourceTimeoutMs;
8
+ exports.filterValidateSourceFiles = filterValidateSourceFiles;
7
9
  const commander_1 = require("commander");
8
10
  const chalk_1 = __importDefault(require("chalk"));
9
11
  const api_client_1 = require("../../services/api-client");
10
12
  const source_tracker_1 = require("../../services/source-tracker");
11
13
  const spinner_1 = require("../../utils/spinner");
12
14
  const logger_1 = require("../../utils/logger");
15
+ const DEFAULT_VALIDATE_SOURCE_TIMEOUT_MS = 120_000;
16
+ const MAX_VALIDATE_SOURCE_TIMEOUT_MS = 15 * 60_000;
17
+ function parseValidateSourceTimeoutMs(value) {
18
+ if (value === undefined)
19
+ return DEFAULT_VALIDATE_SOURCE_TIMEOUT_MS;
20
+ const timeoutMs = Number(value);
21
+ if (!Number.isInteger(timeoutMs) || timeoutMs < 1_000 || timeoutMs > MAX_VALIDATE_SOURCE_TIMEOUT_MS) {
22
+ throw new Error('--request-timeout-ms must be an integer between 1000 and 900000');
23
+ }
24
+ return timeoutMs;
25
+ }
26
+ function filterValidateSourceFiles(files, pathPrefix) {
27
+ if (!pathPrefix?.trim())
28
+ return files;
29
+ const normalizedPrefix = pathPrefix.trim().replace(/\\/g, '/').replace(/^\.\//, '');
30
+ return files.filter((file) => file.path.replace(/\\/g, '/').startsWith(normalizedPrefix));
31
+ }
13
32
  exports.validateSourceCommand = new commander_1.Command('validate-source')
14
33
  .description('验证本地 declarative metadata 目录')
15
34
  .option('-s, --source <path>', '本地 metadata 根目录', '.')
35
+ .option('-o, --target-org <alias>', '目标 org alias')
36
+ .option('--path-prefix <prefix>', '仅校验 tracked path 以该前缀开头的文件')
37
+ .option('--request-timeout-ms <milliseconds>', '请求超时(1000..900000)', String(DEFAULT_VALIDATE_SOURCE_TIMEOUT_MS))
16
38
  .action(async (options) => {
17
39
  const spinner = (0, spinner_1.createSpinner)('正在读取本地 metadata 文件...').start();
18
40
  try {
19
- const files = (0, source_tracker_1.readSourceFiles)(options.source);
20
- const apiClient = (0, api_client_1.createApiClient)();
41
+ const allFiles = (0, source_tracker_1.readSourceFiles)(options.source);
42
+ const files = filterValidateSourceFiles(allFiles, options.pathPrefix);
43
+ if (files.length === 0) {
44
+ throw new Error(`No metadata files matched --path-prefix ${options.pathPrefix ?? '(all)'}`);
45
+ }
46
+ const requestTimeoutMs = parseValidateSourceTimeoutMs(options.requestTimeoutMs);
47
+ spinner.text = `正在校验 ${files.length} 个 metadata 文件(timeout ${requestTimeoutMs}ms)...`;
48
+ const apiClient = (0, api_client_1.createApiClient)(options.targetOrg, requestTimeoutMs);
21
49
  const result = await apiClient.validateRuntimeMetadata(files);
22
50
  if (!result.validation.valid) {
23
51
  spinner.fail('验证失败');
@@ -32,6 +60,7 @@ exports.validateSourceCommand = new commander_1.Command('validate-source')
32
60
  catch (error) {
33
61
  spinner.fail('验证失败');
34
62
  logger_1.logger.error(error instanceof Error ? error.message : String(error));
63
+ logger_1.logger.error('可使用 --request-timeout-ms 调整上限,或用 --path-prefix 分组定位问题源文件。');
35
64
  process.exit(1);
36
65
  }
37
66
  });
@@ -1 +1 @@
1
- {"version":3,"file":"validate-source.js","sourceRoot":"","sources":["../../../../../src/commands/metadata/validate-source.ts"],"names":[],"mappings":";;;;;;AAAA,yCAAoC;AACpC,kDAA0B;AAC1B,0DAA4D;AAC5D,kEAAgE;AAChE,iDAAoD;AACpD,+CAA4C;AAE/B,QAAA,qBAAqB,GAAG,IAAI,mBAAO,CAAC,iBAAiB,CAAC;KAChE,WAAW,CAAC,8BAA8B,CAAC;KAC3C,MAAM,CAAC,qBAAqB,EAAE,iBAAiB,EAAE,GAAG,CAAC;KACrD,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;IACxB,MAAM,OAAO,GAAG,IAAA,uBAAa,EAAC,uBAAuB,CAAC,CAAC,KAAK,EAAE,CAAC;IAE/D,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,IAAA,gCAAe,EAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAC9C,MAAM,SAAS,GAAG,IAAA,4BAAe,GAAE,CAAC;QACpC,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAC;QAE9D,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;YAC7B,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACrB,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;gBAChD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,OAAO,OAAO,EAAE,CAAC,CAAC,CAAC;YAC3C,CAAC;YACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACxB,eAAM,CAAC,OAAO,CAAC,SAAS,KAAK,CAAC,MAAM,gBAAgB,CAAC,CAAC;IACxD,CAAC;IAAC,OAAO,KAAc,EAAE,CAAC;QACxB,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACrB,eAAM,CAAC,KAAK,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QACrE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"validate-source.js","sourceRoot":"","sources":["../../../../../src/commands/metadata/validate-source.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const strict_1 = __importDefault(require("node:assert/strict"));
7
+ const node_test_1 = __importDefault(require("node:test"));
8
+ const validate_source_1 = require("./validate-source");
9
+ (0, node_test_1.default)('validate-source timeout is bounded and explicit', () => {
10
+ strict_1.default.equal((0, validate_source_1.parseValidateSourceTimeoutMs)(), 120_000);
11
+ strict_1.default.equal((0, validate_source_1.parseValidateSourceTimeoutMs)('300000'), 300_000);
12
+ strict_1.default.throws(() => (0, validate_source_1.parseValidateSourceTimeoutMs)('999'), /between 1000 and 900000/);
13
+ strict_1.default.throws(() => (0, validate_source_1.parseValidateSourceTimeoutMs)('nope'), /between 1000 and 900000/);
14
+ });
15
+ (0, node_test_1.default)('validate-source path prefix selects a deterministic source group', () => {
16
+ const files = [
17
+ { path: 'nexus-app/main/default/objects/Account/object.json' },
18
+ { path: 'nexus-app/main/default/menus/Sales.menu.json' },
19
+ ];
20
+ strict_1.default.deepEqual((0, validate_source_1.filterValidateSourceFiles)(files, './nexus-app/main/default/objects/'), [files[0]]);
21
+ strict_1.default.deepEqual((0, validate_source_1.filterValidateSourceFiles)(files), files);
22
+ });
23
+ //# sourceMappingURL=validate-source.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validate-source.test.js","sourceRoot":"","sources":["../../../../../src/commands/metadata/validate-source.test.ts"],"names":[],"mappings":";;;;;AAAA,gEAAwC;AACxC,0DAA6B;AAE7B,uDAG2B;AAE3B,IAAA,mBAAI,EAAC,iDAAiD,EAAE,GAAG,EAAE;IAC3D,gBAAM,CAAC,KAAK,CAAC,IAAA,8CAA4B,GAAE,EAAE,OAAO,CAAC,CAAC;IACtD,gBAAM,CAAC,KAAK,CAAC,IAAA,8CAA4B,EAAC,QAAQ,CAAC,EAAE,OAAO,CAAC,CAAC;IAC9D,gBAAM,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,IAAA,8CAA4B,EAAC,KAAK,CAAC,EAAE,yBAAyB,CAAC,CAAC;IACpF,gBAAM,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,IAAA,8CAA4B,EAAC,MAAM,CAAC,EAAE,yBAAyB,CAAC,CAAC;AACvF,CAAC,CAAC,CAAC;AAEH,IAAA,mBAAI,EAAC,kEAAkE,EAAE,GAAG,EAAE;IAC5E,MAAM,KAAK,GAAG;QACZ,EAAE,IAAI,EAAE,oDAAoD,EAAE;QAC9D,EAAE,IAAI,EAAE,8CAA8C,EAAE;KACzD,CAAC;IACF,gBAAM,CAAC,SAAS,CACd,IAAA,2CAAyB,EAAC,KAAK,EAAE,mCAAmC,CAAC,EACrE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CACX,CAAC;IACF,gBAAM,CAAC,SAAS,CAAC,IAAA,2CAAyB,EAAC,KAAK,CAAC,EAAE,KAAK,CAAC,CAAC;AAC5D,CAAC,CAAC,CAAC"}
@@ -26,8 +26,8 @@ exports.displayCommand = new commander_1.Command('display')
26
26
  scope: cred.scope || '',
27
27
  instanceUrl: cred.instanceUrl,
28
28
  isDefault: !!cred.isDefault,
29
- expiresAt: cred.expiresAt || 0,
30
- status: cred.expiresAt && cred.expiresAt > Date.now() ? 'Active' : 'Expired',
29
+ expiresAt: (0, auth_store_1.getCredentialExpiryMs)(cred) || 0,
30
+ status: (0, auth_store_1.getCredentialStatus)(cred),
31
31
  }, null, 2));
32
32
  return;
33
33
  }
@@ -43,6 +43,6 @@ exports.displayCommand = new commander_1.Command('display')
43
43
  console.log(`Scope: ${cred.scope}`);
44
44
  }
45
45
  console.log(`Default: ${cred.isDefault ? 'Yes' : 'No'}`);
46
- console.log(`Status: ${cred.expiresAt && cred.expiresAt > Date.now() ? 'Active' : 'Expired'}`);
46
+ console.log(`Status: ${(0, auth_store_1.getCredentialStatus)(cred)}`);
47
47
  });
48
48
  //# sourceMappingURL=display.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"display.js","sourceRoot":"","sources":["../../../../../src/commands/org/display.ts"],"names":[],"mappings":";;;AAAA,yCAAoC;AACpC,0DAAiF;AACjF,+CAA4C;AAK/B,QAAA,cAAc,GAAG,IAAI,mBAAO,CAAC,SAAS,CAAC;KACjD,WAAW,CAAC,8BAA8B,CAAC;KAC3C,MAAM,CAAC,0BAA0B,EAAE,kBAAkB,CAAC;KACtD,MAAM,CAAC,QAAQ,EAAE,gBAAgB,CAAC;KAClC,MAAM,CAAC,CAAC,IAA4C,EAAE,EAAE;IACvD,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS;QACzB,CAAC,CAAC,IAAA,2BAAc,EAAC,IAAI,CAAC,SAAS,CAAC;QAChC,CAAC,CAAC,IAAA,iCAAoB,GAAE,CAAC;IAE3B,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,eAAM,CAAC,KAAK,CAAC,sDAAsD,CAAC,CAAC;QACrE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;QACd,OAAO,CAAC,GAAG,CACT,IAAI,CAAC,SAAS,CAAC;YACb,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,SAAS;YACtC,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,EAAE;YAC7B,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,EAAE;YACvB,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS;YAC3B,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,CAAC;YAC9B,MAAM,EAAE,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;SAC7E,EAAE,IAAI,EAAE,CAAC,CAAC,CACZ,CAAC;QACF,OAAO;IACT,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;IAC3C,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC9C,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;IAC3C,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,CAAC,SAAS,IAAI,SAAS,EAAE,CAAC,CAAC;IAC5D,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;IACjD,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;QAClB,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;IAChD,CAAC;IACD,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;IAC7C,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IAC9D,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC;AACvG,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"display.js","sourceRoot":"","sources":["../../../../../src/commands/org/display.ts"],"names":[],"mappings":";;;AAAA,yCAAoC;AACpC,0DAKmC;AACnC,+CAA4C;AAK/B,QAAA,cAAc,GAAG,IAAI,mBAAO,CAAC,SAAS,CAAC;KACjD,WAAW,CAAC,8BAA8B,CAAC;KAC3C,MAAM,CAAC,0BAA0B,EAAE,kBAAkB,CAAC;KACtD,MAAM,CAAC,QAAQ,EAAE,gBAAgB,CAAC;KAClC,MAAM,CAAC,CAAC,IAA4C,EAAE,EAAE;IACvD,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS;QACzB,CAAC,CAAC,IAAA,2BAAc,EAAC,IAAI,CAAC,SAAS,CAAC;QAChC,CAAC,CAAC,IAAA,iCAAoB,GAAE,CAAC;IAE3B,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,eAAM,CAAC,KAAK,CAAC,sDAAsD,CAAC,CAAC;QACrE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;QACd,OAAO,CAAC,GAAG,CACT,IAAI,CAAC,SAAS,CAAC;YACb,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,SAAS;YACtC,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,EAAE;YAC7B,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,EAAE;YACvB,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS;YAC3B,SAAS,EAAE,IAAA,kCAAqB,EAAC,IAAI,CAAC,IAAI,CAAC;YAC3C,MAAM,EAAE,IAAA,gCAAmB,EAAC,IAAI,CAAC;SAClC,EAAE,IAAI,EAAE,CAAC,CAAC,CACZ,CAAC;QACF,OAAO;IACT,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;IAC3C,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC9C,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;IAC3C,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,CAAC,SAAS,IAAI,SAAS,EAAE,CAAC,CAAC;IAC5D,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;IACjD,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;QAClB,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;IAChD,CAAC;IACD,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;IAC7C,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IAC9D,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAA,gCAAmB,EAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AAC5D,CAAC,CAAC,CAAC"}
@@ -35,8 +35,10 @@ exports.listCommand = new commander_1.Command('list')
35
35
  loginType: c.loginType || 'unknown',
36
36
  instanceUrl: c.instanceUrl,
37
37
  scope: c.scope || '',
38
- status: c.expiresAt && c.expiresAt > Date.now() ? 'Active' : 'Expired',
39
- expiresAt: c.expiresAt ? new Date(c.expiresAt).toISOString() : 'Unknown',
38
+ status: (0, auth_store_1.getCredentialStatus)(c),
39
+ expiresAt: (0, auth_store_1.getCredentialExpiryMs)(c)
40
+ ? new Date((0, auth_store_1.getCredentialExpiryMs)(c)).toISOString()
41
+ : 'Unknown',
40
42
  }));
41
43
  if (json) {
42
44
  (0, machine_result_1.emitCliResult)((0, machine_result_1.buildCliResult)({
@@ -1 +1 @@
1
- {"version":3,"file":"list.js","sourceRoot":"","sources":["../../../../../src/commands/org/list.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"list.js","sourceRoot":"","sources":["../../../../../src/commands/org/list.ts"],"names":[],"mappings":";;;AAAA,yCAAoC;AACpC,0DAAwG;AACxG,iEAA0D;AAC1D,+CAA4C;AAC5C,mEAA+E;AAKlE,QAAA,WAAW,GAAG,IAAI,mBAAO,CAAC,MAAM,CAAC;KAC3C,WAAW,CAAC,8BAA8B,CAAC;KAC3C,MAAM,CAAC,QAAQ,EAAE,gBAAgB,CAAC;KAClC,MAAM,CAAC,CAAC,IAAwB,EAAE,OAAgB,EAAE,EAAE;IACrD,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,KAAK,IAAI,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC,IAAI,KAAK,IAAI,CAAC;IAC3E,MAAM,KAAK,GAAG,IAAA,4BAAe,GAAE,CAAC;IAChC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,IAAI,IAAI,EAAE,CAAC;YACT,IAAA,8BAAa,EAAC,IAAA,+BAAc,EAAC;gBAC3B,OAAO,EAAE,UAAU;gBACnB,KAAK,EAAE,UAAU;gBACjB,eAAe,EAAE,mCAAmC;gBACpD,EAAE,EAAE,IAAI;gBACR,IAAI,EAAE,EAAE,aAAa,EAAE,EAAE,EAAE;aAC5B,CAAC,CAAC,CAAC;YACJ,OAAO;QACT,CAAC;QACD,eAAM,CAAC,IAAI,CAAC,4FAA4F,CAAC,CAAC;QAC1G,OAAO;IACT,CAAC;IAED,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAC7B,OAAO,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;QAC/B,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS;QACxB,KAAK,EAAE,CAAC,CAAC,KAAK;QACd,QAAQ,EAAE,CAAC,CAAC,QAAQ;QACpB,KAAK,EAAE,CAAC,CAAC,KAAK;QACd,SAAS,EAAE,CAAC,CAAC,SAAS,IAAI,SAAS;QACnC,WAAW,EAAE,CAAC,CAAC,WAAW;QAC1B,KAAK,EAAE,CAAC,CAAC,KAAK,IAAI,EAAE;QACpB,MAAM,EAAE,IAAA,gCAAmB,EAAC,CAAC,CAAC;QAC9B,SAAS,EAAE,IAAA,kCAAqB,EAAC,CAAC,CAAC;YACjC,CAAC,CAAC,IAAI,IAAI,CAAC,IAAA,kCAAqB,EAAC,CAAC,CAAE,CAAC,CAAC,WAAW,EAAE;YACnD,CAAC,CAAC,SAAS;KACd,CAAC,CAAC,CAAC;IAEJ,IAAI,IAAI,EAAE,CAAC;QACT,IAAA,8BAAa,EAAC,IAAA,+BAAc,EAAC;YAC3B,OAAO,EAAE,UAAU;YACnB,KAAK,EAAE,UAAU;YACjB,eAAe,EAAE,mCAAmC;YACpD,EAAE,EAAE,IAAI;YACR,IAAI,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE;SAC9B,CAAC,CAAC,CAAC;QACJ,OAAO;IACT,CAAC;IAED,MAAM,KAAK,GAAG,IAAA,6BAAW,EACvB;QACE,EAAE,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE;QACpC,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE;QAChC,EAAE,GAAG,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE;QACtC,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE;QACvC,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,EAAE;QACnC,EAAE,GAAG,EAAE,aAAa,EAAE,KAAK,EAAE,cAAc,EAAE;QAC7C,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE;QAChC,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE;KACnC,EACD,IAAI,CACL,CAAC;IACF,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AACrB,CAAC,CAAC,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import { Command } from 'commander';
2
+ export declare const NEXUSCLAW_DX_OAUTH_SCOPE: string;
2
3
  export declare function generatePkcePair(): {
3
4
  verifier: string;
4
5
  challenge: string;
@@ -7,6 +8,12 @@ export declare function generatePkcePair(): {
7
8
  export declare function isLoopbackInstanceUrl(instanceUrl: string): boolean;
8
9
  export declare function isPlainHttpInstanceUrl(instanceUrl: string): boolean;
9
10
  export declare function parseAuthTimeoutSeconds(value: string): number;
11
+ export declare function buildOAuthCallbackTimeoutMessage(input: {
12
+ timeoutSeconds: number;
13
+ instanceUrl: string;
14
+ clientId: string;
15
+ redirectUri: string;
16
+ }): string;
10
17
  export type OAuthCallbackDisposition = 'process' | 'ignore-non-callback' | 'reject-missing-state' | 'reject-state-mismatch' | 'reject-empty-callback';
11
18
  export declare function classifyOAuthCallbackRequest(input: {
12
19
  pathname: string;
@@ -33,11 +33,12 @@ var __importStar = (this && this.__importStar) || (function () {
33
33
  };
34
34
  })();
35
35
  Object.defineProperty(exports, "__esModule", { value: true });
36
- exports.loginWebCommand = void 0;
36
+ exports.loginWebCommand = exports.NEXUSCLAW_DX_OAUTH_SCOPE = void 0;
37
37
  exports.generatePkcePair = generatePkcePair;
38
38
  exports.isLoopbackInstanceUrl = isLoopbackInstanceUrl;
39
39
  exports.isPlainHttpInstanceUrl = isPlainHttpInstanceUrl;
40
40
  exports.parseAuthTimeoutSeconds = parseAuthTimeoutSeconds;
41
+ exports.buildOAuthCallbackTimeoutMessage = buildOAuthCallbackTimeoutMessage;
41
42
  exports.classifyOAuthCallbackRequest = classifyOAuthCallbackRequest;
42
43
  const commander_1 = require("commander");
43
44
  const crypto = __importStar(require("crypto"));
@@ -54,6 +55,12 @@ const DEFAULT_NEXUSCLAW_CLI_CLIENT_ID = 'nexusclaw-cli';
54
55
  const DEFAULT_AUTH_TIMEOUT_SECONDS = 300;
55
56
  const MIN_AUTH_TIMEOUT_SECONDS = 60;
56
57
  const MAX_AUTH_TIMEOUT_SECONDS = 1800;
58
+ exports.NEXUSCLAW_DX_OAUTH_SCOPE = [
59
+ 'read:accounts', 'write:accounts',
60
+ 'read:opportunities', 'write:opportunities',
61
+ 'read:contacts', 'write:contacts', 'read:activities',
62
+ 'records:read', 'records:write', 'admin:plugins', 'admin:webhooks',
63
+ ].join(' ');
57
64
  const PROVIDER_PRESETS = {
58
65
  auto: {
59
66
  authorizePaths: DEFAULT_AUTHORIZE_PATHS,
@@ -63,7 +70,7 @@ const PROVIDER_PRESETS = {
63
70
  nexusclaw: {
64
71
  authorizePaths: ['/oauth/authorize'],
65
72
  tokenPaths: ['/oauth/token'],
66
- defaultScope: 'read:accounts',
73
+ defaultScope: exports.NEXUSCLAW_DX_OAUTH_SCOPE,
67
74
  },
68
75
  salesforce: {
69
76
  authorizePaths: ['/services/oauth2/authorize'],
@@ -105,6 +112,16 @@ function parseAuthTimeoutSeconds(value) {
105
112
  }
106
113
  return seconds;
107
114
  }
115
+ function buildOAuthCallbackTimeoutMessage(input) {
116
+ return [
117
+ `No OAuth callback received within ${input.timeoutSeconds} seconds.`,
118
+ `Instance: ${input.instanceUrl}`,
119
+ `Client ID: ${input.clientId}`,
120
+ `Redirect URI: ${input.redirectUri}`,
121
+ 'If the authorize URL opened the NexusClaw home page instead of an authorization screen, the instance OAuth client or redirect allowlist is not configured for this CLI flow.',
122
+ `Ask the instance administrator to enable client_id=${input.clientId} and allow redirect_uri=${input.redirectUri}, then rerun nexus org login-web.`,
123
+ ].join(' ');
124
+ }
108
125
  function classifyOAuthCallbackRequest(input) {
109
126
  if (input.pathname !== '/callback') {
110
127
  return 'ignore-non-callback';
@@ -125,12 +142,12 @@ function getScopeForFlow(opts) {
125
142
  return opts.scope.trim();
126
143
  }
127
144
  if (opts.provider === 'nexusclaw') {
128
- return 'read:accounts';
145
+ return exports.NEXUSCLAW_DX_OAUTH_SCOPE;
129
146
  }
130
147
  if (opts.provider === 'salesforce') {
131
148
  return '';
132
149
  }
133
- return isSalesforceAuthorizePath(opts.authorizePath) ? '' : 'read:accounts';
150
+ return isSalesforceAuthorizePath(opts.authorizePath) ? '' : exports.NEXUSCLAW_DX_OAUTH_SCOPE;
134
151
  }
135
152
  exports.loginWebCommand = new commander_1.Command('login-web')
136
153
  .description('Login via browser OAuth flow')
@@ -305,14 +322,33 @@ exports.loginWebCommand = new commander_1.Command('login-web')
305
322
  authUrl.searchParams.set('code_challenge', pkce.challenge);
306
323
  authUrl.searchParams.set('code_challenge_method', pkce.method);
307
324
  logger_1.logger.info(`Open this URL in your browser:\n ${authUrl}`);
325
+ logger_1.logger.info(`Waiting up to ${authTimeoutSeconds} seconds for ${redirectUri}. ` +
326
+ 'If the browser opens the NexusClaw home page without an authorization prompt, verify the instance OAuth client and redirect allowlist.');
308
327
  const { exec } = require('child_process');
309
328
  const cmd = process.platform === 'darwin' ? 'open' : process.platform === 'win32' ? 'start' : 'xdg-open';
310
- exec(`${cmd} "${authUrl}"`);
329
+ exec(`${cmd} "${authUrl}"`, (error) => {
330
+ if (error) {
331
+ logger_1.logger.warn('Could not open the browser automatically. Open the authorization URL printed above manually; the callback listener remains active.');
332
+ }
333
+ });
334
+ });
335
+ server.on('error', (error) => {
336
+ clearTimeout(authTimeout);
337
+ const message = error.code === 'EADDRINUSE'
338
+ ? `OAuth callback port ${port} is already in use. Stop the process using ${redirectUri} and retry.`
339
+ : `OAuth callback listener failed: ${error.message}`;
340
+ spinner.fail(message);
341
+ process.exitCode = 1;
311
342
  });
312
343
  const authTimeout = setTimeout(() => {
313
- spinner.fail('Authentication timed out');
344
+ spinner.fail(buildOAuthCallbackTimeoutMessage({
345
+ timeoutSeconds: authTimeoutSeconds,
346
+ instanceUrl: opts.instanceUrl,
347
+ clientId,
348
+ redirectUri,
349
+ }));
314
350
  server.close();
315
- process.exit(1);
351
+ process.exitCode = 1;
316
352
  }, authTimeoutSeconds * 1000);
317
353
  }));
318
354
  async function exchangeAuthorizationCode(instanceUrl, code, clientId, clientSecret, redirectUri, tokenEndpointPaths, codeVerifier) {
@@ -1 +1 @@
1
- {"version":3,"file":"login-web.js","sourceRoot":"","sources":["../../../../../src/commands/org/login-web.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"login-web.js","sourceRoot":"","sources":["../../../../../src/commands/org/login-web.ts"],"names":[],"mappings":"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"}
@@ -40,6 +40,27 @@ const strict_1 = __importDefault(require("node:assert/strict"));
40
40
  const crypto = __importStar(require("crypto"));
41
41
  const node_test_1 = __importDefault(require("node:test"));
42
42
  const login_web_1 = require("./login-web");
43
+ (0, node_test_1.default)('built-in NexusClaw login requests the complete DX scope contract', () => {
44
+ strict_1.default.deepEqual(login_web_1.NEXUSCLAW_DX_OAUTH_SCOPE.split(' '), [
45
+ 'read:accounts', 'write:accounts',
46
+ 'read:opportunities', 'write:opportunities',
47
+ 'read:contacts', 'write:contacts', 'read:activities',
48
+ 'records:read', 'records:write', 'admin:plugins', 'admin:webhooks',
49
+ ]);
50
+ });
51
+ (0, node_test_1.default)('OAuth callback timeout explains the instance-side recovery path without secrets', () => {
52
+ const message = (0, login_web_1.buildOAuthCallbackTimeoutMessage)({
53
+ timeoutSeconds: 600,
54
+ instanceUrl: 'http://dev.nexusclaw.cn',
55
+ clientId: 'nexusclaw-cli',
56
+ redirectUri: 'http://localhost:1717/callback',
57
+ });
58
+ strict_1.default.match(message, /No OAuth callback received within 600 seconds/);
59
+ strict_1.default.match(message, /client_id=nexusclaw-cli/);
60
+ strict_1.default.match(message, /redirect_uri=http:\/\/localhost:1717\/callback/);
61
+ strict_1.default.match(message, /home page instead of an authorization screen/);
62
+ strict_1.default.doesNotMatch(message, /access_token|refresh_token|code_verifier/);
63
+ });
43
64
  (0, node_test_1.default)('OAuth callback classifier rejects stale/empty probes without processing them', () => {
44
65
  const expectedState = 'current-state';
45
66
  const classify = (overrides) => (0, login_web_1.classifyOAuthCallbackRequest)({
@@ -1 +1 @@
1
- {"version":3,"file":"login-web.test.js","sourceRoot":"","sources":["../../../../../src/commands/org/login-web.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"login-web.test.js","sourceRoot":"","sources":["../../../../../src/commands/org/login-web.test.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
1
  import { Command } from 'commander';
2
+ export declare function redactCliSessionUrl(url: string): string;
2
3
  export declare const openCommand: Command;
3
4
  export declare function registerOpenCommand(org: Command): void;
@@ -34,11 +34,17 @@ var __importStar = (this && this.__importStar) || (function () {
34
34
  })();
35
35
  Object.defineProperty(exports, "__esModule", { value: true });
36
36
  exports.openCommand = void 0;
37
+ exports.redactCliSessionUrl = redactCliSessionUrl;
37
38
  exports.registerOpenCommand = registerOpenCommand;
38
39
  const commander_1 = require("commander");
39
40
  const auth_store_1 = require("../../services/auth-store");
40
41
  const logger_1 = require("../../utils/logger");
41
42
  const error_handler_1 = require("../../utils/error-handler");
43
+ function redactCliSessionUrl(url) {
44
+ const redactedUrl = new URL(url);
45
+ redactedUrl.searchParams.set('token', '<redacted>');
46
+ return redactedUrl.toString();
47
+ }
42
48
  exports.openCommand = new commander_1.Command('open')
43
49
  .description('Open the target org in the browser')
44
50
  .option('-o, --target-org <alias>', 'Target org alias')
@@ -53,14 +59,14 @@ exports.openCommand = new commander_1.Command('open')
53
59
  logger_1.logger.error(`Error: No valid token for org '${target}'. Please run 'nexus org login-web' or 'nexus org login-jwt' to authenticate.`);
54
60
  process.exit(1);
55
61
  }
56
- if (cred.expiresAt && cred.expiresAt <= Date.now()) {
62
+ if ((0, auth_store_1.getCredentialStatus)(cred) === 'Expired') {
57
63
  logger_1.logger.error(`Error: No valid token for org '${cred.alias}'. Please run 'nexus org login-web' or 'nexus org login-jwt' to authenticate.`);
58
64
  process.exit(1);
59
65
  }
60
66
  const redirectPath = opts.path.startsWith('/') ? opts.path : `/${opts.path}`;
61
67
  const url = `${cred.instanceUrl}/auth/cli-session?token=${encodeURIComponent(cred.accessToken)}&redirect=${encodeURIComponent(redirectPath)}`;
62
68
  if (opts.urlOnly) {
63
- console.log(url);
69
+ console.log(redactCliSessionUrl(url));
64
70
  return;
65
71
  }
66
72
  const open = await Promise.resolve().then(() => __importStar(require('open'))).then((m) => m.default);
@@ -1 +1 @@
1
- {"version":3,"file":"open.js","sourceRoot":"","sources":["../../../../../src/commands/org/open.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAyDA,kDAEC;AA3DD,yCAAoC;AACpC,0DAAiF;AACjF,+CAA4C;AAC5C,6DAA6D;AAOhD,QAAA,WAAW,GAAG,IAAI,mBAAO,CAAC,MAAM,CAAC;KAC3C,WAAW,CAAC,oCAAoC,CAAC;KACjD,MAAM,CAAC,0BAA0B,EAAE,kBAAkB,CAAC;KACtD,MAAM,CAAC,sBAAsB,EAAE,qCAAqC,EAAE,GAAG,CAAC;KAC1E,MAAM,CAAC,YAAY,EAAE,iDAAiD,CAAC;KACvE,MAAM,CACL,IAAA,gCAAgB,EAAC,KAAK,EAAE,IAA6D,EAAE,EAAE;IAEvF,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS;QACzB,CAAC,CAAC,IAAA,2BAAc,EAAC,IAAI,CAAC,SAAS,CAAC;QAChC,CAAC,CAAC,IAAA,iCAAoB,GAAE,CAAC;IAE3B,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC;QAC3C,eAAM,CAAC,KAAK,CACV,kCAAkC,MAAM,+EAA+E,CACxH,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAGD,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;QACnD,eAAM,CAAC,KAAK,CACV,kCAAkC,IAAI,CAAC,KAAK,+EAA+E,CAC5H,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAGD,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;IAC7E,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,WAAW,2BAA2B,kBAAkB,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,kBAAkB,CAAC,YAAY,CAAC,EAAE,CAAC;IAE9I,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;QACjB,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACjB,OAAO;IACT,CAAC;IAGD,MAAM,IAAI,GAAG,MAAM,kDAAO,MAAM,IAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;IACzD,MAAM,IAAI,CAAC,GAAG,CAAC,CAAC;IAChB,eAAM,CAAC,OAAO,CAAC,WAAW,IAAI,CAAC,KAAK,gBAAgB,CAAC,CAAC;AACxD,CAAC,CAAC,CACH,CAAC;AAKJ,SAAgB,mBAAmB,CAAC,GAAY;IAC9C,GAAG,CAAC,UAAU,CAAC,mBAAW,CAAC,CAAC;AAC9B,CAAC"}
1
+ {"version":3,"file":"open.js","sourceRoot":"","sources":["../../../../../src/commands/org/open.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAKA,kDAIC;AAsDD,kDAEC;AAjED,yCAAoC;AACpC,0DAAsG;AACtG,+CAA4C;AAC5C,6DAA6D;AAE7D,SAAgB,mBAAmB,CAAC,GAAW;IAC7C,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;IACjC,WAAW,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IACpD,OAAO,WAAW,CAAC,QAAQ,EAAE,CAAC;AAChC,CAAC;AAOY,QAAA,WAAW,GAAG,IAAI,mBAAO,CAAC,MAAM,CAAC;KAC3C,WAAW,CAAC,oCAAoC,CAAC;KACjD,MAAM,CAAC,0BAA0B,EAAE,kBAAkB,CAAC;KACtD,MAAM,CAAC,sBAAsB,EAAE,qCAAqC,EAAE,GAAG,CAAC;KAC1E,MAAM,CAAC,YAAY,EAAE,iDAAiD,CAAC;KACvE,MAAM,CACL,IAAA,gCAAgB,EAAC,KAAK,EAAE,IAA6D,EAAE,EAAE;IAEvF,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS;QACzB,CAAC,CAAC,IAAA,2BAAc,EAAC,IAAI,CAAC,SAAS,CAAC;QAChC,CAAC,CAAC,IAAA,iCAAoB,GAAE,CAAC;IAE3B,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC;QAC3C,eAAM,CAAC,KAAK,CACV,kCAAkC,MAAM,+EAA+E,CACxH,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAGD,IAAI,IAAA,gCAAmB,EAAC,IAAI,CAAC,KAAK,SAAS,EAAE,CAAC;QAC5C,eAAM,CAAC,KAAK,CACV,kCAAkC,IAAI,CAAC,KAAK,+EAA+E,CAC5H,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAGD,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;IAC7E,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,WAAW,2BAA2B,kBAAkB,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,kBAAkB,CAAC,YAAY,CAAC,EAAE,CAAC;IAE9I,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;QACjB,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC;QACtC,OAAO;IACT,CAAC;IAGD,MAAM,IAAI,GAAG,MAAM,kDAAO,MAAM,IAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;IACzD,MAAM,IAAI,CAAC,GAAG,CAAC,CAAC;IAChB,eAAM,CAAC,OAAO,CAAC,WAAW,IAAI,CAAC,KAAK,gBAAgB,CAAC,CAAC;AACxD,CAAC,CAAC,CACH,CAAC;AAKJ,SAAgB,mBAAmB,CAAC,GAAY;IAC9C,GAAG,CAAC,UAAU,CAAC,mBAAW,CAAC,CAAC;AAC9B,CAAC"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const strict_1 = __importDefault(require("node:assert/strict"));
7
+ const node_test_1 = __importDefault(require("node:test"));
8
+ const open_1 = require("./open");
9
+ (0, node_test_1.default)('org open url-only redacts the complete credential while preserving the redirect', () => {
10
+ const token = 'header.sensitive-payload.signature';
11
+ const output = (0, open_1.redactCliSessionUrl)(`https://example.nexusclaw.com/auth/cli-session?token=${token}&redirect=%2Fobjects%2Faccount`);
12
+ strict_1.default.doesNotMatch(output, /sensitive-payload/);
13
+ strict_1.default.equal(new URL(output).searchParams.get('token'), '<redacted>');
14
+ strict_1.default.equal(new URL(output).searchParams.get('redirect'), '/objects/account');
15
+ });
16
+ //# sourceMappingURL=open.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"open.test.js","sourceRoot":"","sources":["../../../../../src/commands/org/open.test.ts"],"names":[],"mappings":";;;;;AAAA,gEAAwC;AACxC,0DAA6B;AAE7B,iCAA6C;AAE7C,IAAA,mBAAI,EAAC,iFAAiF,EAAE,GAAG,EAAE;IAC3F,MAAM,KAAK,GAAG,oCAAoC,CAAC;IACnD,MAAM,MAAM,GAAG,IAAA,0BAAmB,EAChC,wDAAwD,KAAK,gCAAgC,CAC9F,CAAC;IAEF,gBAAM,CAAC,YAAY,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC;IACjD,gBAAM,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,YAAY,CAAC,CAAC;IACtE,gBAAM,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,kBAAkB,CAAC,CAAC;AACjF,CAAC,CAAC,CAAC"}
@@ -4,20 +4,26 @@ exports.packageHistoryCommand = void 0;
4
4
  const commander_1 = require("commander");
5
5
  const revision_ledger_1 = require("../../services/revision-ledger");
6
6
  const table_formatter_1 = require("../../utils/table-formatter");
7
+ const command_options_1 = require("../../utils/command-options");
7
8
  exports.packageHistoryCommand = new commander_1.Command('history')
8
9
  .description('查看 package 安装历史')
9
10
  .argument('[packageName]', 'package 名称')
10
- .option('--environment <environment>', 'Revision ledger environment', 'dev')
11
+ .option('--env <environment>', 'Revision ledger environment')
12
+ .option('--environment <environment>', 'Revision ledger environment')
13
+ .option('-w, --workspace-id <id>', 'Filter history by target workspace id')
11
14
  .option('--json', 'Output package history as JSON', false)
12
15
  .action(async (packageName, options) => {
13
- const environment = (0, revision_ledger_1.resolveRevisionEnvironment)(options.environment);
16
+ const environment = (0, revision_ledger_1.resolveRevisionEnvironment)((0, command_options_1.resolveEnvironmentOption)(options) ?? 'dev');
14
17
  await (0, revision_ledger_1.ensureRevisionLedgerInitialized)('.', environment);
15
18
  const service = new revision_ledger_1.RevisionService(new revision_ledger_1.LedgerStorage('.'));
16
- const records = await service.queryRevisions({
19
+ const queriedRecords = await service.queryRevisions({
17
20
  environment,
18
21
  packageName,
19
22
  limit: 100,
20
23
  });
24
+ const records = options.workspaceId
25
+ ? queriedRecords.filter((record) => record.metadata.workspaceId === options.workspaceId)
26
+ : queriedRecords;
21
27
  if (records.length === 0) {
22
28
  console.log('No package install history found.');
23
29
  return;