@contractspec/lib.contracts 1.51.0 → 1.53.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 (122) hide show
  1. package/dist/app-config/{contracts.d.ts → app-config.contracts.d.ts} +51 -51
  2. package/dist/app-config/{contracts.js → app-config.contracts.js} +1 -1
  3. package/dist/app-config/events.d.ts +27 -27
  4. package/dist/app-config/lifecycle-contracts.d.ts +54 -54
  5. package/dist/app-config/runtime.d.ts +4 -4
  6. package/dist/app-config/spec.d.ts +3 -3
  7. package/dist/capabilities/guards.d.ts +1 -1
  8. package/dist/capabilities/validation.d.ts +1 -1
  9. package/dist/data-views/data-views.d.ts +1 -1
  10. package/dist/data-views/index.d.ts +1 -1
  11. package/dist/data-views/registry.d.ts +1 -1
  12. package/dist/data-views/report/contractVerificationTable.d.ts +10 -0
  13. package/dist/data-views/report/contractVerificationTable.js +95 -0
  14. package/dist/data-views/runtime.d.ts +2 -2
  15. package/dist/data-views/spec.d.ts +1 -1
  16. package/dist/data-views/types.d.ts +1 -1
  17. package/dist/docs/capabilities/documentationSystem.capability.d.ts +7 -0
  18. package/dist/docs/capabilities/documentationSystem.capability.js +71 -0
  19. package/dist/docs/capabilities/index.d.ts +2 -0
  20. package/dist/docs/capabilities/index.js +3 -0
  21. package/dist/docs/commands/docsGenerate.command.d.ts +95 -0
  22. package/dist/docs/commands/docsGenerate.command.js +142 -0
  23. package/dist/docs/commands/docsPublish.command.d.ts +64 -0
  24. package/dist/docs/commands/docsPublish.command.js +107 -0
  25. package/dist/docs/commands/index.d.ts +3 -0
  26. package/dist/docs/commands/index.js +4 -0
  27. package/dist/docs/constants.d.ts +7 -0
  28. package/dist/docs/constants.js +10 -0
  29. package/dist/docs/contracts.d.ts +442 -0
  30. package/dist/docs/contracts.js +58 -0
  31. package/dist/docs/ensure-docblocks.d.ts +1 -0
  32. package/dist/docs/ensure-docblocks.js +1 -0
  33. package/dist/docs/events/docsGenerated.event.d.ts +62 -0
  34. package/dist/docs/events/docsGenerated.event.js +53 -0
  35. package/dist/docs/events/docsPublished.event.d.ts +70 -0
  36. package/dist/docs/events/docsPublished.event.js +57 -0
  37. package/dist/docs/events/index.d.ts +3 -0
  38. package/dist/docs/events/index.js +4 -0
  39. package/dist/docs/forms/docsSearch.form.d.ts +22 -0
  40. package/dist/docs/forms/docsSearch.form.js +113 -0
  41. package/dist/docs/forms/index.d.ts +2 -0
  42. package/dist/docs/forms/index.js +3 -0
  43. package/dist/docs/index.d.ts +23 -1
  44. package/dist/docs/index.js +25 -1
  45. package/dist/docs/presentations/docsLayout.presentation.d.ts +7 -0
  46. package/dist/docs/presentations/docsLayout.presentation.js +35 -0
  47. package/dist/docs/presentations/docsReferencePage.presentation.d.ts +7 -0
  48. package/dist/docs/presentations/docsReferencePage.presentation.js +35 -0
  49. package/dist/docs/presentations/index.d.ts +3 -0
  50. package/dist/docs/presentations/index.js +4 -0
  51. package/dist/docs/queries/contractReference.query.d.ts +217 -0
  52. package/dist/docs/queries/contractReference.query.js +125 -0
  53. package/dist/docs/queries/docsIndex.query.d.ts +272 -0
  54. package/dist/docs/queries/docsIndex.query.js +133 -0
  55. package/dist/docs/queries/index.d.ts +3 -0
  56. package/dist/docs/queries/index.js +4 -0
  57. package/dist/docs/tech/cli.docblock.js +10 -0
  58. package/dist/docs/tech/docs-system.docblock.d.ts +1 -0
  59. package/dist/docs/tech/docs-system.docblock.js +128 -0
  60. package/dist/docs/tech/report-verification-table.docblock.d.ts +1 -0
  61. package/dist/docs/tech/report-verification-table.docblock.js +50 -0
  62. package/dist/docs/views/contractReference.dataView.d.ts +7 -0
  63. package/dist/docs/views/contractReference.dataView.js +80 -0
  64. package/dist/docs/views/docsIndex.dataView.d.ts +7 -0
  65. package/dist/docs/views/docsIndex.dataView.js +136 -0
  66. package/dist/docs/views/exampleCatalog.dataView.d.ts +7 -0
  67. package/dist/docs/views/exampleCatalog.dataView.js +91 -0
  68. package/dist/docs/views/index.d.ts +4 -0
  69. package/dist/docs/views/index.js +5 -0
  70. package/dist/events.d.ts +1 -1
  71. package/dist/examples/schema.d.ts +7 -7
  72. package/dist/examples/types.d.ts +1 -1
  73. package/dist/experiments/spec.d.ts +2 -2
  74. package/dist/features/install.d.ts +1 -1
  75. package/dist/features/types.d.ts +3 -3
  76. package/dist/forms/forms.d.ts +1 -1
  77. package/dist/index.d.ts +40 -22
  78. package/dist/index.js +20 -2
  79. package/dist/install.d.ts +1 -1
  80. package/dist/integrations/openbanking/contracts/accounts.d.ts +66 -66
  81. package/dist/integrations/openbanking/contracts/balances.d.ts +34 -34
  82. package/dist/integrations/openbanking/contracts/transactions.d.ts +48 -48
  83. package/dist/integrations/openbanking/models.d.ts +55 -55
  84. package/dist/integrations/operations.d.ts +102 -102
  85. package/dist/integrations/spec.d.ts +2 -2
  86. package/dist/jsonschema.d.ts +1 -1
  87. package/dist/knowledge/operations.d.ts +66 -66
  88. package/dist/knowledge/spec.d.ts +1 -1
  89. package/dist/llm/exporters.d.ts +3 -3
  90. package/dist/llm/types.d.ts +1 -1
  91. package/dist/markdown.d.ts +1 -1
  92. package/dist/onboarding-base.d.ts +29 -29
  93. package/dist/operations/index.d.ts +4 -1
  94. package/dist/operations/index.js +4 -1
  95. package/dist/operations/operation.d.ts +3 -3
  96. package/dist/operations/registry.d.ts +1 -1
  97. package/dist/operations/report/getContractVerificationStatus.d.ts +75 -0
  98. package/dist/operations/report/getContractVerificationStatus.js +96 -0
  99. package/dist/operations/report/index.d.ts +13 -0
  100. package/dist/operations/report/index.js +45 -0
  101. package/dist/policy/validation.d.ts +1 -1
  102. package/dist/presentations/registry.d.ts +1 -1
  103. package/dist/registry.d.ts +1 -1
  104. package/dist/serialization/serializers.d.ts +3 -3
  105. package/dist/server/rest-elysia.d.ts +1 -1
  106. package/dist/server/rest-express.d.ts +1 -1
  107. package/dist/server/rest-generic.d.ts +1 -1
  108. package/dist/server/rest-next-app.d.ts +1 -1
  109. package/dist/server/rest-next-mcp.d.ts +1 -1
  110. package/dist/server/rest-next-pages.d.ts +1 -1
  111. package/dist/telemetry/spec.d.ts +1 -1
  112. package/dist/telemetry/tracker.d.ts +3 -2
  113. package/dist/tests/runner.d.ts +1 -1
  114. package/dist/themes.d.ts +1 -1
  115. package/dist/types.d.ts +2 -2
  116. package/dist/workflow/spec.d.ts +2 -2
  117. package/dist/workflow/validation.d.ts +2 -2
  118. package/dist/workspace-config/contractsrc-schema.d.ts +3 -3
  119. package/dist/workspace-config/contractsrc-schema.js +1 -0
  120. package/dist/workspace-config/contractsrc-types.d.ts +7 -8
  121. package/dist/workspace-config/index.d.ts +2 -2
  122. package/package.json +35 -8
