@forgeax/engine-import 0.1.23 → 0.1.24

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 (29) hide show
  1. package/README.md +5 -5
  2. package/dist/__tests__/scriptable-pack-build.unit.test.d.ts +2 -0
  3. package/dist/__tests__/scriptable-pack-build.unit.test.d.ts.map +1 -0
  4. package/dist/build-production.d.ts.map +1 -1
  5. package/dist/index.d.ts +4 -4
  6. package/dist/index.d.ts.map +1 -1
  7. package/dist/index.mjs +230 -56
  8. package/dist/index.mjs.map +1 -1
  9. package/dist/{parameterized-scriptable-pack.d.ts → scriptable-pack-build.d.ts} +15 -15
  10. package/dist/scriptable-pack-build.d.ts.map +1 -0
  11. package/dist/scriptable-pack-host.d.ts +13 -13
  12. package/dist/scriptable-pack-host.d.ts.map +1 -1
  13. package/dist/scriptable-pack.d.ts +2 -1
  14. package/dist/scriptable-pack.d.ts.map +1 -1
  15. package/dist/source-package-publication.d.ts +7 -0
  16. package/dist/source-package-publication.d.ts.map +1 -1
  17. package/package.json +8 -8
  18. package/src/__tests__/{parameterized-scriptable-pack.unit.test.ts → scriptable-pack-build.unit.test.ts} +11 -14
  19. package/src/__tests__/scriptable-pack-host.unit.test.ts +5 -5
  20. package/src/__tests__/source-package-publication.integration.test.ts +141 -0
  21. package/src/build-production.ts +44 -50
  22. package/src/index.ts +17 -16
  23. package/src/{parameterized-scriptable-pack.ts → scriptable-pack-build.ts} +24 -24
  24. package/src/scriptable-pack-host.ts +38 -40
  25. package/src/scriptable-pack.ts +2 -1
  26. package/src/source-package-publication.ts +242 -10
  27. package/dist/__tests__/parameterized-scriptable-pack.unit.test.d.ts +0 -2
  28. package/dist/__tests__/parameterized-scriptable-pack.unit.test.d.ts.map +0 -1
  29. package/dist/parameterized-scriptable-pack.d.ts.map +0 -1
@@ -1,10 +1,10 @@
1
- import { type AnyParameterizedPackDefinition, type PackAuthoringError, PackageId, type PackParameterValue } from '@forgeax/engine-pack/source';
1
+ import { type AnyScriptablePackDefinition, type PackAuthoringError, PackageId, type PackParameterValue } from '@forgeax/engine-pack/source';
2
2
  import type { AssetPublicationEnvelope, Result } from '@forgeax/engine-types';
3
3
  import { AssetError, ImportError } from '@forgeax/engine-types';
4
4
  import { type TerminalImportProduct } from './import-product.js';
