@aviaratech/ai-delivery 0.3.18 → 0.3.20

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.
package/dist/setup.js CHANGED
@@ -13,6 +13,17 @@ import { ensurePrivateDirectoryDurably, writePrivateJsonFileAtomically } from '.
13
13
  import { withLock } from './utils/lockfile.js';
14
14
  import { withRuntimeSetupWriter } from './verification.js';
15
15
  const Digest = z.string().regex(/^sha256:[a-f0-9]{64}$/u);
16
+ const StageBounds = z.strictObject({
17
+ maxAggregateRssBytes: z.number().int().positive().safe(),
18
+ minFreeDiskBytes: z.number().int().positive().safe(),
19
+ maxNewOutputBytes: z.number().int().positive().safe(),
20
+ maxCapturedOutputBytes: z
21
+ .number()
22
+ .int()
23
+ .positive()
24
+ .safe()
25
+ .max(8 * 1024 ** 2),
26
+ });
16
27
  const IntentSchema = z.strictObject({
17
28
  archivePath: z.string().min(1),
18
29
  archiveSha256: Digest,
@@ -23,6 +34,7 @@ const IntentSchema = z.strictObject({
23
34
  reviewRouteDigest: Digest,
24
35
  runtimeDirectory: z.string().min(1),
25
36
  sourceCommit: z.string().regex(/^[a-f0-9]{40}$/u),
37
+ resourceBounds: StageBounds.optional(),
26
38
  });
27
39
  const StageSchema = z
28
40
  .strictObject({
@@ -89,7 +101,8 @@ function assertArchiveSnapshot(intent) {
89
101
  throw new DeliveryError('Runtime stage archive snapshot bytes changed.');
90
102
  return path;
91
103
  }
92
- async function controller(input, command) {
104
+ async function controller(input, command, checkResources, signal) {
105
+ await checkResources?.();
93
106
  if (typeof input.identity !== 'string' || !input.identity.trim())
94
107
  throw new DeliveryError('Runtime setup requires an explicit configured author identity.');
95
108
  const root = gitRoot(input.repoRoot);
@@ -103,8 +116,10 @@ async function controller(input, command) {
103
116
  identity: input.identity,
104
117
  repoRoot: root,
105
118
  role: 'author',
119
+ ...(signal === undefined ? {} : { signal }),
106
120
  ...(input.personalAuth === undefined ? {} : { personalAuth: input.personalAuth }),
107
121
  });
122
+ await checkResources?.();
108
123
  const policy = evaluateCommandIdentityPolicy({
109
124
  commandName: command,
110
125
  deliveryConfig: context.config,
@@ -115,7 +130,8 @@ async function controller(input, command) {
115
130
  throw new DeliveryError(policy.error);
116
131
  if (!context.configuration || context.configuration.configDigest !== input.expectedConfigDigest)
117
132
  throw new DeliveryError('Primary controller resolver config digest changed.');
118
- const reviewRoute = await preflightReviewRoute(context);
133
+ const reviewRoute = await preflightReviewRoute(context, undefined, undefined, 'publication', checkResources === undefined || signal === undefined ? undefined : { signal, checkResources });
134
+ await checkResources?.();
119
135
  // Publication preflight requires the actual configured author credential, not a development override.
120
136
  assertClean(root);
121
137
  if (coordinate(root).sha !== input.expectedSourceCommit)
@@ -199,27 +215,36 @@ function assertStageController(record, current, input) {
199
215
  export async function stageRuntime(input) {
200
216
  if (input.authority !== 'runtime:stage')
201
217
  throw new DeliveryError('Explicit runtime:stage authority is required.');
202
- const current = await controller(input, 'runtime:stage');
203
- assertArchive(input.archivePath, input.expectedArchiveSha256);
204
- const intent = IntentSchema.parse({
205
- archivePath: input.archivePath,
206
- archiveSha256: input.expectedArchiveSha256,
207
- configDigest: input.expectedConfigDigest,
208
- sourceCommit: input.expectedSourceCommit,
209
- packageVersion: input.packageVersion,
210
- repoRoot: current.root,
211
- repository: current.configuration.config.repository,
212
- reviewRouteDigest: digestValue(current.reviewRoute),
213
- runtimeDirectory: input.runtimeDirectory,
218
+ const bounds = StageBounds.parse({
219
+ maxAggregateRssBytes: 1024 ** 3,
220
+ minFreeDiskBytes: 256 * 1024 ** 2,
221
+ maxNewOutputBytes: 512 * 1024 ** 2,
222
+ maxCapturedOutputBytes: 1024 ** 2,
223
+ ...input.resourceBounds,
214
224
  });
215
- const stageId = digestValue(intent);
216
- return withRuntimeSetupWriter(current.root, async (runner) => {
225
+ canonicalPath(input.runtimeDirectory);
226
+ return withRuntimeSetupWriter(input.repoRoot, async (runner) => {
227
+ const current = await controller(input, 'runtime:stage', runner.checkResources, runner.signal);
228
+ assertArchive(input.archivePath, input.expectedArchiveSha256);
229
+ const intent = IntentSchema.parse({
230
+ archivePath: input.archivePath,
231
+ archiveSha256: input.expectedArchiveSha256,
232
+ configDigest: input.expectedConfigDigest,
233
+ sourceCommit: input.expectedSourceCommit,
234
+ packageVersion: input.packageVersion,
235
+ repoRoot: current.root,
236
+ repository: current.configuration.config.repository,
237
+ reviewRouteDigest: digestValue(current.reviewRoute),
238
+ runtimeDirectory: input.runtimeDirectory,
239
+ resourceBounds: bounds,
240
+ });
241
+ const stageId = digestValue(intent);
217
242
  if (existsSync(input.runtimeDirectory)) {
218
243
  const prior = readStage(input.runtimeDirectory);
219
244
  if (prior.stageId !== stageId)
220
245
  throw new DeliveryError('Runtime stage belongs to an incompatible setup intent.');
221
246
  if (prior.status === 'complete') {
222
- const reread = await controller(input, 'runtime:stage');
247
+ const reread = await controller(input, 'runtime:stage', runner.checkResources, runner.signal);
223
248
  assertStageController(prior, reread, input);
224
249
  assertArchive(intent.archivePath, intent.archiveSha256);
225
250
  durability(join(input.runtimeDirectory, 'reviewed-archive.tgz'));
@@ -227,6 +252,7 @@ export async function stageRuntime(input) {
227
252
  validateRuntimeAdmission(prior.admission, reread.configuration, prior.admission.cliPath);
228
253
  durability(join(input.runtimeDirectory, 'runtime-stage.json'));
229
254
  syncDirectory(dirname(input.runtimeDirectory));
255
+ await runner.checkResources();
230
256
  return stageResult(prior, reread.reviewRoute, true);
231
257
  }
232
258
  runner.assertQuiescent();
@@ -249,17 +275,23 @@ export async function stageRuntime(input) {
249
275
  owned = true;
250
276
  if (input.signal?.aborted)
251
277
  throw new DeliveryError('Runtime stage cancelled.');
252
- const bounds = input.resourceBounds ?? {
253
- maxAggregateRssBytes: 1024 ** 3,
254
- minFreeDiskBytes: 256 * 1024 ** 2,
255
- maxNewOutputBytes: 512 * 1024 ** 2,
256
- };
257
278
  // Hash and persist the same captured bytes. npm must never reopen the mutable transport pathname.
258
279
  const archiveBytes = assertArchive(input.archivePath, input.expectedArchiveSha256);
259
280
  if (!Number.isSafeInteger(bounds.maxNewOutputBytes) || archiveBytes.length >= bounds.maxNewOutputBytes)
260
281
  throw new DeliveryError('Reviewed archive snapshot exceeds the stage output limit.');
261
282
  writeCreateOnly(join(input.runtimeDirectory, 'reviewed-archive.tgz'), archiveBytes);
262
283
  const snapshot = assertArchiveSnapshot(intent);
284
+ const npmRoot = join(input.runtimeDirectory, '.npm');
285
+ const cache = join(npmRoot, 'cache');
286
+ const logs = join(npmRoot, 'logs');
287
+ const temporary = join(npmRoot, 'tmp');
288
+ for (const path of [cache, logs, temporary])
289
+ ensurePrivateDirectoryDurably(path);
290
+ const userconfig = join(npmRoot, 'user.npmrc');
291
+ const globalconfig = join(npmRoot, 'global.npmrc');
292
+ writeCreateOnly(userconfig, Buffer.alloc(0));
293
+ writeCreateOnly(globalconfig, Buffer.alloc(0));
294
+ await runner.checkResources();
263
295
  await runner.run([
264
296
  'npm',
265
297
  'install',
@@ -270,13 +302,21 @@ export async function stageRuntime(input) {
270
302
  '--no-audit',
271
303
  '--no-fund',
272
304
  '--package-lock=false',
305
+ '--cache',
306
+ cache,
307
+ '--logs-dir',
308
+ logs,
309
+ '--userconfig',
310
+ userconfig,
311
+ '--globalconfig',
312
+ globalconfig,
273
313
  snapshot,
274
314
  ], {
275
315
  ...bounds,
276
316
  maxNewOutputBytes: bounds.maxNewOutputBytes - archiveBytes.length,
277
317
  outputRoots: [input.runtimeDirectory],
278
- }, input.signal);
279
- const reread = await controller(input, 'runtime:stage');
318
+ }, input.signal, { ...process.env, TMPDIR: temporary, TMP: temporary, TEMP: temporary }, input.runtimeDirectory);
319
+ const reread = await controller(input, 'runtime:stage', runner.checkResources, runner.signal);
280
320
  assertStageController({ ...content, recordId: digestValue(content) }, reread, input);
281
321
  assertArchive(input.archivePath, input.expectedArchiveSha256);
282
322
  assertArchiveSnapshot(intent);
@@ -294,6 +334,8 @@ export async function stageRuntime(input) {
294
334
  if (input.signal?.aborted)
295
335
  throw new DeliveryError('Runtime stage cancelled.');
296
336
  runner.assertQuiescent();
337
+ validateRuntimeAdmission(admission, reread.configuration, admission.cliPath);
338
+ await runner.checkResources();
297
339
  const complete = writeStage(input.runtimeDirectory, { ...content, status: 'complete', admission });
298
340
  validateRuntimeAdmission(complete.admission, reread.configuration, complete.admission.cliPath);
299
341
  return stageResult(complete, reread.reviewRoute, false);
@@ -315,7 +357,7 @@ export async function stageRuntime(input) {
315
357
  if (retained.status === 'incomplete')
316
358
  rmSync(input.runtimeDirectory, { recursive: true });
317
359
  else {
318
- const final = await controller(input, 'runtime:stage');
360
+ const final = await controller(input, 'runtime:stage', runner.checkResources, runner.signal);
319
361
  assertStageController(retained, final, input);
320
362
  assertArchive(intent.archivePath, intent.archiveSha256);
321
363
  durability(join(input.runtimeDirectory, 'reviewed-archive.tgz'));
@@ -328,6 +370,10 @@ export async function stageRuntime(input) {
328
370
  }
329
371
  throw error;
330
372
  }
373
+ }, {
374
+ bounds: { ...bounds, outputRoots: [input.runtimeDirectory] },
375
+ maxCapturedOutputBytes: bounds.maxCapturedOutputBytes,
376
+ ...(input.signal === undefined ? {} : { signal: input.signal }),
331
377
  });
332
378
  }
333
379
  export class RuntimeAdmissionCommitUnknownError extends DeliveryError {
package/dist/setup.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"setup.js","sourceRoot":"","sources":["../src/setup.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"setup.js","sourceRoot":"","sources":["../src/setup.ts"],"names":[],"mappings":"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"}