@@ -0,0 +1,50 @@
1
+ import { registerDocBlocks } from "../registry.js";
2
+
3
+ //#region src/docs/tech/report-verification-table.docblock.ts
4
+ registerDocBlocks([{
5
+ id: "docs.tech.report-verification-table",
6
+ title: "Contract Verification Table",
7
+ summary: "How the impact report renders per-contract verification status.",
8
+ kind: "how",
9
+ visibility: "public",
10
+ route: "/docs/tech/report/verification-table",
11
+ tags: [
12
+ "report",
13
+ "drift",
14
+ "verification",
15
+ "impact"
16
+ ],
17
+ owners: ["platform.core"],
18
+ domain: "report",
19
+ body: `# Contract Verification Table
20
+
21
+ The impact report includes an optional per-contract verification table that summarises the health of each contract at a glance.
22
+
23
+ ## Columns
24
+
25
+ | Column | Description |
26
+ |--------|-------------|
27
+ | Contract / Endpoint / Event | Fully qualified contract name (e.g. \`user.create\`) |
28
+ | Drift debt | Number of mismatches currently detected |
29
+ | Time since verified | Human-friendly elapsed time (e.g. "23 days") or "Never" |
30
+ | Surfaces covered | Comma-separated list (API, runtime validation, UI form, docs/examples, permissions) |
31
+ | Last verified commit | Short SHA of the last drift-free commit |
32
+
33
+ ## Data flow
34
+
35
+ 1. The drift detector produces per-contract mismatch counts.
36
+ 2. \`.contractspec/verified.json\` records the last clean commit per contract.
37
+ 3. The report script reads both sources and renders the Markdown table.
38
+
39
+ ## Backward compatibility
40
+
41
+ When \`contracts\` is absent from the report JSON, the table is skipped and the existing report sections render unchanged.
42
+
43
+ ## Contracts
44
+
45
+ - Query: \`report.getContractVerificationStatus\` (v1.0.0)
46
+ - Data view: \`report.contractVerificationTable\` (v1.0.0)
47
+ `
48
+ }]);
49
+
50
+ //#endregion
@@ -0,0 +1,7 @@
1
+ import { DataViewSpec } from "../../data-views/spec.js";
2
+ import "../../index.js";
3
+
4
+ //#region src/docs/views/contractReference.dataView.d.ts
5
+ declare const ContractReferenceDataView: DataViewSpec;
6
+ //#endregion
7
+ export { ContractReferenceDataView };
@@ -0,0 +1,80 @@
1
+ import { defineDataView } from "../../data-views/spec.js";
2
+ import "../../data-views/index.js";
3
+ import { DOCS_DOMAIN, DOCS_OWNERS, DOCS_STABILITY, DOCS_TAGS } from "../constants.js";
4
+ import { docId } from "../registry.js";
5
+ import "../ensure-docblocks.js";
6
+ import { ContractReferenceQuery } from "../queries/contractReference.query.js";
7
+
8
+ //#region src/docs/views/contractReference.dataView.ts
9
+ const ContractReferenceDataView = defineDataView({
10
+ meta: {
11
+ key: "docs.contract.reference.view",
12
+ title: "Contract Reference",
13
+ version: "1.0.0",
14
+ description: "Detail view for a single contract reference.",
15
+ domain: DOCS_DOMAIN,
16
+ owners: DOCS_OWNERS,
17
+ tags: [...DOCS_TAGS, "reference"],
18
+ stability: DOCS_STABILITY,
19
+ entity: "contract-reference",
20
+ docId: [docId("docs.tech.docs-reference")]
21
+ },
22
+ source: { primary: {
23
+ key: ContractReferenceQuery.meta.key,
24
+ version: ContractReferenceQuery.meta.version
25
+ } },
26
+ view: {
27
+ kind: "detail",
28
+ fields: [
29
+ {
30
+ key: "key",
31
+ label: "Key",
32
+ dataPath: "reference.key"
33
+ },
34
+ {
35
+ key: "version",
36
+ label: "Version",
37
+ dataPath: "reference.version"
38
+ },
39
+ {
40
+ key: "type",
41
+ label: "Type",
42
+ dataPath: "reference.type"
43
+ },
44
+ {
45
+ key: "title",
46
+ label: "Title",
47
+ dataPath: "reference.title"
48
+ },
49
+ {
50
+ key: "description",
51
+ label: "Description",
52
+ dataPath: "reference.description"
53
+ },
54
+ {
55
+ key: "tags",
56
+ label: "Tags",
57
+ dataPath: "reference.tags"
58
+ },
59
+ {
60
+ key: "owners",
61
+ label: "Owners",
62
+ dataPath: "reference.owners"
63
+ },
64
+ {
65
+ key: "stability",
66
+ label: "Stability",
67
+ dataPath: "reference.stability"
68
+ }
69
+ ],
70
+ primaryField: "title",
71
+ secondaryFields: ["description"]
72
+ },
73
+ policy: {
74
+ flags: [],
75
+ pii: []
76
+ }
77
+ });
78
+
79
+ //#endregion
80
+ export { ContractReferenceDataView };
@@ -0,0 +1,7 @@
1
+ import { DataViewSpec } from "../../data-views/spec.js";
2
+ import "../../index.js";
3
+
4
+ //#region src/docs/views/docsIndex.dataView.d.ts
5
+ declare const DocsIndexDataView: DataViewSpec;
6
+ //#endregion
7
+ export { DocsIndexDataView };
@@ -0,0 +1,136 @@
1
+ import { defineDataView } from "../../data-views/spec.js";
2
+ import "../../data-views/index.js";
3
+ import { DOCS_DOMAIN, DOCS_OWNERS, DOCS_STABILITY, DOCS_TAGS } from "../constants.js";
4
+ import { docId } from "../registry.js";
5
+ import "../ensure-docblocks.js";
6
+ import { DocsIndexQuery } from "../queries/docsIndex.query.js";
7
+
8
+ //#region src/docs/views/docsIndex.dataView.ts
9
+ const DocsIndexDataView = defineDataView({
10
+ meta: {
11
+ key: "docs.index.view",
12
+ title: "Docs Index",
13
+ version: "1.0.0",
14
+ description: "List and filter documentation entries.",
15
+ domain: DOCS_DOMAIN,
16
+ owners: DOCS_OWNERS,
17
+ tags: [...DOCS_TAGS, "index"],
18
+ stability: DOCS_STABILITY,
19
+ entity: "docs",
20
+ docId: [docId("docs.tech.docs-search")]
21
+ },
22
+ source: { primary: {
23
+ key: DocsIndexQuery.meta.key,
24
+ version: DocsIndexQuery.meta.version
25
+ } },
26
+ view: {
27
+ kind: "list",
28
+ fields: [
29
+ {
30
+ key: "id",
31
+ label: "ID",
32
+ dataPath: "id"
33
+ },
34
+ {
35
+ key: "title",
36
+ label: "Title",
37
+ dataPath: "title"
38
+ },
39
+ {
40
+ key: "summary",
41
+ label: "Summary",
42
+ dataPath: "summary"
43
+ },
44
+ {
45
+ key: "route",
46
+ label: "Route",
47
+ dataPath: "route"
48
+ },
49
+ {
50
+ key: "tags",
51
+ label: "Tags",
52
+ dataPath: "tags",
53
+ format: "badge"
54
+ },
55
+ {
56
+ key: "kind",
57
+ label: "Kind",
58
+ dataPath: "kind"
59
+ },
60
+ {
61
+ key: "visibility",
62
+ label: "Visibility",
63
+ dataPath: "visibility"
64
+ }
65
+ ],
66
+ primaryField: "title",
67
+ secondaryFields: ["summary", "route"],
68
+ filters: [
69
+ {
70
+ key: "query",
71
+ label: "Search",
72
+ field: "query",
73
+ type: "search"
74
+ },
75
+ {
76
+ key: "visibility",
77
+ label: "Visibility",
78
+ field: "visibility",
79
+ type: "enum",
80
+ options: [
81
+ {
82
+ value: "public",
83
+ label: "Public"
84
+ },
85
+ {
86
+ value: "internal",
87
+ label: "Internal"
88
+ },
89
+ {
90
+ value: "mixed",
91
+ label: "Mixed"
92
+ }
93
+ ]
94
+ },
95
+ {
96
+ key: "kind",
97
+ label: "Kind",
98
+ field: "kind",
99
+ type: "enum",
100
+ options: [
101
+ {
102
+ value: "goal",
103
+ label: "Goal"
104
+ },
105
+ {
106
+ value: "how",
107
+ label: "How"
108
+ },
109
+ {
110
+ value: "usage",
111
+ label: "Usage"
112
+ },
113
+ {
114
+ value: "reference",
115
+ label: "Reference"
116
+ },
117
+ {
118
+ value: "faq",
119
+ label: "FAQ"
120
+ },
121
+ {
122
+ value: "changelog",
123
+ label: "Changelog"
124
+ }
125
+ ]
126
+ }
127
+ ]
128
+ },
129
+ policy: {
130
+ flags: [],
131
+ pii: []
132
+ }
133
+ });
134
+
135
+ //#endregion
136
+ export { DocsIndexDataView };
@@ -0,0 +1,7 @@
1
+ import { DataViewSpec } from "../../data-views/spec.js";
2
+ import "../../index.js";
3
+
4
+ //#region src/docs/views/exampleCatalog.dataView.d.ts
5
+ declare const ExampleCatalogDataView: DataViewSpec;
6
+ //#endregion
7
+ export { ExampleCatalogDataView };
@@ -0,0 +1,91 @@
1
+ import { defineDataView } from "../../data-views/spec.js";
2
+ import "../../data-views/index.js";
3
+ import { DOCS_DOMAIN, DOCS_OWNERS, DOCS_STABILITY, DOCS_TAGS } from "../constants.js";
4
+ import { docId } from "../registry.js";
5
+ import "../ensure-docblocks.js";
6
+ import { DocsIndexQuery } from "../queries/docsIndex.query.js";
7
+
8
+ //#region src/docs/views/exampleCatalog.dataView.ts
9
+ const ExampleCatalogDataView = defineDataView({
10
+ meta: {
11
+ key: "docs.examples.catalog.view",
12
+ title: "Examples Catalog",
13
+ version: "1.0.0",
14
+ description: "Catalog view of ContractSpec examples and demos.",
15
+ domain: DOCS_DOMAIN,
16
+ owners: DOCS_OWNERS,
17
+ tags: [...DOCS_TAGS, "examples"],
18
+ stability: DOCS_STABILITY,
19
+ entity: "docs-examples",
20
+ docId: [docId("docs.tech.docs-examples")]
21
+ },
22
+ source: { primary: {
23
+ key: DocsIndexQuery.meta.key,
24
+ version: DocsIndexQuery.meta.version
25
+ } },
26
+ view: {
27
+ kind: "grid",
28
+ fields: [
29
+ {
30
+ key: "id",
31
+ label: "ID",
32
+ dataPath: "id"
33
+ },
34
+ {
35
+ key: "title",
36
+ label: "Title",
37
+ dataPath: "title"
38
+ },
39
+ {
40
+ key: "summary",
41
+ label: "Summary",
42
+ dataPath: "summary"
43
+ },
44
+ {
45
+ key: "route",
46
+ label: "Route",
47
+ dataPath: "route"
48
+ },
49
+ {
50
+ key: "tags",
51
+ label: "Tags",
52
+ dataPath: "tags",
53
+ format: "badge"
54
+ }
55
+ ],
56
+ primaryField: "title",
57
+ secondaryFields: ["summary"],
58
+ filters: [{
59
+ key: "query",
60
+ label: "Search",
61
+ field: "query",
62
+ type: "search"
63
+ }, {
64
+ key: "tags",
65
+ label: "Tags",
66
+ field: "tag",
67
+ type: "enum",
68
+ options: [
69
+ {
70
+ value: "examples",
71
+ label: "Examples"
72
+ },
73
+ {
74
+ value: "templates",
75
+ label: "Templates"
76
+ },
77
+ {
78
+ value: "sandbox",
79
+ label: "Sandbox"
80
+ }
81
+ ]
82
+ }]
83
+ },
84
+ policy: {
85
+ flags: [],
86
+ pii: []
87
+ }
88
+ });
89
+
90
+ //#endregion
91
+ export { ExampleCatalogDataView };
@@ -0,0 +1,4 @@
1
+ import { DocsIndexDataView } from "./docsIndex.dataView.js";
2
+ import { ContractReferenceDataView } from "./contractReference.dataView.js";
3
+ import { ExampleCatalogDataView } from "./exampleCatalog.dataView.js";
4
+ export { ContractReferenceDataView, DocsIndexDataView, ExampleCatalogDataView };
@@ -0,0 +1,5 @@
1
+ import { DocsIndexDataView } from "./docsIndex.dataView.js";
2
+ import { ContractReferenceDataView } from "./contractReference.dataView.js";
3
+ import { ExampleCatalogDataView } from "./exampleCatalog.dataView.js";
4
+
5
+ export { ContractReferenceDataView, DocsIndexDataView, ExampleCatalogDataView };
package/dist/events.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  import { CapabilityRef } from "./capabilities/capabilities.js";
2
+ import { SpecContractRegistry } from "./registry.js";
2
3
  import { DocId } from "./docs/registry.js";