5
- import type { AssetOutputProducerRegistry, ScriptablePackAssetSnapshotSource, ScriptablePackBuildProduct, ScriptablePackDomainError, ScriptablePackSourceClosureEntry, ScriptablePackStagedOutput } from './scriptable-pack.js';
6
- export interface ParameterizedScriptablePackBuildOptions {
7
- readonly definition: AnyParameterizedPackDefinition;
5
+ import type { AssetOutputProducerRegistry, PackBuildProduct, ScriptablePackAssetSnapshotSource, ScriptablePackDomainError, ScriptablePackSourceClosureEntry, ScriptablePackStagedOutput } from './scriptable-pack.js';
6
+ export interface ScriptablePackBuildOptions {
7
+ readonly definition: AnyScriptablePackDefinition;
8
8
  readonly sourcePath: string;
9
9
  /** Instance identity. Omitted for a root source and defaults to definition.packageId. */
10
10
  readonly subjectPackageId?: PackageId;
@@ -22,10 +22,10 @@ export interface ParameterizedScriptablePackBuildOptions {
22
22
  readonly deferReferenceValidation?: boolean;
23
23
  readonly publication?: AssetPublicationEnvelope;
24
24
  }
25
- export interface ParameterizedScriptablePackBuildProduct extends ScriptablePackBuildProduct {
25
+ export interface ScriptablePackBuildProduct extends PackBuildProduct {
26
26
  readonly publication?: AssetPublicationEnvelope;
27
27
  }
28
- export type ParameterizedScriptablePackBuildResult = Result<ParameterizedScriptablePackBuildProduct, PackAuthoringError | ScriptablePackDomainError | AssetError | ImportError | {
28
+ export type ScriptablePackBuildResult = Result<ScriptablePackBuildProduct, PackAuthoringError | ScriptablePackDomainError | AssetError | ImportError | {
29
29
  readonly code: string;
30
30
  readonly expected: string;
31
31
  readonly hint: string;
@@ -35,34 +35,34 @@ export type ParameterizedScriptablePackBuildResult = Result<ParameterizedScripta
35
35
  * Execute a v2 Pack source and project its dynamic output map through the
36
36
  * existing importer producers. No output GUID or output manifest is read.
37
37
  */
38
- export declare function buildParameterizedScriptablePack(options: ParameterizedScriptablePackBuildOptions): Promise<ParameterizedScriptablePackBuildResult>;
39
- export interface ParameterizedScriptablePackWorkItem {
40
- readonly definition: AnyParameterizedPackDefinition;
38
+ export declare function buildScriptablePack(options: ScriptablePackBuildOptions): Promise<ScriptablePackBuildResult>;
39
+ export interface ScriptablePackBuildWorkItem {
40
+ readonly definition: AnyScriptablePackDefinition;
41
41
  readonly sourcePath: string;
42
42
  readonly subjectPackageId?: PackageId;
43
43
  readonly values?: Readonly<Record<string, unknown>>;
44
44
  readonly inheritedValues?: Readonly<Record<string, PackParameterValue>>;
45
45
  readonly sourceClosure?: readonly ScriptablePackSourceClosureEntry[];
46
46
  }
47
- export interface ParameterizedScriptablePackWorklistOptions {
48
- readonly subjects: readonly ParameterizedScriptablePackWorkItem[];
47
+ export interface ScriptablePackBuildWorklistOptions {
48
+ readonly subjects: readonly ScriptablePackBuildWorkItem[];
49
49
  readonly outputs: AssetOutputProducerRegistry;
50
50
  readonly assetSource?: ScriptablePackAssetSnapshotSource;
51
51
  readonly availableGuids?: ReadonlySet<string>;
52
52
  readonly incomingRefs?: ReadonlyMap<string, readonly string[]>;
53
53
  readonly maxPasses?: number;
54
54
  }
55
- export interface ParameterizedScriptablePackWorklistProduct {
55
+ export interface ScriptablePackBuildWorklistProduct {
56
56
  readonly products: readonly TerminalImportProduct<unknown>[];
57
- readonly buildProducts: readonly ParameterizedScriptablePackBuildProduct[];
57
+ readonly buildProducts: readonly ScriptablePackBuildProduct[];
58
58
  readonly stagedOutputs: readonly ScriptablePackStagedOutput[];
59
59
  readonly iterations: number;
60
60
  }
61
61
  /** Build subjects in stable passes; content reads may wait for a later subject. */
62
- export declare function buildParameterizedScriptablePackWorklist(options: ParameterizedScriptablePackWorklistOptions): Promise<Result<ParameterizedScriptablePackWorklistProduct, PackAuthoringError | ScriptablePackDomainError | AssetError | ImportError | {
62
+ export declare function buildScriptablePackWorklist(options: ScriptablePackBuildWorklistOptions): Promise<Result<ScriptablePackBuildWorklistProduct, PackAuthoringError | ScriptablePackDomainError | AssetError | ImportError | {
63
63
  readonly code: string;
64
64
  readonly expected: string;
65
65
  readonly hint: string;
66
66
  readonly detail?: unknown;
67
67
  }>>;
68
- //# sourceMappingURL=parameterized-scriptable-pack.d.ts.map
68
+ //# sourceMappingURL=scriptable-pack-build.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scriptable-pack-build.d.ts","sourceRoot":"","sources":["../src/scriptable-pack-build.ts"],"names":[],"mappings":"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"}
@@ -2,33 +2,33 @@ import { finalizePackageTransportSource, type PackageFinalizePolicy } from '@for
2
2
  import { type PackageId as PackageIdType } from '@forgeax/engine-pack/guid';
3
3
  import { type NativeCooker } from '@forgeax/engine-pack/native-cooker';
4
4
  import type { LegacyPackInventoryDocument, ScanSourceDeclaration } from '@forgeax/engine-pack/scanner';
5
- import { type AnyParameterizedPackDefinition, type DirectPackAssetProjection, type ScriptablePackSourceClosureEntry } from '@forgeax/engine-pack/source';
5
+ import { type AnyScriptablePackDefinition, type DirectPackAssetProjection, type ScriptablePackSourceClosureEntry } from '@forgeax/engine-pack/source';
6
6
  import type { AssetGuid as AssetGuidType, AssetPublicationEnvelope, AssetPublicationOutput, ResourceRevision, Result } from '@forgeax/engine-types';
7
7
  import type { DdcPack, ImportRunnerFs } from './import-runner.js';
8
8
  import type { ImporterRegistry } from './importer-registry.js';
9
- import { type ParameterizedScriptablePackBuildProduct } from './parameterized-scriptable-pack.js';
10
9
  import type { ScriptablePackAssetSnapshotSource, ScriptablePackStagedOutput } from './scriptable-pack.js';
10
+ import { type ScriptablePackBuildProduct } from './scriptable-pack-build.js';
11
11
  type FinalizedPackageTransport = Awaited<ReturnType<typeof finalizePackageTransportSource>>;
12
- export interface ParameterizedScriptablePackInput {
12
+ export interface ScriptablePackInput {
13
13
  readonly sourcePath: string;
14
14
  readonly displaySourcePath: string;
15
- readonly definition: AnyParameterizedPackDefinition;
15
+ readonly definition: AnyScriptablePackDefinition;
16
16
  readonly sourceClosure: readonly ScriptablePackSourceClosureEntry[];
17
17
  readonly publicationGeneration: number;
18
- readonly policy: PackageFinalizePolicy | ((product: ParameterizedScriptablePackBuildProduct) => PackageFinalizePolicy);
18
+ readonly policy: PackageFinalizePolicy | ((product: ScriptablePackBuildProduct) => PackageFinalizePolicy);
19
19
  readonly subjectPackageId?: PackageIdType;
20
20
  readonly values?: Readonly<Record<string, unknown>>;
21
21
  readonly inheritedValues?: Readonly<Record<string, import('@forgeax/engine-pack/source').PackParameterValue>>;
22
22
  }
23
- export interface PreparedParameterizedScriptablePack {
24
- readonly product: ParameterizedScriptablePackBuildProduct;
23
+ export interface PreparedScriptablePack {
24
+ readonly product: ScriptablePackBuildProduct;
25
25
  readonly finalized: FinalizedPackageTransport;
26
26
  readonly facts: ScriptablePackPublicationFacts;
27
27
  readonly revision: ResourceRevision;
28
28
  readonly publication: AssetPublicationEnvelope;
29
29
  }
30
- export interface ParameterizedScriptablePackProductionOptions {
31
- readonly sources: readonly ParameterizedScriptablePackInput[];
30
+ export interface ScriptablePackProductionOptions {
31
+ readonly sources: readonly ScriptablePackInput[];
32
32
  readonly declaredExternalOutputs?: readonly ScriptablePackStagedOutput[];
33
33
  readonly assetSource?: ScriptablePackAssetSnapshotSource;
34
34
  readonly availableGuids?: ReadonlySet<string>;
@@ -73,7 +73,7 @@ export interface DirectPackTransport {
73
73
  readonly packageId: string;
74
74
  readonly assets: readonly DirectPackAssetProjection[];
75
75
  };
76
- readonly product: ParameterizedScriptablePackBuildProduct;
76
+ readonly product: ScriptablePackBuildProduct;
77
77
  readonly finalized: FinalizedPackageTransport;
78
78
  readonly facts: ScriptablePackPublicationFacts;
79
79
  readonly revision: ResourceRevision;
@@ -92,12 +92,12 @@ export declare function prepareDirectPackTransport(input: DirectPackTransportInp
92
92
  /** Normalize one explicit Pack v2 transport and invoke its registered cookers once. */
93
93
  export declare function prepareLegacyPackTransport(authoredPack: LegacyPackInventoryDocument, cookers: readonly NativeCooker[] | undefined, policyFor: (guid: string) => PackageFinalizePolicy, sourcePath?: string): Promise<LegacyPackTransport>;
94
94
  /** Materialize a dynamic Pack product through the same dev transport seam. */
95
- export declare function materializePreparedParameterizedScriptablePack(prepared: PreparedParameterizedScriptablePack, paths: ScriptablePackTransportPaths, sink: ScriptablePackTransportSink): Promise<ReadonlyMap<string, string>>;
95
+ export declare function materializePreparedScriptablePack(prepared: PreparedScriptablePack, paths: ScriptablePackTransportPaths, sink: ScriptablePackTransportSink): Promise<ReadonlyMap<string, string>>;
96
96
  /**
97
- * Build parameterized sources in one generation and hand their terminal
97
+ * Build ScriptablePack sources in one generation and hand their terminal
98
98
  * products to the ordinary Pack v2 finalizer. The worklist is deliberately
99
99
  * below publication: it only decides which current-generation products exist.
100
100
  */
101
- export declare function produceParameterizedScriptablePackProducts(options: ParameterizedScriptablePackProductionOptions): Promise<Result<ReadonlyMap<string, PreparedParameterizedScriptablePack>, unknown>>;
101
+ export declare function produceScriptablePackProducts(options: ScriptablePackProductionOptions): Promise<Result<ReadonlyMap<string, PreparedScriptablePack>, unknown>>;
102
102
  export {};
103
103
  //# sourceMappingURL=scriptable-pack-host.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"scriptable-pack-host.d.ts","sourceRoot":"","sources":["../src/scriptable-pack-host.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scriptable-pack-host.d.ts","sourceRoot":"","sources":["../src/scriptable-pack-host.ts"],"names":[],"mappings":"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"}
@@ -108,7 +108,8 @@ export interface ScriptablePackExternalEvidence {
108
108
  readonly generation?: number;
109
109
  readonly digest?: string;
110
110
  }
111
- export interface ScriptablePackBuildProduct {
111
+ /** Shared terminal product envelope for every Pack source form. */
112
+ export interface PackBuildProduct {
112
113
  readonly product: TerminalImportProduct<unknown>;
113
114
  readonly stagedOutputs: readonly ScriptablePackStagedOutput[];
114
115
  readonly externalEvidence: readonly ScriptablePackExternalEvidence[];
@@ -1 +1 @@
1
- {"version":3,"file":"scriptable-pack.d.ts","sourceRoot":"","sources":["../src/scriptable-pack.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scriptable-pack.d.ts","sourceRoot":"","sources":["../src/scriptable-pack.ts"],"names":[],"mappings":"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"}
@@ -17,8 +17,15 @@ export interface ImportPublicationInput {
17
17
  readonly transport?: {
18
18
  readonly path: string;
19
19
  readonly body: string;
20
+ /** Complete package-relative artifact closure for the published Pack. */
21
+ readonly artifacts?: readonly ImportPublicationArtifact[];
20
22
  };
21
23
  }
24
+ export interface ImportPublicationArtifact {
25
+ readonly path: string;
26
+ readonly mediaType: string;
27
+ readonly bytes: Uint8Array;
28
+ }
22
29
  export interface ImportPublicationError {
23
30
  readonly code: SourcePackageError['code'];
24
31
  readonly expected: string;
@@ -1 +1 @@
1
- {"version":3,"file":"source-package-publication.d.ts","sourceRoot":"","sources":["../src/source-package-publication.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"source-package-publication.d.ts","sourceRoot":"","sources":["../src/source-package-publication.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@forgeax/engine-import",
3
- "version": "0.1.23",
3
+ "version": "0.1.24",
4
4
  "private": false,
5
5
  "type": "module",
6
6
  "license": "Apache-2.0",
@@ -27,13 +27,13 @@
27
27
  "LICENSE"
28
28
  ],
29
29
  "dependencies": {
30
- "@forgeax/engine-ddc": "0.1.23",
31
- "@forgeax/engine-ecs": "0.1.23",
32
- "@forgeax/engine-geometry": "0.1.23",
33
- "@forgeax/engine-pack": "0.1.23",
34
- "@forgeax/engine-scene": "0.1.23",
35
- "@forgeax/engine-shader": "0.1.23",
36
- "@forgeax/engine-types": "0.1.23",
30
+ "@forgeax/engine-ddc": "0.1.24",
31
+ "@forgeax/engine-ecs": "0.1.24",
32
+ "@forgeax/engine-geometry": "0.1.24",
33
+ "@forgeax/engine-pack": "0.1.24",
34
+ "@forgeax/engine-scene": "0.1.24",
35
+ "@forgeax/engine-shader": "0.1.24",
36
+ "@forgeax/engine-types": "0.1.24",
37
37
  "@noble/hashes": "^2.2.0"
38
38
  },
39
39
  "devDependencies": {
@@ -1,13 +1,10 @@
1
1
  import { AssetGuid, definePack, definePackageId, PackageId } from '@forgeax/engine-pack/source';
2
2
  import { err, ok } from '@forgeax/engine-types';
3
3
  import { describe, expect, it } from 'vitest';
4
- import {
5
- buildParameterizedScriptablePack,
6
- buildParameterizedScriptablePackWorklist,
7
- } from '../parameterized-scriptable-pack.js';
8
4
  import type { ScriptablePackAssetSnapshotSource } from '../scriptable-pack.js';
9
5
  import { AssetOutputProducerRegistry } from '../scriptable-pack.js';
10
- import { produceParameterizedScriptablePackProducts } from '../scriptable-pack-host.js';
6
+ import { buildScriptablePack, buildScriptablePackWorklist } from '../scriptable-pack-build.js';
7
+ import { produceScriptablePackProducts } from '../scriptable-pack-host.js';
11
8
 
12
9
  function id(value: string) {
13
10
  const result = PackageId.parse(value);
@@ -29,7 +26,7 @@ function producers() {
29
26
  return registry;
30
27
  }
31
28
 
32
- describe('parameterized ScriptablePack import bridge', () => {
29
+ describe('ScriptablePack import bridge with optional parameters', () => {
33
30
  it('uses the subject packageId and dynamic sourceKey output map', async () => {
34
31
  const packageId = definePackageId('01900000-0000-7000-8000-000000000040');
35
32
  const definition = definePack({
@@ -43,7 +40,7 @@ describe('parameterized ScriptablePack import bridge', () => {
43
40
  ),
44
41
  ),
45
42
  });
46
- const result = await buildParameterizedScriptablePack({
43
+ const result = await buildScriptablePack({
47
44
  definition,
48
45
  sourcePath: 'assets/param.pack.ts',
49
46
  values: { count: 2 },
@@ -79,7 +76,7 @@ describe('parameterized ScriptablePack import bridge', () => {
79
76
  return ok({ 'scene/second': scene() });
80
77
  },
81
78
  });
82
- const result = await buildParameterizedScriptablePackWorklist({
79
+ const result = await buildScriptablePackWorklist({
83
80
  subjects: [
84
81
  // Keep the dependency consumer first even after the worklist applies
85
82
  // its stable source-path ordering, so this proves a real retry pass.
@@ -103,7 +100,7 @@ describe('parameterized ScriptablePack import bridge', () => {
103
100
  return ok({ 'scene/main': scene() });
104
101
  },
105
102
  });
106
- const result = await buildParameterizedScriptablePackWorklist({
103
+ const result = await buildScriptablePackWorklist({
107
104
  subjects: [{ definition, sourcePath: 'assets/missing.pack.ts' }],
108
105
  outputs: producers(),
109
106
  });
@@ -143,7 +140,7 @@ describe('parameterized ScriptablePack import bridge', () => {
143
140
  return ok({ 'scene/main': scene() });
144
141
  },
145
142
  });
146
- const result = await produceParameterizedScriptablePackProducts({
143
+ const result = await produceScriptablePackProducts({
147
144
  sources: [
148
145
  {
149
146
  sourcePath: 'assets/consumer.pack.ts',
@@ -195,7 +192,7 @@ describe('parameterized ScriptablePack import bridge', () => {
195
192
  return ok({ 'scene/main': scene() });
196
193
  },
197
194
  });
198
- const result = await produceParameterizedScriptablePackProducts({
195
+ const result = await produceScriptablePackProducts({
199
196
  sources: [
200
197
  {
201
198
  sourcePath: 'assets/failing-consumer.pack.ts',
@@ -224,7 +221,7 @@ describe('parameterized ScriptablePack import bridge', () => {
224
221
  throw new Error('producer exploded');
225
222
  },
226
223
  });
227
- const result = await buildParameterizedScriptablePack({
224
+ const result = await buildScriptablePack({
228
225
  definition: definePack({
229
226
  schemaVersion: '2.0.0',
230
227
  packageId: id('01900000-0000-7000-8000-000000000065'),
@@ -243,7 +240,7 @@ describe('parameterized ScriptablePack import bridge', () => {
243
240
  version: 'test',
244
241
  produce: () => ({ ok: true, value: null }) as never,
245
242
  });
246
- const result = await buildParameterizedScriptablePack({
243
+ const result = await buildScriptablePack({
247
244
  definition: definePack({
248
245
  schemaVersion: '2.0.0',
249
246
  packageId: id('01900000-0000-7000-8000-000000000066'),
@@ -256,7 +253,7 @@ describe('parameterized ScriptablePack import bridge', () => {
256
253
  });
257
254
 
258
255
  it('converts a malformed Pack build result into a structured import failure', async () => {
259
- const result = await buildParameterizedScriptablePack({
256
+ const result = await buildScriptablePack({
260
257
  definition: definePack({
261
258
  schemaVersion: '2.0.0',
262
259
  packageId: id('01900000-0000-7000-8000-000000000067'),
@@ -2,10 +2,10 @@ import { resolve } from 'node:path';
2
2
  import { AssetGuid, PackageId } from '@forgeax/engine-pack/guid';
3
3
  import type { NativeCooker } from '@forgeax/engine-pack/native-cooker';
4
4
  import type {
5
- ParameterizedPackInventoryDocument,
5
+ PackSourceInventoryDocument,
6
6
  ScanSourceDeclaration,
7
7
  } from '@forgeax/engine-pack/scanner';
8
- import { parseParameterizedPackJson, projectDirectPackJson } from '@forgeax/engine-pack/source';
8
+ import { parsePackSourceJson, projectDirectPackJson } from '@forgeax/engine-pack/source';
9
9
  import type {
10
10
  Asset,
11
11
  AssetGuid as AssetGuidType,
@@ -97,7 +97,7 @@ describe('ScriptablePack external Meta staging', () => {
97
97
  if (!packageId.ok) throw packageId.error;
98
98
  const outputGuid = AssetGuid.format(AssetGuid.derive(packageId.value, 'vfx/main'));
99
99
  const materialGuid = '019ffa97-0000-7000-8000-000000000099';
100
- const value: ParameterizedPackInventoryDocument = {
100
+ const value: PackSourceInventoryDocument = {
101
101
  schemaVersion: '3.0.0',
102
102
  packageId: PackageId.format(packageId.value),
103
103
  assets: {
@@ -177,7 +177,7 @@ describe('ScriptablePack external Meta staging', () => {
177
177
  const packageId = PackageId.parse('019ffa97-0000-0000-8000-000000000010');
178
178
  if (!packageId.ok) throw packageId.error;
179
179
  const outputGuid = AssetGuid.format(AssetGuid.derive(packageId.value, 'ui/main'));
180
- const value: ParameterizedPackInventoryDocument = {
180
+ const value: PackSourceInventoryDocument = {
181
181
  schemaVersion: '3.0.0',
182
182
  packageId: PackageId.format(packageId.value),
183
183
  assets: {
@@ -231,7 +231,7 @@ describe('ScriptablePack external Meta staging', () => {
231
231
  },
232
232
  },
233
233
  };
234
- const parsed = parseParameterizedPackJson(value);
234
+ const parsed = parsePackSourceJson(value);
235
235
  expect(parsed.ok).toBe(true);
236
236
  if (!parsed.ok || parsed.value.format !== 'direct') return;
237
237
  const projected = projectDirectPackJson(parsed.value);
@@ -1,6 +1,8 @@
1
+ import { createHash } from 'node:crypto';
1
2
  import { mkdtemp, readdir, readFile, rm } from 'node:fs/promises';
2
3
  import { tmpdir } from 'node:os';
3
4
  import { join } from 'node:path';
5
+ import { DdcEntryStore } from '@forgeax/engine-ddc';
4
6
  import { afterEach, describe, expect, it } from 'vitest';
5
7
  import {
6
8
  commitImportPublication,
@@ -11,6 +13,40 @@ import {
11
13
 
12
14
  const GUID = '019e3969-1d48-7c3b-ac24-6d68f457065f';
13
15
  const KEY = 'a'.repeat(64);
16
+ const ARTIFACT_PATH = `${GUID}/body.bin`;
17
+ const ARTIFACT_BYTES = new Uint8Array([9, 8, 7]);
18
+ const ARTIFACT_DIGEST = `sha256:${createHash('sha256').update(ARTIFACT_BYTES).digest('hex')}`;
19
+
20
+ const validArtifact = {
21
+ path: ARTIFACT_PATH,
22
+ mediaType: 'application/octet-stream',
23
+ bytes: ARTIFACT_BYTES,
24
+ };
25
+
26
+ const validDescriptor = {
27
+ path: ARTIFACT_PATH,
28
+ mediaType: validArtifact.mediaType,
29
+ byteLength: ARTIFACT_BYTES.byteLength,
30
+ integrity: { algorithm: 'sha256' as const, digest: ARTIFACT_DIGEST },
31
+ };
32
+
33
+ function closurePack(
34
+ artifacts: Readonly<Record<string, unknown>> = { body: validDescriptor },
35
+ ): Record<string, unknown> {
36
+ return {
37
+ schemaVersion: '2.0.0',
38
+ kind: 'internal-text-package',
39
+ assets: [
40
+ {
41
+ guid: GUID,
42
+ kind: 'fixture',
43
+ payload: { value: 'same' },
44
+ refs: [],
45
+ artifacts,
46
+ },
47
+ ],
48
+ };
49
+ }
14
50
 
15
51
  function input(root: string, desiredKey = KEY): ImportPublicationInput {
16
52
  return {
@@ -97,4 +133,109 @@ describe('source package publication concurrency', () => {
97
133
  false,
98
134
  );
99
135
  });
136
+
137
+ it('publishes the complete transport artifact closure into the DDC entry', async () => {
138
+ const root = await mkdtemp(join(tmpdir(), 'forgeax-source-publication-'));
139
+ roots.push(root);
140
+ const pack = closurePack();
141
+ const publicationInput = {
142
+ ...input(root),
143
+ pack,
144
+ transport: {
145
+ path: join(root, 'runtime', `${GUID}.pack.json`),
146
+ body: JSON.stringify(pack),
147
+ artifacts: [validArtifact],
148
+ },
149
+ };
150
+
151
+ const staged = await stageImportPublication(publicationInput);
152
+ expect(staged.ok).toBe(true);
153
+ if (!staged.ok) return;
154
+ await expect(commitImportPublication(staged.candidate)).resolves.toMatchObject({ ok: true });
155
+
156
+ const entry = await new DdcEntryStore(root).read(KEY);
157
+ expect(entry?.artifacts[ARTIFACT_PATH]).toMatchObject({
158
+ mediaType: validArtifact.mediaType,
159
+ bytes: validArtifact.bytes,
160
+ });
161
+ });
162
+
163
+ it.each([
164
+ {
165
+ label: 'missing body',
166
+ pack: closurePack(),
167
+ artifacts: [],
168
+ },
169
+ {
170
+ label: 'media type mismatch',
171
+ pack: closurePack(),
172
+ artifacts: [{ ...validArtifact, mediaType: 'application/x-wrong' }],
173
+ },
174
+ {
175
+ label: 'byte length mismatch',
176
+ pack: closurePack(),
177
+ artifacts: [{ ...validArtifact, bytes: new Uint8Array([9, 8]) }],
178
+ },
179
+ {
180
+ label: 'sha256 mismatch',
181
+ pack: closurePack({
182
+ body: {
183
+ ...validDescriptor,
184
+ integrity: { algorithm: 'sha256' as const, digest: 'sha256:bad' },
185
+ },
186
+ }),
187
+ artifacts: [validArtifact],
188
+ },
189
+ {
190
+ label: 'duplicate transport path',
191
+ pack: closurePack(),
192
+ artifacts: [validArtifact, validArtifact],
193
+ },
194
+ {
195
+ label: 'duplicate descriptor path',
196
+ pack: closurePack({ body: validDescriptor, alias: { ...validDescriptor } }),
197
+ artifacts: [validArtifact],
198
+ },
199
+ {
200
+ label: 'unexpected transport body',
201
+ pack: closurePack(),
202
+ artifacts: [
203
+ validArtifact,
204
+ {
205
+ path: `${GUID}/extra.bin`,
206
+ mediaType: 'application/octet-stream',
207
+ bytes: new Uint8Array([1]),
208
+ },
209
+ ],
210
+ },
211
+ {
212
+ label: 'transport body mismatch',
213
+ pack: closurePack(),
214
+ body: JSON.stringify({ schemaVersion: '2.0.0', kind: 'internal-text-package', assets: [] }),
215
+ artifacts: [validArtifact],
216
+ },
217
+ ] as const)('rejects $label before advancing the DDC head', async ({ pack, artifacts, body }) => {
218
+ const root = await mkdtemp(join(tmpdir(), 'forgeax-source-publication-'));
219
+ roots.push(root);
220
+ const publicationInput: ImportPublicationInput = {
221
+ ...input(root),
222
+ pack,
223
+ transport: {
224
+ path: join(root, 'runtime', `${GUID}.pack.json`),
225
+ body: body ?? JSON.stringify(pack),
226
+ artifacts,
227
+ },
228
+ };
229
+
230
+ const staged = await stageImportPublication(publicationInput);
231
+
232
+ expect(staged).toMatchObject({
233
+ ok: false,
234
+ error: {
235
+ code: 'source-package-publication-invalid',
236
+ },
237
+ head: { state: 'missing' },
238
+ });
239
+ expect(await new DdcEntryStore(root).listKeys()).toEqual([]);
240
+ });
100
241
  });