@contractspec/lib.contracts 1.44.1 → 1.45.1

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 (161) hide show
  1. package/README.md +1 -1
  2. package/dist/app-config/app-config.feature.js +6 -6
  3. package/dist/app-config/contracts.d.ts +50 -50
  4. package/dist/app-config/contracts.js +13 -13
  5. package/dist/app-config/events.d.ts +27 -27
  6. package/dist/app-config/events.js +12 -12
  7. package/dist/app-config/lifecycle-contracts.d.ts +54 -54
  8. package/dist/app-config/lifecycle-contracts.js +19 -19
  9. package/dist/app-config/lifecycle.d.ts +2 -2
  10. package/dist/app-config/runtime.d.ts +3 -3
  11. package/dist/app-config/spec.d.ts +10 -12
  12. package/dist/app-config/spec.js +5 -26
  13. package/dist/capabilities/capabilities.d.ts +4 -11
  14. package/dist/capabilities/capabilities.js +3 -5
  15. package/dist/capabilities/openbanking.js +10 -10
  16. package/dist/client/react/form-render.js +1 -0
  17. package/dist/contract-registry/schemas.d.ts +2 -2
  18. package/dist/contract-registry/schemas.js +1 -1
  19. package/dist/contract-registry/types.d.ts +1 -1
  20. package/dist/data-views/data-views.js +1 -0
  21. package/dist/data-views/registry.d.ts +3 -37
  22. package/dist/data-views/registry.js +4 -66
  23. package/dist/data-views/runtime.d.ts +1 -1
  24. package/dist/data-views/runtime.js +2 -0
  25. package/dist/data-views/spec.d.ts +2 -2
  26. package/dist/docs/index.d.ts +2 -2
  27. package/dist/docs/index.js +2 -2
  28. package/dist/docs/presentations.d.ts +2 -4
  29. package/dist/docs/presentations.js +2 -4
  30. package/dist/docs/tech/contracts/ops-to-presentation-linking.docblock.js +1 -1
  31. package/dist/docs/tech/contracts/tests.docblock.js +1 -1
  32. package/dist/docs/tech-contracts.docs.js +1 -1
  33. package/dist/docs/types.d.ts +1 -1
  34. package/dist/events.d.ts +3 -3
  35. package/dist/examples/docs/examples.docblock.d.ts +6 -0
  36. package/dist/examples/docs/examples.docblock.js +165 -0
  37. package/dist/examples/index.d.ts +5 -0
  38. package/dist/examples/index.js +6 -0
  39. package/dist/examples/registry.d.ts +65 -0
  40. package/dist/examples/registry.js +144 -0
  41. package/dist/examples/schema.d.ts +282 -0
  42. package/dist/examples/schema.js +125 -0
  43. package/dist/examples/types.d.ts +167 -0
  44. package/dist/examples/types.js +43 -0
  45. package/dist/examples/validation.d.ts +65 -0
  46. package/dist/examples/validation.js +144 -0
  47. package/dist/experiments/docs/experiments.docblock.js +1 -1
  48. package/dist/experiments/evaluator.d.ts +1 -1
  49. package/dist/experiments/spec-resolver.d.ts +2 -2
  50. package/dist/experiments/spec.d.ts +6 -8
  51. package/dist/experiments/spec.js +5 -23
  52. package/dist/features/index.d.ts +9 -1
  53. package/dist/features/index.js +8 -1
  54. package/dist/features/install.js +2 -2
  55. package/dist/features/types.d.ts +7 -7
  56. package/dist/forms/forms.d.ts +2 -2
  57. package/dist/forms/forms.js +3 -6
  58. package/dist/index.d.ts +13 -8
  59. package/dist/index.js +11 -2
  60. package/dist/install.d.ts +9 -9
  61. package/dist/integrations/connection.d.ts +1 -1
  62. package/dist/integrations/integrations.feature.js +8 -8
  63. package/dist/integrations/openbanking/contracts/accounts.d.ts +66 -66
  64. package/dist/integrations/openbanking/contracts/accounts.js +3 -3
  65. package/dist/integrations/openbanking/contracts/balances.d.ts +34 -34
  66. package/dist/integrations/openbanking/contracts/balances.js +2 -2
  67. package/dist/integrations/openbanking/contracts/transactions.d.ts +48 -48
  68. package/dist/integrations/openbanking/contracts/transactions.js +2 -2
  69. package/dist/integrations/openbanking/models.d.ts +55 -55
  70. package/dist/integrations/openbanking/openbanking.feature.js +10 -10
  71. package/dist/integrations/operations.d.ts +102 -102
  72. package/dist/integrations/operations.js +10 -10
  73. package/dist/integrations/providers/elevenlabs.js +2 -2
  74. package/dist/integrations/providers/gcs-storage.js +2 -2
  75. package/dist/integrations/providers/gmail.js +3 -3
  76. package/dist/integrations/providers/google-calendar.js +2 -2
  77. package/dist/integrations/providers/mistral.js +3 -3
  78. package/dist/integrations/providers/postmark.js +2 -2
  79. package/dist/integrations/providers/powens.js +4 -4
  80. package/dist/integrations/providers/qdrant.js +3 -3
  81. package/dist/integrations/providers/stripe.js +2 -2
  82. package/dist/integrations/providers/twilio-sms.js +2 -2
  83. package/dist/integrations/runtime.d.ts +5 -5
  84. package/dist/integrations/spec.d.ts +3 -5
  85. package/dist/integrations/spec.js +5 -26
  86. package/dist/jobs/gcp-cloud-tasks.js +1 -1
  87. package/dist/jobs/gcp-pubsub.js +1 -1
  88. package/dist/jobs/handlers/ping-handler.d.ts +3 -3
  89. package/dist/jobs/handlers/ping-handler.js +2 -2
  90. package/dist/jobs/memory-queue.js +1 -1
  91. package/dist/jobs/queue.d.ts +4 -4
  92. package/dist/jobs/scaleway-sqs-queue.js +2 -2
  93. package/dist/jsonschema.d.ts +4 -4
  94. package/dist/knowledge/binding.d.ts +1 -1
  95. package/dist/knowledge/knowledge.feature.js +8 -8
  96. package/dist/knowledge/operations.d.ts +66 -66
  97. package/dist/knowledge/operations.js +12 -12
  98. package/dist/knowledge/source.d.ts +1 -1
  99. package/dist/knowledge/spaces/email-threads.js +2 -2
  100. package/dist/knowledge/spaces/financial-docs.js +2 -2
  101. package/dist/knowledge/spaces/financial-overview.js +2 -2
  102. package/dist/knowledge/spaces/product-canon.js +2 -2
  103. package/dist/knowledge/spaces/support-faq.js +2 -2
  104. package/dist/knowledge/spaces/uploaded-docs.js +2 -2
  105. package/dist/knowledge/spec.d.ts +3 -5
  106. package/dist/knowledge/spec.js +6 -28
  107. package/dist/llm/exporters.js +2 -2
  108. package/dist/llm/types.d.ts +4 -4
  109. package/dist/markdown.js +1 -1
  110. package/dist/migrations.d.ts +2 -2
  111. package/dist/migrations.js +7 -9
  112. package/dist/onboarding-base.d.ts +29 -29
  113. package/dist/onboarding-base.js +4 -4
  114. package/dist/openapi.js +9 -2
  115. package/dist/operations/operation.d.ts +3 -3
  116. package/dist/operations/registry.d.ts +9 -58
  117. package/dist/operations/registry.js +17 -93
  118. package/dist/ownership.d.ts +1 -1
  119. package/dist/policy/docs/policy.docblock.js +1 -1
  120. package/dist/policy/engine.js +2 -0
  121. package/dist/policy/spec.d.ts +1 -1
  122. package/dist/prompt.d.ts +6 -6
  123. package/dist/promptRegistry.d.ts +4 -4
  124. package/dist/promptRegistry.js +2 -5
  125. package/dist/regenerator/docs/regenerator.docblock.js +1 -1
  126. package/dist/regenerator/types.d.ts +1 -1
  127. package/dist/registry.d.ts +3 -2
  128. package/dist/registry.js +5 -5
  129. package/dist/resources.d.ts +5 -5
  130. package/dist/server/graphql-pothos.js +2 -2
  131. package/dist/server/mcp/registerTools.js +1 -1
  132. package/dist/server/rest-elysia.d.ts +1 -1
  133. package/dist/server/rest-elysia.js +1 -1
  134. package/dist/server/rest-express.d.ts +1 -1
  135. package/dist/server/rest-express.js +1 -1
  136. package/dist/server/rest-generic.d.ts +1 -1
  137. package/dist/server/rest-generic.js +1 -1
  138. package/dist/server/rest-next-app.d.ts +1 -1
  139. package/dist/server/rest-next-mcp.d.ts +1 -1
  140. package/dist/server/rest-next-mcp.js +1 -1
  141. package/dist/server/rest-next-pages.d.ts +1 -1
  142. package/dist/telemetry/docs/telemetry.docblock.js +1 -1
  143. package/dist/telemetry/spec.d.ts +7 -7
  144. package/dist/telemetry/spec.js +17 -44
  145. package/dist/telemetry/tracker.d.ts +2 -2
  146. package/dist/tests/runner.d.ts +1 -1
  147. package/dist/tests/spec.d.ts +5 -5
  148. package/dist/tests/spec.js +3 -5
  149. package/dist/themes.d.ts +4 -6
  150. package/dist/themes.js +5 -27
  151. package/dist/translations/catalog.d.ts +1 -1
  152. package/dist/types.d.ts +5 -5
  153. package/dist/workflow/adapters/db-adapter.js +3 -3
  154. package/dist/workflow/runner.d.ts +4 -2
  155. package/dist/workflow/spec.d.ts +4 -17
  156. package/dist/workflow/spec.js +4 -48
  157. package/dist/workflow/state.d.ts +1 -1
  158. package/dist/workflow/validation.js +1 -1
  159. package/dist/workspace-config/contractsrc-schema.d.ts +346 -346
  160. package/dist/workspace-config/contractsrc-schema.js +86 -86
  161. package/package.json +19 -12