3
4
  import { OwnerShipMeta } from "./ownership.js";
4
- import { SpecContractRegistry } from "./registry.js";
5
5
  import { AnySchemaModel } from "@contractspec/lib.schema";
6
6
 
7
7
  //#region src/events.d.ts
@@ -3,10 +3,10 @@ import { z as z$1 } from "zod";
3
3
 
4
4
  //#region src/examples/schema.d.ts
5
5
  declare const ExampleKindSchema: z$1.ZodEnum<{
6
- knowledge: "knowledge";
6
+ integration: "integration";
7
7
  template: "template";
8
8
  workflow: "workflow";
9
- integration: "integration";
9
+ knowledge: "knowledge";
10
10
  blueprint: "blueprint";
11
11
  ui: "ui";
12
12
  script: "script";
@@ -104,10 +104,10 @@ declare const ExampleMetaSchema: z$1.ZodObject<{
104
104
  tags: z$1.ZodArray<z$1.ZodString>;
105
105
  docId: z$1.ZodOptional<z$1.ZodArray<z$1.ZodString>>;
106
106
  kind: z$1.ZodEnum<{
107
- knowledge: "knowledge";
107
+ integration: "integration";
108
108
  template: "template";
109
109
  workflow: "workflow";
110
- integration: "integration";
110
+ knowledge: "knowledge";
111
111
  blueprint: "blueprint";
112
112
  ui: "ui";
113
113
  script: "script";
@@ -152,10 +152,10 @@ declare const ExampleSpecSchema: z$1.ZodObject<{
152
152
  tags: z$1.ZodArray<z$1.ZodString>;
153
153
  docId: z$1.ZodOptional<z$1.ZodArray<z$1.ZodString>>;
154
154
  kind: z$1.ZodEnum<{
155
- knowledge: "knowledge";
155
+ integration: "integration";
156
156
  template: "template";
157
157
  workflow: "workflow";
158
- integration: "integration";
158
+ knowledge: "knowledge";
159
159
  blueprint: "blueprint";
160
160
  ui: "ui";
161
161
  script: "script";
@@ -224,7 +224,7 @@ declare function safeParseExampleSpec(data: unknown): z$1.ZodSafeParseResult<{
224
224
  stability: "idea" | "in_creation" | "experimental" | "beta" | "stable" | "deprecated";
225
225
  owners: string[];
226
226
  tags: string[];
227
- kind: "knowledge" | "template" | "workflow" | "integration" | "blueprint" | "ui" | "script" | "library";
227
+ kind: "integration" | "template" | "workflow" | "knowledge" | "blueprint" | "ui" | "script" | "library";
228
228
  visibility: "experimental" | "public" | "internal";
229
229
  title?: string | undefined;
230
230
  domain?: string | undefined;
@@ -1,7 +1,7 @@
1
- import { OwnerShipMeta } from "../ownership.js";
2
1
  import { FeatureModuleSpec, FeatureRef } from "../features/types.js";
3
2
  import "../features/index.js";
4
3
  import { AppBlueprintSpec, SpecPointer } from "../app-config/spec.js";
4
+ import { OwnerShipMeta } from "../ownership.js";
5
5
 
6
6
  //#region src/examples/types.d.ts
7
7
  /** Kind of example - determines how it's presented in catalogs */
@@ -1,8 +1,8 @@
1
1
  import { OptionalVersionedSpecRef } from "../versioning/refs.js";
2
- import { OwnerShipMeta } from "../ownership.js";
3
2
  import { PolicyRef } from "../policy/spec.js";
4
- import { TelemetryEventDef } from "../telemetry/spec.js";
5
3
  import { SpecContractRegistry } from "../registry.js";
4
+ import { TelemetryEventDef } from "../telemetry/spec.js";
5
+ import { OwnerShipMeta } from "../ownership.js";
6
6
 
7
7
  //#region src/experiments/spec.d.ts
8
8
  /** Metadata for an experiment spec. */
@@ -1,11 +1,11 @@
1
1
  import { CapabilityRegistry } from "../capabilities/capabilities.js";
2
2
  import { PresentationSpec } from "../presentations/presentations.js";
3
- import { OperationSpecRegistry } from "../operations/registry.js";
4
3
  import { PresentationRegistry } from "../presentations/registry.js";
5
4
  import "../presentations/index.js";
6
5
  import "../capabilities/index.js";
7
6
  import { FeatureModuleSpec } from "./types.js";
8
7
  import { FeatureRegistry } from "./registry.js";
8
+ import { OperationSpecRegistry } from "../operations/registry.js";
9
9
 
10
10
  //#region src/features/install.d.ts
11
11
  /** Dependencies for installing a feature. */
@@ -1,11 +1,11 @@
1
1
  import { SpecKeyRef, VersionedSpecRef } from "../versioning/refs.js";
2
2
  import { CapabilityRef, CapabilityRequirement } from "../capabilities/capabilities.js";
3
- import { PresentationTarget } from "../presentations/presentations.js";
4
- import { OwnerShipMeta } from "../ownership.js";
5
3
  import { ImplementationRef } from "../operations/operation.js";
6
- import "../operations/index.js";
4
+ import { PresentationTarget } from "../presentations/presentations.js";
7
5
  import "../capabilities/index.js";
8
6
  import { ExperimentRef } from "../experiments/spec.js";
7
+ import "../operations/index.js";
8
+ import { OwnerShipMeta } from "../ownership.js";
9
9
 
10
10
  //#region src/features/types.d.ts
11
11
  /** Minimal metadata to identify and categorize a feature module. */
@@ -1,5 +1,5 @@
1
- import { OwnerShipMeta } from "../ownership.js";
2
1
  import { GroupKeyFn, RegistryFilter } from "../registry-utils.js";
2
+ import { OwnerShipMeta } from "../ownership.js";
3
3
  import { AnySchemaModel, ZodSchemaModel } from "@contractspec/lib.schema";
4
4
 
5
5
  //#region src/forms/forms.d.ts