@metamesh/cli 0.13.0 → 0.14.0

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 (69) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/README.md +22 -7
  3. package/dist/authoring/artifacts.d.ts +4 -0
  4. package/dist/authoring/artifacts.d.ts.map +1 -1
  5. package/dist/authoring/artifacts.js +4 -0
  6. package/dist/authoring/artifacts.js.map +1 -1
  7. package/dist/authoring/check.d.ts +1 -0
  8. package/dist/authoring/check.d.ts.map +1 -1
  9. package/dist/authoring/check.js +1 -0
  10. package/dist/authoring/check.js.map +1 -1
  11. package/dist/authoring/environment.d.ts +10 -0
  12. package/dist/authoring/environment.d.ts.map +1 -1
  13. package/dist/authoring/environment.js +9 -0
  14. package/dist/authoring/environment.js.map +1 -1
  15. package/dist/authoring/errors.d.ts +2 -0
  16. package/dist/authoring/errors.d.ts.map +1 -1
  17. package/dist/authoring/errors.js +2 -0
  18. package/dist/authoring/errors.js.map +1 -1
  19. package/dist/authoring/render.js +2 -2
  20. package/dist/authoring/render.js.map +1 -1
  21. package/dist/authoring/run.d.ts +4 -0
  22. package/dist/authoring/run.d.ts.map +1 -1
  23. package/dist/authoring/run.js +4 -0
  24. package/dist/authoring/run.js.map +1 -1
  25. package/dist/authoring/types.d.ts +40 -3
  26. package/dist/authoring/types.d.ts.map +1 -1
  27. package/dist/authoring/types.js +1 -0
  28. package/dist/authoring/types.js.map +1 -1
  29. package/dist/docs/guides/agent-authoring.md +64 -7
  30. package/dist/docs/guides/package.md +22 -7
  31. package/dist/docs/manifest.json +29 -29
  32. package/dist/docs/reference/authoring/AUTHORING_PROTOCOL_VERSION.md +2 -2
  33. package/dist/docs/reference/authoring/AuthoringDiagnostic.md +5 -2
  34. package/dist/docs/reference/authoring/AuthoringEnvironment.md +3 -2
  35. package/dist/docs/reference/authoring/AuthoringError.md +3 -2
  36. package/dist/docs/reference/authoring/AuthoringFailure-type.md +5 -2
  37. package/dist/docs/reference/authoring/AuthoringKind.md +3 -2
  38. package/dist/docs/reference/authoring/AuthoringPhase.md +3 -2
  39. package/dist/docs/reference/authoring/CapturedBuffer.md +3 -2
  40. package/dist/docs/reference/authoring/CapturedGeometry.md +3 -2
  41. package/dist/docs/reference/authoring/CapturedPart.md +7 -4
  42. package/dist/docs/reference/authoring/CapturedResource.md +3 -2
  43. package/dist/docs/reference/authoring/CapturedRun.md +3 -2
  44. package/dist/docs/reference/authoring/CapturedRunManifest.md +4 -2
  45. package/dist/docs/reference/authoring/CheckOptions.md +6 -2
  46. package/dist/docs/reference/authoring/CheckSuccess.md +3 -2
  47. package/dist/docs/reference/authoring/DocumentationEntry.md +4 -2
  48. package/dist/docs/reference/authoring/DocumentationManifest.md +3 -2
  49. package/dist/docs/reference/authoring/DocumentationSearchResult.md +3 -2
  50. package/dist/docs/reference/authoring/InstalledAuthoringPackage.md +3 -2
  51. package/dist/docs/reference/authoring/RenderCamera.md +1 -1
  52. package/dist/docs/reference/authoring/RenderFormat.md +1 -1
  53. package/dist/docs/reference/authoring/RenderOptions.md +1 -1
  54. package/dist/docs/reference/authoring/RenderResult.md +1 -1
  55. package/dist/docs/reference/authoring/RenderView.md +1 -1
  56. package/dist/docs/reference/authoring/RenderedImage.md +1 -1
  57. package/dist/docs/reference/authoring/RunOptions.md +10 -2
  58. package/dist/docs/reference/authoring/RunSuccess.md +3 -2
  59. package/dist/docs/reference/authoring/authoringFailure-value.md +3 -2
  60. package/dist/docs/reference/authoring/checkAuthoringSource.md +3 -2
  61. package/dist/docs/reference/authoring/discoverAuthoringEnvironment.md +6 -2
  62. package/dist/docs/reference/authoring/inspectCapturedRun.md +6 -2
  63. package/dist/docs/reference/authoring/installAuthoringBrowser.md +1 -1
  64. package/dist/docs/reference/authoring/readCapturedRun.md +1 -1
  65. package/dist/docs/reference/authoring/renderCapturedRun.md +1 -1
  66. package/dist/docs/reference/authoring/runAuthoringSource.md +6 -2
  67. package/dist/docs/reference/authoring/searchAuthoringDocumentation.md +6 -2
  68. package/dist/docs/reference/authoring/showAuthoringDocumentation.md +3 -2
  69. package/package.json +6 -6
@@ -1,60 +1,79 @@
1
- import type { Bounds3, FinalizedModel, GenerationDiagnostic, ModelingLimits, Vector3 } from "@metamesh/modeling";
1
+ import type { Bounds3, FinalizedModel, GenerationDiagnostic, ModelingLimits, Vector3Tuple } from "@metamesh/modeling";
2
2
  import type { ModelDependencies, SnapshotPart } from "@metamesh/modeling/engine";
3
+ /** Version of the CLI authoring protocol, independent of package SemVer and engine compatibility. */
3
4
  export declare const AUTHORING_PROTOCOL_VERSION = 1;
5
+ /** Selects a standalone ModelProgram entry or an SDK Generator module with a definition. */
4
6
  export type AuthoringKind = "model" | "generator";
7
+ /** The workflow stage that rejected an invocation, source, asset, or captured artifact. */
5
8
  export type AuthoringPhase = "invocation" | "environment" | "check" | "parameters" | "assets" | "bundle" | "execute" | "artifact" | "render";
