geospec 0.0.0 → 0.1.0-beta.3

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 (100) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +244 -0
  3. package/agent/doctrine.md +55 -0
  4. package/agent/geospec-authoring/SKILL.md +495 -0
  5. package/agent/geospec-authoring/api-classes.md +13 -0
  6. package/agent/geospec-authoring/api-constants.md +16 -0
  7. package/agent/geospec-authoring/api-functions.md +57 -0
  8. package/agent/geospec-authoring/api-index.md +377 -0
  9. package/agent/geospec-authoring/api-types.md +1788 -0
  10. package/agent/geospec-authoring/public-api-classes.md +22 -0
  11. package/agent/geospec-authoring/public-api-constants.md +51 -0
  12. package/agent/geospec-authoring/public-api-functions.md +215 -0
  13. package/agent/geospec-authoring/public-api-index.md +893 -0
  14. package/agent/geospec-authoring/public-api-types-2.md +1560 -0
  15. package/agent/geospec-authoring/public-api-types-3.md +217 -0
  16. package/agent/geospec-authoring/public-api-types.md +1948 -0
  17. package/agent/resources.d.ts +19 -0
  18. package/agent/resources.js +27 -0
  19. package/agent/skills.d.cts +13 -0
  20. package/agent/skills.json +28 -0
  21. package/dist/assertion-client/client.d.mts +134 -0
  22. package/dist/assertion-client/client.mjs +2 -0
  23. package/dist/assertion-client/index.d.mts +5 -0
  24. package/dist/assertion-client/index.mjs +1 -0
  25. package/dist/config/index.d.mts +3 -0
  26. package/dist/config/index.mjs +1 -0
  27. package/dist/config/node/index.d.mts +3 -0
  28. package/dist/config/node/index.mjs +1 -0
  29. package/dist/config/node/load.d.mts +19 -0
  30. package/dist/config/node/load.mjs +1 -0
  31. package/dist/config/tau-project-artifact.d.mts +54 -0
  32. package/dist/config/tau-project-artifact.mjs +3 -0
  33. package/dist/config/types.d.mts +57 -0
  34. package/dist/config/validate.mjs +1 -0
  35. package/dist/create-geospec.d.mts +50 -0
  36. package/dist/create-geospec.mjs +1 -0
  37. package/dist/engine/client.d.mts +113 -0
  38. package/dist/engine/client.mjs +1 -0
  39. package/dist/engine/index.d.mts +3 -0
  40. package/dist/engine/index.mjs +1 -0
  41. package/dist/engine/matchers.d.mts +70 -0
  42. package/dist/engine/matchers.mjs +1 -0
  43. package/dist/engine/pmi.types.d.mts +78 -0
  44. package/dist/engine/protocol.d.mts +20 -0
  45. package/dist/engine/protocol.mjs +1 -0
  46. package/dist/geometry-unit.d.mts +12 -0
  47. package/dist/index.d.mts +6 -0
  48. package/dist/index.mjs +1 -0
  49. package/dist/mesh/index.d.mts +4 -0
  50. package/dist/mesh/index.mjs +1 -0
  51. package/dist/mesh/types.d.mts +575 -0
  52. package/dist/model/errors.d.mts +20 -0
  53. package/dist/model/errors.mjs +2 -0
  54. package/dist/model/export-intent.d.mts +79 -0
  55. package/dist/model/export-intent.mjs +1 -0
  56. package/dist/model/index.d.mts +7 -0
  57. package/dist/model/index.mjs +1 -0
  58. package/dist/model/load-model.d.mts +25 -0
  59. package/dist/model/load-model.mjs +1 -0
  60. package/dist/model/native-model-loader.d.mts +142 -0
  61. package/dist/model/native-model-loader.mjs +1 -0
  62. package/dist/model/region-scope.d.mts +23 -0
  63. package/dist/model/region-scope.mjs +1 -0
  64. package/dist/model/subject-assertions.mjs +1 -0
  65. package/dist/model/subject.d.mts +11 -0
  66. package/dist/model/subject.mjs +1 -0
  67. package/dist/model/types.d.mts +254 -0
  68. package/dist/runner/collector.d.mts +64 -0
  69. package/dist/runner/collector.mjs +2 -0
  70. package/dist/runner/discovery.d.mts +93 -0
  71. package/dist/runner/discovery.mjs +1 -0
  72. package/dist/runner/filter.d.mts +50 -0
  73. package/dist/runner/filter.mjs +1 -0
  74. package/dist/runner/index.d.mts +7 -0
  75. package/dist/runner/index.mjs +1 -0
  76. package/dist/runner/native/index.d.mts +4 -0
  77. package/dist/runner/native/index.mjs +1 -0
  78. package/dist/runner/native/native-pool-grants.d.mts +21 -0
  79. package/dist/runner/native/native-pool-grants.mjs +1 -0
  80. package/dist/runner/native/native-serial-runner.d.mts +29 -0
  81. package/dist/runner/native/native-serial-runner.mjs +1 -0
  82. package/dist/runner/pool/pool-messages.d.mts +94 -0
  83. package/dist/runner/run-geospec-module.d.mts +13 -0
  84. package/dist/runner/run-geospec-module.mjs +47 -0
  85. package/dist/runner/timeout-codes.d.mts +45 -0
  86. package/dist/runner/timeout-codes.mjs +1 -0
  87. package/dist/runner/types.d.mts +776 -0
  88. package/dist/runner/worker/index.d.mts +4 -0
  89. package/dist/runner/worker/index.mjs +1 -0
  90. package/dist/runner/worker/no-matching-tests-issue.d.mts +12 -0
  91. package/dist/runner/worker/no-matching-tests-issue.mjs +1 -0
  92. package/dist/runner/worker/runner-types.d.mts +167 -0
  93. package/dist/runner/worker/serial-runner.mjs +1 -0
  94. package/dist/selector/types.d.mts +271 -0
  95. package/dist/step/types.d.mts +134 -0
  96. package/dist/vitest/adapter.d.mts +56 -0
  97. package/dist/vitest/adapter.mjs +3 -0
  98. package/dist/vitest/index.d.mts +4 -0
  99. package/dist/vitest/index.mjs +1 -0
  100. package/package.json +114 -5
