@lesliechan721/aw 0.1.0-beta.10 → 0.1.0-beta.12

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 (227) hide show
  1. package/dist/authoring/assets/aw-config.d.mts +1 -50
  2. package/dist/authoring/assets/aw-config.mjs +58 -928
  3. package/dist/authoring/assets/aw-config.mjs.map +1 -1
  4. package/dist/authoring/scripts/init-plugin.mjs +28 -33
  5. package/dist/authoring/scripts/init-plugin.mjs.map +1 -1
  6. package/dist/authoring/scripts/lib/plugin-version-check.d.mts +1 -0
  7. package/dist/authoring/scripts/lib/plugin-version-check.mjs +229 -8
  8. package/dist/authoring/scripts/lib/plugin-version-check.mjs.map +1 -1
  9. package/dist/authoring/scripts/validate-plugin.mjs +159 -48
  10. package/dist/authoring/scripts/validate-plugin.mjs.map +1 -1
  11. package/dist/scripts/bundle-plugins.js +18 -4
  12. package/dist/scripts/bundle-plugins.js.map +1 -1
  13. package/dist/scripts/test-plugin-scripts.d.ts +2 -0
  14. package/dist/scripts/test-plugin-scripts.js +21 -5
  15. package/dist/scripts/test-plugin-scripts.js.map +1 -1
  16. package/dist/src/commands/aw-capabilities.d.ts +1 -1
  17. package/dist/src/commands/aw-capabilities.js +1 -1
  18. package/dist/src/commands/aw-capabilities.js.map +1 -1
  19. package/dist/src/commands/catalog-dev-source.d.ts +6 -3
  20. package/dist/src/commands/catalog-dev-source.js +96 -35
  21. package/dist/src/commands/catalog-dev-source.js.map +1 -1
  22. package/dist/src/commands/catalog-publication-inspection.d.ts +1 -1
  23. package/dist/src/commands/catalog-publication-inspection.js +54 -8
  24. package/dist/src/commands/catalog-publication-inspection.js.map +1 -1
  25. package/dist/src/commands/catalog-publication-journal.js +1 -1
  26. package/dist/src/commands/catalog-publication-journal.js.map +1 -1
  27. package/dist/src/commands/catalog-source.d.ts +19 -4
  28. package/dist/src/commands/catalog-source.js +121 -12
  29. package/dist/src/commands/catalog-source.js.map +1 -1
  30. package/dist/src/commands/catalog-store.d.ts +26 -7
  31. package/dist/src/commands/catalog-store.js +361 -42
  32. package/dist/src/commands/catalog-store.js.map +1 -1
  33. package/dist/src/commands/console.js +28 -17
  34. package/dist/src/commands/console.js.map +1 -1
  35. package/dist/src/commands/operation-plan.d.ts +2 -1
  36. package/dist/src/commands/operation-plan.js +24 -0
  37. package/dist/src/commands/operation-plan.js.map +1 -1
  38. package/dist/src/commands/operation-planner.d.ts +2 -2
  39. package/dist/src/commands/operation-planner.js +22 -20
  40. package/dist/src/commands/operation-planner.js.map +1 -1
  41. package/dist/src/commands/options.d.ts +2 -2
  42. package/dist/src/commands/options.js +18 -4
  43. package/dist/src/commands/options.js.map +1 -1
  44. package/dist/src/commands/plugin-capabilities.js +2 -2
  45. package/dist/src/commands/plugin-capabilities.js.map +1 -1
  46. package/dist/src/commands/rebuild-command.d.ts +19 -0
  47. package/dist/src/commands/rebuild-command.js +828 -283
  48. package/dist/src/commands/rebuild-command.js.map +1 -1
  49. package/dist/src/commands/rebuild-integration.d.ts +25 -47
  50. package/dist/src/commands/rebuild-integration.js +1176 -1016
  51. package/dist/src/commands/rebuild-integration.js.map +1 -1
  52. package/dist/src/commands/rebuild-operations.d.ts +50 -12
  53. package/dist/src/commands/rebuild-operations.js +207 -101
  54. package/dist/src/commands/rebuild-operations.js.map +1 -1
  55. package/dist/src/commands/status-v6.d.ts +21 -2
  56. package/dist/src/commands/status-v6.js +163 -31
  57. package/dist/src/commands/status-v6.js.map +1 -1
  58. package/dist/src/commands/sync-command.d.ts +17 -0
  59. package/dist/src/commands/sync-command.js +45 -37
  60. package/dist/src/commands/sync-command.js.map +1 -1
  61. package/dist/src/commands/write-commands.d.ts +5 -0
  62. package/dist/src/commands/write-commands.js +50 -3
  63. package/dist/src/commands/write-commands.js.map +1 -1
  64. package/dist/src/generators/local-plugin.js +14 -4
  65. package/dist/src/generators/local-plugin.js.map +1 -1
  66. package/dist/src/index.js +260 -91
  67. package/dist/src/index.js.map +1 -1
  68. package/dist/src/output/command-receipt.js +1 -3
  69. package/dist/src/output/command-receipt.js.map +1 -1
  70. package/dist/src/output/rebuild-progress.js +1 -3
  71. package/dist/src/output/rebuild-progress.js.map +1 -1
  72. package/dist/src/portable/materializer.js +10 -8
  73. package/dist/src/portable/materializer.js.map +1 -1
  74. package/dist/src/tui/catalog-generation.js +41 -1
  75. package/dist/src/tui/catalog-generation.js.map +1 -1
  76. package/dist/src/tui/catalog-sources/session.d.ts +1 -0
  77. package/dist/src/tui/catalog-sources/session.js +16 -3
  78. package/dist/src/tui/catalog-sources/session.js.map +1 -1
  79. package/dist/src/tui/catalog-sources/types.d.ts +3 -2
  80. package/dist/src/tui/components.d.ts +4 -0
  81. package/dist/src/tui/components.js +36 -24
  82. package/dist/src/tui/components.js.map +1 -1
  83. package/dist/src/tui/console-app-v4.d.ts +13 -4
  84. package/dist/src/tui/console-app-v4.js +2065 -857
  85. package/dist/src/tui/console-app-v4.js.map +1 -1
  86. package/dist/src/tui/controller-runtime.js +731 -62
  87. package/dist/src/tui/controller-runtime.js.map +1 -1
  88. package/dist/src/tui/controller.d.ts +156 -10
  89. package/dist/src/tui/controller.js +1187 -163
  90. package/dist/src/tui/controller.js.map +1 -1
  91. package/dist/src/tui/diagnostic-projection.d.ts +22 -0
  92. package/dist/src/tui/diagnostic-projection.js +437 -0
  93. package/dist/src/tui/diagnostic-projection.js.map +1 -0
  94. package/dist/src/tui/diagnostics.d.ts +1 -1
  95. package/dist/src/tui/diagnostics.js +7 -2
  96. package/dist/src/tui/diagnostics.js.map +1 -1
  97. package/dist/src/tui/glossary.d.ts +23 -0
  98. package/dist/src/tui/glossary.js +42 -0
  99. package/dist/src/tui/glossary.js.map +1 -0
  100. package/dist/src/tui/index.d.ts +4 -1
  101. package/dist/src/tui/index.js +4 -1
  102. package/dist/src/tui/index.js.map +1 -1
  103. package/dist/src/tui/keys.d.ts +44 -0
  104. package/dist/src/tui/keys.js +43 -15
  105. package/dist/src/tui/keys.js.map +1 -1
  106. package/dist/src/tui/lifecycle-action-view.d.ts +6 -0
  107. package/dist/src/tui/lifecycle-action-view.js +34 -0
  108. package/dist/src/tui/lifecycle-action-view.js.map +1 -0
  109. package/dist/src/tui/model.d.ts +12 -2
  110. package/dist/src/tui/model.js +128 -52
  111. package/dist/src/tui/model.js.map +1 -1
  112. package/dist/src/tui/operation-diagnostic-screens.d.ts +21 -0
  113. package/dist/src/tui/operation-diagnostic-screens.js +101 -0
  114. package/dist/src/tui/operation-diagnostic-screens.js.map +1 -0
  115. package/dist/src/tui/operation-history.d.ts +80 -0
  116. package/dist/src/tui/operation-history.js +130 -0
  117. package/dist/src/tui/operation-history.js.map +1 -0
  118. package/dist/src/tui/operation-review-planner.js +366 -99
  119. package/dist/src/tui/operation-review-planner.js.map +1 -1
  120. package/dist/src/tui/router.d.ts +82 -17
  121. package/dist/src/tui/router.js +186 -38
  122. package/dist/src/tui/router.js.map +1 -1
  123. package/dist/src/tui/screen-registry.d.ts +546 -0
  124. package/dist/src/tui/screen-registry.js +179 -0
  125. package/dist/src/tui/screen-registry.js.map +1 -0
  126. package/dist/src/tui/session-console-app.d.ts +6 -0
  127. package/dist/src/tui/session-console-app.js +13 -0
  128. package/dist/src/tui/session-console-app.js.map +1 -0
  129. package/dist/src/tui/session-host.d.ts +44 -0
  130. package/dist/src/tui/session-host.js +197 -0
  131. package/dist/src/tui/session-host.js.map +1 -0
  132. package/dist/src/types.d.ts +64 -3
  133. package/dist/src/types.js +1 -1
  134. package/dist/src/types.js.map +1 -1
  135. package/dist/src/utils/agent-version.js +1 -1
  136. package/dist/src/utils/agent-version.js.map +1 -1
  137. package/dist/src/utils/artifact-plan.d.ts +2 -2
  138. package/dist/src/utils/artifact-plan.js +8 -6
  139. package/dist/src/utils/artifact-plan.js.map +1 -1
  140. package/dist/src/utils/artifact-renderer.d.ts +2 -1
  141. package/dist/src/utils/artifact-renderer.js +139 -120
  142. package/dist/src/utils/artifact-renderer.js.map +1 -1
  143. package/dist/src/utils/artifact-request.d.ts +5 -0
  144. package/dist/src/utils/artifact-request.js +40 -0
  145. package/dist/src/utils/artifact-request.js.map +1 -1
  146. package/dist/src/utils/bundle-layout.js +4 -4
  147. package/dist/src/utils/bundle-layout.js.map +1 -1
  148. package/dist/src/utils/catalog-capability-projection.d.ts +8 -0
  149. package/dist/src/utils/catalog-capability-projection.js +14 -0
  150. package/dist/src/utils/catalog-capability-projection.js.map +1 -0
  151. package/dist/src/utils/catalog-generation-resolver.d.ts +14 -2
  152. package/dist/src/utils/catalog-generation-resolver.js +49 -27
  153. package/dist/src/utils/catalog-generation-resolver.js.map +1 -1
  154. package/dist/src/utils/catalog-generation-service.d.ts +8 -1
  155. package/dist/src/utils/catalog-generation-service.js +81 -47
  156. package/dist/src/utils/catalog-generation-service.js.map +1 -1
  157. package/dist/src/utils/catalog-generation-store.d.ts +1 -0
  158. package/dist/src/utils/catalog-generation-store.js +60 -5
  159. package/dist/src/utils/catalog-generation-store.js.map +1 -1
  160. package/dist/src/utils/catalog-operation-context.js +1 -0
  161. package/dist/src/utils/catalog-operation-context.js.map +1 -1
  162. package/dist/src/utils/catalog-public-error.js +4 -0
  163. package/dist/src/utils/catalog-public-error.js.map +1 -1
  164. package/dist/src/utils/catalog-source-impact.d.ts +3 -2
  165. package/dist/src/utils/catalog-source-impact.js +142 -20
  166. package/dist/src/utils/catalog-source-impact.js.map +1 -1
  167. package/dist/src/utils/catalog-source-references.js +95 -9
  168. package/dist/src/utils/catalog-source-references.js.map +1 -1
  169. package/dist/src/utils/catalog-sources.d.ts +1 -1
  170. package/dist/src/utils/catalog-sources.js +19 -3
  171. package/dist/src/utils/catalog-sources.js.map +1 -1
  172. package/dist/src/utils/codex-manager.js +8 -0
  173. package/dist/src/utils/codex-manager.js.map +1 -1
  174. package/dist/src/utils/codex-native-observation.d.ts +34 -1
  175. package/dist/src/utils/codex-native-observation.js +132 -0
  176. package/dist/src/utils/codex-native-observation.js.map +1 -1
  177. package/dist/src/utils/codex-reconciler.d.ts +0 -2
  178. package/dist/src/utils/codex-reconciler.js.map +1 -1
  179. package/dist/src/utils/codex-shared-native.d.ts +2 -26
  180. package/dist/src/utils/codex-shared-native.js +8 -82
  181. package/dist/src/utils/codex-shared-native.js.map +1 -1
  182. package/dist/src/utils/git-catalog-provider.d.ts +3 -0
  183. package/dist/src/utils/git-catalog-provider.js +40 -1
  184. package/dist/src/utils/git-catalog-provider.js.map +1 -1
  185. package/dist/src/utils/local-marketplace.d.ts +1 -0
  186. package/dist/src/utils/local-marketplace.js +69 -73
  187. package/dist/src/utils/local-marketplace.js.map +1 -1
  188. package/dist/src/utils/multi-source-catalog.js +1 -0
  189. package/dist/src/utils/multi-source-catalog.js.map +1 -1
  190. package/dist/src/utils/native-cli.d.ts +9 -4
  191. package/dist/src/utils/native-cli.js +280 -34
  192. package/dist/src/utils/native-cli.js.map +1 -1
  193. package/dist/src/utils/path-catalog-provider.js +2 -0
  194. package/dist/src/utils/path-catalog-provider.js.map +1 -1
  195. package/dist/src/utils/plugin-config-impact.d.ts +33 -0
  196. package/dist/src/utils/plugin-config-impact.js +298 -0
  197. package/dist/src/utils/plugin-config-impact.js.map +1 -0
  198. package/dist/src/utils/plugin-config-write.d.ts +36 -14
  199. package/dist/src/utils/plugin-config-write.js +709 -225
  200. package/dist/src/utils/plugin-config-write.js.map +1 -1
  201. package/dist/src/utils/plugin-config.d.ts +58 -4
  202. package/dist/src/utils/plugin-config.js +328 -60
  203. package/dist/src/utils/plugin-config.js.map +1 -1
  204. package/dist/src/utils/plugin-scripts.d.ts +20 -12
  205. package/dist/src/utils/plugin-scripts.js +389 -114
  206. package/dist/src/utils/plugin-scripts.js.map +1 -1
  207. package/dist/src/utils/process-tree.d.ts +2 -2
  208. package/dist/src/utils/process-tree.js +1 -1
  209. package/dist/src/utils/process-tree.js.map +1 -1
  210. package/dist/src/utils/project-boundary.d.ts +11 -1
  211. package/dist/src/utils/project-boundary.js +33 -11
  212. package/dist/src/utils/project-boundary.js.map +1 -1
  213. package/dist/src/utils/safe-operation-diagnostic.d.ts +15 -0
  214. package/dist/src/utils/safe-operation-diagnostic.js +33 -0
  215. package/dist/src/utils/safe-operation-diagnostic.js.map +1 -0
  216. package/dist/src/utils/sensitive-content.d.ts +4 -0
  217. package/dist/src/utils/sensitive-content.js +36 -0
  218. package/dist/src/utils/sensitive-content.js.map +1 -0
  219. package/dist/src/utils/windows-claude-shim.d.ts +9 -0
  220. package/dist/src/utils/windows-claude-shim.js +141 -0
  221. package/dist/src/utils/windows-claude-shim.js.map +1 -0
  222. package/dist/vitest.config.js +91 -10
  223. package/dist/vitest.config.js.map +1 -1
  224. package/package.json +9 -9
  225. package/dist/authoring/templates/aw-config-runtime.d.mts +0 -2
  226. package/dist/authoring/templates/aw-config-runtime.mjs +0 -407
  227. package/dist/authoring/templates/aw-config-runtime.mjs.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"aw-config.mjs","sourceRoot":"","sources":["../../../authoring/assets/aw-config.mjs"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"aw-config.mjs","sourceRoot":"","sources":["../../../authoring/assets/aw-config.mjs"],"names":[],"mappings":"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"}
