@contractspec/lib.feature-flags 0.0.0-canary-20260113162409

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 (225) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +173 -0
  3. package/dist/contracts/index.d.ts +1010 -0
  4. package/dist/contracts/index.d.ts.map +1 -0
  5. package/dist/contracts/index.js +908 -0
  6. package/dist/contracts/index.js.map +1 -0
  7. package/dist/contracts/src/app-config/lifecycle.d.ts +1 -0
  8. package/dist/contracts/src/app-config/runtime.d.ts +13 -0
  9. package/dist/contracts/src/app-config/spec.d.ts +9 -0
  10. package/dist/contracts/src/app-config/validation.d.ts +8 -0
  11. package/dist/contracts/src/capabilities/capabilities.d.ts +33 -0
  12. package/dist/contracts/src/capabilities/capabilities.d.ts.map +1 -0
  13. package/dist/contracts/src/capabilities/index.d.ts +2 -0
  14. package/dist/contracts/src/capabilities/openbanking.d.ts +1 -0
  15. package/dist/contracts/src/client/index.d.ts +1 -0
  16. package/dist/contracts/src/client/react/drivers/rn-reusables.d.ts +1 -0
  17. package/dist/contracts/src/client/react/drivers/shadcn.d.ts +1 -0
  18. package/dist/contracts/src/client/react/feature-render.d.ts +3 -0
  19. package/dist/contracts/src/client/react/form-render.d.ts +4 -0
  20. package/dist/contracts/src/client/react/index.d.ts +4 -0
  21. package/dist/contracts/src/contract-registry/index.d.ts +2 -0
  22. package/dist/contracts/src/contract-registry/schemas.d.ts +2 -0
  23. package/dist/contracts/src/contract-registry/types.d.ts +1 -0
  24. package/dist/contracts/src/data-views/index.d.ts +3 -0
  25. package/dist/contracts/src/data-views/registry.d.ts +2 -0
  26. package/dist/contracts/src/data-views/spec.d.ts +2 -0
  27. package/dist/contracts/src/data-views/types.d.ts +2 -0
  28. package/dist/contracts/src/docs/accessibility_wcag_compliance_specs.docblock.d.ts +1 -0
  29. package/dist/contracts/src/docs/index.d.ts +25 -0
  30. package/dist/contracts/src/docs/presentations.d.ts +2 -0
  31. package/dist/contracts/src/docs/registry.d.ts +10 -0
  32. package/dist/contracts/src/docs/registry.d.ts.map +1 -0
  33. package/dist/contracts/src/docs/tech/auth/better-auth-nextjs.docblock.d.ts +1 -0
  34. package/dist/contracts/src/docs/tech/contracts/README.docblock.d.ts +1 -0
  35. package/dist/contracts/src/docs/tech/contracts/openapi-export.docblock.d.ts +1 -0
  36. package/dist/contracts/src/docs/tech/contracts/openapi-import.docblock.d.ts +1 -0
  37. package/dist/contracts/src/docs/tech/lifecycle-stage-system.docblock.d.ts +1 -0
  38. package/dist/contracts/src/docs/tech/llm/llm-integration.docblock.d.ts +1 -0
  39. package/dist/contracts/src/docs/tech/mcp-endpoints.docblock.d.ts +1 -0
  40. package/dist/contracts/src/docs/tech/presentation-runtime.docblock.d.ts +1 -0
  41. package/dist/contracts/src/docs/tech/schema/README.docblock.d.ts +1 -0
  42. package/dist/contracts/src/docs/tech/studio/learning-events.docblock.d.ts +1 -0
  43. package/dist/contracts/src/docs/tech/studio/learning-journeys.docblock.d.ts +1 -0
  44. package/dist/contracts/src/docs/tech/studio/platform-admin-panel.docblock.d.ts +1 -0
  45. package/dist/contracts/src/docs/tech/studio/project-access-teams.docblock.d.ts +1 -0
  46. package/dist/contracts/src/docs/tech/studio/project-routing.docblock.d.ts +1 -0
  47. package/dist/contracts/src/docs/tech/studio/sandbox-unlogged.docblock.d.ts +1 -0
  48. package/dist/contracts/src/docs/tech/studio/team-invitations.docblock.d.ts +1 -0
  49. package/dist/contracts/src/docs/tech/studio/workspace-ops.docblock.d.ts +1 -0
  50. package/dist/contracts/src/docs/tech/studio/workspaces.docblock.d.ts +1 -0
  51. package/dist/contracts/src/docs/tech/telemetry-ingest.docblock.d.ts +1 -0
  52. package/dist/contracts/src/docs/tech/vscode-extension.docblock.d.ts +1 -0
  53. package/dist/contracts/src/events.d.ts +25 -0
  54. package/dist/contracts/src/events.d.ts.map +1 -0
  55. package/dist/contracts/src/examples/index.d.ts +4 -0
  56. package/dist/contracts/src/examples/registry.d.ts +2 -0
  57. package/dist/contracts/src/examples/schema.d.ts +2 -0
  58. package/dist/contracts/src/examples/types.d.ts +3 -0
  59. package/dist/contracts/src/examples/validation.d.ts +1 -0
  60. package/dist/contracts/src/experiments/evaluator.d.ts +2 -0
  61. package/dist/contracts/src/experiments/spec-resolver.d.ts +4 -0
  62. package/dist/contracts/src/experiments/spec.d.ts +13 -0
  63. package/dist/contracts/src/experiments/spec.d.ts.map +1 -0
  64. package/dist/contracts/src/features/index.d.ts +4 -0
  65. package/dist/contracts/src/features/install.d.ts +6 -0
  66. package/dist/contracts/src/features/registry.d.ts +2 -0
  67. package/dist/contracts/src/features/types.d.ts +86 -0
  68. package/dist/contracts/src/features/types.d.ts.map +1 -0
  69. package/dist/contracts/src/features/validation.d.ts +2 -0
  70. package/dist/contracts/src/forms/forms.d.ts +3 -0
  71. package/dist/contracts/src/forms/index.d.ts +1 -0
  72. package/dist/contracts/src/index.d.ts +51 -0
  73. package/dist/contracts/src/install.d.ts +7 -0
  74. package/dist/contracts/src/integrations/connection.d.ts +1 -0
  75. package/dist/contracts/src/integrations/index.d.ts +6 -0
  76. package/dist/contracts/src/integrations/openbanking/contracts/accounts.d.ts +4 -0
  77. package/dist/contracts/src/integrations/openbanking/contracts/balances.d.ts +4 -0
  78. package/dist/contracts/src/integrations/openbanking/contracts/index.d.ts +5 -0
  79. package/dist/contracts/src/integrations/openbanking/contracts/transactions.d.ts +4 -0
  80. package/dist/contracts/src/integrations/openbanking/guards.d.ts +1 -0
  81. package/dist/contracts/src/integrations/openbanking/models.d.ts +1 -0
  82. package/dist/contracts/src/integrations/openbanking/openbanking.feature.d.ts +1 -0
  83. package/dist/contracts/src/integrations/operations.d.ts +4 -0
  84. package/dist/contracts/src/integrations/providers/elevenlabs.d.ts +2 -0
  85. package/dist/contracts/src/integrations/providers/gcs-storage.d.ts +2 -0
  86. package/dist/contracts/src/integrations/providers/gmail.d.ts +2 -0
  87. package/dist/contracts/src/integrations/providers/google-calendar.d.ts +2 -0
  88. package/dist/contracts/src/integrations/providers/index.d.ts +11 -0
  89. package/dist/contracts/src/integrations/providers/mistral.d.ts +2 -0
  90. package/dist/contracts/src/integrations/providers/postmark.d.ts +2 -0
  91. package/dist/contracts/src/integrations/providers/powens.d.ts +2 -0
  92. package/dist/contracts/src/integrations/providers/qdrant.d.ts +2 -0
  93. package/dist/contracts/src/integrations/providers/registry.d.ts +1 -0
  94. package/dist/contracts/src/integrations/providers/stripe.d.ts +2 -0
  95. package/dist/contracts/src/integrations/providers/twilio-sms.d.ts +2 -0
  96. package/dist/contracts/src/integrations/spec.d.ts +3 -0
  97. package/dist/contracts/src/jsonschema.d.ts +4 -0
  98. package/dist/contracts/src/knowledge/index.d.ts +2 -0
  99. package/dist/contracts/src/knowledge/operations.d.ts +4 -0
  100. package/dist/contracts/src/knowledge/spaces/email-threads.d.ts +1 -0
  101. package/dist/contracts/src/knowledge/spaces/financial-docs.d.ts +1 -0
  102. package/dist/contracts/src/knowledge/spaces/financial-overview.d.ts +1 -0
  103. package/dist/contracts/src/knowledge/spaces/index.d.ts +6 -0
  104. package/dist/contracts/src/knowledge/spaces/product-canon.d.ts +1 -0
  105. package/dist/contracts/src/knowledge/spaces/support-faq.d.ts +1 -0
  106. package/dist/contracts/src/knowledge/spaces/uploaded-docs.d.ts +1 -0
  107. package/dist/contracts/src/knowledge/spec.d.ts +3 -0
  108. package/dist/contracts/src/llm/exporters.d.ts +7 -0
  109. package/dist/contracts/src/llm/index.d.ts +3 -0
  110. package/dist/contracts/src/llm/prompts.d.ts +2 -0
  111. package/dist/contracts/src/llm/types.d.ts +5 -0
  112. package/dist/contracts/src/migrations.d.ts +1 -0
  113. package/dist/contracts/src/model-registry.d.ts +1 -0
  114. package/dist/contracts/src/onboarding-base.d.ts +2 -0
  115. package/dist/contracts/src/openapi.d.ts +1 -0
  116. package/dist/contracts/src/operations/index.d.ts +2 -0
  117. package/dist/contracts/src/operations/operation.d.ts +170 -0
  118. package/dist/contracts/src/operations/operation.d.ts.map +1 -0
  119. package/dist/contracts/src/operations/registry.d.ts +6 -0
  120. package/dist/contracts/src/ownership.d.ts +61 -0
  121. package/dist/contracts/src/ownership.d.ts.map +1 -0
  122. package/dist/contracts/src/policy/engine.d.ts +3 -0
  123. package/dist/contracts/src/policy/index.d.ts +4 -0
  124. package/dist/contracts/src/policy/opa-adapter.d.ts +3 -0
  125. package/dist/contracts/src/policy/registry.d.ts +2 -0
  126. package/dist/contracts/src/policy/spec.d.ts +11 -0
  127. package/dist/contracts/src/policy/spec.d.ts.map +1 -0
  128. package/dist/contracts/src/presentations/index.d.ts +3 -0
  129. package/dist/contracts/src/presentations/presentations.d.ts +9 -0
  130. package/dist/contracts/src/presentations/presentations.d.ts.map +1 -0
  131. package/dist/contracts/src/presentations/registry.d.ts +2 -0
  132. package/dist/contracts/src/presentations/transform-engine.d.ts +2 -0
  133. package/dist/contracts/src/prompt.d.ts +2 -0
  134. package/dist/contracts/src/promptRegistry.d.ts +2 -0
  135. package/dist/contracts/src/regenerator/adapters.d.ts +1 -0
  136. package/dist/contracts/src/regenerator/executor.d.ts +1 -0
  137. package/dist/contracts/src/regenerator/index.d.ts +6 -0
  138. package/dist/contracts/src/regenerator/service.d.ts +2 -0
  139. package/dist/contracts/src/regenerator/sinks.d.ts +2 -0
  140. package/dist/contracts/src/regenerator/types.d.ts +3 -0
  141. package/dist/contracts/src/regenerator/utils.d.ts +1 -0
  142. package/dist/contracts/src/registry-utils.d.ts +1 -0
  143. package/dist/contracts/src/registry.d.ts +3 -0
  144. package/dist/contracts/src/resources.d.ts +19 -0
  145. package/dist/contracts/src/resources.d.ts.map +1 -0
  146. package/dist/contracts/src/schema-to-markdown.d.ts +1 -0
  147. package/dist/contracts/src/server/graphql-pothos.d.ts +7 -0
  148. package/dist/contracts/src/server/index.d.ts +7 -0
  149. package/dist/contracts/src/server/mcp/createMcpServer.d.ts +5 -0
  150. package/dist/contracts/src/server/mcp/mcpTypes.d.ts +2 -0
  151. package/dist/contracts/src/server/provider-mcp.d.ts +1 -0
  152. package/dist/contracts/src/server/rest-elysia.d.ts +3 -0
  153. package/dist/contracts/src/server/rest-express.d.ts +3 -0
  154. package/dist/contracts/src/server/rest-generic.d.ts +2 -0
  155. package/dist/contracts/src/server/rest-next-app.d.ts +3 -0
  156. package/dist/contracts/src/server/rest-next-pages.d.ts +3 -0
  157. package/dist/contracts/src/telemetry/anomaly.d.ts +2 -0
  158. package/dist/contracts/src/telemetry/index.d.ts +3 -0
  159. package/dist/contracts/src/telemetry/spec.d.ts +2 -0
  160. package/dist/contracts/src/telemetry/tracker.d.ts +2 -0
  161. package/dist/contracts/src/tests/index.d.ts +2 -0
  162. package/dist/contracts/src/tests/runner.d.ts +3 -0
  163. package/dist/contracts/src/tests/spec.d.ts +11 -0
  164. package/dist/contracts/src/tests/spec.d.ts.map +1 -0
  165. package/dist/contracts/src/themes.d.ts +2 -0
  166. package/dist/contracts/src/types.d.ts +5 -0
  167. package/dist/contracts/src/workflow/adapters/db-adapter.d.ts +1 -0
  168. package/dist/contracts/src/workflow/adapters/file-adapter.d.ts +1 -0
  169. package/dist/contracts/src/workflow/adapters/index.d.ts +3 -0
  170. package/dist/contracts/src/workflow/adapters/memory-store.d.ts +1 -0
  171. package/dist/contracts/src/workflow/index.d.ts +5 -0
  172. package/dist/contracts/src/workflow/overview.docblock.d.ts +1 -0
  173. package/dist/contracts/src/workflow/runner.d.ts +5 -0
  174. package/dist/contracts/src/workflow/spec.d.ts +5 -0
  175. package/dist/contracts/src/workflow/state.d.ts +1 -0
  176. package/dist/contracts/src/workflow/validation.d.ts +3 -0
  177. package/dist/contracts/src/workspace-config/contractsrc-schema.d.ts +1 -0
  178. package/dist/contracts/src/workspace-config/index.d.ts +1 -0
  179. package/dist/contracts/src/workspace-config/workspace-config.docblock.d.ts +1 -0
  180. package/dist/docs/feature-flags.docblock.d.ts +1 -0
  181. package/dist/docs/feature-flags.docblock.js +76 -0
  182. package/dist/docs/feature-flags.docblock.js.map +1 -0
  183. package/dist/docs/index.d.ts +1 -0
  184. package/dist/docs/index.js +1 -0
  185. package/dist/entities/index.d.ts +201 -0
  186. package/dist/entities/index.d.ts.map +1 -0
  187. package/dist/entities/index.js +325 -0
  188. package/dist/entities/index.js.map +1 -0
  189. package/dist/evaluation/index.d.ts +163 -0
  190. package/dist/evaluation/index.d.ts.map +1 -0
  191. package/dist/evaluation/index.js +221 -0
  192. package/dist/evaluation/index.js.map +1 -0
  193. package/dist/events.d.ts +628 -0
  194. package/dist/events.d.ts.map +1 -0
  195. package/dist/events.js +536 -0
  196. package/dist/events.js.map +1 -0
  197. package/dist/feature-flags.capability.d.ts +9 -0
  198. package/dist/feature-flags.capability.d.ts.map +1 -0
  199. package/dist/feature-flags.capability.js +25 -0
  200. package/dist/feature-flags.capability.js.map +1 -0
  201. package/dist/feature-flags.feature.d.ts +12 -0
  202. package/dist/feature-flags.feature.d.ts.map +1 -0
  203. package/dist/feature-flags.feature.js +148 -0
  204. package/dist/feature-flags.feature.js.map +1 -0
  205. package/dist/index.d.ts +6 -0
  206. package/dist/index.js +8 -0
  207. package/dist/schema/src/EnumType.d.ts +36 -0
  208. package/dist/schema/src/EnumType.d.ts.map +1 -0
  209. package/dist/schema/src/FieldType.d.ts +30 -0
  210. package/dist/schema/src/FieldType.d.ts.map +1 -0
  211. package/dist/schema/src/GraphQLSchemaType.d.ts +2 -0
  212. package/dist/schema/src/JsonSchemaType.d.ts +2 -0
  213. package/dist/schema/src/ScalarTypeEnum.d.ts +1 -0
  214. package/dist/schema/src/SchemaModel.d.ts +70 -0
  215. package/dist/schema/src/SchemaModel.d.ts.map +1 -0
  216. package/dist/schema/src/SchemaModelType.d.ts +38 -0
  217. package/dist/schema/src/SchemaModelType.d.ts.map +1 -0
  218. package/dist/schema/src/ZodSchemaType.d.ts +2 -0
  219. package/dist/schema/src/entity/defineEntity.d.ts +1 -0
  220. package/dist/schema/src/entity/generator.d.ts +1 -0
  221. package/dist/schema/src/entity/index.d.ts +3 -0
  222. package/dist/schema/src/entity/types.d.ts +146 -0
  223. package/dist/schema/src/entity/types.d.ts.map +1 -0
  224. package/dist/schema/src/index.d.ts +10 -0
  225. package/package.json +74 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../src/contracts/index.ts"],"sourcesContent":["import { ScalarTypeEnum, defineSchemaModel } from '@contractspec/lib.schema';\nimport { defineCommand, defineQuery } from '@contractspec/lib.contracts';\n\nconst OWNERS = ['platform.feature-flags'] as const;\n\n// ============ Schema Models ============\n\nexport const FeatureFlagModel = defineSchemaModel({\n name: 'FeatureFlag',\n description: 'Represents a feature flag',\n fields: {\n id: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n key: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n name: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n description: { type: ScalarTypeEnum.String_unsecure(), isOptional: true },\n status: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n defaultValue: { type: ScalarTypeEnum.Boolean(), isOptional: false },\n variants: { type: ScalarTypeEnum.JSON(), isOptional: true },\n orgId: { type: ScalarTypeEnum.String_unsecure(), isOptional: true },\n tags: { type: ScalarTypeEnum.JSON(), isOptional: true },\n createdAt: { type: ScalarTypeEnum.DateTime(), isOptional: false },\n updatedAt: { type: ScalarTypeEnum.DateTime(), isOptional: false },\n },\n});\n\nexport const TargetingRuleModel = defineSchemaModel({\n name: 'TargetingRule',\n description: 'Represents a targeting rule',\n fields: {\n id: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n flagId: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n name: { type: ScalarTypeEnum.String_unsecure(), isOptional: true },\n priority: { type: ScalarTypeEnum.Int_unsecure(), isOptional: false },\n enabled: { type: ScalarTypeEnum.Boolean(), isOptional: false },\n attribute: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n operator: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n value: { type: ScalarTypeEnum.JSON(), isOptional: false },\n rolloutPercentage: {\n type: ScalarTypeEnum.Int_unsecure(),\n isOptional: true,\n },\n serveValue: { type: ScalarTypeEnum.Boolean(), isOptional: true },\n serveVariant: { type: ScalarTypeEnum.String_unsecure(), isOptional: true },\n },\n});\n\nexport const ExperimentModel = defineSchemaModel({\n name: 'Experiment',\n description: 'Represents an experiment',\n fields: {\n id: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n key: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n name: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n description: { type: ScalarTypeEnum.String_unsecure(), isOptional: true },\n hypothesis: { type: ScalarTypeEnum.String_unsecure(), isOptional: true },\n flagId: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n status: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n variants: { type: ScalarTypeEnum.JSON(), isOptional: false },\n metrics: { type: ScalarTypeEnum.JSON(), isOptional: true },\n audiencePercentage: {\n type: ScalarTypeEnum.Int_unsecure(),\n isOptional: false,\n },\n startedAt: { type: ScalarTypeEnum.DateTime(), isOptional: true },\n endedAt: { type: ScalarTypeEnum.DateTime(), isOptional: true },\n winningVariant: {\n type: ScalarTypeEnum.String_unsecure(),\n isOptional: true,\n },\n results: { type: ScalarTypeEnum.JSON(), isOptional: true },\n createdAt: { type: ScalarTypeEnum.DateTime(), isOptional: false },\n },\n});\n\nexport const EvaluationResultModel = defineSchemaModel({\n name: 'EvaluationResult',\n description: 'Result of flag evaluation',\n fields: {\n enabled: { type: ScalarTypeEnum.Boolean(), isOptional: false },\n variant: { type: ScalarTypeEnum.String_unsecure(), isOptional: true },\n reason: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n ruleId: { type: ScalarTypeEnum.String_unsecure(), isOptional: true },\n experimentId: { type: ScalarTypeEnum.String_unsecure(), isOptional: true },\n },\n});\n\n// ============ Input/Output Models ============\n\nconst CreateFlagInput = defineSchemaModel({\n name: 'CreateFlagInput',\n description: 'Input for creating a feature flag',\n fields: {\n key: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n name: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n description: { type: ScalarTypeEnum.String_unsecure(), isOptional: true },\n defaultValue: { type: ScalarTypeEnum.Boolean(), isOptional: true },\n variants: { type: ScalarTypeEnum.JSON(), isOptional: true },\n orgId: { type: ScalarTypeEnum.String_unsecure(), isOptional: true },\n tags: { type: ScalarTypeEnum.JSON(), isOptional: true },\n },\n});\n\nconst UpdateFlagInput = defineSchemaModel({\n name: 'UpdateFlagInput',\n description: 'Input for updating a feature flag',\n fields: {\n flagId: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n name: { type: ScalarTypeEnum.String_unsecure(), isOptional: true },\n description: { type: ScalarTypeEnum.String_unsecure(), isOptional: true },\n defaultValue: { type: ScalarTypeEnum.Boolean(), isOptional: true },\n variants: { type: ScalarTypeEnum.JSON(), isOptional: true },\n tags: { type: ScalarTypeEnum.JSON(), isOptional: true },\n },\n});\n\nconst DeleteFlagInput = defineSchemaModel({\n name: 'DeleteFlagInput',\n description: 'Input for deleting a feature flag',\n fields: {\n flagId: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n },\n});\n\nconst ToggleFlagInput = defineSchemaModel({\n name: 'ToggleFlagInput',\n description: 'Input for toggling a feature flag',\n fields: {\n flagId: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n status: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n },\n});\n\nconst GetFlagInput = defineSchemaModel({\n name: 'GetFlagInput',\n description: 'Input for getting a feature flag',\n fields: {\n key: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n orgId: { type: ScalarTypeEnum.String_unsecure(), isOptional: true },\n },\n});\n\nconst ListFlagsInput = defineSchemaModel({\n name: 'ListFlagsInput',\n description: 'Input for listing feature flags',\n fields: {\n orgId: { type: ScalarTypeEnum.String_unsecure(), isOptional: true },\n status: { type: ScalarTypeEnum.String_unsecure(), isOptional: true },\n tags: { type: ScalarTypeEnum.JSON(), isOptional: true },\n limit: { type: ScalarTypeEnum.Int_unsecure(), isOptional: true },\n offset: { type: ScalarTypeEnum.Int_unsecure(), isOptional: true },\n },\n});\n\nconst ListFlagsOutput = defineSchemaModel({\n name: 'ListFlagsOutput',\n description: 'Output for listing feature flags',\n fields: {\n flags: { type: FeatureFlagModel, isArray: true, isOptional: false },\n total: { type: ScalarTypeEnum.Int_unsecure(), isOptional: false },\n },\n});\n\nconst EvaluateFlagInput = defineSchemaModel({\n name: 'EvaluateFlagInput',\n description: 'Input for evaluating a feature flag',\n fields: {\n key: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n context: { type: ScalarTypeEnum.JSON(), isOptional: false },\n },\n});\n\nconst CreateRuleInput = defineSchemaModel({\n name: 'CreateRuleInput',\n description: 'Input for creating a targeting rule',\n fields: {\n flagId: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n name: { type: ScalarTypeEnum.String_unsecure(), isOptional: true },\n priority: { type: ScalarTypeEnum.Int_unsecure(), isOptional: true },\n attribute: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n operator: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n value: { type: ScalarTypeEnum.JSON(), isOptional: false },\n rolloutPercentage: {\n type: ScalarTypeEnum.Int_unsecure(),\n isOptional: true,\n },\n serveValue: { type: ScalarTypeEnum.Boolean(), isOptional: true },\n serveVariant: { type: ScalarTypeEnum.String_unsecure(), isOptional: true },\n },\n});\n\nconst DeleteRuleInput = defineSchemaModel({\n name: 'DeleteRuleInput',\n description: 'Input for deleting a targeting rule',\n fields: {\n ruleId: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n },\n});\n\nconst CreateExperimentInput = defineSchemaModel({\n name: 'CreateExperimentInput',\n description: 'Input for creating an experiment',\n fields: {\n key: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n name: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n description: { type: ScalarTypeEnum.String_unsecure(), isOptional: true },\n hypothesis: { type: ScalarTypeEnum.String_unsecure(), isOptional: true },\n flagId: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n variants: { type: ScalarTypeEnum.JSON(), isOptional: false },\n metrics: { type: ScalarTypeEnum.JSON(), isOptional: true },\n audiencePercentage: {\n type: ScalarTypeEnum.Int_unsecure(),\n isOptional: true,\n },\n scheduledStartAt: { type: ScalarTypeEnum.DateTime(), isOptional: true },\n scheduledEndAt: { type: ScalarTypeEnum.DateTime(), isOptional: true },\n orgId: { type: ScalarTypeEnum.String_unsecure(), isOptional: true },\n },\n});\n\nconst StartExperimentInput = defineSchemaModel({\n name: 'StartExperimentInput',\n description: 'Input for starting an experiment',\n fields: {\n experimentId: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n },\n});\n\nconst StopExperimentInput = defineSchemaModel({\n name: 'StopExperimentInput',\n description: 'Input for stopping an experiment',\n fields: {\n experimentId: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n reason: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n winningVariant: {\n type: ScalarTypeEnum.String_unsecure(),\n isOptional: true,\n },\n },\n});\n\nconst GetExperimentInput = defineSchemaModel({\n name: 'GetExperimentInput',\n description: 'Input for getting an experiment',\n fields: {\n experimentId: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n },\n});\n\nconst SuccessOutput = defineSchemaModel({\n name: 'SuccessOutput',\n description: 'Generic success output',\n fields: {\n success: { type: ScalarTypeEnum.Boolean(), isOptional: false },\n },\n});\n\n// ============ Contracts ============\n\n/**\n * Create a feature flag.\n */\nexport const CreateFlagContract = defineCommand({\n meta: {\n key: 'flag.create',\n version: '1.0.0',\n stability: 'stable',\n owners: [...OWNERS],\n tags: ['feature-flags', 'create'],\n description: 'Create a new feature flag.',\n goal: 'Define a new feature flag for toggling features.',\n context: 'Called when setting up a new feature flag.',\n },\n io: {\n input: CreateFlagInput,\n output: FeatureFlagModel,\n errors: {\n KEY_ALREADY_EXISTS: {\n description: 'Flag key already exists',\n http: 409,\n gqlCode: 'FLAG_KEY_EXISTS',\n when: 'A flag with this key already exists',\n },\n },\n },\n policy: {\n auth: 'admin',\n },\n});\n\n/**\n * Update a feature flag.\n */\nexport const UpdateFlagContract = defineCommand({\n meta: {\n key: 'flag.update',\n version: '1.0.0',\n stability: 'stable',\n owners: [...OWNERS],\n tags: ['feature-flags', 'update'],\n description: 'Update an existing feature flag.',\n goal: 'Modify flag configuration.',\n context: 'Called when adjusting flag settings.',\n },\n io: {\n input: UpdateFlagInput,\n output: FeatureFlagModel,\n errors: {\n FLAG_NOT_FOUND: {\n description: 'Flag does not exist',\n http: 404,\n gqlCode: 'FLAG_NOT_FOUND',\n when: 'Flag ID is invalid',\n },\n },\n },\n policy: {\n auth: 'admin',\n },\n});\n\n/**\n * Delete a feature flag.\n */\nexport const DeleteFlagContract = defineCommand({\n meta: {\n key: 'flag.delete',\n version: '1.0.0',\n stability: 'stable',\n owners: [...OWNERS],\n tags: ['feature-flags', 'delete'],\n description: 'Delete a feature flag.',\n goal: 'Remove a feature flag and all its rules.',\n context: 'Called when a flag is no longer needed.',\n },\n io: {\n input: DeleteFlagInput,\n output: SuccessOutput,\n errors: {\n FLAG_NOT_FOUND: {\n description: 'Flag does not exist',\n http: 404,\n gqlCode: 'FLAG_NOT_FOUND',\n when: 'Flag ID is invalid',\n },\n FLAG_HAS_ACTIVE_EXPERIMENT: {\n description: 'Flag has an active experiment',\n http: 409,\n gqlCode: 'FLAG_HAS_ACTIVE_EXPERIMENT',\n when: 'Cannot delete flag with running experiment',\n },\n },\n },\n policy: {\n auth: 'admin',\n },\n});\n\n/**\n * Toggle a feature flag status.\n */\nexport const ToggleFlagContract = defineCommand({\n meta: {\n key: 'flag.toggle',\n version: '1.0.0',\n stability: 'stable',\n owners: [...OWNERS],\n tags: ['feature-flags', 'toggle'],\n description: 'Toggle a feature flag status.',\n goal: 'Quickly enable or disable a feature.',\n context: 'Called when turning a feature on or off.',\n },\n io: {\n input: ToggleFlagInput,\n output: FeatureFlagModel,\n errors: {\n FLAG_NOT_FOUND: {\n description: 'Flag does not exist',\n http: 404,\n gqlCode: 'FLAG_NOT_FOUND',\n when: 'Flag ID is invalid',\n },\n INVALID_STATUS: {\n description: 'Invalid status value',\n http: 400,\n gqlCode: 'INVALID_STATUS',\n when: 'Status must be OFF, ON, or GRADUAL',\n },\n },\n },\n policy: {\n auth: 'admin',\n },\n});\n\n/**\n * Get a feature flag by key.\n */\nexport const GetFlagContract = defineQuery({\n meta: {\n key: 'flag.get',\n version: '1.0.0',\n stability: 'stable',\n owners: [...OWNERS],\n tags: ['feature-flags', 'get'],\n description: 'Get a feature flag by key.',\n goal: 'Retrieve flag configuration.',\n context: 'Called to inspect flag details.',\n },\n io: {\n input: GetFlagInput,\n output: FeatureFlagModel,\n errors: {\n FLAG_NOT_FOUND: {\n description: 'Flag does not exist',\n http: 404,\n gqlCode: 'FLAG_NOT_FOUND',\n when: 'Flag key is invalid',\n },\n },\n },\n policy: {\n auth: 'user',\n },\n});\n\n/**\n * List feature flags.\n */\nexport const ListFlagsContract = defineQuery({\n meta: {\n key: 'flag.list',\n version: '1.0.0',\n stability: 'stable',\n owners: [...OWNERS],\n tags: ['feature-flags', 'list'],\n description: 'List all feature flags.',\n goal: 'View all configured flags.',\n context: 'Admin dashboard.',\n },\n io: {\n input: ListFlagsInput,\n output: ListFlagsOutput,\n },\n policy: {\n auth: 'admin',\n },\n});\n\n/**\n * Evaluate a feature flag.\n */\nexport const EvaluateFlagContract = defineQuery({\n meta: {\n key: 'flag.evaluate',\n version: '1.0.0',\n stability: 'stable',\n owners: [...OWNERS],\n tags: ['feature-flags', 'evaluate'],\n description: 'Evaluate a feature flag for a given context.',\n goal: 'Determine if a feature should be enabled.',\n context: 'Called at runtime to check feature availability.',\n },\n io: {\n input: EvaluateFlagInput,\n output: EvaluationResultModel,\n errors: {\n FLAG_NOT_FOUND: {\n description: 'Flag does not exist',\n http: 404,\n gqlCode: 'FLAG_NOT_FOUND',\n when: 'Flag key is invalid',\n },\n },\n },\n policy: {\n auth: 'anonymous',\n },\n});\n\n/**\n * Create a targeting rule.\n */\nexport const CreateRuleContract = defineCommand({\n meta: {\n key: 'flag.rule.create',\n version: '1.0.0',\n stability: 'stable',\n owners: [...OWNERS],\n tags: ['feature-flags', 'rule', 'create'],\n description: 'Create a targeting rule for a flag.',\n goal: 'Add conditional targeting to a flag.',\n context: 'Called when setting up targeting.',\n },\n io: {\n input: CreateRuleInput,\n output: TargetingRuleModel,\n errors: {\n FLAG_NOT_FOUND: {\n description: 'Flag does not exist',\n http: 404,\n gqlCode: 'FLAG_NOT_FOUND',\n when: 'Flag ID is invalid',\n },\n INVALID_OPERATOR: {\n description: 'Invalid operator',\n http: 400,\n gqlCode: 'INVALID_OPERATOR',\n when: 'Operator is not supported',\n },\n },\n },\n policy: {\n auth: 'admin',\n },\n});\n\n/**\n * Delete a targeting rule.\n */\nexport const DeleteRuleContract = defineCommand({\n meta: {\n key: 'flag.rule.delete',\n version: '1.0.0',\n stability: 'stable',\n owners: [...OWNERS],\n tags: ['feature-flags', 'rule', 'delete'],\n description: 'Delete a targeting rule.',\n goal: 'Remove a targeting rule from a flag.',\n context: 'Called when removing targeting conditions.',\n },\n io: {\n input: DeleteRuleInput,\n output: SuccessOutput,\n errors: {\n RULE_NOT_FOUND: {\n description: 'Rule does not exist',\n http: 404,\n gqlCode: 'RULE_NOT_FOUND',\n when: 'Rule ID is invalid',\n },\n },\n },\n policy: {\n auth: 'admin',\n },\n});\n\n/**\n * Create an experiment.\n */\nexport const CreateExperimentContract = defineCommand({\n meta: {\n key: 'experiment.create',\n version: '1.0.0',\n stability: 'stable',\n owners: [...OWNERS],\n tags: ['feature-flags', 'experiment', 'create'],\n description: 'Create an A/B test experiment.',\n goal: 'Set up an experiment with variants.',\n context: 'Called when setting up A/B testing.',\n },\n io: {\n input: CreateExperimentInput,\n output: ExperimentModel,\n errors: {\n FLAG_NOT_FOUND: {\n description: 'Flag does not exist',\n http: 404,\n gqlCode: 'FLAG_NOT_FOUND',\n when: 'Flag ID is invalid',\n },\n EXPERIMENT_KEY_EXISTS: {\n description: 'Experiment key already exists',\n http: 409,\n gqlCode: 'EXPERIMENT_KEY_EXISTS',\n when: 'An experiment with this key already exists',\n },\n INVALID_VARIANTS: {\n description: 'Invalid variant configuration',\n http: 400,\n gqlCode: 'INVALID_VARIANTS',\n when: 'Variant percentages must sum to 100',\n },\n },\n },\n policy: {\n auth: 'admin',\n },\n});\n\n/**\n * Start an experiment.\n */\nexport const StartExperimentContract = defineCommand({\n meta: {\n key: 'experiment.start',\n version: '1.0.0',\n stability: 'stable',\n owners: [...OWNERS],\n tags: ['feature-flags', 'experiment', 'start'],\n description: 'Start an experiment.',\n goal: 'Begin collecting data for an experiment.',\n context: 'Called when ready to run an A/B test.',\n },\n io: {\n input: StartExperimentInput,\n output: ExperimentModel,\n errors: {\n EXPERIMENT_NOT_FOUND: {\n description: 'Experiment does not exist',\n http: 404,\n gqlCode: 'EXPERIMENT_NOT_FOUND',\n when: 'Experiment ID is invalid',\n },\n EXPERIMENT_ALREADY_RUNNING: {\n description: 'Experiment is already running',\n http: 409,\n gqlCode: 'EXPERIMENT_ALREADY_RUNNING',\n when: 'Cannot start an experiment that is already running',\n },\n },\n },\n policy: {\n auth: 'admin',\n },\n});\n\n/**\n * Stop an experiment.\n */\nexport const StopExperimentContract = defineCommand({\n meta: {\n key: 'experiment.stop',\n version: '1.0.0',\n stability: 'stable',\n owners: [...OWNERS],\n tags: ['feature-flags', 'experiment', 'stop'],\n description: 'Stop an experiment.',\n goal: 'End an experiment and optionally declare a winner.',\n context: 'Called when concluding an A/B test.',\n },\n io: {\n input: StopExperimentInput,\n output: ExperimentModel,\n errors: {\n EXPERIMENT_NOT_FOUND: {\n description: 'Experiment does not exist',\n http: 404,\n gqlCode: 'EXPERIMENT_NOT_FOUND',\n when: 'Experiment ID is invalid',\n },\n EXPERIMENT_NOT_RUNNING: {\n description: 'Experiment is not running',\n http: 409,\n gqlCode: 'EXPERIMENT_NOT_RUNNING',\n when: 'Cannot stop an experiment that is not running',\n },\n },\n },\n policy: {\n auth: 'admin',\n },\n});\n\n/**\n * Get an experiment.\n */\nexport const GetExperimentContract = defineQuery({\n meta: {\n key: 'experiment.get',\n version: '1.0.0',\n stability: 'stable',\n owners: [...OWNERS],\n tags: ['feature-flags', 'experiment', 'get'],\n description: 'Get experiment details.',\n goal: 'View experiment configuration and results.',\n context: 'Called to inspect experiment status.',\n },\n io: {\n input: GetExperimentInput,\n output: ExperimentModel,\n errors: {\n EXPERIMENT_NOT_FOUND: {\n description: 'Experiment does not exist',\n http: 404,\n gqlCode: 'EXPERIMENT_NOT_FOUND',\n when: 'Experiment ID is invalid',\n },\n },\n },\n policy: {\n auth: 'user',\n },\n});\n"],"mappings":"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"}
