@forgeax/engine-pack 0.1.28 → 0.1.30

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 (63) hide show
  1. package/README.md +33 -5
  2. package/dist/build.mjs +99 -60
  3. package/dist/build.mjs.map +1 -1
  4. package/dist/catalog-projection.d.ts +3 -3
  5. package/dist/cli-asset.mjs +22 -13
  6. package/dist/cli-asset.mjs.map +1 -1
  7. package/dist/evidence/material-cook.d.ts +7 -1
  8. package/dist/evidence/material-cook.d.ts.map +1 -1
  9. package/dist/index.mjs +61 -5
  10. package/dist/index.mjs.map +1 -1
  11. package/dist/inventory/declaration.d.ts +1 -1
  12. package/dist/inventory/declaration.d.ts.map +1 -1
  13. package/dist/inventory/sync.d.ts.map +1 -1
  14. package/dist/material-cook.mjs +61 -5
  15. package/dist/material-cook.mjs.map +1 -1
  16. package/dist/native-cooker-registry.d.ts +1 -0
  17. package/dist/native-cooker-registry.d.ts.map +1 -1
  18. package/dist/native-cooker.mjs.map +1 -1
  19. package/dist/pack-authoring-node.mjs +22 -13
  20. package/dist/pack-authoring-node.mjs.map +1 -1
  21. package/dist/pack-authoring.d.ts +8 -2
  22. package/dist/pack-authoring.d.ts.map +1 -1
  23. package/dist/pack-authoring.mjs.map +1 -1
  24. package/dist/runtime-publication.d.ts +2 -0
  25. package/dist/runtime-publication.d.ts.map +1 -1
  26. package/dist/runtime.mjs.map +1 -1
  27. package/dist/scanner.mjs +22 -13
  28. package/dist/scanner.mjs.map +1 -1
  29. package/dist/schema-compiled.d.ts.map +1 -1
  30. package/dist/schema.mjs +40 -62
  31. package/dist/schema.mjs.map +1 -1
  32. package/dist/scriptable-pack-node.d.ts.map +1 -1
  33. package/dist/scriptable-pack-node.mjs +12 -4
  34. package/dist/scriptable-pack-node.mjs.map +1 -1
  35. package/dist/scriptable-pack-worker.mjs +12 -5
  36. package/dist/scriptable-pack-worker.mjs.map +1 -1
  37. package/dist/scriptable-pack.d.ts +2 -1
  38. package/dist/scriptable-pack.d.ts.map +1 -1
  39. package/dist/scriptable-pack.mjs.map +1 -1
  40. package/package.json +2 -2
  41. package/src/__tests__/inventory-schema.test.ts +10 -10
  42. package/src/__tests__/material-cook-schema.unit.test.ts +92 -1
  43. package/src/__tests__/pack-authoring.unit.test.ts +2 -4
  44. package/src/__tests__/pack.unit.test.ts +86 -124
  45. package/src/__tests__/runtime-publication.unit.test.ts +36 -0
  46. package/src/__tests__/scanner-instance-cycle.test.ts +92 -0
  47. package/src/__tests__/scanner-inventory.contract.test.ts +2 -2
  48. package/src/__tests__/scriptable-pack-cli.integration.test.ts +35 -1
  49. package/src/__tests__/scriptable-pack-diagnostic.integration.test.ts +45 -0
  50. package/src/evidence/material-cook.ts +79 -5
  51. package/src/inventory/binding.ts +3 -3
  52. package/src/inventory/declaration.ts +10 -48
  53. package/src/inventory/sync.ts +3 -2
  54. package/src/native-cooker-registry.ts +1 -0
  55. package/src/pack-authoring.ts +11 -2
  56. package/src/runtime-publication.ts +7 -3
  57. package/src/scanner.ts +28 -28
  58. package/src/schema/material-cook.schema.json +107 -0
  59. package/src/schema-compiled.ts +40 -79
  60. package/src/scriptable-pack-node.ts +16 -4
  61. package/src/scriptable-pack-worker.ts +23 -5
  62. package/src/scriptable-pack.ts +2 -1
  63. package/src/__tests__/scanner-mount-cycle.test.ts +0 -232