@@ -0,0 +1,217 @@
1
+ # geospec — Types (3)
2
+
3
+ 10 top-level symbols. Signatures are verbatim typescript.
4
+
5
+ // Content-addressed subject accepted by a protocol-3 assertion plan
6
+ GeoSpecNativeSubject: {
7
+ readonly contentHash?: string;
8
+ readonly subjectHash?: string;
9
+ }
10
+
11
+ readonly contentHash?: string
12
+
13
+ readonly subjectHash?: string
14
+
15
+ // A canonical fixed-contract matcher
16
+ GeoSpecFixedMatcherDescriptor: {
17
+ readonly contract: 'geospec.plate-two-windows/v1' | 'geospec.pmi.parallel-plane-distance/v1';
18
+ readonly expected: 'true';
19
+ readonly mode: 'sync';
20
+ }
21
+
22
+ readonly contract: 'geospec.plate-two-windows/v1' | 'geospec.pmi.parallel-plane-distance/v1'
23
+
24
+ readonly expected: 'true'
25
+
26
+ readonly mode: 'sync'
27
+
28
+ // Installed Vitest matcher map and lifecycle settlement hook
29
+ GeoSpecVitestAdapter: {
30
+ readonly matchers: GeoSpecVitestMatcherMap;
31
+ flush(): Promise<void>;
32
+ }
33
+
34
+ readonly matchers: GeoSpecVitestMatcherMap
35
+
36
+ // GeoSpecVitestAdapter.flush (method)
37
+ flush(): Promise<void>;
38
+
39
+ // Input for exporting one validated Tau project descriptor
40
+ ExportTauProjectArtifactOptions: {
41
+ readonly descriptor: GeoSpecTauProjectDescriptor;
42
+ /** Called twice so source discovery and export use separate runtime lifetimes. */
43
+ readonly createRuntime: () => GeoSpecTauProjectRuntime | Promise<GeoSpecTauProjectRuntime>;
44
+ readonly signal?: AbortSignal;
45
+ }
46
+
47
+ readonly descriptor: GeoSpecTauProjectDescriptor
48
+
49
+ // Called twice so source discovery and export use separate runtime lifetimes
50
+ readonly createRuntime: () => GeoSpecTauProjectRuntime | Promise<GeoSpecTauProjectRuntime>
51
+
52
+ readonly signal?: AbortSignal
53
+
54
+ // Finalized geometry bytes and the exact source/export metadata that produced them
55
+ GeoSpecTauProjectArtifact: {
56
+ readonly format: 'step' | 'glb';
57
+ readonly name: string;
58
+ readonly mimeType: string;
59
+ readonly bytes: Uint8Array<ArrayBuffer>;
60
+ readonly frame: {
61
+ readonly coordinateSystem: 'z-up';
62
+ readonly lengthUnit: 'millimeter';
63
+ readonly sourceUnit: 'mm';
64
+ };
65
+ readonly source: {
66
+ readonly manifestPath: string;
67
+ readonly manifestBytes: Uint8Array<ArrayBuffer>;
68
+ readonly manifest: ProjectManifest;
69
+ readonly projectEntryPath: string;
70
+ readonly entryPath: string;
71
+ readonly kernelId: string;
72
+ readonly files: readonly RuntimeSourceSnapshotFile[];
73
+ };
74
+ readonly export: {
75
+ readonly options: Readonly<Record<string, unknown>>;
76
+ readonly route: NonNullable<GeometryExportIntent['route']>;
77
+ };
78
+ }
79
+
80
+ readonly format: 'step' | 'glb'
81
+
82
+ readonly name: string
83
+
84
+ readonly mimeType: string
85
+
86
+ readonly bytes: Uint8Array<ArrayBuffer>
87
+
88
+ readonly frame: {
89
+ readonly coordinateSystem: 'z-up';
90
+ readonly lengthUnit: 'millimeter';
91
+ readonly sourceUnit: 'mm';
92
+ }
93
+
94
+ readonly source: {
95
+ readonly manifestPath: string;
96
+ readonly manifestBytes: Uint8Array<ArrayBuffer>;
97
+ readonly manifest: ProjectManifest;
98
+ readonly projectEntryPath: string;
99
+ readonly entryPath: string;
100
+ readonly kernelId: string;
101
+ readonly files: readonly RuntimeSourceSnapshotFile[];
102
+ }
103
+
104
+ readonly export: {
105
+ readonly options: Readonly<Record<string, unknown>>;
106
+ readonly route: NonNullable<GeometryExportIntent['route']>;
107
+ }
108
+
109
+ // Runtime surface required to snapshot and export one Tau project
110
+ GeoSpecTauProjectRuntime: RuntimeClientWithRoutes & Pick<RuntimeClient, 'shutdown' | 'snapshotSource'>
111
+
112
+ open: (input: Pick<Parameters<RuntimeClient['open']>[0], 'source' | 'parameters' | 'stage' | 'watch' | 'signal'>) => Pick<ReturnType<RuntimeClient['open']>, 'export' | 'close'>
113
+
114
+ // GeoSpecTauProjectRuntime.on (method)
115
+ on?(event: 'telemetry', handler: (batch: {
116
+ readonly entries: ReadonlyArray<{
117
+ name: string;
118
+ duration: number;
119
+ startTime: number;
120
+ workerTimeOrigin: number;
121
+ }>;
122
+ }) => void): () => void;
123
+
124
+ // GeoSpecTauProjectRuntime.bestRouteFor (method)
125
+ bestRouteFor(format: string, options?: {
126
+ readonly kernelId?: string;
127
+ }): GeoSpecExportRoute | undefined;
128
+
129
+ // Trusted project configuration using existing discovery and runner options
130
+ // Remarks: Omitted values keep their existing owner's defaults. Defined overrides replace whole fields, including empty arrays, false and the subjects map. Existing discovery currently treats an absent or empty include array as its default pattern. Preserving [] here does not change that consumer behavior. This is configuration data, not a canonical engine plan or a geometry result.
131
+ GeoSpecConfig: {
132
+ include?: readonly string[];
133
+ exclude?: readonly string[];
134
+ testNamePattern?: string;
135
+ /** Positive finite milliseconds; the runner owns its default. */
136
+ testTimeout?: number;
137
+ /** Positive finite milliseconds; does not define a geometry verdict. */
138
+ matcherWallBackstop?: number;
139
+ bail?: boolean;
140
+ forensic?: boolean;
141
+ cache?: boolean;
142
+ /** Requested cache location only; loading configuration creates no store. */
143
+ cacheDirectory?: string;
144
+ subjects?: Readonly<Record<string, GeoSpecTauProjectDescriptor>>;
145
+ }
146
+
147
+ include?: readonly string[]
148
+
149
+ exclude?: readonly string[]
150
+
151
+ testNamePattern?: string
152
+
153
+ // Positive finite milliseconds
154
+ testTimeout?: number
155
+
156
+ // Positive finite milliseconds
157
+ matcherWallBackstop?: number
158
+
159
+ bail?: boolean
160
+
161
+ forensic?: boolean
162
+
163
+ cache?: boolean
164
+
165
+ // Requested cache location only
166
+ cacheDirectory?: string
167
+
168
+ subjects?: Readonly<Record<string, GeoSpecTauProjectDescriptor>>
169
+
170
+ // Imported Tau project data for later host resolution
171
+ // Remarks: This descriptor does not validate the original manifest bytes or its schema, admit an asset, export geometry, or establish finalized-artifact provenance.
172
+ GeoSpecTauProjectDescriptor: {
173
+ readonly kind: 'tau-project';
174
+ /** Normalized project-relative POSIX path identifying the imported manifest. */
175
+ readonly manifestPath: string;
176
+ readonly manifest: Readonly<Record<string, JSONValue>>;
177
+ readonly format: 'step' | 'glb';
178
+ readonly parameters?: Readonly<Record<string, JSONValue>>;
179
+ }
180
+
181
+ readonly kind: 'tau-project'
182
+
183
+ // Normalized project-relative POSIX path identifying the imported manifest
184
+ readonly manifestPath: string
185
+
186
+ readonly manifest: Readonly<Record<string, JSONValue>>
187
+
188
+ readonly format: 'step' | 'glb'
189
+
190
+ readonly parameters?: Readonly<Record<string, JSONValue>>
191
+
192
+ // Resolved file identity and validated configuration data
193
+ LoadedGeoSpecConfig: {
194
+ readonly configPath?: string;
195
+ readonly options: GeoSpecConfig;
196
+ }
197
+
198
+ readonly configPath?: string
199
+
200
+ readonly options: GeoSpecConfig
201
+
202
+ // Options for one trusted Node configuration load
203
+ LoadGeoSpecConfigOptions: {
204
+ readonly projectPath: string;
205
+ /** Explicit file, resolved relative to the project unless absolute. */
206
+ readonly configPath?: string;
207
+ /** Own defined fields override configuration without deep merging. */
208
+ readonly overrides?: GeoSpecConfig;
209
+ }
210
+
211
+ readonly projectPath: string
212
+
213
+ // Explicit file, resolved relative to the project unless absolute
214
+ readonly configPath?: string
215
+
216
+ // Own defined fields override configuration without deep merging
217
+ readonly overrides?: GeoSpecConfig