@@ -0,0 +1 @@
1
+ import "./spec.js";
@@ -0,0 +1,13 @@
1
+ import "../policy/spec.js";
2
+ import "../telemetry/spec.js";
3
+ import "../capabilities/index.js";
4
+ import "../experiments/spec.js";
5
+ import "../features/index.js";
6
+ import "../data-views/index.js";
7
+ import "../workflow/spec.js";
8
+ import "../policy/registry.js";
9
+ import "../themes.js";
10
+ import "../integrations/spec.js";
11
+ import "../integrations/connection.js";
12
+ import "../knowledge/spec.js";
13
+ import "./spec.js";
@@ -0,0 +1,9 @@
1
+ import "../ownership.js";
2
+ import "../policy/spec.js";
3
+ import "../capabilities/index.js";
4
+ import "../experiments/spec.js";
5
+ import "../features/index.js";
6
+ import "../themes.js";
7
+ import "../integrations/spec.js";
8
+ import "./lifecycle.js";
9
+ import "../registry.js";
@@ -0,0 +1,8 @@
1
+ import "../capabilities/index.js";
2
+ import "../data-views/index.js";
3
+ import "../workflow/spec.js";
4
+ import "../integrations/spec.js";
5
+ import "../integrations/connection.js";
6
+ import "../knowledge/spec.js";
7
+ import "./spec.js";
8
+ import "./runtime.js";
@@ -0,0 +1,33 @@
1
+ import { OwnerShipMeta } from "../ownership.js";
2
+
3
+ //#region ../contracts/src/capabilities/capabilities.d.ts
4
+ type CapabilityKind = 'api' | 'event' | 'data' | 'ui' | 'integration';
5
+ type CapabilitySurface = 'operation' | 'event' | 'workflow' | 'presentation' | 'resource';
6
+ interface CapabilitySurfaceRef {
7
+ surface: CapabilitySurface;
8
+ key: string;
9
+ version: string;
10
+ description?: string;
11
+ }
12
+ interface CapabilityMeta extends OwnerShipMeta {
13
+ kind: CapabilityKind;
14
+ }
15
+ interface CapabilityRequirement {
16
+ key: string;
17
+ version?: string;
18
+ kind?: CapabilityKind;
19
+ optional?: boolean;
20
+ reason?: string;
21
+ }
22
+ interface CapabilityRef {
23
+ key: string;
24
+ version: string;
25
+ }
26
+ interface CapabilitySpec {
27
+ meta: CapabilityMeta;
28
+ provides?: CapabilitySurfaceRef[];
29
+ requires?: CapabilityRequirement[];
30
+ }
31
+ //#endregion
32
+ export { CapabilityKind, CapabilityMeta, CapabilityRef, CapabilityRequirement, CapabilitySpec, CapabilitySurface, CapabilitySurfaceRef };
33
+ //# sourceMappingURL=capabilities.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"capabilities.d.ts","names":[],"sources":["../../../../../contracts/src/capabilities/capabilities.ts"],"sourcesContent":[],"mappings":";;;KAGY,cAAA;KAEA,iBAAA;AAFA,UASK,oBAAA,CATS;EAEd,OAAA,EAQD,iBARkB;EAOZ,GAAA,EAAA,MAAA;EAOA,OAAA,EAAA,MAAA;EAIA,WAAA,CAAA,EAAA,MAAA;AAQjB;AAKiB,UAjBA,cAAA,SAAuB,aAiBT,CAAA;EACvB,IAAA,EAjBA,cAiBA;;AAEK,UAhBI,qBAAA,CAgBJ;EAAqB,GAAA,EAAA,MAAA;;SAbzB;;;;UAKQ,aAAA;;;;UAKA,cAAA;QACT;aACK;aACA"}
@@ -0,0 +1,2 @@
1
+ import { CapabilityKind, CapabilityMeta, CapabilityRef, CapabilityRequirement, CapabilitySpec, CapabilitySurface, CapabilitySurfaceRef } from "./capabilities.js";
2
+ import "./openbanking.js";
@@ -0,0 +1 @@
1
+ import "./index.js";
@@ -0,0 +1 @@
1
+ import "./react/index.js";
@@ -0,0 +1 @@
1
+ import "../form-render.js";
@@ -0,0 +1 @@
1
+ import "../form-render.js";
@@ -0,0 +1,3 @@
1
+ import "../../presentations/index.js";
2
+ import "../../features/index.js";
3
+ import "react";
@@ -0,0 +1,4 @@
1
+ import "../../../../schema/src/index.js";
2
+ import "../../forms/index.js";
3
+ import "react";
4
+ import "react/jsx-runtime";
@@ -0,0 +1,4 @@
1
+ import "./feature-render.js";
2
+ import "./form-render.js";
3
+ import "./drivers/shadcn.js";
4
+ import "./drivers/rn-reusables.js";
@@ -0,0 +1,2 @@
1
+ import "./types.js";
2
+ import "./schemas.js";
@@ -0,0 +1,2 @@
1
+ import "./types.js";
2
+ import "zod";
@@ -0,0 +1 @@
1
+ import "../ownership.js";
@@ -0,0 +1,3 @@
1
+ import "./types.js";
2
+ import "./spec.js";
3
+ import "./registry.js";
@@ -0,0 +1,2 @@
1
+ import "./spec.js";
2
+ import "../registry.js";
@@ -0,0 +1,2 @@
1
+ import "../experiments/spec.js";
2
+ import "./types.js";
@@ -0,0 +1,2 @@
1
+ import "../ownership.js";
2
+ import "../features/index.js";
@@ -0,0 +1,25 @@
1
+ import "./presentations.js";
2
+ import { DocId } from "./registry.js";
3
+ import "./accessibility_wcag_compliance_specs.docblock.js";
4
+ import "./tech/lifecycle-stage-system.docblock.js";
5
+ import "./tech/presentation-runtime.docblock.js";
6
+ import "./tech/auth/better-auth-nextjs.docblock.js";
7
+ import "./tech/schema/README.docblock.js";
8
+ import "../workflow/overview.docblock.js";
9
+ import "./tech/mcp-endpoints.docblock.js";
10
+ import "./tech/vscode-extension.docblock.js";
11
+ import "./tech/telemetry-ingest.docblock.js";
12
+ import "./tech/contracts/README.docblock.js";
13
+ import "./tech/contracts/openapi-export.docblock.js";
14
+ import "./tech/contracts/openapi-import.docblock.js";
15
+ import "../workspace-config/workspace-config.docblock.js";
16
+ import "./tech/studio/workspaces.docblock.js";
17
+ import "./tech/studio/sandbox-unlogged.docblock.js";
18
+ import "./tech/studio/workspace-ops.docblock.js";
19
+ import "./tech/studio/project-routing.docblock.js";
20
+ import "./tech/studio/platform-admin-panel.docblock.js";
21
+ import "./tech/studio/learning-events.docblock.js";
22
+ import "./tech/studio/learning-journeys.docblock.js";
23
+ import "./tech/studio/project-access-teams.docblock.js";
24
+ import "./tech/studio/team-invitations.docblock.js";
25
+ import "./tech/llm/llm-integration.docblock.js";
@@ -0,0 +1,2 @@
1
+ import "../presentations/presentations.js";
2
+ import "../ownership.js";
@@ -0,0 +1,10 @@
1
+ import "../presentations/presentations.js";
2
+ import "./presentations.js";
3
+
4
+ //#region ../contracts/src/docs/registry.d.ts
5
+ type DocId = string & {
6
+ __docId: true;
7
+ };
8
+ //#endregion
9
+ export { DocId };
10
+ //# sourceMappingURL=registry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registry.d.ts","names":[],"sources":["../../../../../contracts/src/docs/registry.ts"],"sourcesContent":[],"mappings":";;;;KASY,KAAA;EAAA,OAAA,EAAK,IAAA"}
@@ -0,0 +1 @@
1
+ import "../../index.js";
@@ -0,0 +1 @@
1
+ import "../../index.js";
@@ -0,0 +1 @@
1
+ import "../../index.js";
@@ -0,0 +1 @@
1
+ import "../../index.js";
@@ -0,0 +1 @@
1
+ import "../index.js";
@@ -0,0 +1 @@
1
+ import "../../index.js";
@@ -0,0 +1 @@
1
+ import "../index.js";
@@ -0,0 +1 @@
1
+ import "../index.js";
@@ -0,0 +1 @@
1
+ import "../../index.js";
@@ -0,0 +1 @@
1
+ import "../../index.js";
@@ -0,0 +1 @@
1
+ import "../../index.js";
@@ -0,0 +1 @@
1
+ import "../../index.js";
@@ -0,0 +1 @@
1
+ import "../../index.js";
@@ -0,0 +1 @@
1
+ import "../../index.js";
@@ -0,0 +1 @@
1
+ import "../../index.js";
@@ -0,0 +1 @@
1
+ import "../../index.js";
@@ -0,0 +1 @@
1
+ import "../../index.js";
@@ -0,0 +1 @@
1
+ import "../../index.js";
@@ -0,0 +1 @@
1
+ import "../index.js";
@@ -0,0 +1 @@
1
+ import "../index.js";
@@ -0,0 +1,25 @@
1
+ import { AnySchemaModel } from "../../schema/src/SchemaModel.js";
2
+ import "../../schema/src/index.js";
3
+ import { DocId } from "./docs/registry.js";
4
+ import { OwnerShipMeta } from "./ownership.js";
5
+ import "./registry.js";
6
+
7
+ //#region ../contracts/src/events.d.ts
8
+ interface EventSpecMeta extends Omit<OwnerShipMeta, 'docId'> {
9
+ /** Doc block(s) for this operation. */
10
+ docId?: DocId[];
11
+ }
12
+ /**
13
+ * Typed event specification. Declare once, validate payloads at publish time,
14
+ * and guard emissions via the contracts runtime.
15
+ */
16
+ interface EventSpec<T extends AnySchemaModel> {
17
+ meta: EventSpecMeta;
18
+ /** JSON-like paths to redact from logs/exports. */
19
+ pii?: string[];
20
+ /** Event payload schema from @contractspec/lib.schema. */
21
+ payload: T;
22
+ }
23
+ //#endregion
24
+ export { EventSpec, EventSpecMeta };
25
+ //# sourceMappingURL=events.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"events.d.ts","names":[],"sources":["../../../../contracts/src/events.ts"],"sourcesContent":[],"mappings":";;;;;;;UAKiB,aAAA,SAAsB,KAAK;;UAElC;AAFV;;;;;AASiB,UAAA,SAAS,CAAA,UAAW,cAAX,CAAA,CAAA;EAAW,IAAA,EAC7B,aAD6B;EAC7B;EAIG,GAAA,CAAA,EAAA,MAAA,EAAA;EAAC;WAAD"}
@@ -0,0 +1,4 @@
1
+ import "./types.js";
2
+ import "./schema.js";
3
+ import "./registry.js";
4
+ import "./validation.js";
@@ -0,0 +1,2 @@
1
+ import "../registry.js";
2
+ import "./types.js";
@@ -0,0 +1,2 @@
1
+ import "./types.js";
2
+ import "zod";
@@ -0,0 +1,3 @@
1
+ import "../ownership.js";
2
+ import "../features/index.js";
3
+ import "../app-config/spec.js";
@@ -0,0 +1 @@
1
+ import "./types.js";
@@ -0,0 +1,2 @@
1
+ import "../policy/spec.js";
2
+ import "./spec.js";
@@ -0,0 +1,4 @@
1
+ import "../../../schema/src/index.js";
2
+ import "../resources.js";
3
+ import "../operations/index.js";
4
+ import "../types.js";
@@ -0,0 +1,13 @@
1
+ import "../ownership.js";
2
+ import "../policy/spec.js";
3
+ import "../telemetry/spec.js";
4
+ import "../registry.js";
5
+
6
+ //#region ../contracts/src/experiments/spec.d.ts
7
+ interface ExperimentRef {
8
+ key: string;
9
+ version?: string;
10
+ }
11
+ //#endregion
12
+ export { ExperimentRef };
13
+ //# sourceMappingURL=spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"spec.d.ts","names":[],"sources":["../../../../../contracts/src/experiments/spec.ts"],"sourcesContent":[],"mappings":";;;;;;UAOiB,aAAA;EAAA,GAAA,EAAA,MAAA"}
@@ -0,0 +1,4 @@
1
+ import { EventRef, FeatureModuleMeta, FeatureModuleSpec, OpRef, PresentationRef } from "./types.js";
2
+ import "./registry.js";
3
+ import "./install.js";
4
+ import "./validation.js";
@@ -0,0 +1,6 @@
1
+ import "../presentations/presentations.js";
2
+ import "../capabilities/index.js";
3
+ import "../operations/registry.js";
4
+ import "./types.js";
5
+ import "./registry.js";
6
+ import "../presentations/index.js";
@@ -0,0 +1,2 @@
1
+ import "../registry-utils.js";
2
+ import "./types.js";
@@ -0,0 +1,86 @@
1
+ import { PresentationTarget } from "../presentations/presentations.js";
2
+ import { OwnerShipMeta } from "../ownership.js";
3
+ import { CapabilityRef, CapabilityRequirement } from "../capabilities/capabilities.js";
4
+ import "../capabilities/index.js";
5
+ import { ExperimentRef } from "../experiments/spec.js";
6
+ import { ImplementationRef } from "../operations/operation.js";
7
+ import "../operations/index.js";
8
+
9
+ //#region ../contracts/src/features/types.d.ts
10
+ /** Minimal metadata to identify and categorize a feature module. */
11
+ type FeatureModuleMeta = OwnerShipMeta;
12
+ interface OpRef {
13
+ /** Operation key (OperationSpec.meta.key). */
14
+ key: string;
15
+ /** Operation version (OperationSpec.meta.version). */
16
+ version: string;
17
+ }
18
+ interface EventRef {
19
+ /** Event key. */
20
+ key: string;
21
+ /** Event version. */
22
+ version: string;
23
+ }
24
+ interface PresentationRef {
25
+ /** Presentation key. */
26
+ key: string;
27
+ /** Presentation version. */
28
+ version: string;
29
+ }
30
+ /**
31
+ * Reference to a data view spec.
32
+ */
33
+ interface DataViewRef {
34
+ key: string;
35
+ version: string;
36
+ }
37
+ /**
38
+ * Reference to a form spec.
39
+ */
40
+ interface FormRef {
41
+ key: string;
42
+ version: string;
43
+ }
44
+ /** Group operations/events/presentations into an installable feature. */
45
+ interface FeatureModuleSpec {
46
+ meta: FeatureModuleMeta;
47
+ /** Contract operations included in this feature. */
48
+ operations?: OpRef[];
49
+ /** Events declared/emitted by this feature. */
50
+ events?: EventRef[];
51
+ /** Presentations associated to this feature. */
52
+ presentations?: PresentationRef[];
53
+ /** Experiments related to this feature. */
54
+ experiments?: ExperimentRef[];
55
+ /** Capability bindings exposed/required by this feature. */
56
+ capabilities?: {
57
+ provides?: CapabilityRef[];
58
+ requires?: CapabilityRequirement[];
59
+ };
60
+ /** Optional: link ops to presentations for traceability (e.g., ui for op) */
61
+ opToPresentation?: {
62
+ op: OpRef;
63
+ pres: PresentationRef;
64
+ }[];
65
+ /** Optional: declare per-presentation target requirements (V2 descriptors) */
66
+ presentationsTargets?: {
67
+ /** Presentation key. */
68
+ key: string;
69
+ /** Presentation version. */
70
+ version: string;
71
+ /** Required targets that must be supported by the descriptor. */
72
+ targets: PresentationTarget[];
73
+ }[];
74
+ /**
75
+ * Explicit implementation file mappings for the entire feature module.
76
+ * Used for tracking and verifying that this feature is correctly implemented.
77
+ */
78
+ implementations?: ImplementationRef[];
79
+ /** Data views associated with this feature. */
80
+ dataViews?: DataViewRef[];
81
+ /** Forms associated with this feature. */
82
+ forms?: FormRef[];
83
+ }
84
+ //#endregion
85
+ export { EventRef, FeatureModuleMeta, FeatureModuleSpec, OpRef, PresentationRef };
86
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","names":[],"sources":["../../../../../contracts/src/features/types.ts"],"sourcesContent":[],"mappings":";;;;;;;;;;KAOY,iBAAA,GAAoB;UAEf,KAAA;;EAFL,GAAA,EAAA,MAAA;EAEK;EAOA,OAAA,EAAA,MAAQ;AAOzB;AAUiB,UAjBA,QAAA,CAiBW;EAQX;EAMA,GAAA,EAAA,MAAA;EACT;EAEO,OAAA,EAAA,MAAA;;AAIG,UA/BD,eAAA,CA+BC;EAEF;EAGD,GAAA,EAAA,MAAA;EACA;EAGY,OAAA,EAAA,MAAA;;;;;AAqBjB,UAnDO,WAAA,CAmDP;EAAO,GAAA,EAAA,MAAA;;;;;;UA3CA,OAAA;;;;;UAMA,iBAAA;QACT;;eAEO;;WAEJ;;kBAEO;;gBAEF;;;eAGD;eACA;;;;QAGY;UAAa;;;;;;;;;aAQ3B;;;;;;oBAOO;;cAGN;;UAGJ"}
@@ -0,0 +1,2 @@
1
+ import "../presentations/presentations.js";
2
+ import "./types.js";
@@ -0,0 +1,3 @@
1
+ import "../../../schema/src/index.js";
2
+ import "../ownership.js";
3
+ import "../registry-utils.js";
@@ -0,0 +1 @@
1
+ import "./forms.js";
@@ -0,0 +1,51 @@
1
+ import "../../schema/src/index.js";
2
+ import { PresentationTarget } from "./presentations/presentations.js";
3
+ import { DocId } from "./docs/registry.js";
4
+ import "./docs/index.js";
5
+ import { Owner, OwnerShipMeta, OwnersEnum, Stability, StabilityEnum, Tag, TagsEnum } from "./ownership.js";
6
+ import "./registry-utils.js";
7
+ import { PolicyRef } from "./policy/spec.js";
8
+ import "./telemetry/index.js";
9
+ import { CapabilityKind, CapabilityMeta, CapabilityRef, CapabilityRequirement, CapabilitySpec, CapabilitySurface, CapabilitySurfaceRef } from "./capabilities/capabilities.js";
10
+ import "./capabilities/index.js";
11
+ import { ExperimentRef } from "./experiments/spec.js";
12
+ import { ResourceRefDescriptor } from "./resources.js";
13
+ import { TestSpecRef } from "./tests/spec.js";
14
+ import { EmitDecl, EmitDeclInline, EmitDeclRef, ImplementationRef, ImplementationType, OpKind, OperationSpec, OperationSpecMeta, TelemetryTrigger } from "./operations/operation.js";
15
+ import "./install.js";
16
+ import "./operations/index.js";
17
+ import { EventRef, FeatureModuleMeta, FeatureModuleSpec, OpRef, PresentationRef } from "./features/types.js";
18
+ import "./presentations/index.js";
19
+ import "./features/index.js";
20
+ import "./data-views/index.js";
21
+ import "./themes.js";
22
+ import "./app-config/spec.js";
23
+ import "./app-config/runtime.js";
24
+ import "./experiments/spec-resolver.js";
25
+ import "./types.js";
26
+ import { EventSpec, EventSpecMeta } from "./events.js";
27
+ import "./forms/index.js";
28
+ import "./client/index.js";
29
+ import "./prompt.js";
30
+ import "./promptRegistry.js";
31
+ import "./server/index.js";
32
+ import "./contract-registry/index.js";
33
+ import "./jsonschema.js";
34
+ import "./openapi.js";
35
+ import "./model-registry.js";
36
+ import "./onboarding-base.js";
37
+ import "./policy/index.js";
38
+ import "./migrations.js";
39
+ import "./tests/index.js";
40
+ import "./experiments/evaluator.js";
41
+ import "./integrations/index.js";
42
+ import "./knowledge/index.js";
43
+ import "./integrations/operations.js";
44
+ import "./knowledge/operations.js";
45
+ import "./regenerator/index.js";
46
+ import "./workspace-config/index.js";
47
+ import "./workflow/index.js";
48
+ import "./schema-to-markdown.js";
49
+ import "./llm/index.js";
50
+ import "./app-config/validation.js";
51
+ import "./examples/index.js";
@@ -0,0 +1,7 @@
1
+ import "../../schema/src/index.js";
2
+ import "./resources.js";
3
+ import "./operations/registry.js";
4
+ import "./operations/index.js";
5
+ import "./types.js";
6
+ import "./events.js";
7
+ import "zod";
@@ -0,0 +1 @@
1
+ import "./spec.js";
@@ -0,0 +1,6 @@
1
+ import "./spec.js";
2
+ import "./connection.js";
3
+ import "./providers/index.js";
4
+ import "./openbanking/models.js";
5
+ import "./openbanking/contracts/index.js";
6
+ import "./openbanking/guards.js";