@@ -1 +1 @@
1
- {"version":3,"file":"scriptable-pack-node.d.ts","sourceRoot":"","sources":["../src/scriptable-pack-node.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAa,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAG/D,OAAO,EACL,KAAK,6BAA6B,EAEnC,MAAM,gCAAgC,CAAC;AACxC,OAAO,EACL,KAAK,2BAA2B,EAChC,KAAK,kBAAkB,EAIxB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAe,gCAAgC,EAAE,MAAM,sBAAsB,CAAC;AAe1F,MAAM,WAAW,4BAA4B;IAC3C,IAAI,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC3C,OAAO,CAAC,CAAC,MAAM,EAAE,UAAU,GAAG,SAAS,GAAG,SAAS,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5E;AAWD,MAAM,WAAW,gCAAgC;IAC/C,OAAO,IAAI,OAAO,CAAC,4BAA4B,CAAC,CAAC;IACjD,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC1B;AAED,MAAM,WAAW,uCAAuC;IACtD,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC;CACrC;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,6BAA6B,GAAG,MAAM,CAEjF;AAED,MAAM,WAAW,kBAAkB,CAAC,CAAC;IACnC,QAAQ,CAAC,IAAI,EAAE,MAAM,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;IACvC,QAAQ,CAAC,QAAQ,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,CAAC;CACrC;AAED,sFAAsF;AACtF,wBAAsB,sBAAsB,CAAC,CAAC,EAAE,KAAK,EAAE,kBAAkB,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC;IACrF,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC;IAClB,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;CAC7B,CAAC,CAQD;AA+BD,wFAAwF;AACxF,wBAAsB,6BAA6B,CACjD,UAAU,EAAE,MAAM,EAClB,iBAAiB,CAAC,EAAE,MAAM,GACzB,OAAO,CAAC,SAAS,gCAAgC,EAAE,CAAC,CAqBtD;AAqfD,wBAAgB,sCAAsC,CACpD,OAAO,GAAE,uCAA4C,GACpD,gCAAgC,CAElC;AAED,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,QAAQ,CAAC,EAAE,4BAA4B,CAAC;IACjD,QAAQ,CAAC,YAAY,CAAC,EAAE,OAAO,CAAC;CACjC;AAuBD,4EAA4E;AAC5E,wBAAsB,kBAAkB,CACtC,UAAU,EAAE,MAAM,EAClB,OAAO,GAAE,yBAA8B,GACtC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,2BAA2B,CAAC,EAAE,kBAAkB,CAAC,CAAC,CA6G5E"}
1
+ {"version":3,"file":"scriptable-pack-node.d.ts","sourceRoot":"","sources":["../src/scriptable-pack-node.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAa,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAG/D,OAAO,EACL,KAAK,6BAA6B,EAEnC,MAAM,gCAAgC,CAAC;AACxC,OAAO,EACL,KAAK,2BAA2B,EAChC,KAAK,kBAAkB,EAIxB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAe,gCAAgC,EAAE,MAAM,sBAAsB,CAAC;AAe1F,MAAM,WAAW,4BAA4B;IAC3C,IAAI,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC3C,OAAO,CAAC,CAAC,MAAM,EAAE,UAAU,GAAG,SAAS,GAAG,SAAS,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5E;AAWD,MAAM,WAAW,gCAAgC;IAC/C,OAAO,IAAI,OAAO,CAAC,4BAA4B,CAAC,CAAC;IACjD,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC1B;AAED,MAAM,WAAW,uCAAuC;IACtD,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC;CACrC;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,6BAA6B,GAAG,MAAM,CAEjF;AAED,MAAM,WAAW,kBAAkB,CAAC,CAAC;IACnC,QAAQ,CAAC,IAAI,EAAE,MAAM,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;IACvC,QAAQ,CAAC,QAAQ,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,CAAC;CACrC;AAED,sFAAsF;AACtF,wBAAsB,sBAAsB,CAAC,CAAC,EAAE,KAAK,EAAE,kBAAkB,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC;IACrF,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC;IAClB,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;CAC7B,CAAC,CAQD;AA+BD,wFAAwF;AACxF,wBAAsB,6BAA6B,CACjD,UAAU,EAAE,MAAM,EAClB,iBAAiB,CAAC,EAAE,MAAM,GACzB,OAAO,CAAC,SAAS,gCAAgC,EAAE,CAAC,CAqBtD;AA6fD,wBAAgB,sCAAsC,CACpD,OAAO,GAAE,uCAA4C,GACpD,gCAAgC,CAElC;AAED,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,QAAQ,CAAC,EAAE,4BAA4B,CAAC;IACjD,QAAQ,CAAC,YAAY,CAAC,EAAE,OAAO,CAAC;CACjC;AAuBD,4EAA4E;AAC5E,wBAAsB,kBAAkB,CACtC,UAAU,EAAE,MAAM,EAClB,OAAO,GAAE,yBAA8B,GACtC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,2BAA2B,CAAC,EAAE,kBAAkB,CAAC,CAAC,CAiH5E"}
@@ -806,9 +806,17 @@ var WorkerScriptablePackExecutor = class {
806
806
  }
807
807
  };
808
808
  worker.on("message", onMessage);
809
- worker.once("error", rejectLoad);
809
+ const fail = (error) => {
810
+ rejectLoad(error);
811
+ const active = this.build;
812
+ this.build = void 0;
813
+ active?.reject(error);
814
+ void this.dispose("failure");
815
+ };
816
+ worker.once("error", fail);
810
817
  worker.once("exit", (code) => {
811
- if (code !== 0) rejectLoad(new Error(`ScriptablePack worker exited with code ${code}`));
818
+ if (this.disposal !== void 0) return;
819
+ fail(new Error(`ScriptablePack worker exited with code ${code}`));
812
820
  });
813
821
  });
814
822
  }
@@ -886,7 +894,7 @@ var ReusableWorkerScriptablePackExecutor = class {
886
894
  void this.dispose("failure");
887
895
  });
888
896
  this.worker.on("exit", (code) => {
889
- if (code === 0 || this.disposal !== void 0) return;
897
+ if (this.disposal !== void 0) return;
890
898
  this.failed = true;
891
899
  this.rejectActive(new Error(`ScriptablePack worker exited with code ${code}`));
892
900
  void this.dispose("failure");
@@ -1128,7 +1136,7 @@ function scriptablePackLoadFailure(sourcePath, reason, phase, diagnostic, timeou
1128
1136
  }
1129
1137
  async function loadScriptablePack(sourcePath, options = {}) {
1130
1138
  const timeoutMs = options.timeoutMs ?? 15e3;
1131
- const buildTimeoutMs = options.buildTimeoutMs ?? 5e3;
1139
+ const buildTimeoutMs = options.buildTimeoutMs ?? 15e3;
1132
1140
  const executor = options.executor ?? new WorkerScriptablePackExecutor();
1133
1141
  let disposeReason;
1134
1142
  let timeout;