@lssm/example.learning-journey-crm-onboarding 0.0.0-canary-20251217060834 → 0.0.0-canary-20251217072406

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 (135) hide show
  1. package/.turbo/turbo-build$colon$bundle.log +212 -21
  2. package/.turbo/turbo-build.log +211 -20
  3. package/CHANGELOG.md +5 -5
  4. package/dist/contracts/index.js +178 -1
  5. package/dist/docs/crm-onboarding.docblock.js +42 -1
  6. package/dist/docs/index.js +1 -1
  7. package/dist/example.js +34 -1
  8. package/dist/handlers/demo.handlers.js +25 -1
  9. package/dist/index.js +9 -1
  10. package/dist/learning-journey-crm-onboarding.feature.js +66 -1
  11. package/dist/libs/contracts/dist/capabilities/openbanking.js +88 -0
  12. package/dist/libs/contracts/dist/client/index.js +5 -0
  13. package/dist/libs/contracts/dist/client/react/feature-render.js +2 -0
  14. package/dist/libs/contracts/dist/client/react/form-render.js +4 -0
  15. package/dist/libs/contracts/dist/client/react/index.js +4 -0
  16. package/dist/libs/contracts/dist/contract-registry/index.js +1 -0
  17. package/dist/libs/contracts/dist/contract-registry/schemas.js +60 -0
  18. package/dist/libs/contracts/dist/docs/PUBLISHING.docblock.js +16 -0
  19. package/dist/libs/contracts/dist/docs/accessibility_wcag_compliance_specs.docblock.js +16 -0
  20. package/dist/libs/contracts/dist/docs/index.js +29 -0
  21. package/dist/libs/contracts/dist/docs/presentations.js +71 -0
  22. package/dist/libs/contracts/dist/docs/registry.js +44 -0
  23. package/dist/libs/contracts/dist/docs/tech/PHASE_1_QUICKSTART.docblock.js +16 -0
  24. package/dist/libs/contracts/dist/docs/tech/PHASE_2_AI_NATIVE_OPERATIONS.docblock.js +16 -0
  25. package/dist/libs/contracts/dist/docs/tech/PHASE_3_AUTO_EVOLUTION.docblock.js +16 -0
  26. package/dist/libs/contracts/dist/docs/tech/PHASE_4_PERSONALIZATION_ENGINE.docblock.js +16 -0
  27. package/dist/libs/contracts/dist/docs/tech/PHASE_5_ZERO_TOUCH_OPERATIONS.docblock.js +16 -0
  28. package/dist/libs/contracts/dist/docs/tech/auth/better-auth-nextjs.docblock.js +80 -0
  29. package/dist/libs/contracts/dist/docs/tech/contracts/openapi-export.docblock.js +57 -0
  30. package/dist/libs/contracts/dist/docs/tech/lifecycle-stage-system.docblock.js +16 -0
  31. package/dist/libs/contracts/dist/docs/tech/llm/llm-integration.docblock.js +357 -0
  32. package/dist/libs/contracts/dist/docs/tech/mcp-endpoints.docblock.js +37 -0
  33. package/dist/libs/contracts/dist/docs/tech/presentation-runtime.docblock.js +16 -0
  34. package/dist/libs/contracts/dist/docs/tech/schema/README.docblock.js +20 -0
  35. package/dist/libs/contracts/dist/docs/tech/studio/learning-events.docblock.js +48 -0
  36. package/dist/libs/contracts/dist/docs/tech/studio/learning-journeys.docblock.js +79 -0
  37. package/dist/libs/contracts/dist/docs/tech/studio/platform-admin-panel.docblock.js +84 -0
  38. package/dist/libs/contracts/dist/docs/tech/studio/project-access-teams.docblock.js +45 -0
  39. package/dist/libs/contracts/dist/docs/tech/studio/project-routing.docblock.js +67 -0
  40. package/dist/libs/contracts/dist/docs/tech/studio/sandbox-unlogged.docblock.js +40 -0
  41. package/dist/libs/contracts/dist/docs/tech/studio/team-invitations.docblock.js +69 -0
  42. package/dist/libs/contracts/dist/docs/tech/studio/workspace-ops.docblock.js +47 -0
  43. package/dist/libs/contracts/dist/docs/tech/studio/workspaces.docblock.js +62 -0
  44. package/dist/libs/contracts/dist/docs/tech/telemetry-ingest.docblock.js +155 -0
  45. package/dist/libs/contracts/dist/docs/tech/templates/runtime.docblock.js +20 -0
  46. package/dist/libs/contracts/dist/docs/tech/vscode-extension.docblock.js +101 -0
  47. package/dist/libs/contracts/dist/docs/tech/workflows/overview.docblock.js +20 -0
  48. package/dist/libs/contracts/dist/events.js +1 -0
  49. package/dist/libs/contracts/dist/experiments/evaluator.js +1 -0
  50. package/dist/libs/contracts/dist/index.js +71 -0
  51. package/dist/libs/contracts/dist/install.js +2 -0
  52. package/dist/libs/contracts/dist/integrations/contracts.js +377 -0
  53. package/dist/libs/contracts/dist/integrations/index.js +18 -0
  54. package/dist/libs/contracts/dist/integrations/openbanking/contracts/accounts.js +228 -0
  55. package/dist/libs/contracts/dist/integrations/openbanking/contracts/balances.js +159 -0
  56. package/dist/libs/contracts/dist/integrations/openbanking/contracts/index.js +3 -0
  57. package/dist/libs/contracts/dist/integrations/openbanking/contracts/transactions.js +210 -0
  58. package/dist/libs/contracts/dist/integrations/openbanking/models.js +242 -0
  59. package/dist/libs/contracts/dist/integrations/openbanking/telemetry.js +13 -0
  60. package/dist/libs/contracts/dist/integrations/providers/elevenlabs.js +52 -0
  61. package/dist/libs/contracts/dist/integrations/providers/gcs-storage.js +75 -0
  62. package/dist/libs/contracts/dist/integrations/providers/gmail.js +87 -0
  63. package/dist/libs/contracts/dist/integrations/providers/google-calendar.js +66 -0
  64. package/dist/libs/contracts/dist/integrations/providers/index.js +11 -0
  65. package/dist/libs/contracts/dist/integrations/providers/mistral.js +68 -0
  66. package/dist/libs/contracts/dist/integrations/providers/postmark.js +68 -0
  67. package/dist/libs/contracts/dist/integrations/providers/powens.js +116 -0
  68. package/dist/libs/contracts/dist/integrations/providers/qdrant.js +73 -0
  69. package/dist/libs/contracts/dist/integrations/providers/registry.js +10 -0
  70. package/dist/libs/contracts/dist/integrations/providers/stripe.js +83 -0
  71. package/dist/libs/contracts/dist/integrations/providers/twilio-sms.js +61 -0
  72. package/dist/libs/contracts/dist/jsonschema.js +1 -0
  73. package/dist/libs/contracts/dist/knowledge/contracts.js +306 -0
  74. package/dist/libs/contracts/dist/knowledge/index.js +7 -0
  75. package/dist/libs/contracts/dist/knowledge/spaces/email-threads.js +34 -0
  76. package/dist/libs/contracts/dist/knowledge/spaces/financial-docs.js +34 -0
  77. package/dist/libs/contracts/dist/knowledge/spaces/financial-overview.js +38 -0
  78. package/dist/libs/contracts/dist/knowledge/spaces/index.js +6 -0
  79. package/dist/libs/contracts/dist/knowledge/spaces/product-canon.js +34 -0
  80. package/dist/libs/contracts/dist/knowledge/spaces/support-faq.js +37 -0
  81. package/dist/libs/contracts/dist/knowledge/spaces/uploaded-docs.js +34 -0
  82. package/dist/libs/contracts/dist/llm/exporters.js +19 -0
  83. package/dist/libs/contracts/dist/llm/index.js +2 -0
  84. package/dist/libs/contracts/dist/llm/prompts.js +1 -0
  85. package/dist/libs/contracts/dist/onboarding-base.js +196 -0
  86. package/dist/libs/contracts/dist/openapi.js +1 -0
  87. package/dist/libs/contracts/dist/ownership.js +21 -0
  88. package/dist/libs/contracts/dist/presentations.js +1 -0
  89. package/dist/libs/contracts/dist/presentations.v2.js +11 -0
  90. package/dist/libs/contracts/dist/prompt.js +1 -0
  91. package/dist/libs/contracts/dist/promptRegistry.js +1 -0
  92. package/dist/libs/contracts/dist/regenerator/index.js +1 -0
  93. package/dist/libs/contracts/dist/regenerator/service.js +6 -0
  94. package/dist/libs/contracts/dist/registry.js +2 -0
  95. package/dist/libs/contracts/dist/resources.js +1 -0
  96. package/dist/libs/contracts/dist/schema/dist/EnumType.js +2 -0
  97. package/dist/libs/contracts/dist/schema/dist/FieldType.js +49 -0
  98. package/dist/libs/contracts/dist/schema/dist/ScalarTypeEnum.js +236 -0
  99. package/dist/libs/contracts/dist/schema/dist/SchemaModel.js +34 -0
  100. package/dist/libs/contracts/dist/schema/dist/entity/defineEntity.js +1 -0
  101. package/dist/libs/contracts/dist/schema/dist/entity/index.js +2 -0
  102. package/dist/libs/contracts/dist/schema/dist/entity/types.js +1 -0
  103. package/dist/libs/contracts/dist/schema/dist/index.js +6 -0
  104. package/dist/libs/contracts/dist/server/graphql-pothos.js +6 -0
  105. package/dist/libs/contracts/dist/server/index.js +8 -0
  106. package/dist/libs/contracts/dist/server/mcp/createMcpServer.js +4 -0
  107. package/dist/libs/contracts/dist/server/mcp/registerPresentations.js +2 -0
  108. package/dist/libs/contracts/dist/server/mcp/registerPrompts.js +1 -0
  109. package/dist/libs/contracts/dist/server/mcp/registerResources.js +2 -0
  110. package/dist/libs/contracts/dist/server/mcp/registerTools.js +1 -0
  111. package/dist/libs/contracts/dist/server/provider-mcp.js +1 -0
  112. package/dist/libs/contracts/dist/server/rest-elysia.js +1 -0
  113. package/dist/libs/contracts/dist/server/rest-express.js +1 -0
  114. package/dist/libs/contracts/dist/server/rest-generic.js +1 -0
  115. package/dist/libs/contracts/dist/server/rest-next-app.js +1 -0
  116. package/dist/libs/contracts/dist/server/rest-next-pages.js +1 -0
  117. package/dist/libs/contracts/dist/spec.js +34 -0
  118. package/dist/libs/contracts/dist/telemetry/index.js +1 -0
  119. package/dist/libs/contracts/dist/telemetry/tracker.js +1 -0
  120. package/dist/libs/contracts/dist/tests/index.js +1 -0
  121. package/dist/libs/contracts/dist/tests/runner.js +2 -0
  122. package/dist/libs/contracts/dist/workflow/index.js +1 -0
  123. package/dist/libs/contracts/dist/workflow/runner.js +1 -0
  124. package/dist/libs/schema/dist/EnumType.js +2 -0
  125. package/dist/libs/schema/dist/FieldType.js +49 -0
  126. package/dist/libs/schema/dist/ScalarTypeEnum.js +236 -0
  127. package/dist/libs/schema/dist/SchemaModel.js +39 -0
  128. package/dist/libs/schema/dist/entity/defineEntity.js +1 -0
  129. package/dist/libs/schema/dist/entity/index.js +2 -0
  130. package/dist/libs/schema/dist/entity/types.js +1 -0
  131. package/dist/libs/schema/dist/index.js +6 -0
  132. package/dist/presentations/index.js +49 -1
  133. package/dist/track.js +98 -1
  134. package/package.json +7 -7
  135. package/tsconfig.tsbuildinfo +1 -1