@@ -15,7 +15,7 @@ const ConfigDraftCreatedEvent = defineEvent({
15
15
  meta: {
16
16
  ...lifecycleOwnership,
17
17
  key: "app_config.draft_created",
18
- version: 1,
18
+ version: "1.0.0",
19
19
  description: "A new tenant config draft was created."
20
20
  },
21
21
  payload: new SchemaModel({
@@ -30,7 +30,7 @@ const ConfigDraftCreatedEvent = defineEvent({
30
30
  isOptional: false
31
31
  },
32
32
  version: {
33
- type: ScalarTypeEnum.Int_unsecure(),
33
+ type: ScalarTypeEnum.String_unsecure(),
34
34
  isOptional: false
35
35
  },
36
36
  blueprintName: {
@@ -38,7 +38,7 @@ const ConfigDraftCreatedEvent = defineEvent({
38
38
  isOptional: false
39
39
  },
40
40
  blueprintVersion: {
41
- type: ScalarTypeEnum.Int_unsecure(),
41
+ type: ScalarTypeEnum.String_unsecure(),
42
42
  isOptional: false
43
43
  },
44
44
  createdBy: {
@@ -56,7 +56,7 @@ const ConfigPromotedToPreviewEvent = defineEvent({
56
56
  meta: {
57
57
  ...lifecycleOwnership,
58
58
  key: "app_config.promoted_to_preview",
59
- version: 1,
59
+ version: "1.0.0",
60
60
  description: "A tenant config draft was promoted to preview."
61
61
  },
62
62
  payload: new SchemaModel({
@@ -71,7 +71,7 @@ const ConfigPromotedToPreviewEvent = defineEvent({
71
71
  isOptional: false
72
72
  },
73
73
  version: {
74
- type: ScalarTypeEnum.Int_unsecure(),
74
+ type: ScalarTypeEnum.String_unsecure(),
75
75
  isOptional: false
76
76
  },
77
77
  promotedBy: {
@@ -90,7 +90,7 @@ const ConfigPublishedEvent = defineEvent({
90
90
  meta: {
91
91
  ...lifecycleOwnership,
92
92
  key: "app_config.published",
93
- version: 1,
93
+ version: "1.0.0",
94
94
  description: "A tenant config version was published to production."
95
95
  },
96
96
  payload: new SchemaModel({
@@ -105,11 +105,11 @@ const ConfigPublishedEvent = defineEvent({
105
105
  isOptional: false
106
106
  },
107
107
  version: {
108
- type: ScalarTypeEnum.Int_unsecure(),
108
+ type: ScalarTypeEnum.String_unsecure(),
109
109
  isOptional: false
110
110
  },
111
111
  previousVersion: {
112
- type: ScalarTypeEnum.Int_unsecure(),
112
+ type: ScalarTypeEnum.String_unsecure(),
113
113
  isOptional: true
114
114
  },
115
115
  publishedBy: {
@@ -132,7 +132,7 @@ const ConfigRolledBackEvent = defineEvent({
132
132
  meta: {
133
133
  ...lifecycleOwnership,
134
134
  key: "app_config.rolled_back",
135
- version: 1,
135
+ version: "1.0.0",
136
136
  description: "A tenant config was rolled back to a previous version."
137
137
  },
138
138
  payload: new SchemaModel({
@@ -147,15 +147,15 @@ const ConfigRolledBackEvent = defineEvent({
147
147
  isOptional: false
148
148
  },
149
149
  newVersion: {
150
- type: ScalarTypeEnum.Int_unsecure(),
150
+ type: ScalarTypeEnum.String_unsecure(),
151
151
  isOptional: false
152
152
  },
153
153
  rolledBackFrom: {
154
- type: ScalarTypeEnum.Int_unsecure(),
154
+ type: ScalarTypeEnum.String_unsecure(),
155
155
  isOptional: false
156
156
  },
157
157
  rolledBackTo: {
158
- type: ScalarTypeEnum.Int_unsecure(),
158
+ type: ScalarTypeEnum.String_unsecure(),
159
159
  isOptional: false
160
160
  },
161
161
  rolledBackBy: {
@@ -3,50 +3,50 @@ import { OperationSpec } from "../operations/operation.js";
3
3
  import { OperationSpecRegistry } from "../operations/registry.js";
4
4
  import "../operations/index.js";
5
5
  import "../index.js";
6
- import * as _contractspec_lib_schema467 from "@contractspec/lib.schema";
6
+ import * as _contractspec_lib_schema102 from "@contractspec/lib.schema";
7
7
  import { SchemaModel } from "@contractspec/lib.schema";
8
8
 
9
9
  //#region src/app-config/lifecycle-contracts.d.ts
10
10
  declare const CreateTenantConfigDraftCommand: OperationSpec<SchemaModel<{
11
11
  tenantId: {
12
- type: _contractspec_lib_schema467.FieldType<string, string>;
12
+ type: _contractspec_lib_schema102.FieldType<string, string>;
13
13
  isOptional: false;
14
14
  };
15
15
  appId: {
16
- type: _contractspec_lib_schema467.FieldType<string, string>;
16
+ type: _contractspec_lib_schema102.FieldType<string, string>;
17
17
  isOptional: false;
18
18
  };
19
19
  blueprintName: {
20
- type: _contractspec_lib_schema467.FieldType<string, string>;
20
+ type: _contractspec_lib_schema102.FieldType<string, string>;
21
21
  isOptional: false;
22
22
  };
23
23
  blueprintVersion: {
24
- type: _contractspec_lib_schema467.FieldType<number, number>;
24
+ type: _contractspec_lib_schema102.FieldType<number, number>;
25
25
  isOptional: false;
26
26
  };
27
27
  environment: {
28
- type: _contractspec_lib_schema467.FieldType<string, string>;
28
+ type: _contractspec_lib_schema102.FieldType<string, string>;
29
29
  isOptional: true;
30
30
  };
31
31
  fromVersion: {
32
- type: _contractspec_lib_schema467.FieldType<number, number>;
32
+ type: _contractspec_lib_schema102.FieldType<string, string>;
33
33
  isOptional: true;
34
34
  };
35
35
  createdBy: {
36
- type: _contractspec_lib_schema467.FieldType<string, string>;
36
+ type: _contractspec_lib_schema102.FieldType<string, string>;
37
37
  isOptional: false;
38
38
  };
39
39
  }>, SchemaModel<{
40
40
  version: {
41
- type: _contractspec_lib_schema467.FieldType<number, number>;
41
+ type: _contractspec_lib_schema102.FieldType<string, string>;
42
42
  isOptional: false;
43
43
  };
44
44
  status: {
45
- type: _contractspec_lib_schema467.FieldType<string, string>;
45
+ type: _contractspec_lib_schema102.FieldType<string, string>;
46
46
  isOptional: false;
47
47
  };
48
48
  createdAt: {
49
- type: _contractspec_lib_schema467.FieldType<Date, string>;
49
+ type: _contractspec_lib_schema102.FieldType<Date, string>;
50
50
  isOptional: false;
51
51
  };
52
52
  }>, {
@@ -55,32 +55,32 @@ declare const CreateTenantConfigDraftCommand: OperationSpec<SchemaModel<{
55
55
  }[]>;
56
56
  declare const PromoteTenantConfigToPreviewCommand: OperationSpec<SchemaModel<{
57
57
  tenantId: {
58
- type: _contractspec_lib_schema467.FieldType<string, string>;
58
+ type: _contractspec_lib_schema102.FieldType<string, string>;
59
59
  isOptional: false;
60
60
  };
61
61
  appId: {
62
- type: _contractspec_lib_schema467.FieldType<string, string>;
62
+ type: _contractspec_lib_schema102.FieldType<string, string>;
63
63
  isOptional: false;
64
64
  };
65
65
  version: {
66
- type: _contractspec_lib_schema467.FieldType<number, number>;
66
+ type: _contractspec_lib_schema102.FieldType<string, string>;
67
67
  isOptional: false;
68
68
  };
69
69
  promotedBy: {
70
- type: _contractspec_lib_schema467.FieldType<string, string>;
70
+ type: _contractspec_lib_schema102.FieldType<string, string>;
71
71
  isOptional: false;
72
72
  };
73
73
  }>, SchemaModel<{
74
74
  version: {
75
- type: _contractspec_lib_schema467.FieldType<number, number>;
75
+ type: _contractspec_lib_schema102.FieldType<string, string>;
76
76
  isOptional: false;
77
77
  };
78
78
  status: {
79
- type: _contractspec_lib_schema467.FieldType<string, string>;
79
+ type: _contractspec_lib_schema102.FieldType<string, string>;
80
80
  isOptional: false;
81
81
  };
82
82
  warnings: {
83
- type: _contractspec_lib_schema467.FieldType<string, string>;
83
+ type: _contractspec_lib_schema102.FieldType<string, string>;
84
84
  isOptional: true;
85
85
  isArray: true;
86
86
  };
@@ -90,44 +90,44 @@ declare const PromoteTenantConfigToPreviewCommand: OperationSpec<SchemaModel<{
90
90
  }[]>;
91
91
  declare const PublishTenantConfigCommand: OperationSpec<SchemaModel<{
92
92
  tenantId: {
93
- type: _contractspec_lib_schema467.FieldType<string, string>;
93
+ type: _contractspec_lib_schema102.FieldType<string, string>;
94
94
  isOptional: false;
95
95
  };
96
96
  appId: {
97
- type: _contractspec_lib_schema467.FieldType<string, string>;
97
+ type: _contractspec_lib_schema102.FieldType<string, string>;
98
98
  isOptional: false;
99
99
  };
100
100
  version: {
101
- type: _contractspec_lib_schema467.FieldType<number, number>;
101
+ type: _contractspec_lib_schema102.FieldType<string, string>;
102
102
  isOptional: false;
103
103
  };
104
104
  environment: {
105
- type: _contractspec_lib_schema467.FieldType<string, string>;
105
+ type: _contractspec_lib_schema102.FieldType<string, string>;
106
106
  isOptional: true;
107
107
  };
108
108
  publishedBy: {
109
- type: _contractspec_lib_schema467.FieldType<string, string>;
109
+ type: _contractspec_lib_schema102.FieldType<string, string>;
110
110
  isOptional: false;
111
111
  };
112
112
  changeSummary: {
113
- type: _contractspec_lib_schema467.FieldType<string, string>;
113
+ type: _contractspec_lib_schema102.FieldType<string, string>;
114
114
  isOptional: true;
115
115
  };
116
116
  }>, SchemaModel<{
117
117
  version: {
118
- type: _contractspec_lib_schema467.FieldType<number, number>;
118
+ type: _contractspec_lib_schema102.FieldType<string, string>;
119
119
  isOptional: false;
120
120
  };
121
121
  status: {
122
- type: _contractspec_lib_schema467.FieldType<string, string>;
122
+ type: _contractspec_lib_schema102.FieldType<string, string>;
123
123
  isOptional: false;
124
124
  };
125
125
  previousVersion: {
126
- type: _contractspec_lib_schema467.FieldType<number, number>;
126
+ type: _contractspec_lib_schema102.FieldType<string, string>;
127
127
  isOptional: true;
128
128
  };
129
129
  publishedAt: {
130
- type: _contractspec_lib_schema467.FieldType<Date, string>;
130
+ type: _contractspec_lib_schema102.FieldType<Date, string>;
131
131
  isOptional: false;
132
132
  };
133
133
  }>, {
@@ -136,40 +136,40 @@ declare const PublishTenantConfigCommand: OperationSpec<SchemaModel<{
136
136
  }[]>;
137
137
  declare const RollbackTenantConfigCommand: OperationSpec<SchemaModel<{
138
138
  tenantId: {
139
- type: _contractspec_lib_schema467.FieldType<string, string>;
139
+ type: _contractspec_lib_schema102.FieldType<string, string>;
140
140
  isOptional: false;
141
141
  };
142
142
  appId: {
143
- type: _contractspec_lib_schema467.FieldType<string, string>;
143
+ type: _contractspec_lib_schema102.FieldType<string, string>;
144
144
  isOptional: false;
145
145
  };
146
146
  toVersion: {
147
- type: _contractspec_lib_schema467.FieldType<number, number>;
147
+ type: _contractspec_lib_schema102.FieldType<string, string>;
148
148
  isOptional: false;
149
149
  };
150
150
  environment: {
151
- type: _contractspec_lib_schema467.FieldType<string, string>;
151
+ type: _contractspec_lib_schema102.FieldType<string, string>;
152
152
  isOptional: true;
153
153
  };
154
154
  rolledBackBy: {
155
- type: _contractspec_lib_schema467.FieldType<string, string>;
155
+ type: _contractspec_lib_schema102.FieldType<string, string>;
156
156
  isOptional: false;
157
157
  };
158
158
  reason: {
159
- type: _contractspec_lib_schema467.FieldType<string, string>;
159
+ type: _contractspec_lib_schema102.FieldType<string, string>;
160
160
  isOptional: false;
161
161
  };
162
162
  }>, SchemaModel<{
163
163
  newVersion: {
164
- type: _contractspec_lib_schema467.FieldType<number, number>;
164
+ type: _contractspec_lib_schema102.FieldType<string, string>;
165
165
  isOptional: false;
166
166
  };
167
167
  status: {
168
- type: _contractspec_lib_schema467.FieldType<string, string>;
168
+ type: _contractspec_lib_schema102.FieldType<string, string>;
169
169
  isOptional: false;
170
170
  };
171
171
  rolledBackFrom: {
172
- type: _contractspec_lib_schema467.FieldType<number, number>;
172
+ type: _contractspec_lib_schema102.FieldType<number, number>;
173
173
  isOptional: false;
174
174
  };
175
175
  }>, {
@@ -178,22 +178,22 @@ declare const RollbackTenantConfigCommand: OperationSpec<SchemaModel<{
178
178
  }[]>;
179
179
  declare const ListTenantConfigVersionsQuery: OperationSpec<SchemaModel<{
180
180
  tenantId: {
181
- type: _contractspec_lib_schema467.FieldType<string, string>;
181
+ type: _contractspec_lib_schema102.FieldType<string, string>;
182
182
  isOptional: false;
183
183
  };
184
184
  appId: {
185
- type: _contractspec_lib_schema467.FieldType<string, string>;
185
+ type: _contractspec_lib_schema102.FieldType<string, string>;
186
186
  isOptional: false;
187
187
  };
188
188
  }>, SchemaModel<{
189
189
  versions: {
190
190
  type: SchemaModel<{
191
191
  meta: {
192
- type: _contractspec_lib_schema467.FieldType<Record<string, unknown>, Record<string, unknown>>;
192
+ type: _contractspec_lib_schema102.FieldType<Record<string, unknown>, Record<string, unknown>>;
193
193
  isOptional: false;
194
194
  };
195
195
  config: {
196
- type: _contractspec_lib_schema467.FieldType<Record<string, unknown>, Record<string, unknown>>;
196
+ type: _contractspec_lib_schema102.FieldType<Record<string, unknown>, Record<string, unknown>>;
197
197
  isOptional: false;
198
198
  };
199
199
  }>;
@@ -203,35 +203,35 @@ declare const ListTenantConfigVersionsQuery: OperationSpec<SchemaModel<{
203
203
  transitions: {
204
204
  type: SchemaModel<{
205
205
  tenantId: {
206
- type: _contractspec_lib_schema467.FieldType<string, string>;
206
+ type: _contractspec_lib_schema102.FieldType<string, string>;
207
207
  isOptional: false;
208
208
  };
209
209
  appId: {
210
- type: _contractspec_lib_schema467.FieldType<string, string>;
210
+ type: _contractspec_lib_schema102.FieldType<string, string>;
211
211
  isOptional: false;
212
212
  };
213
213
  fromStatus: {
214
- type: _contractspec_lib_schema467.FieldType<string, string>;
214
+ type: _contractspec_lib_schema102.FieldType<string, string>;
215
215
  isOptional: false;
216
216
  };
217
217
  toStatus: {
218
- type: _contractspec_lib_schema467.FieldType<string, string>;
218
+ type: _contractspec_lib_schema102.FieldType<string, string>;
219
219
  isOptional: false;
220
220
  };
221
221
  version: {
222
- type: _contractspec_lib_schema467.FieldType<number, number>;
222
+ type: _contractspec_lib_schema102.FieldType<string, string>;
223
223
  isOptional: false;
224
224
  };
225
225
  timestamp: {
226
- type: _contractspec_lib_schema467.FieldType<Date, string>;
226
+ type: _contractspec_lib_schema102.FieldType<Date, string>;
227
227
  isOptional: false;
228
228
  };
229
229
  actor: {
230
- type: _contractspec_lib_schema467.FieldType<string, string>;
230
+ type: _contractspec_lib_schema102.FieldType<string, string>;
231
231
  isOptional: false;
232
232
  };
233
233
  reason: {
234
- type: _contractspec_lib_schema467.FieldType<string, string>;
234
+ type: _contractspec_lib_schema102.FieldType<string, string>;
235
235
  isOptional: true;
236
236
  };
237
237
  }>;
@@ -241,26 +241,26 @@ declare const ListTenantConfigVersionsQuery: OperationSpec<SchemaModel<{
241
241
  }>, undefined>;
242
242
  declare const GetTenantConfigVersionQuery: OperationSpec<SchemaModel<{
243
243
  tenantId: {
244
- type: _contractspec_lib_schema467.FieldType<string, string>;
244
+ type: _contractspec_lib_schema102.FieldType<string, string>;
245
245
  isOptional: false;
246
246
  };
247
247
  appId: {
248
- type: _contractspec_lib_schema467.FieldType<string, string>;
248
+ type: _contractspec_lib_schema102.FieldType<string, string>;
249
249
  isOptional: false;
250
250
  };
251
251
  version: {
252
- type: _contractspec_lib_schema467.FieldType<number, number>;
252
+ type: _contractspec_lib_schema102.FieldType<string, string>;
253
253
  isOptional: false;
254
254
  };
255
255
  }>, SchemaModel<{
256
256
  version: {
257
257
  type: SchemaModel<{
258
258
  meta: {
259
- type: _contractspec_lib_schema467.FieldType<Record<string, unknown>, Record<string, unknown>>;
259
+ type: _contractspec_lib_schema102.FieldType<Record<string, unknown>, Record<string, unknown>>;
260
260
  isOptional: false;
261
261
  };
262
262
  config: {
263
- type: _contractspec_lib_schema467.FieldType<Record<string, unknown>, Record<string, unknown>>;
263
+ type: _contractspec_lib_schema102.FieldType<Record<string, unknown>, Record<string, unknown>>;
264
264
  isOptional: false;
265
265
  };
266
266
  }>;
@@ -9,14 +9,14 @@ const LifecyclePolicy = {
9
9
  auth: "admin",
10
10
  policies: [{
11
11
  key: "platform.app-config.manage",
12
- version: 1
12
+ version: "1.0.0"
13
13
  }]
14
14
  };
15
15
  const LifecycleReadPolicy = {
16
16
  auth: "admin",
17
17
  policies: [{
18
18
  key: "platform.app-config.read",
19
- version: 1
19
+ version: "1.0.0"
20
20
  }]
21
21
  };
22
22
  const ConfigVersionRecord = new SchemaModel({
@@ -52,7 +52,7 @@ const ConfigTransitionRecord = new SchemaModel({
52
52
  isOptional: false
53
53
  },
54
54
  version: {
55
- type: ScalarTypeEnum.Int_unsecure(),
55
+ type: ScalarTypeEnum.String_unsecure(),
56
56
  isOptional: false
57
57
  },
58
58
  timestamp: {
@@ -93,7 +93,7 @@ const CreateDraftInput = new SchemaModel({
93
93
  isOptional: true
94
94
  },
95
95
  fromVersion: {
96
- type: ScalarTypeEnum.Int_unsecure(),
96
+ type: ScalarTypeEnum.String_unsecure(),
97
97
  isOptional: true
98
98
  },
99
99
  createdBy: {
@@ -106,7 +106,7 @@ const CreateDraftOutput = new SchemaModel({
106
106
  name: "CreateTenantConfigDraftOutput",
107
107
  fields: {
108
108
  version: {
109
- type: ScalarTypeEnum.Int_unsecure(),
109
+ type: ScalarTypeEnum.String_unsecure(),
110
110
  isOptional: false
111
111
  },
112
112
  status: {
@@ -122,7 +122,7 @@ const CreateDraftOutput = new SchemaModel({
122
122
  const CreateTenantConfigDraftCommand = defineCommand({
123
123
  meta: {
124
124
  key: "appConfig.lifecycle.createDraft",
125
- version: 1,
125
+ version: "1.0.0",
126
126
  description: "Creates a new draft tenant config version.",
127
127
  owners: [OwnersEnum.PlatformSigil],
128
128
  tags: [TagsEnum.Hygiene, "app-config"],
@@ -152,7 +152,7 @@ const PromotePreviewInput = new SchemaModel({
152
152
  isOptional: false
153
153
  },
154
154
  version: {
155
- type: ScalarTypeEnum.Int_unsecure(),
155
+ type: ScalarTypeEnum.String_unsecure(),
156
156
  isOptional: false
157
157
  },
158
158
  promotedBy: {
@@ -165,7 +165,7 @@ const PromotePreviewOutput = new SchemaModel({
165
165
  name: "PromoteTenantConfigPreviewOutput",
166
166
  fields: {
167
167
  version: {
168
- type: ScalarTypeEnum.Int_unsecure(),
168
+ type: ScalarTypeEnum.String_unsecure(),
169
169
  isOptional: false
170
170
  },
171
171
  status: {
@@ -182,7 +182,7 @@ const PromotePreviewOutput = new SchemaModel({
182
182
  const PromoteTenantConfigToPreviewCommand = defineCommand({
183
183
  meta: {
184
184
  key: "appConfig.lifecycle.promoteToPreview",
185
- version: 1,
185
+ version: "1.0.0",
186
186
  description: "Promotes a draft tenant config to preview/testing state.",
187
187
  owners: [OwnersEnum.PlatformSigil],
188
188
  tags: [TagsEnum.Hygiene, "app-config"],
@@ -212,7 +212,7 @@ const PublishConfigInput = new SchemaModel({
212
212
  isOptional: false
213
213
  },
214
214
  version: {
215
- type: ScalarTypeEnum.Int_unsecure(),
215
+ type: ScalarTypeEnum.String_unsecure(),
216
216
  isOptional: false
217
217
  },
218
218
  environment: {
@@ -233,7 +233,7 @@ const PublishConfigOutput = new SchemaModel({
233
233
  name: "PublishTenantConfigOutput",
234
234
  fields: {
235
235
  version: {
236
- type: ScalarTypeEnum.Int_unsecure(),
236
+ type: ScalarTypeEnum.String_unsecure(),
237
237
  isOptional: false
238
238
  },
239
239
  status: {
@@ -241,7 +241,7 @@ const PublishConfigOutput = new SchemaModel({
241
241
  isOptional: false
242
242
  },
243
243
  previousVersion: {
244
- type: ScalarTypeEnum.Int_unsecure(),
244
+ type: ScalarTypeEnum.String_unsecure(),
245
245
  isOptional: true
246
246
  },
247
247
  publishedAt: {
@@ -253,7 +253,7 @@ const PublishConfigOutput = new SchemaModel({
253
253
  const PublishTenantConfigCommand = defineCommand({
254
254
  meta: {
255
255
  key: "appConfig.lifecycle.publish",
256
- version: 1,
256
+ version: "1.0.0",
257
257
  description: "Publishes a preview tenant config to production.",
258
258
  owners: [OwnersEnum.PlatformSigil],
259
259
  tags: [TagsEnum.Hygiene, "app-config"],
@@ -283,7 +283,7 @@ const RollbackConfigInput = new SchemaModel({
283
283
  isOptional: false
284
284
  },
285
285
  toVersion: {
286
- type: ScalarTypeEnum.Int_unsecure(),
286
+ type: ScalarTypeEnum.String_unsecure(),
287
287
  isOptional: false
288
288
  },
289
289
  environment: {
@@ -304,7 +304,7 @@ const RollbackConfigOutput = new SchemaModel({
304
304
  name: "RollbackTenantConfigOutput",
305
305
  fields: {
306
306
  newVersion: {
307
- type: ScalarTypeEnum.Int_unsecure(),
307
+ type: ScalarTypeEnum.String_unsecure(),
308
308
  isOptional: false
309
309
  },
310
310
  status: {
@@ -320,7 +320,7 @@ const RollbackConfigOutput = new SchemaModel({
320
320
  const RollbackTenantConfigCommand = defineCommand({
321
321
  meta: {
322
322
  key: "appConfig.lifecycle.rollback",
323
- version: 1,
323
+ version: "1.0.0",
324
324
  description: "Rolls back to a previously published tenant config version.",
325
325
  owners: [OwnersEnum.PlatformSigil],
326
326
  tags: [TagsEnum.Hygiene, "app-config"],
@@ -369,7 +369,7 @@ const ListVersionsOutput = new SchemaModel({
369
369
  const ListTenantConfigVersionsQuery = defineQuery({
370
370
  meta: {
371
371
  key: "appConfig.lifecycle.listVersions",
372
- version: 1,
372
+ version: "1.0.0",
373
373
  description: "Lists all versions of a tenant configuration.",
374
374
  owners: [OwnersEnum.PlatformSigil],
375
375
  tags: ["app-config", TagsEnum.Hygiene],
@@ -395,7 +395,7 @@ const GetVersionInput = new SchemaModel({
395
395
  isOptional: false
396
396
  },
397
397
  version: {
398
- type: ScalarTypeEnum.Int_unsecure(),
398
+ type: ScalarTypeEnum.String_unsecure(),
399
399
  isOptional: false
400
400
  }
401
401
  }
@@ -410,7 +410,7 @@ const GetVersionOutput = new SchemaModel({
410
410
  const GetTenantConfigVersionQuery = defineQuery({
411
411
  meta: {
412
412
  key: "appConfig.lifecycle.getVersion",
413
- version: 1,
413
+ version: "1.0.0",
414
414
  description: "Fetches a single tenant config version by id.",
415
415
  owners: [OwnersEnum.PlatformSigil],
416
416
  tags: ["app-config", TagsEnum.Hygiene],
@@ -11,7 +11,7 @@ interface ConfigTransition {
11
11
  appId: string;
12
12
  fromStatus: ConfigStatus;
13
13
  toStatus: ConfigStatus;
14
- version: number;
14
+ version: string;
15
15
  timestamp: string | Date;
16
16
  actor: string;
17
17
  reason?: string;
@@ -21,7 +21,7 @@ interface ConfigVersionHistory {
21
21
  appId: string;
22
22
  versions: TenantAppConfigVersion[];
23
23
  transitions: ConfigTransition[];
24
- currentPublished?: number;
24
+ currentPublished?: string;
25
25
  }
26
26
  //#endregion
27
27
  export { ConfigStatus, ConfigTransition, ConfigVersionHistory, TenantAppConfigVersion };
@@ -2,7 +2,6 @@ import { CapabilityRef, CapabilityRegistry, CapabilitySpec } from "../capabiliti
2
2
  import "../capabilities/index.js";
3
3
  import { PolicyRef, PolicySpec } from "../policy/spec.js";
4
4
  import { TelemetryRegistry, TelemetrySpec } from "../telemetry/spec.js";
5
- import { ExperimentRef, ExperimentRegistry, ExperimentSpec } from "../experiments/spec.js";
6
5
  import { DataViewSpec } from "../data-views/spec.js";
7
6
  import { DataViewRegistry } from "../data-views/registry.js";
8
7
  import "../data-views/index.js";
@@ -18,6 +17,7 @@ import { AppKnowledgeBinding } from "../knowledge/binding.js";
18
17
  import { ResolvedBranding } from "./branding.js";
19
18
  import { Locale, TranslationEntry } from "../translations/catalog.js";
20
19
  import { AppBlueprintSpec, AppIntegrationSlot, AppRouteConfig, AppThemeBinding, FeatureFlagState, SpecPointer, TelemetryBinding, TenantAppConfig, TranslationCatalogPointer } from "./spec.js";
20
+ import { ExperimentRef, ExperimentRegistry, ExperimentSpec } from "../experiments/spec.js";
21
21
  import { FeatureModuleSpec, FeatureRef } from "../features/types.js";
22
22
  import { FeatureRegistry } from "../features/registry.js";
23
23
  import "../features/index.js";
@@ -45,8 +45,8 @@ interface ResolvedAppConfig {
45
45
  tenantId: string;
46
46
  environment?: string;
47
47
  blueprintName: string;
48
- blueprintVersion: number;
49
- configVersion: number;
48
+ blueprintVersion: string;
49
+ configVersion: string;
50
50
  capabilities: {
51
51
  enabled: CapabilityRef[];
52
52
  disabled: CapabilityRef[];
@@ -2,7 +2,6 @@ import { OwnerShipMeta } from "../ownership.js";
2
2
  import { CapabilityRef } from "../capabilities/capabilities.js";
3
3
  import "../capabilities/index.js";
4
4
  import { PolicyRef } from "../policy/spec.js";
5
- import { ExperimentRef } from "../experiments/spec.js";
6
5
  import { ThemeRef } from "../themes.js";
7
6
  import { IntegrationCategory, IntegrationOwnershipMode } from "../integrations/spec.js";
8
7
  import { AppIntegrationBinding } from "../integrations/binding.js";
@@ -10,13 +9,15 @@ import { AppKnowledgeBinding } from "../knowledge/binding.js";
10
9
  import { BrandingDefaults, TenantBrandingConfig } from "./branding.js";
11
10
  import { Locale, TranslationEntry } from "../translations/catalog.js";
12
11
  import { ConfigStatus } from "./lifecycle.js";
12
+ import { SpecContractRegistry } from "../registry.js";
13
+ import { ExperimentRef } from "../experiments/spec.js";
13
14
  import { FeatureRef } from "../features/types.js";
14
15
  import "../features/index.js";
15
16
 
16
17
  //#region src/app-config/spec.d.ts
17
18
  interface SpecPointer {
18
19
  key: string;
19
- version?: number;
20
+ version?: string;
20
21
  }
21
22
  interface AppRouteConfig {
22
23
  path: string;
@@ -29,7 +30,7 @@ interface AppRouteConfig {
29
30
  }
30
31
  interface TranslationCatalogPointer {
31
32
  key: string;
32
- version: number;
33
+ version: string;
33
34
  }
34
35
  interface AppIntegrationSlot {
35
36
  /** Slot identifier unique within the blueprint (e.g., "primaryPayments"). */
@@ -90,11 +91,8 @@ interface AppBlueprintSpec {
90
91
  routes?: AppRouteConfig[];
91
92
  notes?: string;
92
93
  }
93
- declare class AppBlueprintRegistry {
94
- private readonly items;
95
- register(spec: AppBlueprintSpec): this;
96
- list(): AppBlueprintSpec[];
97
- get(key: string, version?: number): AppBlueprintSpec | undefined;
94
+ declare class AppBlueprintRegistry extends SpecContractRegistry<'app-config', AppBlueprintSpec> {
95
+ constructor(items?: AppBlueprintSpec[]);
98
96
  }
99
97
  declare function makeAppBlueprintKey(meta: AppBlueprintMeta): string;
100
98
  interface TenantAppConfigMeta {
@@ -102,16 +100,16 @@ interface TenantAppConfigMeta {
102
100
  tenantId: string;
103
101
  appId: string;
104
102
  blueprintName: string;
105
- blueprintVersion: number;
103
+ blueprintVersion: string;
106
104
  environment?: string;
107
105
  /** Monotonic version for auditing changes to the tenant config. */
108
- version: number;
106
+ version: string;
109
107
  status: ConfigStatus;
110
108
  createdBy?: string;
111
109
  publishedBy?: string;
112
110
  publishedAt?: string | Date;
113
- rolledBackFrom?: number;
114
- rolledBackTo?: number;
111
+ rolledBackFrom?: string;
112
+ rolledBackTo?: string;
115
113
  changeSummary?: string;
116
114
  createdAt?: string | Date;
117
115
  updatedAt?: string | Date;