@@ -106,11 +106,11 @@ function buildPluginManifest(pluginName, version, description, displayName, shor
106
106
  },
107
107
  };
108
108
  }
109
- if (opts.withConfigApi || opts.withPostApply) {
109
+ if (opts.withConfigApi || opts.withPreApply) {
110
110
  manifest.scripts = {
111
- ...(opts.withPostApply
111
+ ...(opts.withPreApply
112
112
  ? {
113
- postApply: { path: './scripts/postApply.mjs' },
113
+ preApply: { path: './scripts/preApply.mjs' },
114
114
  }
115
115
  : {}),
116
116
  ...(opts.withConfigApi
@@ -143,12 +143,14 @@ function renderAppJson() {
143
143
  }
144
144
  `;
145
145
  }
146
- function renderPostApplyMjs() {
146
+ function renderPreApplyMjs() {
147
147
  return `let input = '';
148
148
  for await (const chunk of process.stdin) input += chunk;
149
149
  const context = JSON.parse(input);
150
- const pluginName = context.plugin?.name ?? context.pluginName ?? 'plugin';
151
- console.log(\`[\${pluginName}] postApply completed.\`);
150
+ if (context.schemaVersion !== 1 || !context.plugin?.name || !context.target?.platform) {
151
+ throw new Error('Invalid AW preApply context.');
152
+ }
153
+ console.log(\`[\${context.plugin.name}] preApply environment check completed.\`);
152
154
  `;
153
155
  }
154
156
  function renderGeneratedScriptTest(pluginName, opts) {
@@ -176,12 +178,6 @@ test('aw config helper reads AW_PLUGIN_CONTEXT without fallback discovery', asyn
176
178
  default: 'standard'
177
179
  }
178
180
  }
179
- },
180
- paths: {
181
- configStores: {
182
- user: join(tempDir, 'missing-user.json'),
183
- project: join(tempDir, 'missing-project.json')
184
- }
185
181
  }
186
182
  }), 'utf8');
187
183
 
@@ -194,27 +190,26 @@ test('aw config helper reads AW_PLUGIN_CONTEXT without fallback discovery', asyn
194
190
  });
