@forgeax/engine-devkit 0.1.2

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 (164) hide show
  1. package/LICENSE +15 -0
  2. package/README.md +192 -0
  3. package/dist/.tsbuildinfo +1 -0
  4. package/dist/__tests__/archive.test.d.ts +2 -0
  5. package/dist/__tests__/archive.test.d.ts.map +1 -0
  6. package/dist/__tests__/assets.test.d.ts +2 -0
  7. package/dist/__tests__/assets.test.d.ts.map +1 -0
  8. package/dist/__tests__/bootstrap-commands.test.d.ts +2 -0
  9. package/dist/__tests__/bootstrap-commands.test.d.ts.map +1 -0
  10. package/dist/__tests__/dist.test.d.ts +2 -0
  11. package/dist/__tests__/dist.test.d.ts.map +1 -0
  12. package/dist/__tests__/host.test.d.ts +2 -0
  13. package/dist/__tests__/host.test.d.ts.map +1 -0
  14. package/dist/__tests__/init.test.d.ts +2 -0
  15. package/dist/__tests__/init.test.d.ts.map +1 -0
  16. package/dist/__tests__/plugin-authoring.test.d.ts +2 -0
  17. package/dist/__tests__/plugin-authoring.test.d.ts.map +1 -0
  18. package/dist/__tests__/project.test.d.ts +2 -0
  19. package/dist/__tests__/project.test.d.ts.map +1 -0
  20. package/dist/__tests__/rhi-debug-cold-start.integration.test.d.ts +2 -0
  21. package/dist/__tests__/rhi-debug-cold-start.integration.test.d.ts.map +1 -0
  22. package/dist/__tests__/rhi-debug-error-consumer.test-d.d.ts +2 -0
  23. package/dist/__tests__/rhi-debug-error-consumer.test-d.d.ts.map +1 -0
  24. package/dist/__tests__/rhi-debug-operations.test-d.d.ts +2 -0
  25. package/dist/__tests__/rhi-debug-operations.test-d.d.ts.map +1 -0
  26. package/dist/__tests__/rhi-debug-operations.unit.test.d.ts +2 -0
  27. package/dist/__tests__/rhi-debug-operations.unit.test.d.ts.map +1 -0
  28. package/dist/__tests__/sdk-install.test.d.ts +2 -0
  29. package/dist/__tests__/sdk-install.test.d.ts.map +1 -0
  30. package/dist/__tests__/skill-install.test.d.ts +2 -0
  31. package/dist/__tests__/skill-install.test.d.ts.map +1 -0
  32. package/dist/__tests__/tool-migration.test.d.ts +2 -0
  33. package/dist/__tests__/tool-migration.test.d.ts.map +1 -0
  34. package/dist/archive.d.ts +6 -0
  35. package/dist/archive.d.ts.map +1 -0
  36. package/dist/assets.d.ts +6 -0
  37. package/dist/assets.d.ts.map +1 -0
  38. package/dist/bootstrap-commands.d.ts +12 -0
  39. package/dist/bootstrap-commands.d.ts.map +1 -0
  40. package/dist/cli.d.ts +2 -0
  41. package/dist/cli.d.ts.map +1 -0
  42. package/dist/cli.mjs +4862 -0
  43. package/dist/cli.mjs.map +1 -0
  44. package/dist/commands.d.ts +19 -0
  45. package/dist/commands.d.ts.map +1 -0
  46. package/dist/dist.d.ts +24 -0
  47. package/dist/dist.d.ts.map +1 -0
  48. package/dist/host/base-host.d.ts +18 -0
  49. package/dist/host/base-host.d.ts.map +1 -0
  50. package/dist/host/project-bootstrap.d.ts +11 -0
  51. package/dist/host/project-bootstrap.d.ts.map +1 -0
  52. package/dist/host/resource-bootstrap.d.ts +23 -0
  53. package/dist/host/resource-bootstrap.d.ts.map +1 -0
  54. package/dist/host.d.ts +13 -0
  55. package/dist/host.d.ts.map +1 -0
  56. package/dist/index.d.ts +28 -0
  57. package/dist/index.d.ts.map +1 -0
  58. package/dist/index.mjs +5762 -0
  59. package/dist/index.mjs.map +1 -0
  60. package/dist/init.d.ts +20 -0
  61. package/dist/init.d.ts.map +1 -0
  62. package/dist/plugin-authoring.d.ts +4 -0
  63. package/dist/plugin-authoring.d.ts.map +1 -0
  64. package/dist/project.d.ts +5 -0
  65. package/dist/project.d.ts.map +1 -0
  66. package/dist/rhi-debug/cli-context.d.ts +3 -0
  67. package/dist/rhi-debug/cli-context.d.ts.map +1 -0
  68. package/dist/rhi-debug/operations.d.ts +83 -0
  69. package/dist/rhi-debug/operations.d.ts.map +1 -0
  70. package/dist/sdk-cli.d.ts +2 -0
  71. package/dist/sdk-cli.d.ts.map +1 -0
  72. package/dist/sdk-cli.mjs +5560 -0
  73. package/dist/sdk-cli.mjs.map +1 -0
  74. package/dist/sdk-install.d.ts +7 -0
  75. package/dist/sdk-install.d.ts.map +1 -0
  76. package/dist/sdk.d.ts +69 -0
  77. package/dist/sdk.d.ts.map +1 -0
  78. package/dist/shader-check.d.ts +3 -0
  79. package/dist/shader-check.d.ts.map +1 -0
  80. package/dist/skill-install.d.ts +16 -0
  81. package/dist/skill-install.d.ts.map +1 -0
  82. package/dist/tools/__tests__/browser-host-port.test.d.ts +2 -0
  83. package/dist/tools/__tests__/browser-host-port.test.d.ts.map +1 -0
  84. package/dist/tools/__tests__/carrier-faults.integration.test.d.ts +2 -0
  85. package/dist/tools/__tests__/carrier-faults.integration.test.d.ts.map +1 -0
  86. package/dist/tools/__tests__/carrier-provider.integration.test.d.ts +2 -0
  87. package/dist/tools/__tests__/carrier-provider.integration.test.d.ts.map +1 -0
  88. package/dist/tools/__tests__/commands.test.d.ts +2 -0
  89. package/dist/tools/__tests__/commands.test.d.ts.map +1 -0
  90. package/dist/tools/__tests__/coverage-gaps.test.d.ts +2 -0
  91. package/dist/tools/__tests__/coverage-gaps.test.d.ts.map +1 -0
  92. package/dist/tools/__tests__/domain-catalog.test.d.ts +2 -0
  93. package/dist/tools/__tests__/domain-catalog.test.d.ts.map +1 -0
  94. package/dist/tools/__tests__/preview-owner-gate.test.d.ts +2 -0
  95. package/dist/tools/__tests__/preview-owner-gate.test.d.ts.map +1 -0
  96. package/dist/tools/__tests__/preview-publication.test.d.ts +2 -0
  97. package/dist/tools/__tests__/preview-publication.test.d.ts.map +1 -0
  98. package/dist/tools/__tests__/realm-dispatch.integration.test.d.ts +2 -0
  99. package/dist/tools/__tests__/realm-dispatch.integration.test.d.ts.map +1 -0
  100. package/dist/tools/benchmark/__tests__/admission-fixtures.test.d.ts +2 -0
  101. package/dist/tools/benchmark/__tests__/admission-fixtures.test.d.ts.map +1 -0
  102. package/dist/tools/benchmark/harness.d.ts +17 -0
  103. package/dist/tools/benchmark/harness.d.ts.map +1 -0
  104. package/dist/tools/benchmark/index.d.ts +4 -0
  105. package/dist/tools/benchmark/index.d.ts.map +1 -0
  106. package/dist/tools/benchmark/report.d.ts +54 -0
  107. package/dist/tools/benchmark/report.d.ts.map +1 -0
  108. package/dist/tools/benchmark/statistics.d.ts +8 -0
  109. package/dist/tools/benchmark/statistics.d.ts.map +1 -0
  110. package/dist/tools/bootstrap.d.ts +49 -0
  111. package/dist/tools/bootstrap.d.ts.map +1 -0
  112. package/dist/tools/browser-host.d.ts +27 -0
  113. package/dist/tools/browser-host.d.ts.map +1 -0
  114. package/dist/tools/cache.d.ts +14 -0
  115. package/dist/tools/cache.d.ts.map +1 -0
  116. package/dist/tools/capability.d.ts +2 -0
  117. package/dist/tools/capability.d.ts.map +1 -0
  118. package/dist/tools/carrier-provider.d.ts +31 -0
  119. package/dist/tools/carrier-provider.d.ts.map +1 -0
  120. package/dist/tools/carrier-rendezvous.d.ts +16 -0
  121. package/dist/tools/carrier-rendezvous.d.ts.map +1 -0
  122. package/dist/tools/catalog.d.ts +66 -0
  123. package/dist/tools/catalog.d.ts.map +1 -0
  124. package/dist/tools/cli-adapter.d.ts +5 -0
  125. package/dist/tools/cli-adapter.d.ts.map +1 -0
  126. package/dist/tools/client.d.ts +18 -0
  127. package/dist/tools/client.d.ts.map +1 -0
  128. package/dist/tools/commands.d.ts +6 -0
  129. package/dist/tools/commands.d.ts.map +1 -0
  130. package/dist/tools/contributions.d.ts +6 -0
  131. package/dist/tools/contributions.d.ts.map +1 -0
  132. package/dist/tools/library.d.ts +3 -0
  133. package/dist/tools/library.d.ts.map +1 -0
  134. package/dist/tools/migration.d.ts +36 -0
  135. package/dist/tools/migration.d.ts.map +1 -0
  136. package/dist/tools/native-preview.d.ts +4 -0
  137. package/dist/tools/native-preview.d.ts.map +1 -0
  138. package/dist/tools/offline-analysis.d.ts +22 -0
  139. package/dist/tools/offline-analysis.d.ts.map +1 -0
  140. package/dist/tools/preview-catalog.d.ts +8 -0
  141. package/dist/tools/preview-catalog.d.ts.map +1 -0
  142. package/dist/tools/preview-contributions.d.ts +12 -0
  143. package/dist/tools/preview-contributions.d.ts.map +1 -0
  144. package/dist/tools/preview-host.d.ts +85 -0
  145. package/dist/tools/preview-host.d.ts.map +1 -0
  146. package/dist/tools/preview-migration.d.ts +4 -0
  147. package/dist/tools/preview-migration.d.ts.map +1 -0
  148. package/dist/tools/private-executor.d.ts +3 -0
  149. package/dist/tools/private-executor.d.ts.map +1 -0
  150. package/dist/tools/project-tools.d.ts +23 -0
  151. package/dist/tools/project-tools.d.ts.map +1 -0
  152. package/dist/tools/realms.d.ts +22 -0
  153. package/dist/tools/realms.d.ts.map +1 -0
  154. package/dist/tools/run-command.d.ts +17 -0
  155. package/dist/tools/run-command.d.ts.map +1 -0
  156. package/dist/tools/runtime.d.ts +5 -0
  157. package/dist/tools/runtime.d.ts.map +1 -0
  158. package/dist/tools/service-transport.d.ts +17 -0
  159. package/dist/tools/service-transport.d.ts.map +1 -0
  160. package/dist/tools/service.d.ts +22 -0
  161. package/dist/tools/service.d.ts.map +1 -0
  162. package/dist/types.d.ts +84 -0
  163. package/dist/types.d.ts.map +1 -0
  164. package/package.json +95 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"commands.d.ts","sourceRoot":"","sources":["../../src/tools/commands.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,aAAa,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAqB1E,wBAAsB,WAAW,CAAC,IAAI,SAAgB,GAAG,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAGvF;AAED,wBAAsB,eAAe,CACnC,OAAO,EAAE,uBAAuB,GAC/B,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CA0BjC;AAED,wBAAsB,UAAU,CAC9B,OAAO,EAAE,uBAAuB,GAC/B,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAsCjC;AAED,wBAAsB,WAAW,CAC/B,OAAO,EAAE,uBAAuB,GAC/B,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAuCjC"}