9
+ /** A structured issue with optional source location, parameter association, and geometry context. */
6
10
  export interface AuthoringDiagnostic {
7
11
  readonly code: string;
8
12
  readonly message: string;
9
13
  readonly severity: "error" | "warning";
10
14
  readonly file?: string;
15
+ /** One-based source line, when available. */
11
16
  readonly line?: number;
17
+ /** One-based source column, when available. */
12
18
  readonly column?: number;
13
19
  readonly parameterId?: string;
14
20
  readonly path?: readonly (number | string)[];
15
21
  readonly context?: Readonly<Record<string, unknown>>;
16
22
  }
23
+ /** An unsuccessful command outcome; a failure directory does not establish a complete capture. */
17
24
  export interface AuthoringFailure {
18
25
  readonly success: false;
19
26
  readonly phase: AuthoringPhase;
27
+ /** 1 for source or generation failures; 2 for invocation, environment, artifact, or tooling failures. */
20
28
  readonly exitCode: 1 | 2;
21
29
  readonly diagnostics: readonly AuthoringDiagnostic[];
30
+ /** This attempt's directory, when created; read its failure metadata instead of inspecting geometry. */
22
31
  readonly runDirectory?: string;
23
32
  }
33
+ /** Metadata for one installed Markdown guide or public API symbol. */
24
34
  export interface DocumentationEntry {
25
35
  readonly id: string;
26
36
  readonly title: string;
27
37
  readonly summary: string;
38
+ /** Forward-slash relative path beside the owning documentation manifest. */
28
39
  readonly path: string;
29
40
  readonly importPath: string;
30
41
  readonly availability: string;
31
42
  readonly canonical: string;
32
43
  readonly keywords: readonly string[];
33
44
  }
45
+ /** Exact-package-version index exposed through the package's docs/manifest.json export. */
34
46
  export interface DocumentationManifest {
35
47
  readonly formatVersion: 1;
36
48
  readonly packageName: string;
37
49
  readonly packageVersion: string;
38
50
  readonly documents: readonly DocumentationEntry[];
39
51
  }
52
+ /** A project-local MetaMesh package and its verified documentation index. */
40
53
  export interface InstalledAuthoringPackage {
41
54
  readonly name: string;
42
55
  readonly version: string;
43
56
  readonly manifestPath: string;
44
57
  readonly documentCount: number;
45
58
  }
59
+ /** The selected project's supported protocol, matching package releases, and available workflows. */
46
60
  export interface AuthoringEnvironment {
47
61
  readonly authoringProtocolVersion: typeof AUTHORING_PROTOCOL_VERSION;
48
62
  readonly project: string;
49
63
  readonly packages: readonly InstalledAuthoringPackage[];
50
64
  readonly capabilities: readonly string[];
51
65
  }
66
+ /** Source entry contract and project-local resolution settings for semantic checking. */
52
67
  export interface CheckOptions {
68
+ /** Entry path, resolved from project. */
53
69
  readonly entry: string;
54
70
  readonly kind: AuthoringKind;
71
+ /** Package and path resolution root; defaults to the current working directory. */
55
72
  readonly project?: string;
73
+ /** Explicit configuration path relative to project; otherwise the entry's nearest tsconfig is used. */
56
74
  readonly tsconfig?: string;
57
75
  }