195
191
  `
196
192
  : '';
197
- const postApplyTest = opts.withPostApply
193
+ const preApplyTest = opts.withPreApply
198
194
  ? `
199
- test('postApply script accepts JSON context from stdin', async () => {
200
- const tempDir = await mkdtemp(join(tmpdir(), '${pluginName}-postApply-'));
195
+ test('preApply script accepts the minimal JSON context from stdin', async () => {
196
+ const tempDir = await mkdtemp(join(tmpdir(), '${pluginName}-preApply-'));
201
197
  const contextPath = join(tempDir, 'context.json');
202
198
  await writeFile(contextPath, JSON.stringify({
203
199
  schemaVersion: 1,
204
200
  plugin: { pluginId: 'official/${pluginName}', name: '${pluginName}', version: '0.1.0', rootDir: tempDir },
205
201
  target: { platform: 'codex', scope: 'project', projectRoot: tempDir },
206
- config: { values: {} },
207
- components: []
202
+ config: { values: {} }
208
203
  }), 'utf8');
209
204
 
210
- const postApplyPath = join(dirname(fileURLToPath(import.meta.url)), 'postApply.mjs');
211
- const postApply = spawnSync(process.execPath, [postApplyPath], {
205
+ const preApplyPath = join(dirname(fileURLToPath(import.meta.url)), 'preApply.mjs');
206
+ const preApply = spawnSync(process.execPath, [preApplyPath], {
212
207
  cwd: tempDir,
213
208
  input: await readFile(contextPath, 'utf8'),
214
209
  encoding: 'utf8',
215
210
  });
216
- assert.equal(postApply.status, 0, postApply.stderr);
217
- assert.match(postApply.stdout, /postApply completed/);
211
+ assert.equal(preApply.status, 0, preApply.stderr);
212
+ assert.match(preApply.stdout, /preApply environment check completed/);
218
213
  });
219
214
  `
220
215
  : '';
@@ -228,7 +223,7 @@ import assert from 'node:assert/strict';
228
223
  import { test } from 'node:test';
229
224
 
230
225
  const execFileAsync = promisify(execFile);
231
- ${configTest}${postApplyTest}`;
226
+ ${configTest}${preApplyTest}`;
232
227
  }
233
228
  function printUsage() {
234
229
  console.log(`Usage:
@@ -249,7 +244,7 @@ Options:
249
244
  --with-mcp Create .mcp.json stub and add mcpServers to manifest.
250
245
  --with-apps Create minimal .app.json with an example connector id and add apps to manifest.
251
246
  --with-config-api Add AW config schema, standard config helper, and Node script test.
252
- --with-post-apply Add Node postApply script sample and Node script test.
247
+ --with-pre-apply Add an idempotent Node preApply environment check and test.
253
248
  -h, --help Show this help message.
254
249
 
255
250
  Note:
@@ -279,7 +274,7 @@ function parseArgs(argv) {
279
274
  withMcp: false,
280
275
  withApps: false,
281
276
  withConfigApi: false,
282
- withPostApply: false,
277
+ withPreApply: false,
283
278
  noSkills: false,
284
279
  skillInvocation: 'model',
285
280
  };
@@ -301,8 +296,8 @@ function parseArgs(argv) {
301
296
  options.withConfigApi = true;
302
297
  continue;
303
298
  }
304
- if (arg === '--with-post-apply') {
305
- options.withPostApply = true;
299
+ if (arg === '--with-pre-apply') {
300
+ options.withPreApply = true;
306
301
  continue;
307
302
  }
308
303
  if (arg === '--no-skills') {
@@ -401,7 +396,7 @@ function main() {
401
396
  withMcp: args.withMcp,
402
397
  withApps: args.withApps,
403
398
  withConfigApi: args.withConfigApi,
404
- withPostApply: args.withPostApply,
399
+ withPreApply: args.withPreApply,
405
400
  noSkills: args.noSkills,
406
401
  initialSkillName,
407
402
  });
@@ -451,16 +446,16 @@ function main() {
451
446
  writeText(helperPath, fs.readFileSync(helperTemplatePath, 'utf8'));
452
447
  createdPaths.push(helperPath);
453
448
  }
454
- if (args.withPostApply) {
455
- const postApplyPath = path.join(pluginRoot, 'scripts', 'postApply.mjs');
456
- writeText(postApplyPath, renderPostApplyMjs());
457
- createdPaths.push(postApplyPath);
449
+ if (args.withPreApply) {
450
+ const preApplyPath = path.join(pluginRoot, 'scripts', 'preApply.mjs');
451
+ writeText(preApplyPath, renderPreApplyMjs());
452
+ createdPaths.push(preApplyPath);
458
453
  }
459
- if (args.withConfigApi || args.withPostApply) {
454
+ if (args.withConfigApi || args.withPreApply) {
460
455
  const testPath = path.join(pluginRoot, 'scripts', 'generated-script.test.mjs');
461
456
  writeText(testPath, renderGeneratedScriptTest(pluginName, {
462
457
  withConfigApi: args.withConfigApi,
463
- withPostApply: args.withPostApply,
458
+ withPreApply: args.withPreApply,
464
459
  }));
465
460
  createdPaths.push(testPath);
466
461
  }
@@ -1 +1 @@
1
- {"version":3,"file":"init-plugin.mjs","sourceRoot":"","sources":["../../../authoring/scripts/init-plugin.mjs"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"init-plugin.mjs","sourceRoot":"","sources":["../../../authoring/scripts/init-plugin.mjs"],"names":[],"mappings":"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"}
@@ -8,6 +8,7 @@ export function parseStablePluginVersion(version: any, fieldName: any): {
8
8
  };
9
9
  export function runGit(repoRoot: any, args: any, options?: {}): Promise<string | NonSharedBuffer>;
10
10
  export function resolveBaseCommit(repoRoot: any, base: any): Promise<any>;
11
+ export function readGitBlobsBatch(repoRoot: any, objectIds: any, options?: {}): Promise<Map<any, any>>;
11
12
  export function readManifestDocument(pluginRoot: any): Promise<{
12
13
  manifestPath: string;
13
14
  manifest: any;
@@ -1,15 +1,23 @@
1
- import { execFile } from 'node:child_process';
1
+ import { execFile, spawn } from 'node:child_process';
2
2
  import crypto from 'node:crypto';
3
3
  import * as fs from 'node:fs/promises';
4
4
  import * as os from 'node:os';
5
5
  import * as path from 'node:path';
6
+ import { Readable } from 'node:stream';
7
+ import { pipeline } from 'node:stream/promises';
6
8
  import { promisify } from 'node:util';
7
9
  import { fileURLToPath, pathToFileURL } from 'node:url';
8
10
  import { compareStrictSemVer, parseStrictSemVer } from './semver.mjs';
9
11
  import { assertAuthoringPluginPathFence, resolveAuthoringPluginRoot, } from './plugin-root.mjs';
10
12
  const execFileAsync = promisify(execFile);
11
- const EXPECTED_MANIFEST_CONTRACT_VERSION = 11;
13
+ const EXPECTED_MANIFEST_CONTRACT_VERSION = 12;
12
14
  const PLUGIN_NAME_PATTERN = /^[a-z0-9]+(?:-[a-z0-9]+)*$/;
15
+ const GIT_OBJECT_ID_PATTERN = /^(?:[0-9a-f]{40}|[0-9a-f]{64})$/u;
16
+ const MAX_GIT_BLOB_BYTES = 50 * 1024 * 1024;
17
+ const MAX_GIT_BATCH_HEADER_BYTES = 1024;
18
+ const GIT_BATCH_OPERATION_TIMEOUT_MS = 30_000;
19
+ const GIT_BATCH_TERM_GRACE_MS = 250;
20
+ const GIT_BATCH_CLOSE_TIMEOUT_MS = 2_000;
13
21
  const CLI_PACKAGE_ROOT = path.resolve(path.dirname(fileURLToPath(import.meta.url)), '..', '..', '..', '..');
14
22
  export class PluginVersionCheckError extends Error {
15
23
  constructor(code, message) {
@@ -104,7 +112,16 @@ async function loadProductionBundler(cliPackageRoot) {
104
112
  }
105
113
  function parseTreeRecord(record) {
106
114
  const tabIndex = record.indexOf('\t');
115
+ if (tabIndex < 0) {
116
+ throw codedError('gitFailed', 'Git authoring source tree returned a malformed record.');
117
+ }
107
118
  const metadata = record.slice(0, tabIndex).split(' ');
119
+ if (metadata.length !== 3
120
+ || !metadata[0]
121
+ || !metadata[1]
122
+ || !GIT_OBJECT_ID_PATTERN.test(metadata[2] ?? '')) {
123
+ throw codedError('gitFailed', 'Git authoring source tree returned malformed metadata.');
124
+ }
108
125
  return {
109
126
  mode: metadata[0],
110
127
  type: metadata[1],
@@ -112,6 +129,206 @@ function parseTreeRecord(record) {
112
129
  filePath: record.slice(tabIndex + 1),
113
130
  };
114
131
  }
132
+ function createBatchReader(stream) {
133
+ const iterator = stream[Symbol.asyncIterator]();
134
+ let chunk = Buffer.alloc(0);
135
+ let offset = 0;
136
+ let ended = false;
137
+ async function nextChunk() {
138
+ if (offset < chunk.length)
139
+ return true;
140
+ const next = await iterator.next();
141
+ if (next.done) {
142
+ ended = true;
143
+ chunk = Buffer.alloc(0);
144
+ offset = 0;
145
+ return false;
146
+ }
147
+ chunk = Buffer.isBuffer(next.value) ? next.value : Buffer.from(next.value);
148
+ offset = 0;
149
+ return true;
150
+ }
151
+ return {
152
+ async readLine() {
153
+ const parts = [];
154
+ let size = 0;
155
+ while (await nextChunk()) {
156
+ const newline = chunk.indexOf(0x0a, offset);
157
+ const end = newline < 0 ? chunk.length : newline;
158
+ const part = chunk.subarray(offset, end);
159
+ parts.push(part);
160
+ size += part.length;
161
+ if (size > MAX_GIT_BATCH_HEADER_BYTES) {
162
+ throw codedError('gitFailed', 'Git cat-file batch returned an oversized header.');
163
+ }
164
+ offset = newline < 0 ? chunk.length : newline + 1;
165
+ if (newline >= 0)
166
+ return Buffer.concat(parts, size).toString('ascii');
167
+ }
168
+ if (size === 0 && ended)
169
+ return null;
170
+ throw codedError('gitFailed', 'Git cat-file batch stdout ended during a header.');
171
+ },
172
+ async readExact(size) {
173
+ const output = Buffer.allocUnsafe(size);
174
+ let written = 0;
175
+ while (written < size && await nextChunk()) {
176
+ const available = Math.min(size - written, chunk.length - offset);
177
+ chunk.copy(output, written, offset, offset + available);
178
+ offset += available;
179
+ written += available;
180
+ }
181
+ if (written !== size) {
182
+ throw codedError('gitFailed', 'Git cat-file batch stdout ended during a blob.');
183
+ }
184
+ return output;
185
+ },
186
+ };
187
+ }
188
+ export async function readGitBlobsBatch(repoRoot, objectIds, options = {}) {
189
+ const uniqueObjectIds = [...new Set(objectIds)];
190
+ for (const objectId of uniqueObjectIds) {
191
+ if (!GIT_OBJECT_ID_PATTERN.test(objectId)) {
192
+ throw codedError('gitFailed', `Git authoring source tree returned an invalid object ID.`);
193
+ }
194
+ }
195
+ if (uniqueObjectIds.length === 0)
196
+ return new Map();
197
+ const child = spawn('git', ['cat-file', '--batch'], {
198
+ cwd: repoRoot,
199
+ env: options.env ?? process.env,
200
+ stdio: ['pipe', 'pipe', 'pipe'],
201
+ });
202
+ let cleanupStarted = false;
203
+ let operationTimedOut = false;
204
+ let operationTimeoutTimer;
205
+ let forceKillTimer;
206
+ let closeTimeoutTimer;
207
+ let settleExit;
208
+ let onStderrData;
209
+ const exitTask = new Promise((resolve, reject) => {
210
+ const finish = (settle, value) => {
211
+ if (!settleExit)
212
+ return;
213
+ settleExit = null;
214
+ clearTimeout(operationTimeoutTimer);
215
+ clearTimeout(forceKillTimer);
216
+ clearTimeout(closeTimeoutTimer);
217
+ child.removeListener('error', onError);
218
+ child.removeListener('close', onClose);
219
+ if (onStderrData)
220
+ child.stderr.removeListener('data', onStderrData);
221
+ settle(value);
222
+ };
223
+ const onError = (error) => finish(reject, error);
224
+ const onClose = (code, signal) => finish(resolve, { code, signal });
225
+ settleExit = (error) => finish(reject, error);
226
+ child.once('error', onError);
227
+ child.once('close', onClose);
228
+ });
229
+ function requestCleanup() {
230
+ if (cleanupStarted || !settleExit)
231
+ return;
232
+ cleanupStarted = true;
233
+ child.stdin.destroy();
234
+ child.kill('SIGTERM');
235
+ forceKillTimer = setTimeout(() => child.kill('SIGKILL'), GIT_BATCH_TERM_GRACE_MS);
236
+ closeTimeoutTimer = setTimeout(() => {
237
+ child.kill('SIGKILL');
238
+ child.stdin.destroy();
239
+ child.stdout.destroy();
240
+ child.stderr.destroy();
241
+ child.unref();
242
+ settleExit(codedError('gitFailed', 'Git cat-file batch did not exit after forced termination.'));
243
+ }, GIT_BATCH_CLOSE_TIMEOUT_MS);
244
+ }
245
+ operationTimeoutTimer = setTimeout(() => {
246
+ operationTimedOut = true;
247
+ requestCleanup();
248
+ }, options.operationTimeoutMs ?? GIT_BATCH_OPERATION_TIMEOUT_MS);
249
+ const stderrChunks = [];
250
+ let stderrBytes = 0;
251
+ onStderrData = (value) => {
252
+ const valueBuffer = Buffer.isBuffer(value) ? value : Buffer.from(value);
253
+ stderrBytes += valueBuffer.length;
254
+ if (stderrBytes <= MAX_GIT_BLOB_BYTES)
255
+ stderrChunks.push(valueBuffer);
256
+ requestCleanup();
257
+ };
258
+ child.stderr.on('data', onStderrData);
259
+ const readTask = (async () => {
260
+ const reader = createBatchReader(child.stdout);
261
+ const contents = new Map();
262
+ for (const expectedObjectId of uniqueObjectIds) {
263
+ const header = await reader.readLine();
264
+ if (header === null) {
265
+ throw codedError('gitFailed', 'Git cat-file batch stdout ended before all blobs were returned.');
266
+ }
267
+ if (header === `${expectedObjectId} missing`) {
268
+ throw codedError('gitFailed', `Git blob ${expectedObjectId} is missing.`);
269
+ }
270
+ const match = /^(\S+) (\S+) (\S+)$/u.exec(header);
271
+ if (!match || match[1] !== expectedObjectId) {
272
+ throw codedError('gitFailed', 'Git cat-file batch returned a malformed header.');
273
+ }
274
+ if (match[2] !== 'blob') {
275
+ throw codedError('gitFailed', `Git object ${expectedObjectId} is not a blob.`);
276
+ }
277
+ if (!/^(?:0|[1-9][0-9]*)$/u.test(match[3])) {
278
+ throw codedError('gitFailed', `Git blob ${expectedObjectId} has an invalid size.`);
279
+ }
280
+ const size = Number(match[3]);
281
+ if (!Number.isSafeInteger(size) || size > MAX_GIT_BLOB_BYTES) {
282
+ throw codedError('gitFailed', `Git blob ${expectedObjectId} exceeds the size limit.`);
283
+ }
284
+ const content = await reader.readExact(size);
285
+ const separator = await reader.readExact(1);
286
+ if (separator[0] !== 0x0a) {
287
+ throw codedError('gitFailed', `Git blob ${expectedObjectId} has an invalid separator.`);
288
+ }
289
+ contents.set(expectedObjectId, content);
290
+ }
291
+ if (await reader.readLine() !== null) {
292
+ throw codedError('gitFailed', 'Git cat-file batch returned unexpected output.');
293
+ }
294
+ return contents;
295
+ })();
296
+ const writeTask = pipeline(Readable.from(uniqueObjectIds.map((objectId) => `${objectId}\n`)), child.stdin);
297
+ for (const task of [readTask, writeTask]) {
298
+ task.catch(requestCleanup);
299
+ }
300
+ const [readResult, writeResult, exitResult] = await Promise.allSettled([
301
+ readTask,
302
+ writeTask,
303
+ exitTask,
304
+ ]);
305
+ if (operationTimedOut) {
306
+ throw codedError('gitFailed', 'Git cat-file batch timed out.');
307
+ }
308
+ if (exitResult.status === 'rejected'
309
+ && exitResult.reason instanceof PluginVersionCheckError) {
310
+ throw exitResult.reason;
311
+ }
312
+ if (readResult.status === 'rejected')
313
+ throw readResult.reason;
314
+ if (writeResult.status === 'rejected') {
315
+ throw codedError('gitFailed', `Git cat-file batch input failed: ${writeResult.reason.message}`);
316
+ }
317
+ if (exitResult.status === 'rejected') {
318
+ throw codedError('gitFailed', `Git cat-file batch failed: ${exitResult.reason.message}`);
319
+ }
320
+ const stderr = Buffer.concat(stderrChunks).toString('utf8').trim();
321
+ if (stderrBytes > MAX_GIT_BLOB_BYTES) {
322
+ throw codedError('gitFailed', 'Git cat-file batch stderr exceeded the size limit.');
323
+ }
324
+ if (exitResult.value.signal) {
325
+ throw codedError('gitFailed', `Git cat-file batch ended from signal ${exitResult.value.signal}${stderr ? `: ${stderr}` : '.'}`);
326
+ }
327
+ if (exitResult.value.code !== 0 || stderr) {
328
+ throw codedError('gitFailed', `Git cat-file batch failed${stderr ? `: ${stderr}` : ` with exit code ${exitResult.value.code}.`}`);
329
+ }
330
+ return readResult.value;
331
+ }
115
332
  async function materializeBaseAuthoringSourceSet(repoRoot, baseCommit, outputRoot, pluginRootPath) {
116
333
  const sourcePaths = [
117
334
  'plugins',
@@ -121,8 +338,12 @@ async function materializeBaseAuthoringSourceSet(repoRoot, baseCommit, outputRoo
121
338
  const output = await runGit(repoRoot, ['ls-tree', '-r', '-z', baseCommit, '--', ...sourcePaths], { buffer: true, label: 'Git authoring source tree' });
122
339
  const records = output.toString('utf8').split('\0').filter(Boolean).map(parseTreeRecord);
123
340
  for (const record of records) {
124
- if (record.type !== 'blob')
125
- continue;
341
+ if (record.type !== 'blob') {
342
+ throw codedError('gitFailed', `Git authoring source object ${record.objectId} is not a blob.`);
343
+ }
344
+ }
345
+ const contentsByObjectId = await readGitBlobsBatch(repoRoot, records.map((record) => record.objectId));
346
+ for (const record of records) {
126
347
  const normalizedPath = path.posix.normalize(record.filePath);
127
348
  if (normalizedPath !== record.filePath
128
349
  || normalizedPath === '..'
@@ -132,10 +353,10 @@ async function materializeBaseAuthoringSourceSet(repoRoot, baseCommit, outputRoo
132
353
  }
133
354
  const targetPath = path.join(outputRoot, ...normalizedPath.split('/'));
134
355
  await fs.mkdir(path.dirname(targetPath), { recursive: true });
135
- const content = await runGit(repoRoot, ['cat-file', 'blob', record.objectId], {
136
- buffer: true,
137
- label: `Git blob ${record.objectId}`,
138
- });
356
+ const content = contentsByObjectId.get(record.objectId);
357
+ if (!content) {
358
+ throw codedError('gitFailed', `Git blob ${record.objectId} was not returned.`);
359
+ }
139
360
  if (record.mode === '120000') {
140
361
  await fs.symlink(content.toString('utf8'), targetPath);
141
362
  }