@@ -0,0 +1,6 @@
1
+ import { type ToolContribution } from '@forgeax/engine-tool-runtime';
2
+ import type { BuildOptions, PluginInstallOptions } from '../types.js';
3
+ export declare function createBuildContribution(projectRoot?: string): ToolContribution<BuildOptions, unknown>;
4
+ export declare function createAuthorContribution(projectRoot?: string): ToolContribution<PluginInstallOptions, unknown>;
5
+ export declare function createDefaultContributions(projectRoot?: string): readonly (ToolContribution<BuildOptions, unknown> | ToolContribution<PluginInstallOptions, unknown> | ToolContribution<unknown, unknown>)[];
6
+ //# sourceMappingURL=contributions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contributions.d.ts","sourceRoot":"","sources":["../../src/tools/contributions.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,gBAAgB,EAEtB,MAAM,8BAA8B,CAAC;AACtC,OAAO,KAAK,EAAE,YAAY,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAgBtE,wBAAgB,uBAAuB,CACrC,WAAW,SAAgB,GAC1B,gBAAgB,CAAC,YAAY,EAAE,OAAO,CAAC,CAWzC;AAED,wBAAgB,wBAAwB,CACtC,WAAW,SAAgB,GAC1B,gBAAgB,CAAC,oBAAoB,EAAE,OAAO,CAAC,CAWjD;AAED,wBAAgB,0BAA0B,CACxC,WAAW,SAAgB,GAC1B,SAAS,CACR,gBAAgB,CAAC,YAAY,EAAE,OAAO,CAAC,GACvC,gBAAgB,CAAC,oBAAoB,EAAE,OAAO,CAAC,GAC/C,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC,CACrC,EAAE,CAMF"}
@@ -0,0 +1,3 @@
1
+ import { type ToolContribution, type ToolRunOptions, type ToolTerminal } from '@forgeax/engine-tool-runtime';
2
+ export declare function runLibraryTool<TArgs, TResult>(contribution: ToolContribution<TArgs, TResult>, args: TArgs, options?: ToolRunOptions): Promise<ToolTerminal<TResult>>;
3
+ //# sourceMappingURL=library.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"library.d.ts","sourceRoot":"","sources":["../../src/tools/library.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,gBAAgB,EACrB,KAAK,cAAc,EACnB,KAAK,YAAY,EAClB,MAAM,8BAA8B,CAAC;AAEtC,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,EAC3C,YAAY,EAAE,gBAAgB,CAAC,KAAK,EAAE,OAAO,CAAC,EAC9C,IAAI,EAAE,KAAK,EACX,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAEhC"}
@@ -0,0 +1,36 @@
1
+ import type { MigrationCapabilityProbe, MigrationOperation } from '@forgeax/engine-tool-runtime';
2
+ import { type ArtifactRef, capabilityUnavailableError, type ServiceCapability, type ToolRealm } from '@forgeax/engine-tool-runtime';
3
+ export { createCapabilityToken, createMigrationRecipe, type MigrationCapabilityProbe, type MigrationOperation, type MigrationRecipe, probeMigrationTarget, } from '@forgeax/engine-tool-runtime';
4
+ export type MigrationPath = 'private' | 'service';
5
+ export interface MigrationTarget extends MigrationCapabilityProbe {
6
+ }
7
+ export interface MigrationRosterEntry {
8
+ readonly operation: MigrationOperation;
9
+ readonly owner: string;
10
+ readonly realm: ToolRealm;
11
+ readonly artifacts: readonly MigrationEvidence[];
12
+ readonly benefit: string;
13
+ readonly fallback: 'private';
14
+ }
15
+ export interface MigrationEvidence {
16
+ readonly owner: string;
17
+ readonly source: 'M3';
18
+ readonly ref: ArtifactRef;
19
+ }
20
+ export interface MigrationResolution {
21
+ readonly path: MigrationPath;
22
+ readonly operation: MigrationOperation;
23
+ readonly owner: string;
24
+ readonly artifacts: readonly MigrationEvidence[];
25
+ readonly service: ServiceCapability;
26
+ }
27
+ export type MigrationResolutionResult = {
28
+ readonly ok: true;
29
+ readonly value: MigrationResolution;
30
+ } | {
31
+ readonly ok: false;
32
+ readonly error: ReturnType<typeof capabilityUnavailableError>;
33
+ };
34
+ export declare function createMigrationRoster(): readonly MigrationRosterEntry[];
35
+ export declare function resolveMigration(entries: readonly MigrationRosterEntry[], operation: MigrationOperation, target: MigrationTarget): MigrationResolutionResult;
36
+ //# sourceMappingURL=migration.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"migration.d.ts","sourceRoot":"","sources":["../../src/tools/migration.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AACjG,OAAO,EACL,KAAK,WAAW,EAChB,0BAA0B,EAE1B,KAAK,iBAAiB,EAEtB,KAAK,SAAS,EACf,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EACL,qBAAqB,EACrB,qBAAqB,EACrB,KAAK,wBAAwB,EAC7B,KAAK,kBAAkB,EACvB,KAAK,eAAe,EACpB,oBAAoB,GACrB,MAAM,8BAA8B,CAAC;AAEtC,MAAM,MAAM,aAAa,GAAG,SAAS,GAAG,SAAS,CAAC;AAElD,MAAM,WAAW,eAAgB,SAAQ,wBAAwB;CAAG;AAEpE,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,SAAS,EAAE,kBAAkB,CAAC;IACvC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC;IAC1B,QAAQ,CAAC,SAAS,EAAE,SAAS,iBAAiB,EAAE,CAAC;IACjD,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAC;CAC9B;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC;IACtB,QAAQ,CAAC,GAAG,EAAE,WAAW,CAAC;CAC3B;AAED,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC;IAC7B,QAAQ,CAAC,SAAS,EAAE,kBAAkB,CAAC;IACvC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,SAAS,EAAE,SAAS,iBAAiB,EAAE,CAAC;IACjD,QAAQ,CAAC,OAAO,EAAE,iBAAiB,CAAC;CACrC;AAED,MAAM,MAAM,yBAAyB,GACjC;IAAE,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,mBAAmB,CAAA;CAAE,GAC1D;IAAE,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC,OAAO,0BAA0B,CAAC,CAAA;CAAE,CAAC;AAwF1F,wBAAgB,qBAAqB,IAAI,SAAS,oBAAoB,EAAE,CAKvE;AAED,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,SAAS,oBAAoB,EAAE,EACxC,SAAS,EAAE,kBAAkB,EAC7B,MAAM,EAAE,eAAe,GACtB,yBAAyB,CAqC3B"}
@@ -0,0 +1,4 @@
1
+ import { type ToolContribution, type ToolRunOptions, type ToolTerminal } from '@forgeax/engine-tool-runtime';
2
+ export declare function isNativePreviewTool(id: string): boolean;
3
+ export declare function runNativePreviewTool(contribution: ToolContribution<unknown, unknown>, args: unknown, options: ToolRunOptions, projectRoot: string): Promise<ToolTerminal<unknown>>;
4
+ //# sourceMappingURL=native-preview.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"native-preview.d.ts","sourceRoot":"","sources":["../../src/tools/native-preview.ts"],"names":[],"mappings":"AAQA,OAAO,EAEL,KAAK,gBAAgB,EACrB,KAAK,cAAc,EACnB,KAAK,YAAY,EAClB,MAAM,8BAA8B,CAAC;AAoBtC,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAEvD;AAED,wBAAsB,oBAAoB,CACxC,YAAY,EAAE,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC,EAChD,IAAI,EAAE,OAAO,EACb,OAAO,EAAE,cAAc,EACvB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAiMhC"}
@@ -0,0 +1,22 @@
1
+ import { type PreviewArtifactManifest, type PreviewArtifactRole } from '@forgeax/engine-preview';
2
+ import { type ToolArtifactManifest, type ToolDomainFailure, type ToolEvidenceKind } from '@forgeax/engine-tool-runtime';
3
+ export interface OfflineAnalysisRequest {
4
+ readonly manifest: PreviewArtifactManifest | ToolArtifactManifest;
5
+ readonly required?: readonly (PreviewArtifactRole | ToolEvidenceKind)[];
6
+ }
7
+ export interface OfflineAnalysisResult {
8
+ readonly runId: string;
9
+ readonly captureId: string;
10
+ readonly artifacts: readonly {
11
+ readonly kind: string;
12
+ readonly digest: string;
13
+ }[];
14
+ }
15
+ export declare function analyzePreviewArtifacts(request: OfflineAnalysisRequest): {
16
+ readonly ok: true;
17
+ readonly value: OfflineAnalysisResult;
18
+ } | {
19
+ readonly ok: false;
20
+ readonly error: ToolDomainFailure;
21
+ };
22
+ //# sourceMappingURL=offline-analysis.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"offline-analysis.d.ts","sourceRoot":"","sources":["../../src/tools/offline-analysis.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,uBAAuB,EAC5B,KAAK,mBAAmB,EAEzB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,KAAK,oBAAoB,EACzB,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EAEtB,MAAM,8BAA8B,CAAC;AAEtC,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,QAAQ,EAAE,uBAAuB,GAAG,oBAAoB,CAAC;IAClE,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC,mBAAmB,GAAG,gBAAgB,CAAC,EAAE,CAAC;CACzE;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,SAAS,EAAE,SAAS;QAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;CACnF;AAED,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,sBAAsB,GAE7B;IAAE,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,qBAAqB,CAAA;CAAE,GAC5D;IAAE,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,iBAAiB,CAAA;CAAE,CAoC5D"}
@@ -0,0 +1,8 @@
1
+ import type { PluginCatalog, ToolPlugin } from '@forgeax/engine-plugin';
2
+ import { type NativePreviewHost } from '@forgeax/engine-preview';
3
+ import type { ToolDescriptor } from '@forgeax/engine-tool-runtime';
4
+ export declare const nativePreviewPlugins: readonly [readonly ["@forgeax/engine-preview/material", ToolPlugin], readonly ["@forgeax/engine-preview/mesh", ToolPlugin], readonly ["@forgeax/engine-preview/vfx", ToolPlugin], readonly ["@forgeax/engine-preview/texture", ToolPlugin]];
5
+ export declare const nativePreviewTools: import("@forgeax/engine-tool-runtime").ToolContribution<unknown, unknown>[];
6
+ export declare const nativePreviewDescriptors: readonly ToolDescriptor[];
7
+ export declare function createNativePreviewCatalog(host: NativePreviewHost, selectedName?: string): PluginCatalog;
8
+ //# sourceMappingURL=preview-catalog.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"preview-catalog.d.ts","sourceRoot":"","sources":["../../src/tools/preview-catalog.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACxE,OAAO,EAAmB,KAAK,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAKlF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAEnE,eAAO,MAAM,oBAAoB,6OAKvB,CAAC;AAEX,eAAO,MAAM,kBAAkB,6EAA6D,CAAC;AAC7F,eAAO,MAAM,wBAAwB,EAAE,SAAS,cAAc,EAE7D,CAAC;AAEF,wBAAgB,0BAA0B,CACxC,IAAI,EAAE,iBAAiB,EACvB,YAAY,CAAC,EAAE,MAAM,GACpB,aAAa,CAcf"}
@@ -0,0 +1,12 @@
1
+ import { type ToolContribution } from '@forgeax/engine-tool-runtime';
2
+ import { type OfflineAnalysisRequest, type OfflineAnalysisResult } from './offline-analysis.js';
3
+ import type { PreviewHostRequest, PreviewHostResult } from './preview-host.js';
4
+ export declare function createPreviewContribution(): ToolContribution<PreviewHostRequest, PreviewHostResult>;
5
+ export declare function createOfflineAnalysisContribution(): ToolContribution<OfflineAnalysisRequest, OfflineAnalysisResult>;
6
+ export declare function createPreviewContributions(): readonly ToolContribution<unknown, unknown>[];
7
+ /**
8
+ * The discoverable preview surface is domain-specific. The generic recipe
9
+ * contribution remains available only as an explicit migration error.
10
+ */
11
+ export declare function createDomainPreviewContributions(): readonly ToolContribution<unknown, unknown>[];
12
+ //# sourceMappingURL=preview-contributions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"preview-contributions.d.ts","sourceRoot":"","sources":["../../src/tools/preview-contributions.ts"],"names":[],"mappings":"AAMA,OAAO,EAAc,KAAK,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAEjF,OAAO,EAEL,KAAK,sBAAsB,EAC3B,KAAK,qBAAqB,EAC3B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAG/E,wBAAgB,yBAAyB,IAAI,gBAAgB,CAC3D,kBAAkB,EAClB,iBAAiB,CAClB,CAKA;AAED,wBAAgB,iCAAiC,IAAI,gBAAgB,CACnE,sBAAsB,EACtB,qBAAqB,CACtB,CAOA;AAED,wBAAgB,0BAA0B,IAAI,SAAS,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,CAK1F;AAED;;;GAGG;AACH,wBAAgB,gCAAgC,IAAI,SAAS,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,CAOhG"}
@@ -0,0 +1,85 @@
1
+ import { type ToolPreviewRecipeOptions, type ToolPreviewRunResult, type ToolPreviewTrace } from '@forgeax/engine-app';
2
+ import type { CarrierLeaseRequest, CarrierOffer, CarrierResult, CarrierState, ToolDomainFailure, ToolExecutionContext } from '@forgeax/engine-tool-runtime';
3
+ export interface PreviewHostRequest {
4
+ readonly recipe: ToolPreviewRecipeOptions;
5
+ readonly projectRoot?: string;
6
+ readonly carrier?: PreviewCarrierRoute;
7
+ }
8
+ export interface PreviewHostMechanisms {
9
+ readonly runId: string;
10
+ readonly projectRoot: string;
11
+ readonly backend: 'webgpu';
12
+ readonly signal: AbortSignal;
13
+ }
14
+ export interface PreviewHostSession {
15
+ readonly withSession: <T>(execute: (mechanisms: PreviewHostMechanisms) => Promise<T>) => Promise<T>;
16
+ }
17
+ /**
18
+ * Creates the physical host lease. Domain identity stays in the executor;
19
+ * this seam carries only browser, backend, and lexical run ownership.
20
+ */
21
+ export declare function createPreviewHostSession(input: {
22
+ readonly runId: string;
23
+ readonly projectRoot: string;
24
+ readonly signal: AbortSignal;
25
+ }): PreviewHostSession;
26
+ export interface PreviewCarrierRoute {
27
+ readonly lookup: () => CarrierOffer | undefined;
28
+ readonly lease: (request: CarrierLeaseRequest) => CarrierResult<{
29
+ readonly leaseId: string;
30
+ }>;
31
+ readonly started: (leaseId: string) => CarrierResult<CarrierState>;
32
+ readonly execute: (leaseId: string, request: Omit<PreviewHostRequest, 'carrier'>, context: Pick<ToolExecutionContext, 'runId' | 'signal'>) => Promise<PreviewRouteResult<PreviewHostResult>>;
33
+ readonly exit: (leaseId: string) => CarrierResult<CarrierState>;
34
+ readonly now?: () => number;
35
+ }
36
+ export interface PreviewHostResult {
37
+ readonly actualCarrier: 'headless-private' | 'headed-private' | 'visible-consumer';
38
+ readonly trace: ToolPreviewTrace;
39
+ readonly captureId: string;
40
+ readonly drawCalls: number;
41
+ readonly committedDrawIndex: number;
42
+ readonly nonBlackPixels: number;
43
+ readonly actionTrace: ToolPreviewRunResult['actionTrace'];
44
+ readonly tape: ToolPreviewRunResult['tape'];
45
+ readonly profile: ToolPreviewRunResult['profile'];
46
+ readonly capturePng: ToolPreviewRunResult['capturePng'];
47
+ readonly png: ToolPreviewRunResult['png'];
48
+ readonly manifest: ToolPreviewRunResult['manifest'];
49
+ readonly artifacts: ToolPreviewRunResult['artifacts'];
50
+ readonly operationTiming: ToolPreviewRunResult['operationTiming'];
51
+ readonly resource?: import('@forgeax/engine-app').ToolPreviewResourceFacts;
52
+ }
53
+ export type PreviewHostRunner = (request: PreviewHostRequest, context: ToolExecutionContext) => Promise<{
54
+ readonly ok: true;
55
+ readonly value: PreviewHostResult;
56
+ } | {
57
+ readonly ok: false;
58
+ readonly error: ToolDomainFailure;
59
+ }>;
60
+ type PreviewRouteResult<T> = {
61
+ readonly ok: true;
62
+ readonly value: T;
63
+ } | {
64
+ readonly ok: false;
65
+ readonly error: ToolDomainFailure;
66
+ };
67
+ export interface CarrierCleanupTrace {
68
+ readonly actualCarrier: 'headless-private' | 'headed-private' | 'visible-consumer';
69
+ readonly backend: 'webgpu';
70
+ readonly cleanup: readonly ['gpu', 'canvas', 'page', 'carrier'];
71
+ readonly failure: {
72
+ readonly code: 'tool-preview-carrier-exit';
73
+ readonly detail: {
74
+ readonly carrier: CarrierCleanupTrace['actualCarrier'];
75
+ };
76
+ };
77
+ }
78
+ export declare function createCarrierCleanupTrace(input: {
79
+ readonly actualCarrier: CarrierCleanupTrace['actualCarrier'];
80
+ readonly backend: 'webgpu';
81
+ }): CarrierCleanupTrace;
82
+ export declare function runCarrierPreviewRoute<T>(presentation: ToolPreviewRecipeOptions['presentation'], carrier: PreviewCarrierRoute | undefined, executePrivate: () => Promise<PreviewRouteResult<T>>, executeConsumer?: (leaseId: string) => Promise<PreviewRouteResult<T>>): Promise<PreviewRouteResult<T>>;
83
+ export declare const runPreviewHost: PreviewHostRunner;
84
+ export {};
85
+ //# sourceMappingURL=preview-host.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"preview-host.d.ts","sourceRoot":"","sources":["../../src/tools/preview-host.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import { type ToolDomainFailure, type ToolTerminal } from '@forgeax/engine-tool-runtime';
2
+ export declare const retiredPreviewOperationFailure: ToolDomainFailure;
3
+ export declare function retiredPreviewTool(): ToolTerminal<never>;
4
+ //# sourceMappingURL=preview-migration.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"preview-migration.d.ts","sourceRoot":"","sources":["../../src/tools/preview-migration.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,iBAAiB,EACtB,KAAK,YAAY,EAClB,MAAM,8BAA8B,CAAC;AAEtC,eAAO,MAAM,8BAA8B,EAAE,iBAQ5C,CAAC;AAEF,wBAAgB,kBAAkB,IAAI,YAAY,CAAC,KAAK,CAAC,CAWxD"}
@@ -0,0 +1,3 @@
1
+ import type { ToolContribution, ToolRunOptions, ToolRuntime, ToolTerminal } from '@forgeax/engine-tool-runtime';
2
+ export declare function runPrivateTool<TArgs, TResult>(runtime: ToolRuntime, contribution: ToolContribution<TArgs, TResult>, args: TArgs, options?: ToolRunOptions): Promise<ToolTerminal<TResult>>;
3
+ //# sourceMappingURL=private-executor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"private-executor.d.ts","sourceRoot":"","sources":["../../src/tools/private-executor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,gBAAgB,EAChB,cAAc,EACd,WAAW,EACX,YAAY,EACb,MAAM,8BAA8B,CAAC;AAEtC,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,EAC3C,OAAO,EAAE,WAAW,EACpB,YAAY,EAAE,gBAAgB,CAAC,KAAK,EAAE,OAAO,CAAC,EAC9C,IAAI,EAAE,KAAK,EACX,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAEhC"}
@@ -0,0 +1,23 @@
1
+ import { type ToolPlugin } from '@forgeax/engine-plugin';
2
+ import { type PluginRealm } from '@forgeax/engine-plugin/loader';
3
+ import { type GameProjectPluginEntry } from '@forgeax/engine-project';
4
+ import type { ToolContribution, ToolRunOptions, ToolTerminal } from '@forgeax/engine-tool-runtime';
5
+ export interface ProjectToolBinding {
6
+ readonly contribution: ToolContribution<unknown, unknown>;
7
+ readonly entry: GameProjectPluginEntry;
8
+ readonly moduleName: string;
9
+ readonly realm: PluginRealm;
10
+ readonly toolPlugin?: ToolPlugin;
11
+ readonly loadToolPlugin: () => Promise<ToolPlugin>;
12
+ }
13
+ export interface ProjectToolModuleLoader {
14
+ readonly load: (name: string) => Promise<unknown>;
15
+ readonly close: () => Promise<void>;
16
+ }
17
+ export interface ProjectToolDiscoveryOptions {
18
+ readonly moduleLoader?: ProjectToolModuleLoader;
19
+ readonly loadModules?: boolean;
20
+ }
21
+ export declare function discoverProjectTools(rootInput: string, options?: ProjectToolDiscoveryOptions): Promise<readonly ProjectToolBinding[]>;
22
+ export declare function runProjectTool(binding: ProjectToolBinding, args: unknown, options: ToolRunOptions): Promise<ToolTerminal<unknown>>;
23
+ //# sourceMappingURL=project-tools.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"project-tools.d.ts","sourceRoot":"","sources":["../../src/tools/project-tools.ts"],"names":[],"mappings":"AAEA,OAAO,EAAyB,KAAK,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAChF,OAAO,EAIL,KAAK,WAAW,EAEjB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,KAAK,sBAAsB,EAAqB,MAAM,yBAAyB,CAAC;AACzF,OAAO,KAAK,EACV,gBAAgB,EAEhB,cAAc,EACd,YAAY,EACb,MAAM,8BAA8B,CAAC;AAGtC,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,YAAY,EAAE,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAC1D,QAAQ,CAAC,KAAK,EAAE,sBAAsB,CAAC;IACvC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC;IAC5B,QAAQ,CAAC,UAAU,CAAC,EAAE,UAAU,CAAC;IACjC,QAAQ,CAAC,cAAc,EAAE,MAAM,OAAO,CAAC,UAAU,CAAC,CAAC;CACpD;AAED,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IAClD,QAAQ,CAAC,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CACrC;AAED,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,YAAY,CAAC,EAAE,uBAAuB,CAAC;IAChD,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,CAAC;CAChC;AAwHD,wBAAsB,oBAAoB,CACxC,SAAS,EAAE,MAAM,EACjB,OAAO,GAAE,2BAAgC,GACxC,OAAO,CAAC,SAAS,kBAAkB,EAAE,CAAC,CAyDxC;AAgBD,wBAAsB,cAAc,CAClC,OAAO,EAAE,kBAAkB,EAC3B,IAAI,EAAE,OAAO,EACb,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAqChC"}
@@ -0,0 +1,22 @@
1
+ import type { ToolRealm } from '@forgeax/engine-tool-runtime';
2
+ import { createRealmCapabilityMatrix as createRuntimeRealmCapabilityMatrix, type RealmCapability, type RealmCapabilityInput, type RealmCapabilityMatrix } from '@forgeax/engine-tool-runtime';
3
+ export type { RealmCapability, RealmCapabilityInput, RealmCapabilityMatrix };
4
+ export { createRuntimeRealmCapabilityMatrix as createRealmCapabilityMatrix };
5
+ export declare function resolveRealmCapability(matrix: RealmCapabilityMatrix, realm: ToolRealm): RealmCapability;
6
+ declare const RESOURCE_KINDS: readonly ["process", "port", "page", "canvas", "fiber"];
7
+ export type ResourceKind = (typeof RESOURCE_KINDS)[number];
8
+ export interface ResourceProbe {
9
+ readonly observe: (kind: ResourceKind, id: string) => void;
10
+ readonly release: (kind: ResourceKind, id: string) => void;
11
+ readonly owner: (id: string) => ResourceOwner;
12
+ readonly snapshot: () => Readonly<Record<ResourceKind, readonly string[]>>;
13
+ }
14
+ export interface ResourceOwner {
15
+ readonly id: string;
16
+ readonly observe: (kind: ResourceKind, resourceId: string) => void;
17
+ readonly release: (kind: ResourceKind, resourceId: string) => void;
18
+ readonly stop: () => void;
19
+ }
20
+ export declare function createResourceProbe(): ResourceProbe;
21
+ export { createResourceBootstrapPlan, createResourceBootstrapTrace, type ResourceBootstrapPlan, type ResourceBootstrapTrace, type ResourceBootstrapTraceInput, } from '../host/resource-bootstrap.js';
22
+ //# sourceMappingURL=realms.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"realms.d.ts","sourceRoot":"","sources":["../../src/tools/realms.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EACL,2BAA2B,IAAI,kCAAkC,EACjE,KAAK,eAAe,EACpB,KAAK,oBAAoB,EACzB,KAAK,qBAAqB,EAC3B,MAAM,8BAA8B,CAAC;AAEtC,YAAY,EAAE,eAAe,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,CAAC;AAC7E,OAAO,EAAE,kCAAkC,IAAI,2BAA2B,EAAE,CAAC;AAE7E,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,qBAAqB,EAC7B,KAAK,EAAE,SAAS,GACf,eAAe,CAEjB;AAED,QAAA,MAAM,cAAc,yDAA0D,CAAC;AAC/E,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,CAAC,CAAC;AAE3D,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,YAAY,EAAE,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3D,QAAQ,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,YAAY,EAAE,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3D,QAAQ,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,aAAa,CAAC;IAC9C,QAAQ,CAAC,QAAQ,EAAE,MAAM,QAAQ,CAAC,MAAM,CAAC,YAAY,EAAE,SAAS,MAAM,EAAE,CAAC,CAAC,CAAC;CAC5E;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,KAAK,IAAI,CAAC;IACnE,QAAQ,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,KAAK,IAAI,CAAC;IACnE,QAAQ,CAAC,IAAI,EAAE,MAAM,IAAI,CAAC;CAC3B;AAED,wBAAgB,mBAAmB,IAAI,aAAa,CAgDnD;AAED,OAAO,EACL,2BAA2B,EAC3B,4BAA4B,EAC5B,KAAK,qBAAqB,EAC1B,KAAK,sBAAsB,EAC3B,KAAK,2BAA2B,GACjC,MAAM,+BAA+B,CAAC"}
@@ -0,0 +1,17 @@
1
+ import type { OperationCommandOptions } from '../types.js';
2
+ export declare function runOperationCommand(options: OperationCommandOptions): Promise<{
3
+ readonly outcome: "failed";
4
+ readonly failure: import("@forgeax/engine-tool-runtime").ToolRuntimeError;
5
+ readonly snapshotAfter?: import("@forgeax/engine-tool-runtime").SnapshotRef;
6
+ readonly artifacts: readonly import("@forgeax/engine-tool-runtime").ArtifactRef[];
7
+ readonly cleanup?: import("@forgeax/engine-tool-runtime").ToolCleanupReport;
8
+ readonly timing?: import("@forgeax/engine-tool-runtime").ToolTiming;
9
+ } | {
10
+ readonly outcome: "succeeded";
11
+ readonly result: unknown;
12
+ readonly snapshotAfter?: import("@forgeax/engine-tool-runtime").SnapshotRef;
13
+ readonly artifacts: readonly import("@forgeax/engine-tool-runtime").ArtifactRef[];
14
+ readonly cleanup?: import("@forgeax/engine-tool-runtime").ToolCleanupReport;
15
+ readonly timing?: import("@forgeax/engine-tool-runtime").ToolTiming;
16
+ }>;
17
+ //# sourceMappingURL=run-command.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run-command.d.ts","sourceRoot":"","sources":["../../src/tools/run-command.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAI3D,wBAAsB,mBAAmB,CAAC,OAAO,EAAE,uBAAuB;;;;;;;;;;;;;;GAKzE"}
@@ -0,0 +1,5 @@
1
+ import { type ToolContribution, type ToolRuntime } from '@forgeax/engine-tool-runtime';
2
+ export declare function createDevkitToolRuntime<TArgs, TResult>(contributions: readonly ToolContribution<TArgs, TResult>[]): ToolRuntime;
3
+ export declare function createDevkitToolRuntime(contributions: readonly unknown[]): ToolRuntime;
4
+ export declare function createPreviewToolRuntime(): ToolRuntime;
5
+ //# sourceMappingURL=runtime.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../src/tools/runtime.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,gBAAgB,EACrB,KAAK,WAAW,EACjB,MAAM,8BAA8B,CAAC;AAGtC,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,OAAO,EACpD,aAAa,EAAE,SAAS,gBAAgB,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,GACzD,WAAW,CAAC;AACf,wBAAgB,uBAAuB,CAAC,aAAa,EAAE,SAAS,OAAO,EAAE,GAAG,WAAW,CAAC;AAKxF,wBAAgB,wBAAwB,IAAI,WAAW,CAEtD"}
@@ -0,0 +1,17 @@
1
+ import { type AuthenticatedLoopbackTransport, type ServiceWireHandler } from '@forgeax/engine-tool-runtime';
2
+ export type { AuthenticatedLoopbackTransport, AuthenticatedLoopbackTransportOptions, ServiceWireHandler, ServiceWireRequest, } from '@forgeax/engine-tool-runtime';
3
+ export { createAuthenticatedLoopbackTransport } from '@forgeax/engine-tool-runtime';
4
+ export interface AuthenticatedLoopbackServiceOptions {
5
+ readonly bearerToken: string;
6
+ readonly handler: ServiceWireHandler;
7
+ readonly host?: '127.0.0.1' | 'localhost';
8
+ readonly expectedDescriptorDigest?: string;
9
+ readonly expectedRecipeDigest?: string;
10
+ }
11
+ export interface AuthenticatedLoopbackService {
12
+ readonly endpoint: string;
13
+ readonly transport: AuthenticatedLoopbackTransport;
14
+ readonly close: () => Promise<void>;
15
+ }
16
+ export declare function createAuthenticatedLoopbackService(options: AuthenticatedLoopbackServiceOptions): Promise<AuthenticatedLoopbackService>;
17
+ //# sourceMappingURL=service-transport.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"service-transport.d.ts","sourceRoot":"","sources":["../../src/tools/service-transport.ts"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,8BAA8B,EAEnC,KAAK,kBAAkB,EAGxB,MAAM,8BAA8B,CAAC;AAEtC,YAAY,EACV,8BAA8B,EAC9B,qCAAqC,EACrC,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,oCAAoC,EAAE,MAAM,8BAA8B,CAAC;AAEpF,MAAM,WAAW,mCAAmC;IAClD,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,OAAO,EAAE,kBAAkB,CAAC;IACrC,QAAQ,CAAC,IAAI,CAAC,EAAE,WAAW,GAAG,WAAW,CAAC;IAC1C,QAAQ,CAAC,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAC3C,QAAQ,CAAC,oBAAoB,CAAC,EAAE,MAAM,CAAC;CACxC;AAED,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,SAAS,EAAE,8BAA8B,CAAC;IACnD,QAAQ,CAAC,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CACrC;AAyCD,wBAAsB,kCAAkC,CACtD,OAAO,EAAE,mCAAmC,GAC3C,OAAO,CAAC,4BAA4B,CAAC,CAsEvC"}
@@ -0,0 +1,22 @@
1
+ import { type AuthenticatedLoopbackTransport, type ServiceAdmissionRef, type ServiceCapability, type ToolContribution, type ToolTerminal } from '@forgeax/engine-tool-runtime';
2
+ export interface ServiceExecutorOptions<TArgs, TResult> {
3
+ readonly contribution: ToolContribution<TArgs, TResult>;
4
+ readonly privateExecutor: (args: TArgs) => Promise<ToolTerminal<TResult>>;
5
+ readonly transport: AuthenticatedLoopbackTransport;
6
+ readonly admission?: ServiceAdmissionRef;
7
+ readonly descriptorDigest: string;
8
+ readonly recipeDigest: string;
9
+ readonly workloadClass: string;
10
+ readonly codeDigest: string;
11
+ readonly browserVersion: string;
12
+ readonly bearerToken?: string;
13
+ }
14
+ export interface ServiceExecutor<TArgs, TResult> {
15
+ readonly capability: ServiceCapability;
16
+ readonly run: (args: TArgs, options?: {
17
+ readonly recipeDigest?: string;
18
+ readonly signal?: AbortSignal;
19
+ }) => Promise<ToolTerminal<TResult>>;
20
+ }
21
+ export declare function createServiceExecutor<TArgs, TResult>(options: ServiceExecutorOptions<TArgs, TResult>): ServiceExecutor<TArgs, TResult>;
22
+ //# sourceMappingURL=service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../src/tools/service.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,8BAA8B,EAMnC,KAAK,mBAAmB,EACxB,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,KAAK,YAAY,EAClB,MAAM,8BAA8B,CAAC;AAEtC,MAAM,WAAW,sBAAsB,CAAC,KAAK,EAAE,OAAO;IACpD,QAAQ,CAAC,YAAY,EAAE,gBAAgB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IACxD,QAAQ,CAAC,eAAe,EAAE,CAAC,IAAI,EAAE,KAAK,KAAK,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC;IAC1E,QAAQ,CAAC,SAAS,EAAE,8BAA8B,CAAC;IACnD,QAAQ,CAAC,SAAS,CAAC,EAAE,mBAAmB,CAAC;IACzC,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED,MAAM,WAAW,eAAe,CAAC,KAAK,EAAE,OAAO;IAC7C,QAAQ,CAAC,UAAU,EAAE,iBAAiB,CAAC;IACvC,QAAQ,CAAC,GAAG,EAAE,CACZ,IAAI,EAAE,KAAK,EACX,OAAO,CAAC,EAAE;QAAE,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAA;KAAE,KACxE,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC;CACrC;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,OAAO,EAClD,OAAO,EAAE,sBAAsB,CAAC,KAAK,EAAE,OAAO,CAAC,GAC9C,eAAe,CAAC,KAAK,EAAE,OAAO,CAAC,CA+CjC"}
@@ -0,0 +1,84 @@
1
+ import type { GameProjectPluginEntry } from '@forgeax/engine-project';
2
+ export type ForgeaXCommand = 'new' | 'init' | 'doctor' | 'test' | 'dev' | 'build' | 'package' | 'serve' | 'preview' | 'plugin.install' | 'plugin.uninstall' | 'skill.install' | 'skill.verify' | 'sdk.install' | 'asset.add' | 'asset.verify' | 'asset.inspect' | 'asset.list' | 'shader.check' | 'list' | 'describe' | 'run' | 'exec';
3
+ export interface CommandError {
4
+ readonly code: string;
5
+ readonly expected: string;
6
+ readonly hint: string;
7
+ readonly detail: Readonly<Record<string, unknown>>;
8
+ }
9
+ export type CommandResult<T> = {
10
+ readonly ok: true;
11
+ readonly value: T;
12
+ } | {
13
+ readonly ok: false;
14
+ readonly error: CommandError;
15
+ };
16
+ export interface CommandEnvelope<T = unknown> {
17
+ readonly schemaVersion: '1.0.0';
18
+ readonly command: ForgeaXCommand;
19
+ readonly ok: boolean;
20
+ readonly value?: T;
21
+ readonly error?: CommandError;
22
+ }
23
+ export interface ProjectFacts {
24
+ readonly root: string;
25
+ readonly id: string;
26
+ readonly name: string;
27
+ readonly entry: string;
28
+ readonly bootstrapEntry?: string;
29
+ readonly plugins: readonly GameProjectPluginEntry[];
30
+ readonly physics?: '2d' | '3d';
31
+ readonly defaultScene?: string;
32
+ readonly assetRoots: readonly string[];
33
+ readonly assetImporters?: readonly string[];
34
+ readonly assetPublicDir?: string;
35
+ readonly packageJson: Readonly<Record<string, unknown>>;
36
+ }
37
+ export interface ProjectCommandOptions {
38
+ readonly root?: string;
39
+ readonly json?: boolean;
40
+ }
41
+ export interface InitOptions extends ProjectCommandOptions {
42
+ readonly dryRun?: boolean;
43
+ readonly install?: boolean;
44
+ }
45
+ export interface NewOptions extends ProjectCommandOptions {
46
+ readonly dryRun?: boolean;
47
+ readonly template?: string;
48
+ }
49
+ export interface BuildOptions extends ProjectCommandOptions {
50
+ readonly base?: string;
51
+ readonly outDir?: string;
52
+ }
53
+ export interface PackageOptions extends ProjectCommandOptions {
54
+ readonly output?: string;
55
+ }
56
+ export interface AssetAddOptions extends ProjectCommandOptions {
57
+ readonly path: string;
58
+ readonly dryRun?: boolean;
59
+ }
60
+ export interface AssetInspectOptions extends ProjectCommandOptions {
61
+ readonly subject: string;
62
+ }
63
+ export interface ShaderCheckOptions extends ProjectCommandOptions {
64
+ readonly path?: string;
65
+ }
66
+ export interface OperationCommandOptions extends ProjectCommandOptions {
67
+ readonly id?: string;
68
+ readonly args?: string;
69
+ readonly input?: string;
70
+ readonly program?: string;
71
+ }
72
+ export interface PluginInstallOptions extends ProjectCommandOptions {
73
+ readonly id: string;
74
+ readonly module: string;
75
+ readonly realm?: 'host' | 'engine' | 'build';
76
+ readonly dependency?: string;
77
+ readonly dryRun?: boolean;
78
+ }
79
+ export interface PluginUninstallOptions extends ProjectCommandOptions {
80
+ readonly id: string;
81
+ readonly dependency?: string;
82
+ readonly dryRun?: boolean;
83
+ }
84
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/package.json ADDED
@@ -0,0 +1,95 @@
1
+ {
2
+ "name": "@forgeax/engine-devkit",
3
+ "version": "0.1.2",
4
+ "private": false,
5
+ "type": "module",
6
+ "license": "Apache-2.0",
7
+ "sideEffects": false,
8
+ "description": "ForgeaX external game project CLI and build orchestration.",
9
+ "bin": {
10
+ "forgeax": "./dist/cli.mjs"
11
+ },
12
+ "exports": {
13
+ ".": {
14
+ "types": "./dist/index.d.ts",
15
+ "import": "./dist/index.mjs"
16
+ },
17
+ "./cli": "./dist/cli.mjs",
18
+ "./package.json": "./package.json"
19
+ },
20
+ "main": "./dist/index.mjs",
21
+ "types": "./dist/index.d.ts",
22
+ "files": [
23
+ "dist",
24
+ "README.md",
25
+ "LICENSE"
26
+ ],
27
+ "dependencies": {
28
+ "@forgeax/engine-animation": "0.1.2",
29
+ "@forgeax/engine-app": "0.1.2",
30
+ "@forgeax/engine-assets-runtime": "0.1.2",
31
+ "@forgeax/engine-audio": "0.1.2",
32
+ "@forgeax/engine-audio-webaudio": "0.1.2",
33
+ "@forgeax/engine-fbx": "0.1.2",
34
+ "@forgeax/engine-font": "0.1.2",
35
+ "@forgeax/engine-geometry": "0.1.2",
36
+ "@forgeax/engine-gltf": "0.1.2",
37
+ "@forgeax/engine-image": "0.1.2",
38
+ "@forgeax/engine-input": "0.1.2",
39
+ "@forgeax/engine-pack": "0.1.2",
40
+ "@forgeax/engine-physics": "0.1.2",
41
+ "@forgeax/engine-plugin": "0.1.2",
42
+ "@forgeax/engine-preview": "0.1.2",
43
+ "@forgeax/engine-project": "0.1.2",
44
+ "@forgeax/engine-render": "0.1.2",
45
+ "@forgeax/engine-render-graph": "0.1.2",
46
+ "@forgeax/engine-rhi-debug": "0.1.2",
47
+ "@forgeax/engine-runtime": "0.1.2",
48
+ "@forgeax/engine-scene": "0.1.2",
49
+ "@forgeax/engine-shader-compiler": "0.1.2",
50
+ "@forgeax/engine-skinning": "0.1.2",
51
+ "@forgeax/engine-tool-runtime": "0.1.2",
52
+ "@forgeax/engine-types": "0.1.2",
53
+ "@forgeax/engine-vfx-compiler": "0.1.2",
54
+ "@forgeax/engine-vite-plugin-pack": "0.1.2",
55
+ "@forgeax/engine-vite-plugin-shader": "0.1.2",
56
+ "jiti": "1.21.7",
57
+ "playwright": "1.60.0",
58
+ "vite": "8.0.10",
59
+ "vitest": "4.1.5"
60
+ },
61
+ "devDependencies": {
62
+ "@forgeax/engine-rhi-null": "0.1.2",
63
+ "@types/node": "^20.14.0"
64
+ },
65
+ "forgeax": {
66
+ "metrics": {
67
+ "bundle-size": {
68
+ "enabled": true,
69
+ "path": "dist/cli.mjs",
70
+ "compression": "gzip"
71
+ },
72
+ "fps": {
73
+ "enabled": false,
74
+ "reason": "Node-only build orchestration; runtime FPS belongs to consumer games"
75
+ },
76
+ "bench": {
77
+ "enabled": false,
78
+ "reason": "CLI latency is not a runtime hot path"
79
+ },
80
+ "gate": {
81
+ "enabled": true,
82
+ "command": "pnpm test",
83
+ "cwd": "packages/devkit"
84
+ },
85
+ "spike-report": {
86
+ "enabled": false,
87
+ "reason": "production DevKit package"
88
+ }
89
+ }
90
+ },
91
+ "scripts": {
92
+ "build": "tsup",
93
+ "test": "vitest run"
94
+ }
95
+ }