76
+ /** A successful semantic check; source has not been evaluated and no geometry is captured. */
58
77
  export interface CheckSuccess {
59
78
  readonly success: true;
60
79
  readonly entry: string;
@@ -62,40 +81,55 @@ export interface CheckSuccess {
62
81
  readonly tsconfig?: string;
63
82
  readonly diagnostics: readonly AuthoringDiagnostic[];
64
83
  }
84
+ /** Inputs and bounded execution policy for one checked, trusted local source attempt. */
65
85
  export interface RunOptions extends CheckOptions {
86
+ /** Generator overrides merged with definition defaults, or the standalone model's raw parameter map. */
66
87
  readonly params?: Readonly<Record<string, unknown>>;
88
+ /** Local font descriptor JSON path relative to project; no assets are downloaded. */
67
89
  readonly fontFixtures?: string;
90
+ /** Parent for a unique attempt directory; defaults to .metamesh/runs beneath project. */
68
91
  readonly output?: string;
92
+ /** Child execution deadline in milliseconds, from 1 to 3600000; defaults to 30000. */
69
93
  readonly timeoutMs?: number;
94
+ /** Engine resource ceilings may be lowered from their defaults, never raised. */
70
95
  readonly limits?: Partial<ModelingLimits>;
96
+ /** Export the completed snapshot as 3MF in this run; defaults to false. */
71
97
  readonly export3mf?: boolean;
98
+ /** Receives combined child stdout/stderr, truncated after 64 KiB. */
72
99
  readonly onLog?: (text: string) => void;
73
100
  }
101
+ /** A captured file's relative path, byte length, and SHA-256 integrity digest. */
74
102
  export interface CapturedBuffer {
75
103
  readonly path: string;
76
104
  readonly bytes: number;
77
105
  readonly sha256: string;
78
106
  }
107
+ /** A shared local-space mesh resource and its measurements, before per-part placement. */
79
108
  export interface CapturedResource {
80
109
  readonly id: string;
81
110
  readonly positions: CapturedBuffer;
82
111
  readonly indices: CapturedBuffer;
83
112
  readonly measurements: SnapshotPart["measurements"];
84
113
  }
114
+ /** Semantic part identity and appearance referencing a shared mesh with separate placement. */
85
115
  export interface CapturedPart {
86
116
  readonly id: string;
87
117
  readonly resourceId: string;
88
- readonly position: Vector3;
89
- readonly rotation: Vector3;
118
+ /** World translation in millimetres, applied after rotation. */
119
+ readonly position: Vector3Tuple;
120
+ /** Global XYZ rotation in degrees, applied once to local geometry. */
121
+ readonly rotation: Vector3Tuple;
90
122
  readonly color?: string;
91
123
  readonly measurements: SnapshotPart["measurements"];
92
124
  }
125
+ /** A completed attempt's provenance, effective inputs, diagnostics, and captured geometry. */
93
126
  export interface CapturedRunManifest {
94
127
  readonly formatVersion: 1;
95
128
  readonly status: "complete";
96
129
  readonly runId: string;
97
130
  readonly createdAt: string;
98
131
  readonly kind: AuthoringKind;
132
+ /** Project-relative entry and fingerprint of bundled local source files. */
99
133
  readonly source: {
100
134
  readonly entry: string;
101
135
  readonly fingerprint: string;
@@ -120,16 +154,19 @@ export interface CapturedRunManifest {
120
154
  readonly parts: readonly CapturedPart[];
121
155
  readonly export3mf?: CapturedBuffer;
122
156
  }
157
+ /** Validated local-space mesh buffers loaded from a completed captured resource. */
123
158
  export interface CapturedGeometry {
124
159
  readonly id: string;
125
160
  readonly positions: Float32Array;
126
161
  readonly indices: Uint32Array;
127
162
  }
163
+ /** A validated successful capture with its manifest and shared local geometry buffers. */
128
164
  export interface CapturedRun {
129
165
  readonly directory: string;
130
166
  readonly manifest: CapturedRunManifest;
131
167
  readonly resources: readonly CapturedGeometry[];
132
168
  }
169
+ /** A successful checked execution; use this exact directory for subsequent inspection and rendering. */
133
170
  export interface RunSuccess {
134
171
  readonly success: true;
135
172
  readonly runDirectory: string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/authoring/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,OAAO,EACP,cAAc,EACd,oBAAoB,EACpB,cAAc,EACd,OAAO,EACR,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAEjF,eAAO,MAAM,0BAA0B,IAAI,CAAC;AAC5C,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,WAAW,CAAC;AAClD,MAAM,MAAM,cAAc,GACtB,YAAY,GACZ,aAAa,GACb,OAAO,GACP,YAAY,GACZ,QAAQ,GACR,QAAQ,GACR,SAAS,GACT,UAAU,GACV,QAAQ,CAAC;AACb,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,EAAE,OAAO,GAAG,SAAS,CAAC;IACvC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,IAAI,CAAC,EAAE,SAAS,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC;IAC7C,QAAQ,CAAC,OAAO,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CACtD;AACD,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,OAAO,EAAE,KAAK,CAAC;IACxB,QAAQ,CAAC,KAAK,EAAE,cAAc,CAAC;IAC/B,QAAQ,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,CAAC;IACzB,QAAQ,CAAC,WAAW,EAAE,SAAS,mBAAmB,EAAE,CAAC;IACrD,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;CAChC;AACD,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAC;CACtC;AACD,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,aAAa,EAAE,CAAC,CAAC;IAC1B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,SAAS,EAAE,SAAS,kBAAkB,EAAE,CAAC;CACnD;AACD,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;CAChC;AACD,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,wBAAwB,EAAE,OAAO,0BAA0B,CAAC;IACrE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,EAAE,SAAS,yBAAyB,EAAE,CAAC;IACxD,QAAQ,CAAC,YAAY,EAAE,SAAS,MAAM,EAAE,CAAC;CAC1C;AACD,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC;IAC7B,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;CAC5B;AACD,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC;IACvB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC;IAC7B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,WAAW,EAAE,SAAS,mBAAmB,EAAE,CAAC;CACtD;AACD,MAAM,WAAW,UAAW,SAAQ,YAAY;IAC9C,QAAQ,CAAC,MAAM,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IACpD,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;IAC1C,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;IAC7B,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CACzC;AACD,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AACD,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,SAAS,EAAE,cAAc,CAAC;IACnC,QAAQ,CAAC,OAAO,EAAE,cAAc,CAAC;IACjC,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC,cAAc,CAAC,CAAC;CACrD;AACD,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC,cAAc,CAAC,CAAC;CACrD;AACD,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,aAAa,EAAE,CAAC,CAAC;IAC1B,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;IAC5B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE;QAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC;IAC1E,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACpD,QAAQ,CAAC,UAAU,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IACvD,uGAAuG;IACvG,QAAQ,CAAC,MAAM,EAAE,SAAS;QACxB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;QACxB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;QAC1B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;KACzB,EAAE,CAAC;IACJ,QAAQ,CAAC,MAAM,EAAE;QAAE,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAA;KAAE,CAAC;IACjF,QAAQ,CAAC,WAAW,EAAE,SAAS,oBAAoB,EAAE,CAAC;IACtD,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,KAAK,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC;IACxC,QAAQ,CAAC,YAAY,EAAE,iBAAiB,CAAC;IACzC,QAAQ,CAAC,SAAS,EAAE,SAAS,gBAAgB,EAAE,CAAC;IAChD,QAAQ,CAAC,KAAK,EAAE,SAAS,YAAY,EAAE,CAAC;IACxC,QAAQ,CAAC,SAAS,CAAC,EAAE,cAAc,CAAC;CACrC;AACD,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,SAAS,EAAE,YAAY,CAAC;IACjC,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC;CAC/B;AACD,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,QAAQ,EAAE,mBAAmB,CAAC;IACvC,QAAQ,CAAC,SAAS,EAAE,SAAS,gBAAgB,EAAE,CAAC;CACjD;AACD,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC;IACvB,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,QAAQ,EAAE,mBAAmB,CAAC;CACxC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/authoring/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,OAAO,EACP,cAAc,EACd,oBAAoB,EACpB,cAAc,EACd,YAAY,EACb,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAEjF,qGAAqG;AACrG,eAAO,MAAM,0BAA0B,IAAI,CAAC;AAC5C,4FAA4F;AAC5F,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,WAAW,CAAC;AAClD,2FAA2F;AAC3F,MAAM,MAAM,cAAc,GACtB,YAAY,GACZ,aAAa,GACb,OAAO,GACP,YAAY,GACZ,QAAQ,GACR,QAAQ,GACR,SAAS,GACT,UAAU,GACV,QAAQ,CAAC;AACb,qGAAqG;AACrG,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,EAAE,OAAO,GAAG,SAAS,CAAC;IACvC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,6CAA6C;IAC7C,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,+CAA+C;IAC/C,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,IAAI,CAAC,EAAE,SAAS,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC;IAC7C,QAAQ,CAAC,OAAO,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CACtD;AACD,kGAAkG;AAClG,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,OAAO,EAAE,KAAK,CAAC;IACxB,QAAQ,CAAC,KAAK,EAAE,cAAc,CAAC;IAC/B,yGAAyG;IACzG,QAAQ,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,CAAC;IACzB,QAAQ,CAAC,WAAW,EAAE,SAAS,mBAAmB,EAAE,CAAC;IACrD,wGAAwG;IACxG,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;CAChC;AACD,sEAAsE;AACtE,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,4EAA4E;IAC5E,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAC;CACtC;AACD,2FAA2F;AAC3F,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,aAAa,EAAE,CAAC,CAAC;IAC1B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,SAAS,EAAE,SAAS,kBAAkB,EAAE,CAAC;CACnD;AACD,6EAA6E;AAC7E,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;CAChC;AACD,qGAAqG;AACrG,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,wBAAwB,EAAE,OAAO,0BAA0B,CAAC;IACrE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,EAAE,SAAS,yBAAyB,EAAE,CAAC;IACxD,QAAQ,CAAC,YAAY,EAAE,SAAS,MAAM,EAAE,CAAC;CAC1C;AACD,yFAAyF;AACzF,MAAM,WAAW,YAAY;IAC3B,yCAAyC;IACzC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC;IAC7B,mFAAmF;IACnF,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,uGAAuG;IACvG,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;CAC5B;AACD,8FAA8F;AAC9F,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC;IACvB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC;IAC7B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,WAAW,EAAE,SAAS,mBAAmB,EAAE,CAAC;CACtD;AACD,yFAAyF;AACzF,MAAM,WAAW,UAAW,SAAQ,YAAY;IAC9C,wGAAwG;IACxG,QAAQ,CAAC,MAAM,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IACpD,qFAAqF;IACrF,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAC/B,yFAAyF;IACzF,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,sFAAsF;IACtF,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,iFAAiF;IACjF,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;IAC1C,2EAA2E;IAC3E,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;IAC7B,qEAAqE;IACrE,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CACzC;AACD,kFAAkF;AAClF,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AACD,0FAA0F;AAC1F,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,SAAS,EAAE,cAAc,CAAC;IACnC,QAAQ,CAAC,OAAO,EAAE,cAAc,CAAC;IACjC,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC,cAAc,CAAC,CAAC;CACrD;AACD,+FAA+F;AAC/F,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,gEAAgE;IAChE,QAAQ,CAAC,QAAQ,EAAE,YAAY,CAAC;IAChC,sEAAsE;IACtE,QAAQ,CAAC,QAAQ,EAAE,YAAY,CAAC;IAChC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC,cAAc,CAAC,CAAC;CACrD;AACD,8FAA8F;AAC9F,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,aAAa,EAAE,CAAC,CAAC;IAC1B,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;IAC5B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC;IAC7B,4EAA4E;IAC5E,QAAQ,CAAC,MAAM,EAAE;QAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC;IAC1E,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACpD,QAAQ,CAAC,UAAU,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IACvD,uGAAuG;IACvG,QAAQ,CAAC,MAAM,EAAE,SAAS;QACxB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;QACxB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;QAC1B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;KACzB,EAAE,CAAC;IACJ,QAAQ,CAAC,MAAM,EAAE;QAAE,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAA;KAAE,CAAC;IACjF,QAAQ,CAAC,WAAW,EAAE,SAAS,oBAAoB,EAAE,CAAC;IACtD,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,KAAK,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC;IACxC,QAAQ,CAAC,YAAY,EAAE,iBAAiB,CAAC;IACzC,QAAQ,CAAC,SAAS,EAAE,SAAS,gBAAgB,EAAE,CAAC;IAChD,QAAQ,CAAC,KAAK,EAAE,SAAS,YAAY,EAAE,CAAC;IACxC,QAAQ,CAAC,SAAS,CAAC,EAAE,cAAc,CAAC;CACrC;AACD,oFAAoF;AACpF,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,SAAS,EAAE,YAAY,CAAC;IACjC,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC;CAC/B;AACD,0FAA0F;AAC1F,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,QAAQ,EAAE,mBAAmB,CAAC;IACvC,QAAQ,CAAC,SAAS,EAAE,SAAS,gBAAgB,EAAE,CAAC;CACjD;AACD,wGAAwG;AACxG,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC;IACvB,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,QAAQ,EAAE,mBAAmB,CAAC;CACxC"}
@@ -1,2 +1,3 @@
1
+ /** Version of the CLI authoring protocol, independent of package SemVer and engine compatibility. */
1
2
  export const AUTHORING_PROTOCOL_VERSION = 1;
2
3
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/authoring/types.ts"],"names":[],"mappings":"AASA,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/authoring/types.ts"],"names":[],"mappings":"AASA,qGAAqG;AACrG,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC"}
@@ -14,18 +14,26 @@ Install Modeling for your model code and the CLI for the local authoring workflo
14
14
  ```bash
15
15
  pnpm add @metamesh/modeling
16
16
  pnpm add -D @metamesh/cli
17
- pnpm exec metamesh environment
17
+ pnpm exec metamesh environment --json
18
18
  pnpm exec metamesh setup
19
19
  ```
20
20
 
21
21
  `environment` reports project-resolved versions, documentation locations, available capabilities,
22
- and `authoringProtocolVersion: 1`. `setup` prints skill installation guidance and a project-instruction
23
- snippet for you to review. It does not modify your project or install anything.
22
+ and `authoringProtocolVersion: 1`. An agent integration should check that protocol value before
23
+ using the commands. Missing packages, mismatched releases, or an unsupported protocol need an
24
+ environment fix before authoring.
24
25
 
25
26
  Add the Generator SDK as a direct dependency when defining Generators, and Testkit when writing
26
27
  automated tests. A project that only runs ordinary models needs Modeling and the CLI as its direct
27
28
  dependencies. Keep installed MetaMesh packages on matching releases.
28
29
 
30
+ | Component | Responsibility |
31
+ | ------------------------- | --------------------------------------------------------------------------------------------- |
32
+ | `@metamesh/modeling` | Geometry operations, synchronous generation, engine sessions, and completed snapshots |
33
+ | `@metamesh/generator-sdk` | Serializable controls, parameter types and validation, and Generator module envelopes |
34
+ | `@metamesh/cli` | Installed documentation lookup, TypeScript checking, captured runs, inspection, and rendering |
35
+ | `@metamesh/testkit` | Test runners, fixtures, and assertions used by your existing test framework |
36
+
29
37
  Every public package exposes its offline documentation manifest through `./docs/manifest.json`.
30
38
  The CLI searches the packages installed in the selected project. Find a topic in the bounded index,
31
39
  then read the returned document ID:
@@ -38,6 +46,24 @@ pnpm exec metamesh docs show modeling/reference/model/cylinder
38
46
  Documentation is resolved from the selected project through package exports. No global installation
39
47
  or documentation fetched from a moving Git branch replaces the installed version.
40
48
 
49
+ ### Give an agent the same workflow
50
+
51
+ `setup` prints skill installation guidance and a project-instruction snippet for review. It does
52
+ not modify files, install a skill, or initialize a model. The optional `metamesh-developer` skill
53
+ describes the authoring and verification workflow; `metamesh-docs` supports documentation work.
54
+ Both are maintained separately in `metamesh-studio/metamesh-skills`.
55
+
56
+ Use a reviewed skill snapshot provided by your project or installed through your agent's skill
57
+ tooling. The printed GitHub installation source must be published before that command can work;
58
+ a skill is optional for the CLI workflow below. Skills teach the process. The installed npm
59
+ documentation owns exact signatures, import paths, units, lifecycle, and availability.
60
+
61
+ Project instructions should ask the agent to discover the environment, look up relevant installed
62
+ topics, check and run the current source, then inspect measurements and render useful views from
63
+ that same run directory. Include the commands and required checks that belong to your project.
64
+ When targeting another project directory, pass `--project PATH` consistently so discovery, lookup,
65
+ checking, and execution resolve the same installation.
66
+
41
67
  ## Model entries
42
68
 
43
69
  A model entry default-exports an ordinary `ModelProgram`. It imports the real package; Studio's
@@ -164,10 +190,41 @@ Install Testkit separately when you want assertions and fixtures for your existi
164
190
  pnpm add -D @metamesh/testkit
165
191
  ```
166
192
 
167
- Use its assertions to check dimensions, topology, defaults,
168
- presets, and parameter variations. Compare physical measurements with explicit tolerances;
169
- rendered views complement those checks. A valid solid alone does not prove a suitable fit or
170
- manufacturable wall thickness.
193
+ Use `createGeneratorTestRunner(definition, runtime)` for a Generator's persistent generation
194
+ session. Its `execute` method returns a discriminated result: handle `type: "invalid"` before
195
+ reading a generated `model`. Dispose each successful `model` when finished and dispose the runner
196
+ separately; snapshots remain usable after the runner is disposed.
197
+ Unexpected execution or malformed-output errors reject instead of returning an `invalid` result.
198
+ For an ordinary `ModelProgram`, use an [engine session](https://metamesh.studio/docs/engine/hosting) and the same assertions
199
+ against its completed snapshot.
200
+
201
+ The runner normalizes saved values. To probe deliberately invalid typed inputs without that
202
+ recovery, call `runner.validate(parameters, { normalize: false })`. Validation checks declarations
203
+ and reached assertions without finalizing output; execute representative valid combinations too.
204
+ The CLI's strict overrides serve a different purpose: they reject invalid or unknown values
205
+ before execution instead of recovering saved state.
206
+
207
+ | Helper | What to check |
208
+ | ------------------------------ | ------------------------------------------------------------------ |
209
+ | `expectSerializableDefinition` | Strict definition parsing and a canonical JSON round trip |
210
+ | `expectValidDefaults` | Strict parameter decoding and agreement with defaults |
211
+ | `expectValidPresets` | Serializable preset metadata; execute presets for domain rules |
212
+ | `expectValidParts` | Part metadata, closed oriented topology, and native reconstruction |
213
+ | `expectMeshMeasurements` | Bounds, area, signed volume, and connected-component count |
214
+
215
+ Compare physical measurements with explicit absolute tolerances; bounds use millimetres, area
216
+ square millimetres, and volume cubic millimetres. Component counts are exact. Rendered views
217
+ complement those assertions. A valid solid alone does not prove a suitable fit or manufacturable
218
+ wall thickness.
219
+
220
+ For Font controls, supply the runner's `prepareServices` option using checked-in licensed bytes.
221
+ `prepareFontTestServices` from `@metamesh/testkit/fonts` verifies immutable font revisions and
222
+ prepares services without catalog downloads. Modeling's optional font peers are still required.
223
+ Use installed documentation for the exact runner and fixture signatures:
224
+
225
+ ```bash
226
+ pnpm exec metamesh docs show testkit/guide/testing
227
+ ```
171
228
 
172
229
  Testkit has no compiler, renderer, or browser dependencies. The CLI owns those tools and its
173
230
  reusable Node functions under `@metamesh/cli/authoring`; integrations can call them without
@@ -8,7 +8,7 @@ Node-only `/authoring` functions use the production engine and version-matched i
8
8
 
9
9
  ## Installation
10
10
 
11
- Install matching releases in the project where you author models:
11
+ Install the same exact release of each MetaMesh package in the project where you author models:
12
12
 
13
13
  ```bash
14
14
  pnpm add @metamesh/modeling
@@ -24,7 +24,7 @@ Chromium is installed separately and never downloaded by checking or generation.
24
24
  ## Local workflow
25
25
 
26
26
  ```bash
27
- pnpm exec metamesh environment
27
+ pnpm exec metamesh environment --json
28
28
  pnpm exec metamesh docs search "extrude"
29
29
  pnpm exec metamesh docs show TOPIC_ID
30
30
  pnpm exec metamesh check model.ts --kind model
@@ -34,6 +34,12 @@ pnpm exec metamesh browser install
34
34
  pnpm exec metamesh render RUN_DIRECTORY --views isometric,front,top,right
35
35
  ```
36
36
 
37
+ `environment` reports `authoringProtocolVersion: 1`, installed package versions, capabilities,
38
+ and documentation manifest paths. Mixed package versions or stale documentation fail before
39
+ generation. Commands resolve packages and relative paths from the current project; pass
40
+ `--project PATH` to select another project explicitly. `TOPIC_ID` comes from documentation search;
41
+ `RUN_DIRECTORY` comes from a successful run.
42
+
37
43
  `run` includes semantic TypeScript checking and executes in a disposable child process with a
38
44
  30-second default deadline. It saves each attempt beneath `.metamesh/runs` with source identity,
39
45
  parameters, diagnostics, measurements, and hashed geometry buffers. `inspect` and `render` validate
@@ -49,7 +55,10 @@ receive no injected services. Both support normal local imports and installed de
49
55
  virtual `@metamesh/project` module is unavailable.
50
56
 
51
57
  Use `--help` on each command for parameters, fonts, resource limits, export, and image options.
52
- `metamesh setup` prints skill installation and project-instruction guidance without modifying files.
58
+ `metamesh setup` prints installation guidance for `metamesh-developer` from the canonical
59
+ `metamesh-studio/metamesh-skills` repository and a project-instruction suggestion without modifying
60
+ files. Its printed GitHub installation command becomes usable when that repository is published;
61
+ the skill supplies the workflow, while installed package documentation supplies exact API facts.
53
62
 
54
63
  ## Programmatic API and documentation
55
64
 
@@ -62,10 +71,16 @@ if (result.success) {
62
71
  }
63
72
  ```
64
73
 
65
- Resolve `@metamesh/cli/docs/manifest.json` for the installed Markdown reference. The
66
- [authoring guide](https://metamesh.studio/docs/develop/agent-authoring) explains local font fixtures,
67
- artifacts, rendering, and agent integration. The reusable authoring functions and command
68
- implementation stay in this package; geometry and Generator contracts retain their existing owners.
74
+ Resolve `@metamesh/cli/docs/manifest.json` for the installed Markdown reference, or run
75
+ `pnpm exec metamesh docs show cli/guide/agent-authoring` for the complete authoring workflow.
76
+ The [authoring guide source](https://github.com/JasonKoolman/metamesh/blob/main/apps/web/content/docs/develop/agent-authoring.mdx)
77
+ also covers local font fixtures, artifacts, rendering, and agent integration. Until the public
78
+ documentation site launches, use installed documentation, repository sources, or
79
+ [run the docs locally](https://github.com/JasonKoolman/metamesh/blob/main/apps/web/README.md#local-use).
80
+
81
+ The reusable authoring functions and command implementation stay in this package; geometry and
82
+ Generator contracts retain their existing owners. Testing assertions and font-fixture adapters
83
+ remain in Testkit.
69
84
 
70
85
  ## License
71
86
 
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "formatVersion": 1,
3
3
  "packageName": "@metamesh/cli",
4
- "packageVersion": "0.13.0",
4
+ "packageVersion": "0.14.0",
5
5
  "documents": [
6
6
  {
7
7
  "id": "cli/guide/agent-authoring",
@@ -35,7 +35,7 @@
35
35
  {
36
36
  "id": "cli/reference/authoring/AUTHORING_PROTOCOL_VERSION",
37
37
  "title": "AUTHORING_PROTOCOL_VERSION",
38
- "summary": "AUTHORING_PROTOCOL_VERSION exported from @metamesh/cli/authoring.",
38
+ "summary": "Version of the CLI authoring protocol, independent of package SemVer and engine compatibility.",
39
39
  "path": "reference/authoring/AUTHORING_PROTOCOL_VERSION.md",
40
40
  "importPath": "@metamesh/cli/authoring",
41
41
  "availability": "Local Node authoring",
@@ -49,7 +49,7 @@
49
49
  {
50
50
  "id": "cli/reference/authoring/AuthoringDiagnostic",
51
51
  "title": "AuthoringDiagnostic",
52
- "summary": "AuthoringDiagnostic exported from @metamesh/cli/authoring.",
52
+ "summary": "A structured issue with optional source location, parameter association, and geometry context.",
53
53
  "path": "reference/authoring/AuthoringDiagnostic.md",
54
54
  "importPath": "@metamesh/cli/authoring",
55
55
  "availability": "Local Node authoring",
@@ -63,7 +63,7 @@
63
63
  {
64
64
  "id": "cli/reference/authoring/AuthoringEnvironment",
65
65
  "title": "AuthoringEnvironment",
66
- "summary": "AuthoringEnvironment exported from @metamesh/cli/authoring.",
66
+ "summary": "The selected project's supported protocol, matching package releases, and available workflows.",
67
67
  "path": "reference/authoring/AuthoringEnvironment.md",
68
68
  "importPath": "@metamesh/cli/authoring",
69
69
  "availability": "Local Node authoring",
@@ -77,7 +77,7 @@
77
77
  {
78
78
  "id": "cli/reference/authoring/AuthoringError",
79
79
  "title": "AuthoringError",
80
- "summary": "AuthoringError exported from @metamesh/cli/authoring.",
80
+ "summary": "A classified authoring exception retaining its workflow phase, stable code, and exit status.",
81
81
  "path": "reference/authoring/AuthoringError.md",
82
82
  "importPath": "@metamesh/cli/authoring",
83
83
  "availability": "Local Node authoring",
@@ -91,7 +91,7 @@
91
91
  {
92
92
  "id": "cli/reference/authoring/authoringFailure",
93
93
  "title": "authoringFailure",
94
- "summary": "authoringFailure exported from @metamesh/cli/authoring.",
94
+ "summary": "Converts a thrown value to a failure envelope, preserving classified authoring diagnostics.",
95
95
  "path": "reference/authoring/authoringFailure-value.md",
96
96
  "importPath": "@metamesh/cli/authoring",
97
97
  "availability": "Local Node authoring",
@@ -105,7 +105,7 @@
105
105
  {
106
106
  "id": "cli/reference/authoring/AuthoringFailure",
107
107
  "title": "AuthoringFailure",
108
- "summary": "AuthoringFailure exported from @metamesh/cli/authoring.",
108
+ "summary": "An unsuccessful command outcome; a failure directory does not establish a complete capture.",
109
109
  "path": "reference/authoring/AuthoringFailure-type.md",
110
110
  "importPath": "@metamesh/cli/authoring",
111
111
  "availability": "Local Node authoring",
@@ -119,7 +119,7 @@
119
119
  {
120
120
  "id": "cli/reference/authoring/AuthoringKind",
121
121
  "title": "AuthoringKind",
122
- "summary": "AuthoringKind exported from @metamesh/cli/authoring.",
122
+ "summary": "Selects a standalone ModelProgram entry or an SDK Generator module with a definition.",
123
123
  "path": "reference/authoring/AuthoringKind.md",
124
124
  "importPath": "@metamesh/cli/authoring",
125
125
  "availability": "Local Node authoring",
@@ -133,7 +133,7 @@
133
133
  {
134
134
  "id": "cli/reference/authoring/AuthoringPhase",
135
135
  "title": "AuthoringPhase",
136
- "summary": "AuthoringPhase exported from @metamesh/cli/authoring.",
136
+ "summary": "The workflow stage that rejected an invocation, source, asset, or captured artifact.",
137
137
  "path": "reference/authoring/AuthoringPhase.md",
138
138
  "importPath": "@metamesh/cli/authoring",
139
139
  "availability": "Local Node authoring",
@@ -147,7 +147,7 @@
147
147
  {
148
148
  "id": "cli/reference/authoring/CapturedBuffer",
149
149
  "title": "CapturedBuffer",
150
- "summary": "CapturedBuffer exported from @metamesh/cli/authoring.",
150
+ "summary": "A captured file's relative path, byte length, and SHA-256 integrity digest.",
151
151
  "path": "reference/authoring/CapturedBuffer.md",
152
152
  "importPath": "@metamesh/cli/authoring",
153
153
  "availability": "Local Node authoring",
@@ -161,7 +161,7 @@
161
161
  {
162
162
  "id": "cli/reference/authoring/CapturedGeometry",
163
163
  "title": "CapturedGeometry",
164
- "summary": "CapturedGeometry exported from @metamesh/cli/authoring.",
164
+ "summary": "Validated local-space mesh buffers loaded from a completed captured resource.",
165
165
  "path": "reference/authoring/CapturedGeometry.md",
166
166
  "importPath": "@metamesh/cli/authoring",
167
167
  "availability": "Local Node authoring",
@@ -175,7 +175,7 @@
175
175
  {
176
176
  "id": "cli/reference/authoring/CapturedPart",
177
177
  "title": "CapturedPart",
178
- "summary": "CapturedPart exported from @metamesh/cli/authoring.",
178
+ "summary": "Semantic part identity and appearance referencing a shared mesh with separate placement.",
179
179
  "path": "reference/authoring/CapturedPart.md",
180
180
  "importPath": "@metamesh/cli/authoring",
181
181
  "availability": "Local Node authoring",
@@ -189,7 +189,7 @@
189
189
  {
190
190
  "id": "cli/reference/authoring/CapturedResource",
191
191
  "title": "CapturedResource",
192
- "summary": "CapturedResource exported from @metamesh/cli/authoring.",
192
+ "summary": "A shared local-space mesh resource and its measurements, before per-part placement.",
193
193
  "path": "reference/authoring/CapturedResource.md",
194
194
  "importPath": "@metamesh/cli/authoring",
195
195
  "availability": "Local Node authoring",
@@ -203,7 +203,7 @@
203
203
  {
204
204
  "id": "cli/reference/authoring/CapturedRun",
205
205
  "title": "CapturedRun",
206
- "summary": "CapturedRun exported from @metamesh/cli/authoring.",
206
+ "summary": "A validated successful capture with its manifest and shared local geometry buffers.",
207
207
  "path": "reference/authoring/CapturedRun.md",
208
208
  "importPath": "@metamesh/cli/authoring",
209
209
  "availability": "Local Node authoring",
@@ -217,7 +217,7 @@
217
217
  {
218
218
  "id": "cli/reference/authoring/CapturedRunManifest",
219
219
  "title": "CapturedRunManifest",
220
- "summary": "CapturedRunManifest exported from @metamesh/cli/authoring.",
220
+ "summary": "A completed attempt's provenance, effective inputs, diagnostics, and captured geometry.",
221
221
  "path": "reference/authoring/CapturedRunManifest.md",
222
222
  "importPath": "@metamesh/cli/authoring",
223
223
  "availability": "Local Node authoring",
@@ -231,7 +231,7 @@
231
231
  {
232
232
  "id": "cli/reference/authoring/checkAuthoringSource",
233
233
  "title": "checkAuthoringSource",
234
- "summary": "checkAuthoringSource exported from @metamesh/cli/authoring.",
234
+ "summary": "Checks strict TypeScript and the selected entry-module contract without evaluating author source.",
235
235
  "path": "reference/authoring/checkAuthoringSource.md",
236
236
  "importPath": "@metamesh/cli/authoring",
237
237
  "availability": "Local Node authoring",
@@ -245,7 +245,7 @@
245
245
  {
246
246
  "id": "cli/reference/authoring/CheckOptions",
247
247
  "title": "CheckOptions",
248
- "summary": "CheckOptions exported from @metamesh/cli/authoring.",
248
+ "summary": "Source entry contract and project-local resolution settings for semantic checking.",
249
249
  "path": "reference/authoring/CheckOptions.md",
250
250
  "importPath": "@metamesh/cli/authoring",
251
251
  "availability": "Local Node authoring",
@@ -259,7 +259,7 @@
259
259
  {
260
260
  "id": "cli/reference/authoring/CheckSuccess",
261
261
  "title": "CheckSuccess",
262
- "summary": "CheckSuccess exported from @metamesh/cli/authoring.",
262
+ "summary": "A successful semantic check; source has not been evaluated and no geometry is captured.",
263
263
  "path": "reference/authoring/CheckSuccess.md",
264
264
  "importPath": "@metamesh/cli/authoring",
265
265
  "availability": "Local Node authoring",
@@ -273,7 +273,7 @@
273
273
  {
274
274
  "id": "cli/reference/authoring/discoverAuthoringEnvironment",
275
275
  "title": "discoverAuthoringEnvironment",
276
- "summary": "discoverAuthoringEnvironment exported from @metamesh/cli/authoring.",
276
+ "summary": "Discovers project-local Modeling, CLI, and optional SDK/Testkit documentation. Rejects missing required packages, stale manifests, and mixed exact package versions.",
277
277
  "path": "reference/authoring/discoverAuthoringEnvironment.md",
278
278
  "importPath": "@metamesh/cli/authoring",
279
279
  "availability": "Local Node authoring",
@@ -287,7 +287,7 @@
287
287
  {
288
288
  "id": "cli/reference/authoring/DocumentationEntry",
289
289
  "title": "DocumentationEntry",
290
- "summary": "DocumentationEntry exported from @metamesh/cli/authoring.",
290
+ "summary": "Metadata for one installed Markdown guide or public API symbol.",
291
291
  "path": "reference/authoring/DocumentationEntry.md",
292
292
  "importPath": "@metamesh/cli/authoring",
293
293
  "availability": "Local Node authoring",
@@ -301,7 +301,7 @@
301
301
  {
302
302
  "id": "cli/reference/authoring/DocumentationManifest",
303
303
  "title": "DocumentationManifest",
304
- "summary": "DocumentationManifest exported from @metamesh/cli/authoring.",
304
+ "summary": "Exact-package-version index exposed through the package's docs/manifest.json export.",
305
305
  "path": "reference/authoring/DocumentationManifest.md",
306
306
  "importPath": "@metamesh/cli/authoring",
307
307
  "availability": "Local Node authoring",
@@ -315,7 +315,7 @@
315
315
  {
316
316
  "id": "cli/reference/authoring/DocumentationSearchResult",
317
317
  "title": "DocumentationSearchResult",
318
- "summary": "DocumentationSearchResult exported from @metamesh/cli/authoring.",
318
+ "summary": "An installed documentation match carrying the exact package identity that owns it.",
319
319
  "path": "reference/authoring/DocumentationSearchResult.md",
320
320
  "importPath": "@metamesh/cli/authoring",
321
321
  "availability": "Local Node authoring",
@@ -329,7 +329,7 @@
329
329
  {
330
330
  "id": "cli/reference/authoring/inspectCapturedRun",
331
331
  "title": "inspectCapturedRun",
332
- "summary": "inspectCapturedRun exported from @metamesh/cli/authoring.",
332
+ "summary": "Validates a completed capture and returns its manifest with an optional semantic part selection. Original source is never evaluated; incomplete captures and unknown part IDs reject.",
333
333
  "path": "reference/authoring/inspectCapturedRun.md",
334
334
  "importPath": "@metamesh/cli/authoring",
335
335
  "availability": "Local Node authoring",
@@ -357,7 +357,7 @@
357
357
  {
358
358
  "id": "cli/reference/authoring/InstalledAuthoringPackage",
359
359
  "title": "InstalledAuthoringPackage",
360
- "summary": "InstalledAuthoringPackage exported from @metamesh/cli/authoring.",
360
+ "summary": "A project-local MetaMesh package and its verified documentation index.",
361
361
  "path": "reference/authoring/InstalledAuthoringPackage.md",
362
362
  "importPath": "@metamesh/cli/authoring",
363
363
  "availability": "Local Node authoring",
@@ -483,7 +483,7 @@
483
483
  {
484
484
  "id": "cli/reference/authoring/runAuthoringSource",
485
485
  "title": "runAuthoringSource",
486
- "summary": "runAuthoringSource exported from @metamesh/cli/authoring.",
486
+ "summary": "Checks and executes trusted local source in a disposable child, then captures its finalized geometry. Returns a success or failure envelope for this fresh attempt; failed attempts cannot be rendered.",
487
487
  "path": "reference/authoring/runAuthoringSource.md",
488
488
  "importPath": "@metamesh/cli/authoring",
489
489
  "availability": "Local Node authoring",
@@ -497,7 +497,7 @@
497
497
  {
498
498
  "id": "cli/reference/authoring/RunOptions",
499
499
  "title": "RunOptions",
500
- "summary": "RunOptions exported from @metamesh/cli/authoring.",
500
+ "summary": "Inputs and bounded execution policy for one checked, trusted local source attempt.",
501
501
  "path": "reference/authoring/RunOptions.md",
502
502
  "importPath": "@metamesh/cli/authoring",
503
503
  "availability": "Local Node authoring",
@@ -511,7 +511,7 @@
511
511
  {
512
512
  "id": "cli/reference/authoring/RunSuccess",
513
513
  "title": "RunSuccess",
514
- "summary": "RunSuccess exported from @metamesh/cli/authoring.",
514
+ "summary": "A successful checked execution; use this exact directory for subsequent inspection and rendering.",
515
515
  "path": "reference/authoring/RunSuccess.md",
516
516
  "importPath": "@metamesh/cli/authoring",
517
517
  "availability": "Local Node authoring",
@@ -525,7 +525,7 @@
525
525
  {
526
526
  "id": "cli/reference/authoring/searchAuthoringDocumentation",
527
527
  "title": "searchAuthoringDocumentation",
528
- "summary": "searchAuthoringDocumentation exported from @metamesh/cli/authoring.",
528
+ "summary": "Ranks installed topic and symbol metadata without loading every document's body. Returns up to limit matches, defaulting to 10; supported limits are 1 through 50.",
529
529
  "path": "reference/authoring/searchAuthoringDocumentation.md",
530
530
  "importPath": "@metamesh/cli/authoring",
531
531
  "availability": "Local Node authoring",
@@ -539,7 +539,7 @@
539
539
  {
540
540
  "id": "cli/reference/authoring/showAuthoringDocumentation",
541
541
  "title": "showAuthoringDocumentation",
542
- "summary": "showAuthoringDocumentation exported from @metamesh/cli/authoring.",
542
+ "summary": "Reads one exact-version installed Markdown topic by its discovered ID, without executing source.",
543
543
  "path": "reference/authoring/showAuthoringDocumentation.md",
544
544
  "importPath": "@metamesh/cli/authoring",
545
545
  "availability": "Local Node authoring",
@@ -1,8 +1,8 @@
1
1
  # AUTHORING_PROTOCOL_VERSION
2
2
 
3
- AUTHORING_PROTOCOL_VERSION exported from @metamesh/cli/authoring.
3
+ Version of the CLI authoring protocol, independent of package SemVer and engine compatibility.
4
4
 
5
- Import from `@metamesh/cli/authoring` (@metamesh/cli@0.13.0).
5
+ Import from `@metamesh/cli/authoring` (@metamesh/cli@0.14.0).
6
6
 
7
7
  ```ts
8
8
  AUTHORING_PROTOCOL_VERSION = 1