@@ -0,0 +1,61 @@
1
+ import { StabilityEnum } from "../../ownership.js";
2
+
3
+ //#region ../../libs/contracts/dist/integrations/providers/twilio-sms.js
4
+ const twilioSmsIntegrationSpec = {
5
+ meta: {
6
+ key: "sms.twilio",
7
+ version: 1,
8
+ category: "sms",
9
+ displayName: "Twilio SMS",
10
+ title: "Twilio Messaging",
11
+ description: "Twilio SMS integration for transactional and notification messaging.",
12
+ domain: "communications",
13
+ owners: ["platform.messaging"],
14
+ tags: ["sms", "messaging"],
15
+ stability: StabilityEnum.Stable
16
+ },
17
+ supportedModes: ["managed", "byok"],
18
+ capabilities: { provides: [{
19
+ key: "sms.outbound",
20
+ version: 1
21
+ }] },
22
+ configSchema: {
23
+ schema: {
24
+ type: "object",
25
+ properties: { fromNumber: {
26
+ type: "string",
27
+ description: "Default Twilio phone number used as sender."
28
+ } }
29
+ },
30
+ example: { fromNumber: "+15551234567" }
31
+ },
32
+ secretSchema: {
33
+ schema: {
34
+ type: "object",
35
+ required: ["accountSid", "authToken"],
36
+ properties: {
37
+ accountSid: {
38
+ type: "string",
39
+ description: "Twilio Account SID."
40
+ },
41
+ authToken: {
42
+ type: "string",
43
+ description: "Twilio Auth Token."
44
+ }
45
+ }
46
+ },
47
+ example: {
48
+ accountSid: "ACxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
49
+ authToken: "auth-token"
50
+ }
51
+ },
52
+ healthCheck: {
53
+ method: "custom",
54
+ timeoutMs: 3e3
55
+ },
56
+ docsUrl: "https://www.twilio.com/docs/sms/api",
57
+ constraints: { rateLimit: { rpm: 200 } },
58
+ byokSetup: { setupInstructions: "Provide a Twilio account SID, auth token, and verify the outbound sending numbers used by the integration." }
59
+ };
60
+
61
+ //#endregion
@@ -0,0 +1 @@
1
+ import z from "zod";
@@ -0,0 +1,306 @@
1
+ import { SchemaModel } from "../schema/dist/SchemaModel.js";
2
+ import { ScalarTypeEnum } from "../schema/dist/ScalarTypeEnum.js";
3
+ import "../schema/dist/index.js";
4
+ import { defineCommand, defineQuery } from "../spec.js";
5
+
6
+ //#region ../../libs/contracts/dist/knowledge/contracts.js
7
+ const KnowledgeSyncSchedule = new SchemaModel({
8
+ name: "KnowledgeSyncSchedule",
9
+ fields: {
10
+ enabled: {
11
+ type: ScalarTypeEnum.Boolean(),
12
+ isOptional: false
13
+ },
14
+ cron: {
15
+ type: ScalarTypeEnum.String_unsecure(),
16
+ isOptional: true
17
+ },
18
+ intervalMs: {
19
+ type: ScalarTypeEnum.Int_unsecure(),
20
+ isOptional: true
21
+ }
22
+ }
23
+ });
24
+ const KnowledgeSourceRecord = new SchemaModel({
25
+ name: "KnowledgeSourceRecord",
26
+ fields: {
27
+ id: {
28
+ type: ScalarTypeEnum.ID(),
29
+ isOptional: false
30
+ },
31
+ tenantId: {
32
+ type: ScalarTypeEnum.ID(),
33
+ isOptional: false
34
+ },
35
+ spaceKey: {
36
+ type: ScalarTypeEnum.NonEmptyString(),
37
+ isOptional: false
38
+ },
39
+ spaceVersion: {
40
+ type: ScalarTypeEnum.Int_unsecure(),
41
+ isOptional: false
42
+ },
43
+ label: {
44
+ type: ScalarTypeEnum.String_unsecure(),
45
+ isOptional: false
46
+ },
47
+ sourceType: {
48
+ type: ScalarTypeEnum.String_unsecure(),
49
+ isOptional: false
50
+ },
51
+ syncSchedule: {
52
+ type: KnowledgeSyncSchedule,
53
+ isOptional: true
54
+ },
55
+ lastSyncStatus: {
56
+ type: ScalarTypeEnum.String_unsecure(),
57
+ isOptional: true
58
+ },
59
+ lastSyncAt: {
60
+ type: ScalarTypeEnum.DateTime(),
61
+ isOptional: true
62
+ },
63
+ itemsProcessed: {
64
+ type: ScalarTypeEnum.Int_unsecure(),
65
+ isOptional: true
66
+ },
67
+ createdAt: {
68
+ type: ScalarTypeEnum.DateTime(),
69
+ isOptional: true
70
+ },
71
+ updatedAt: {
72
+ type: ScalarTypeEnum.DateTime(),
73
+ isOptional: true
74
+ }
75
+ }
76
+ });
77
+ const CreateKnowledgeSourceInput = new SchemaModel({
78
+ name: "CreateKnowledgeSourceInput",
79
+ fields: {
80
+ tenantId: {
81
+ type: ScalarTypeEnum.ID(),
82
+ isOptional: false
83
+ },
84
+ spaceKey: {
85
+ type: ScalarTypeEnum.NonEmptyString(),
86
+ isOptional: false
87
+ },
88
+ spaceVersion: {
89
+ type: ScalarTypeEnum.Int_unsecure(),
90
+ isOptional: false
91
+ },
92
+ label: {
93
+ type: ScalarTypeEnum.String_unsecure(),
94
+ isOptional: false
95
+ },
96
+ sourceType: {
97
+ type: ScalarTypeEnum.NonEmptyString(),
98
+ isOptional: false
99
+ },
100
+ config: {
101
+ type: ScalarTypeEnum.JSONObject(),
102
+ isOptional: false
103
+ },
104
+ syncSchedule: {
105
+ type: KnowledgeSyncSchedule,
106
+ isOptional: true
107
+ }
108
+ }
109
+ });
110
+ const UpdateKnowledgeSourceInput = new SchemaModel({
111
+ name: "UpdateKnowledgeSourceInput",
112
+ fields: {
113
+ sourceId: {
114
+ type: ScalarTypeEnum.ID(),
115
+ isOptional: false
116
+ },
117
+ label: {
118
+ type: ScalarTypeEnum.String_unsecure(),
119
+ isOptional: true
120
+ },
121
+ config: {
122
+ type: ScalarTypeEnum.JSONObject(),
123
+ isOptional: true
124
+ },
125
+ syncSchedule: {
126
+ type: KnowledgeSyncSchedule,
127
+ isOptional: true
128
+ }
129
+ }
130
+ });
131
+ const DeleteKnowledgeSourceInput = new SchemaModel({
132
+ name: "DeleteKnowledgeSourceInput",
133
+ fields: { sourceId: {
134
+ type: ScalarTypeEnum.ID(),
135
+ isOptional: false
136
+ } }
137
+ });
138
+ const DeleteKnowledgeSourceOutput = new SchemaModel({
139
+ name: "DeleteKnowledgeSourceOutput",
140
+ fields: { success: {
141
+ type: ScalarTypeEnum.Boolean(),
142
+ isOptional: false
143
+ } }
144
+ });
145
+ const ListKnowledgeSourcesInput = new SchemaModel({
146
+ name: "ListKnowledgeSourcesInput",
147
+ fields: {
148
+ tenantId: {
149
+ type: ScalarTypeEnum.ID(),
150
+ isOptional: false
151
+ },
152
+ spaceKey: {
153
+ type: ScalarTypeEnum.NonEmptyString(),
154
+ isOptional: true
155
+ }
156
+ }
157
+ });
158
+ const ListKnowledgeSourcesOutput = new SchemaModel({
159
+ name: "ListKnowledgeSourcesOutput",
160
+ fields: { sources: {
161
+ type: KnowledgeSourceRecord,
162
+ isOptional: false,
163
+ isArray: true
164
+ } }
165
+ });
166
+ const TriggerKnowledgeSyncInput = new SchemaModel({
167
+ name: "TriggerKnowledgeSyncInput",
168
+ fields: { sourceId: {
169
+ type: ScalarTypeEnum.ID(),
170
+ isOptional: false
171
+ } }
172
+ });
173
+ const TriggerKnowledgeSyncOutput = new SchemaModel({
174
+ name: "TriggerKnowledgeSyncOutput",
175
+ fields: {
176
+ success: {
177
+ type: ScalarTypeEnum.Boolean(),
178
+ isOptional: false
179
+ },
180
+ itemsProcessed: {
181
+ type: ScalarTypeEnum.Int_unsecure(),
182
+ isOptional: true
183
+ },
184
+ error: {
185
+ type: ScalarTypeEnum.String_unsecure(),
186
+ isOptional: true
187
+ }
188
+ }
189
+ });
190
+ const CreateKnowledgeSource = defineCommand({
191
+ meta: {
192
+ name: "knowledge.source.create",
193
+ version: 1,
194
+ description: "Create a knowledge source binding for a tenant.",
195
+ goal: "Onboard a new knowledge ingestion source such as Notion or uploads.",
196
+ context: "Used by Ops and App Studio to configure knowledge ingestion per tenant and space.",
197
+ owners: ["platform.knowledge"],
198
+ tags: ["knowledge", "sources"],
199
+ stability: "experimental"
200
+ },
201
+ io: {
202
+ input: CreateKnowledgeSourceInput,
203
+ output: KnowledgeSourceRecord
204
+ },
205
+ policy: {
206
+ auth: "admin",
207
+ policies: [{
208
+ name: "platform.knowledge.manage",
209
+ version: 1
210
+ }]
211
+ }
212
+ });
213
+ const UpdateKnowledgeSource = defineCommand({
214
+ meta: {
215
+ name: "knowledge.source.update",
216
+ version: 1,
217
+ description: "Update metadata or configuration for a knowledge source.",
218
+ goal: "Allow rotation of credentials, sync schedules, and labels.",
219
+ context: "Supports editing how a tenant ingests knowledge (e.g., toggling sync cadence).",
220
+ owners: ["platform.knowledge"],
221
+ tags: ["knowledge", "sources"],
222
+ stability: "experimental"
223
+ },
224
+ io: {
225
+ input: UpdateKnowledgeSourceInput,
226
+ output: KnowledgeSourceRecord
227
+ },
228
+ policy: {
229
+ auth: "admin",
230
+ policies: [{
231
+ name: "platform.knowledge.manage",
232
+ version: 1
233
+ }]
234
+ }
235
+ });
236
+ const DeleteKnowledgeSource = defineCommand({
237
+ meta: {
238
+ name: "knowledge.source.delete",
239
+ version: 1,
240
+ description: "Delete a knowledge source binding for a tenant.",
241
+ goal: "Remove obsolete or compromised knowledge ingestion paths.",
242
+ context: "Ensures ephemeral or external sources can be removed cleanly without leaving residual bindings.",
243
+ owners: ["platform.knowledge"],
244
+ tags: ["knowledge", "sources"],
245
+ stability: "experimental"
246
+ },
247
+ io: {
248
+ input: DeleteKnowledgeSourceInput,
249
+ output: DeleteKnowledgeSourceOutput
250
+ },
251
+ policy: {
252
+ auth: "admin",
253
+ policies: [{
254
+ name: "platform.knowledge.manage",
255
+ version: 1
256
+ }]
257
+ }
258
+ });
259
+ const ListKnowledgeSources = defineQuery({
260
+ meta: {
261
+ name: "knowledge.source.list",
262
+ version: 1,
263
+ description: "List knowledge sources configured for a tenant.",
264
+ goal: "Provide visibility into knowledge ingest configuration and schedules.",
265
+ context: "Used by App Studio and Ops flows to surface knowledge sources and their health.",
266
+ owners: ["platform.knowledge"],
267
+ tags: ["knowledge", "sources"],
268
+ stability: "experimental"
269
+ },
270
+ io: {
271
+ input: ListKnowledgeSourcesInput,
272
+ output: ListKnowledgeSourcesOutput
273
+ },
274
+ policy: {
275
+ auth: "admin",
276
+ policies: [{
277
+ name: "platform.knowledge.read",
278
+ version: 1
279
+ }]
280
+ }
281
+ });
282
+ const TriggerKnowledgeSourceSync = defineCommand({
283
+ meta: {
284
+ name: "knowledge.source.triggerSync",
285
+ version: 1,
286
+ description: "Trigger an immediate sync for a knowledge source.",
287
+ goal: "Support manual or automated sync retries for knowledge ingestion.",
288
+ context: "Invoked by Ops tooling or monitors when knowledge content must be refreshed or reprocessed.",
289
+ owners: ["platform.knowledge"],
290
+ tags: ["knowledge", "sources"],
291
+ stability: "experimental"
292
+ },
293
+ io: {
294
+ input: TriggerKnowledgeSyncInput,
295
+ output: TriggerKnowledgeSyncOutput
296
+ },
297
+ policy: {
298
+ auth: "admin",
299
+ policies: [{
300
+ name: "platform.knowledge.manage",
301
+ version: 1
302
+ }]
303
+ }
304
+ });
305
+
306
+ //#endregion
@@ -0,0 +1,7 @@
1
+ import "./spaces/product-canon.js";
2
+ import "./spaces/support-faq.js";
3
+ import "./spaces/email-threads.js";
4
+ import "./spaces/uploaded-docs.js";
5
+ import "./spaces/financial-docs.js";
6
+ import "./spaces/financial-overview.js";
7
+ import "./spaces/index.js";
@@ -0,0 +1,34 @@
1
+ import { StabilityEnum } from "../../ownership.js";
2
+
3
+ //#region ../../libs/contracts/dist/knowledge/spaces/email-threads.js
4
+ const emailThreadsKnowledgeSpace = {
5
+ meta: {
6
+ key: "knowledge.email-threads",
7
+ version: 1,
8
+ category: "operational",
9
+ displayName: "Email Threads",
10
+ title: "Operational Email Threads",
11
+ description: "Indexed copies of operational email threads used for support, onboarding, and workflows.",
12
+ domain: "operations",
13
+ owners: ["platform.operations"],
14
+ tags: ["email", "operations"],
15
+ stability: StabilityEnum.Beta
16
+ },
17
+ retention: { ttlDays: 365 },
18
+ access: {
19
+ policy: {
20
+ name: "knowledge.access.email-threads",
21
+ version: 1
22
+ },
23
+ trustLevel: "medium",
24
+ automationWritable: true
25
+ },
26
+ indexing: {
27
+ embeddingModel: "mistral-embed",
28
+ chunkSize: 600,
29
+ vectorDbIntegration: "vectordb.qdrant"
30
+ },
31
+ description: "Operational email threads synchronized from Gmail to support automations and contextual assistance."
32
+ };
33
+
34
+ //#endregion
@@ -0,0 +1,34 @@
1
+ import { StabilityEnum } from "../../ownership.js";
2
+
3
+ //#region ../../libs/contracts/dist/knowledge/spaces/financial-docs.js
4
+ const financialDocsKnowledgeSpace = {
5
+ meta: {
6
+ key: "knowledge.financial-docs",
7
+ version: 1,
8
+ category: "canonical",
9
+ displayName: "Financial Documents",
10
+ title: "Household Financial Documents",
11
+ description: "Invoices, bills, and contracts powering Pocket Family Office financial automation.",
12
+ domain: "finance",
13
+ owners: ["platform.finance"],
14
+ tags: ["finance", "documents"],
15
+ stability: StabilityEnum.Beta
16
+ },
17
+ retention: { ttlDays: null },
18
+ access: {
19
+ policy: {
20
+ name: "knowledge.access.financial-docs",
21
+ version: 1
22
+ },
23
+ trustLevel: "high",
24
+ automationWritable: true
25
+ },
26
+ indexing: {
27
+ embeddingModel: "mistral-embed",
28
+ chunkSize: 700,
29
+ vectorDbIntegration: "vectordb.qdrant"
30
+ },
31
+ description: "Normalized financial documents enabling bill pay automation, reminders, and summaries."
32
+ };
33
+
34
+ //#endregion
@@ -0,0 +1,38 @@
1
+ import { StabilityEnum } from "../../ownership.js";
2
+
3
+ //#region ../../libs/contracts/dist/knowledge/spaces/financial-overview.js
4
+ const financialOverviewKnowledgeSpace = {
5
+ meta: {
6
+ key: "knowledge.financial-overview",
7
+ version: 1,
8
+ category: "operational",
9
+ displayName: "Financial Overview Summaries",
10
+ title: "Derived Financial Summaries",
11
+ description: "Aggregated cashflow summaries, category breakdowns, and balance trends derived from open banking data.",
12
+ domain: "finance",
13
+ owners: ["platform.finance"],
14
+ tags: [
15
+ "open-banking",
16
+ "summaries",
17
+ "cashflow"
18
+ ],
19
+ stability: StabilityEnum.Experimental
20
+ },
21
+ retention: { ttlDays: 180 },
22
+ access: {
23
+ policy: {
24
+ name: "knowledge.access.financial-overview",
25
+ version: 1
26
+ },
27
+ trustLevel: "medium",
28
+ automationWritable: true
29
+ },
30
+ indexing: {
31
+ embeddingModel: "mistral-embed",
32
+ chunkSize: 600,
33
+ vectorDbIntegration: "vectordb.qdrant"
34
+ },
35
+ description: "Derived knowledge space containing weekly/monthly cashflow rollups and account health summaries. Raw transactions are excluded to respect privacy guardrails."
36
+ };
37
+
38
+ //#endregion
@@ -0,0 +1,6 @@
1
+ import "./product-canon.js";
2
+ import "./support-faq.js";
3
+ import "./email-threads.js";
4
+ import "./uploaded-docs.js";
5
+ import "./financial-docs.js";
6
+ import "./financial-overview.js";
@@ -0,0 +1,34 @@
1
+ import { StabilityEnum } from "../../ownership.js";
2
+
3
+ //#region ../../libs/contracts/dist/knowledge/spaces/product-canon.js
4
+ const productCanonKnowledgeSpace = {
5
+ meta: {
6
+ key: "knowledge.product-canon",
7
+ version: 1,
8
+ category: "canonical",
9
+ displayName: "Product Canon",
10
+ title: "Product Canon Knowledge Space",
11
+ description: "Authoritative product knowledge covering strategy, roadmap, and delivery canon.",
12
+ domain: "product",
13
+ owners: ["platform.product"],
14
+ tags: ["knowledge", "product"],
15
+ stability: StabilityEnum.Stable
16
+ },
17
+ retention: { ttlDays: null },
18
+ access: {
19
+ policy: {
20
+ name: "knowledge.access.product-canon",
21
+ version: 1
22
+ },
23
+ trustLevel: "high",
24
+ automationWritable: false
25
+ },
26
+ indexing: {
27
+ embeddingModel: "text-embedding-3-large",
28
+ chunkSize: 800,
29
+ vectorDbIntegration: "vectordb.qdrant"
30
+ },
31
+ description: "Single source of truth for product canon, principles, and strategic narratives."
32
+ };
33
+
34
+ //#endregion
@@ -0,0 +1,37 @@
1
+ import { StabilityEnum } from "../../ownership.js";
2
+
3
+ //#region ../../libs/contracts/dist/knowledge/spaces/support-faq.js
4
+ const supportFaqKnowledgeSpace = {
5
+ meta: {
6
+ key: "knowledge.support-faq",
7
+ version: 1,
8
+ category: "operational",
9
+ displayName: "Support FAQ",
10
+ title: "Support & Success FAQ",
11
+ description: "Operational knowledge base for customer support and success.",
12
+ domain: "support",
13
+ owners: ["platform.support"],
14
+ tags: ["knowledge", "support"],
15
+ stability: StabilityEnum.Beta
16
+ },
17
+ retention: {
18
+ ttlDays: 365,
19
+ archiveAfterDays: 180
20
+ },
21
+ access: {
22
+ policy: {
23
+ name: "knowledge.access.support",
24
+ version: 1
25
+ },
26
+ trustLevel: "medium",
27
+ automationWritable: true
28
+ },
29
+ indexing: {
30
+ embeddingModel: "text-embedding-3-small",
31
+ chunkSize: 700,
32
+ vectorDbIntegration: "vectordb.qdrant"
33
+ },
34
+ description: "Operational FAQs, runbooks, and customer success playbooks augmented with automation updates."
35
+ };
36
+
37
+ //#endregion
@@ -0,0 +1,34 @@
1
+ import { StabilityEnum } from "../../ownership.js";
2
+
3
+ //#region ../../libs/contracts/dist/knowledge/spaces/uploaded-docs.js
4
+ const uploadedDocsKnowledgeSpace = {
5
+ meta: {
6
+ key: "knowledge.uploaded-docs",
7
+ version: 1,
8
+ category: "external",
9
+ displayName: "Uploaded Documents",
10
+ title: "Uploaded Knowledge Assets",
11
+ description: "Documents uploaded by households, including invoices, contracts, and reference files.",
12
+ domain: "operations",
13
+ owners: ["platform.operations"],
14
+ tags: ["documents", "storage"],
15
+ stability: StabilityEnum.Beta
16
+ },
17
+ retention: { ttlDays: null },
18
+ access: {
19
+ policy: {
20
+ name: "knowledge.access.uploaded-docs",
21
+ version: 1
22
+ },
23
+ trustLevel: "medium",
24
+ automationWritable: true
25
+ },
26
+ indexing: {
27
+ embeddingModel: "mistral-embed",
28
+ chunkSize: 900,
29
+ vectorDbIntegration: "vectordb.qdrant"
30
+ },
31
+ description: "User-provided documents normalized and embedded for retrieval augmented workflows."
32
+ };
33
+
34
+ //#endregion
@@ -0,0 +1,19 @@
1
+ import "../jsonschema.js";
2
+
3
+ //#region ../../libs/contracts/dist/llm/exporters.js
4
+ const DEFAULT_SPEC_OPTIONS = {
5
+ format: "full",
6
+ includeSchemas: true,
7
+ includeScenarios: true,
8
+ includeExamples: true,
9
+ includePolicy: true,
10
+ includeSideEffects: true
11
+ };
12
+ const DEFAULT_FEATURE_OPTIONS = {
13
+ ...DEFAULT_SPEC_OPTIONS,
14
+ includeRelatedSpecs: true,
15
+ includeRelatedEvents: true,
16
+ includeRelatedPresentations: true
17
+ };
18
+
19
+ //#endregion
@@ -0,0 +1,2 @@
1
+ import "./exporters.js";
2
+ import "./prompts.js";
@@ -0,0 +1 @@
1
+ import "./exporters.js";