@lssm/lib.contracts 0.0.0-canary-20251221132705 → 0.0.0-canary-20251221153314
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.
- package/dist/app-config/contracts.d.ts +56 -55
- package/dist/app-config/contracts.js +5 -4
- package/dist/app-config/docs/app-config.docblock.js +0 -1
- package/dist/app-config/events.d.ts +27 -27
- package/dist/app-config/lifecycle-contracts.d.ts +83 -82
- package/dist/app-config/lifecycle-contracts.js +2 -1
- package/dist/app-config/runtime.d.ts +4 -2
- package/dist/app-config/spec.d.ts +2 -1
- package/dist/app-config/validation.d.ts +4 -2
- package/dist/{capabilities.d.ts → capabilities/capabilities.d.ts} +3 -3
- package/dist/{capabilities.js → capabilities/capabilities.js} +1 -1
- package/dist/capabilities/docs/capabilities.docblock.js +0 -1
- package/dist/capabilities/index.d.ts +3 -0
- package/dist/capabilities/index.js +4 -0
- package/dist/capabilities/openbanking.d.ts +2 -1
- package/dist/client/react/feature-render.d.ts +3 -1
- package/dist/client/react/feature-render.js +2 -1
- package/dist/client/react/form-render.d.ts +1 -1
- package/dist/client/react/form-render.js +1 -1
- package/dist/{data-views.d.ts → data-views/data-views.d.ts} +5 -5
- package/dist/{data-views.js → data-views/data-views.js} +3 -3
- package/dist/data-views/docs/data-views.docblock.js +0 -1
- package/dist/data-views/index.d.ts +4 -0
- package/dist/data-views/index.js +5 -0
- package/dist/data-views/query-generator.d.ts +2 -1
- package/dist/data-views/runtime.d.ts +2 -1
- package/dist/docs/presentations.d.ts +3 -2
- package/dist/docs/registry.d.ts +3 -2
- package/dist/docs/tech/llm/llm-integration.docblock.js +2 -2
- package/dist/experiments/docs/experiments.docblock.js +0 -1
- package/dist/experiments/spec-resolver.d.ts +2 -1
- package/dist/features.d.ts +8 -5
- package/dist/forms/docs/forms.docblock.js +0 -1
- package/dist/{forms.d.ts → forms/forms.d.ts} +3 -3
- package/dist/{forms.js → forms/forms.js} +3 -3
- package/dist/forms/index.d.ts +2 -0
- package/dist/forms/index.js +3 -0
- package/dist/index.d.ts +19 -12
- package/dist/index.js +20 -15
- package/dist/install.d.ts +3 -2
- package/dist/install.js +1 -1
- package/dist/integrations/docs/integrations.docblock.js +0 -1
- package/dist/integrations/openbanking/contracts/accounts.d.ts +69 -68
- package/dist/integrations/openbanking/contracts/accounts.js +2 -1
- package/dist/integrations/openbanking/contracts/balances.d.ts +37 -36
- package/dist/integrations/openbanking/contracts/balances.js +2 -1
- package/dist/integrations/openbanking/contracts/index.d.ts +1 -1
- package/dist/integrations/openbanking/contracts/transactions.d.ts +51 -50
- package/dist/integrations/openbanking/contracts/transactions.js +2 -1
- package/dist/integrations/openbanking/models.d.ts +55 -55
- package/dist/integrations/operations.d.ts +437 -0
- package/dist/integrations/{contracts.js → operations.js} +3 -2
- package/dist/integrations/spec.d.ts +2 -1
- package/dist/jsonschema.d.ts +5 -4
- package/dist/knowledge/docs/knowledge.docblock.js +0 -1
- package/dist/knowledge/{contracts.d.ts → operations.d.ts} +70 -69
- package/dist/knowledge/{contracts.js → operations.js} +3 -2
- package/dist/llm/exporters.d.ts +10 -8
- package/dist/llm/exporters.js +11 -10
- package/dist/llm/index.d.ts +2 -2
- package/dist/llm/index.js +2 -2
- package/dist/llm/prompts.d.ts +2 -1
- package/dist/llm/prompts.js +8 -8
- package/dist/llm/types.d.ts +3 -2
- package/dist/markdown.d.ts +5 -4
- package/dist/markdown.js +6 -5
- package/dist/onboarding-base.d.ts +31 -30
- package/dist/onboarding-base.js +2 -1
- package/dist/openapi.d.ts +1 -1
- package/dist/operations/index.d.ts +3 -0
- package/dist/operations/index.js +4 -0
- package/dist/{operation.d.ts → operations/operation.d.ts} +7 -7
- package/dist/{operation.js → operations/operation.js} +1 -1
- package/dist/{registry.d.ts → operations/registry.d.ts} +6 -7
- package/dist/{registry.js → operations/registry.js} +5 -6
- package/dist/policy/docs/policy.docblock.js +0 -1
- package/dist/presentations/docs/presentations-conventions.docblock.js +0 -1
- package/dist/presentations/index.d.ts +4 -0
- package/dist/presentations/index.js +4 -0
- package/dist/{presentations.d.ts → presentations/presentations.d.ts} +6 -6
- package/dist/{presentations.js → presentations/presentations.js} +3 -3
- package/dist/presentations/presentations.v2.d.ts +54 -0
- package/dist/presentations/presentations.v2.js +0 -0
- package/dist/{presentations.v2.d.ts → presentations/transform-engine.d.ts} +3 -51
- package/dist/{presentations.v2.js → presentations/transform-engine.js} +2 -2
- package/dist/regenerator/docs/regenerator.docblock.js +0 -1
- package/dist/{contracts-adapter-hydration.d.ts → server/contracts-adapter-hydration.d.ts} +2 -2
- package/dist/{contracts-adapter-hydration.js → server/contracts-adapter-hydration.js} +1 -1
- package/dist/{contracts-adapter-input.d.ts → server/contracts-adapter-input.d.ts} +2 -3
- package/dist/{contracts-adapter-input.js → server/contracts-adapter-input.js} +2 -2
- package/dist/server/graphql-pothos.d.ts +1 -1
- package/dist/server/graphql-pothos.js +2 -2
- package/dist/server/mcp/createMcpServer.d.ts +1 -1
- package/dist/server/mcp/mcpTypes.d.ts +3 -2
- package/dist/server/mcp/registerPresentations.js +3 -2
- package/dist/server/mcp/registerTools.d.ts +1 -1
- package/dist/server/rest-elysia.d.ts +1 -1
- package/dist/server/rest-express.d.ts +1 -1
- package/dist/server/rest-generic.d.ts +1 -1
- package/dist/server/rest-next-app.d.ts +1 -1
- package/dist/server/rest-next-mcp.d.ts +1 -1
- package/dist/server/rest-next-pages.d.ts +1 -1
- package/dist/telemetry/docs/telemetry.docblock.js +0 -1
- package/dist/tests/runner.d.ts +1 -1
- package/dist/workflow/spec.d.ts +2 -1
- package/dist/workflow/validation.d.ts +2 -2
- package/package.json +22 -17
- package/dist/integrations/contracts.d.ts +0 -436
- package/dist/openbanking/docs/openbanking.docblock.d.ts +0 -6
- package/dist/openbanking/docs/openbanking.docblock.js +0 -22
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { HandlerCtx } from "../types.js";
|
|
2
|
-
import { OperationSpecRegistry } from "../registry.js";
|
|
2
|
+
import { OperationSpecRegistry } from "../operations/registry.js";
|
|
3
3
|
|
|
4
4
|
//#region src/server/rest-next-mcp.d.ts
|
|
5
5
|
declare function makeNextMcpServerFromRegistry(reg: OperationSpecRegistry, ctxFactory: () => HandlerCtx): {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { HandlerCtx } from "../types.js";
|
|
2
|
-
import { OperationSpecRegistry } from "../registry.js";
|
|
2
|
+
import { OperationSpecRegistry } from "../operations/registry.js";
|
|
3
3
|
import { RestOptions } from "./rest-generic.js";
|
|
4
4
|
import { NextApiRequest, NextApiResponse } from "next";
|
|
5
5
|
|
package/dist/tests/runner.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Assertion, TestScenario, TestSpec } from "./spec.js";
|
|
2
2
|
import { HandlerCtx } from "../types.js";
|
|
3
|
-
import { OperationSpecRegistry } from "../registry.js";
|
|
3
|
+
import { OperationSpecRegistry } from "../operations/registry.js";
|
|
4
4
|
import "../index.js";
|
|
5
5
|
|
|
6
6
|
//#region src/tests/runner.d.ts
|
package/dist/workflow/spec.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { OwnerShipMeta } from "../ownership.js";
|
|
2
2
|
import { GroupKeyFn, RegistryFilter } from "../registry-utils.js";
|
|
3
|
-
import { CapabilityRef } from "../capabilities.js";
|
|
3
|
+
import { CapabilityRef } from "../capabilities/capabilities.js";
|
|
4
|
+
import "../capabilities/index.js";
|
|
4
5
|
import { ExperimentRef } from "../experiments/spec.js";
|
|
5
6
|
import { OpRef } from "../features.js";
|
|
6
7
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { WorkflowSpec } from "./spec.js";
|
|
2
|
-
import { OperationSpecRegistry } from "../registry.js";
|
|
3
|
-
import { FormRegistry } from "../forms.js";
|
|
2
|
+
import { OperationSpecRegistry } from "../operations/registry.js";
|
|
3
|
+
import { FormRegistry } from "../forms/forms.js";
|
|
4
4
|
|
|
5
5
|
//#region src/workflow/validation.d.ts
|
|
6
6
|
type WorkflowValidationLevel = 'error' | 'warning';
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@lssm/lib.contracts",
|
|
3
|
-
"version": "0.0.0-canary-
|
|
3
|
+
"version": "0.0.0-canary-20251221153314",
|
|
4
4
|
"scripts": {
|
|
5
5
|
"publish:pkg": "bun publish --tolerate-republish --ignore-scripts --verbose",
|
|
6
6
|
"publish:pkg:canary": "bun publish:pkg --tag canary",
|
|
@@ -16,8 +16,8 @@
|
|
|
16
16
|
"test": "bun run"
|
|
17
17
|
},
|
|
18
18
|
"devDependencies": {
|
|
19
|
-
"@lssm/tool.tsdown": "0.0.0-canary-
|
|
20
|
-
"@lssm/tool.typescript": "0.0.0-canary-
|
|
19
|
+
"@lssm/tool.tsdown": "0.0.0-canary-20251221153314",
|
|
20
|
+
"@lssm/tool.typescript": "0.0.0-canary-20251221153314",
|
|
21
21
|
"@types/express": "^5.0.3",
|
|
22
22
|
"@types/turndown": "^5.0.6",
|
|
23
23
|
"tsdown": "^0.18.1",
|
|
@@ -35,8 +35,8 @@
|
|
|
35
35
|
"@elevenlabs/elevenlabs-js": "^2.27.0",
|
|
36
36
|
"@google-cloud/secret-manager": "^6.1.1",
|
|
37
37
|
"@google-cloud/storage": "^7.18.0",
|
|
38
|
-
"@lssm/lib.logger": "0.0.0-canary-
|
|
39
|
-
"@lssm/lib.schema": "0.0.0-canary-
|
|
38
|
+
"@lssm/lib.logger": "0.0.0-canary-20251221153314",
|
|
39
|
+
"@lssm/lib.schema": "0.0.0-canary-20251221153314",
|
|
40
40
|
"@mistralai/mistralai": "^1.11.0",
|
|
41
41
|
"@modelcontextprotocol/sdk": "^1.24.3",
|
|
42
42
|
"@qdrant/js-client-rest": "^1.16.2",
|
|
@@ -83,7 +83,8 @@
|
|
|
83
83
|
"./app-config/runtime": "./dist/app-config/runtime.js",
|
|
84
84
|
"./app-config/spec": "./dist/app-config/spec.js",
|
|
85
85
|
"./app-config/validation": "./dist/app-config/validation.js",
|
|
86
|
-
"./capabilities": "./dist/capabilities.js",
|
|
86
|
+
"./capabilities": "./dist/capabilities/index.js",
|
|
87
|
+
"./capabilities/capabilities": "./dist/capabilities/capabilities.js",
|
|
87
88
|
"./capabilities/docs/capabilities.docblock": "./dist/capabilities/docs/capabilities.docblock.js",
|
|
88
89
|
"./capabilities/openbanking": "./dist/capabilities/openbanking.js",
|
|
89
90
|
"./client": "./dist/client/index.js",
|
|
@@ -95,9 +96,8 @@
|
|
|
95
96
|
"./contract-registry": "./dist/contract-registry/index.js",
|
|
96
97
|
"./contract-registry/schemas": "./dist/contract-registry/schemas.js",
|
|
97
98
|
"./contract-registry/types": "./dist/contract-registry/types.js",
|
|
98
|
-
"./
|
|
99
|
-
"./
|
|
100
|
-
"./data-views": "./dist/data-views.js",
|
|
99
|
+
"./data-views": "./dist/data-views/index.js",
|
|
100
|
+
"./data-views/data-views": "./dist/data-views/data-views.js",
|
|
101
101
|
"./data-views/docs/data-views.docblock": "./dist/data-views/docs/data-views.docblock.js",
|
|
102
102
|
"./data-views/query-generator": "./dist/data-views/query-generator.js",
|
|
103
103
|
"./data-views/runtime": "./dist/data-views/runtime.js",
|
|
@@ -143,13 +143,13 @@
|
|
|
143
143
|
"./experiments/spec": "./dist/experiments/spec.js",
|
|
144
144
|
"./experiments/spec-resolver": "./dist/experiments/spec-resolver.js",
|
|
145
145
|
"./features": "./dist/features.js",
|
|
146
|
-
"./forms": "./dist/forms.js",
|
|
146
|
+
"./forms": "./dist/forms/index.js",
|
|
147
147
|
"./forms/docs/forms.docblock": "./dist/forms/docs/forms.docblock.js",
|
|
148
|
+
"./forms/forms": "./dist/forms/forms.js",
|
|
148
149
|
"./install": "./dist/install.js",
|
|
149
150
|
"./integrations": "./dist/integrations/index.js",
|
|
150
151
|
"./integrations/binding": "./dist/integrations/binding.js",
|
|
151
152
|
"./integrations/connection": "./dist/integrations/connection.js",
|
|
152
|
-
"./integrations/contracts": "./dist/integrations/contracts.js",
|
|
153
153
|
"./integrations/docs/integrations.docblock": "./dist/integrations/docs/integrations.docblock.js",
|
|
154
154
|
"./integrations/health": "./dist/integrations/health.js",
|
|
155
155
|
"./integrations/openbanking/contracts": "./dist/integrations/openbanking/contracts/index.js",
|
|
@@ -160,6 +160,7 @@
|
|
|
160
160
|
"./integrations/openbanking/models": "./dist/integrations/openbanking/models.js",
|
|
161
161
|
"./integrations/openbanking/openbanking.feature": "./dist/integrations/openbanking/openbanking.feature.js",
|
|
162
162
|
"./integrations/openbanking/telemetry": "./dist/integrations/openbanking/telemetry.js",
|
|
163
|
+
"./integrations/operations": "./dist/integrations/operations.js",
|
|
163
164
|
"./integrations/providers": "./dist/integrations/providers/index.js",
|
|
164
165
|
"./integrations/providers/calendar": "./dist/integrations/providers/calendar.js",
|
|
165
166
|
"./integrations/providers/elevenlabs": "./dist/integrations/providers/elevenlabs.js",
|
|
@@ -220,7 +221,6 @@
|
|
|
220
221
|
"./jsonschema": "./dist/jsonschema.js",
|
|
221
222
|
"./knowledge": "./dist/knowledge/index.js",
|
|
222
223
|
"./knowledge/binding": "./dist/knowledge/binding.js",
|
|
223
|
-
"./knowledge/contracts": "./dist/knowledge/contracts.js",
|
|
224
224
|
"./knowledge/docs/knowledge.docblock": "./dist/knowledge/docs/knowledge.docblock.js",
|
|
225
225
|
"./knowledge/ingestion": "./dist/knowledge/ingestion/index.js",
|
|
226
226
|
"./knowledge/ingestion/document-processor": "./dist/knowledge/ingestion/document-processor.js",
|
|
@@ -228,6 +228,7 @@
|
|
|
228
228
|
"./knowledge/ingestion/gmail-adapter": "./dist/knowledge/ingestion/gmail-adapter.js",
|
|
229
229
|
"./knowledge/ingestion/storage-adapter": "./dist/knowledge/ingestion/storage-adapter.js",
|
|
230
230
|
"./knowledge/ingestion/vector-indexer": "./dist/knowledge/ingestion/vector-indexer.js",
|
|
231
|
+
"./knowledge/operations": "./dist/knowledge/operations.js",
|
|
231
232
|
"./knowledge/query": "./dist/knowledge/query/index.js",
|
|
232
233
|
"./knowledge/query/service": "./dist/knowledge/query/service.js",
|
|
233
234
|
"./knowledge/runtime": "./dist/knowledge/runtime.js",
|
|
@@ -248,16 +249,19 @@
|
|
|
248
249
|
"./migrations": "./dist/migrations.js",
|
|
249
250
|
"./onboarding-base": "./dist/onboarding-base.js",
|
|
250
251
|
"./openapi": "./dist/openapi.js",
|
|
251
|
-
"./
|
|
252
|
-
"./operation": "./dist/operation.js",
|
|
252
|
+
"./operations": "./dist/operations/index.js",
|
|
253
|
+
"./operations/operation": "./dist/operations/operation.js",
|
|
254
|
+
"./operations/registry": "./dist/operations/registry.js",
|
|
253
255
|
"./ownership": "./dist/ownership.js",
|
|
254
256
|
"./policy/docs/policy.docblock": "./dist/policy/docs/policy.docblock.js",
|
|
255
257
|
"./policy/engine": "./dist/policy/engine.js",
|
|
256
258
|
"./policy/opa-adapter": "./dist/policy/opa-adapter.js",
|
|
257
259
|
"./policy/spec": "./dist/policy/spec.js",
|
|
258
|
-
"./presentations": "./dist/presentations.js",
|
|
259
|
-
"./presentations.v2": "./dist/presentations.v2.js",
|
|
260
|
+
"./presentations": "./dist/presentations/index.js",
|
|
260
261
|
"./presentations/docs/presentations-conventions.docblock": "./dist/presentations/docs/presentations-conventions.docblock.js",
|
|
262
|
+
"./presentations/presentations": "./dist/presentations/presentations.js",
|
|
263
|
+
"./presentations/presentations.v2": "./dist/presentations/presentations.v2.js",
|
|
264
|
+
"./presentations/transform-engine": "./dist/presentations/transform-engine.js",
|
|
261
265
|
"./prompt": "./dist/prompt.js",
|
|
262
266
|
"./promptRegistry": "./dist/promptRegistry.js",
|
|
263
267
|
"./regenerator": "./dist/regenerator/index.js",
|
|
@@ -268,11 +272,12 @@
|
|
|
268
272
|
"./regenerator/sinks": "./dist/regenerator/sinks.js",
|
|
269
273
|
"./regenerator/types": "./dist/regenerator/types.js",
|
|
270
274
|
"./regenerator/utils": "./dist/regenerator/utils.js",
|
|
271
|
-
"./registry": "./dist/registry.js",
|
|
272
275
|
"./registry-utils": "./dist/registry-utils.js",
|
|
273
276
|
"./resources": "./dist/resources.js",
|
|
274
277
|
"./schema-to-markdown": "./dist/schema-to-markdown.js",
|
|
275
278
|
"./server": "./dist/server/index.js",
|
|
279
|
+
"./server/contracts-adapter-hydration": "./dist/server/contracts-adapter-hydration.js",
|
|
280
|
+
"./server/contracts-adapter-input": "./dist/server/contracts-adapter-input.js",
|
|
276
281
|
"./server/graphql-pothos": "./dist/server/graphql-pothos.js",
|
|
277
282
|
"./server/mcp/createMcpServer": "./dist/server/mcp/createMcpServer.js",
|
|
278
283
|
"./server/mcp/mcpTypes": "./dist/server/mcp/mcpTypes.js",
|
|
@@ -1,436 +0,0 @@
|
|
|
1
|
-
import { AnyOperationSpec, OperationSpec } from "../operation.js";
|
|
2
|
-
import { OperationSpecRegistry } from "../registry.js";
|
|
3
|
-
import "../index.js";
|
|
4
|
-
import * as _lssm_lib_schema396 from "@lssm/lib.schema";
|
|
5
|
-
import { SchemaModel } from "@lssm/lib.schema";
|
|
6
|
-
|
|
7
|
-
//#region src/integrations/contracts.d.ts
|
|
8
|
-
declare const CreateIntegrationConnection: OperationSpec<SchemaModel<{
|
|
9
|
-
tenantId: {
|
|
10
|
-
type: _lssm_lib_schema396.FieldType<string, string>;
|
|
11
|
-
isOptional: false;
|
|
12
|
-
};
|
|
13
|
-
integrationKey: {
|
|
14
|
-
type: _lssm_lib_schema396.FieldType<string, string>;
|
|
15
|
-
isOptional: false;
|
|
16
|
-
};
|
|
17
|
-
integrationVersion: {
|
|
18
|
-
type: _lssm_lib_schema396.FieldType<number, number>;
|
|
19
|
-
isOptional: false;
|
|
20
|
-
};
|
|
21
|
-
label: {
|
|
22
|
-
type: _lssm_lib_schema396.FieldType<string, string>;
|
|
23
|
-
isOptional: false;
|
|
24
|
-
};
|
|
25
|
-
ownershipMode: {
|
|
26
|
-
type: _lssm_lib_schema396.FieldType<string, string>;
|
|
27
|
-
isOptional: false;
|
|
28
|
-
};
|
|
29
|
-
externalAccountId: {
|
|
30
|
-
type: _lssm_lib_schema396.FieldType<string, string>;
|
|
31
|
-
isOptional: true;
|
|
32
|
-
};
|
|
33
|
-
secretProvider: {
|
|
34
|
-
type: _lssm_lib_schema396.FieldType<string, string>;
|
|
35
|
-
isOptional: false;
|
|
36
|
-
};
|
|
37
|
-
secretRef: {
|
|
38
|
-
type: _lssm_lib_schema396.FieldType<string, string>;
|
|
39
|
-
isOptional: false;
|
|
40
|
-
};
|
|
41
|
-
environment: {
|
|
42
|
-
type: _lssm_lib_schema396.FieldType<string, string>;
|
|
43
|
-
isOptional: true;
|
|
44
|
-
};
|
|
45
|
-
config: {
|
|
46
|
-
type: _lssm_lib_schema396.FieldType<Record<string, unknown>, Record<string, unknown>>;
|
|
47
|
-
isOptional: false;
|
|
48
|
-
};
|
|
49
|
-
}>, SchemaModel<{
|
|
50
|
-
id: {
|
|
51
|
-
type: _lssm_lib_schema396.FieldType<string, string>;
|
|
52
|
-
isOptional: false;
|
|
53
|
-
};
|
|
54
|
-
tenantId: {
|
|
55
|
-
type: _lssm_lib_schema396.FieldType<string, string>;
|
|
56
|
-
isOptional: false;
|
|
57
|
-
};
|
|
58
|
-
integrationKey: {
|
|
59
|
-
type: _lssm_lib_schema396.FieldType<string, string>;
|
|
60
|
-
isOptional: false;
|
|
61
|
-
};
|
|
62
|
-
integrationVersion: {
|
|
63
|
-
type: _lssm_lib_schema396.FieldType<number, number>;
|
|
64
|
-
isOptional: false;
|
|
65
|
-
};
|
|
66
|
-
label: {
|
|
67
|
-
type: _lssm_lib_schema396.FieldType<string, string>;
|
|
68
|
-
isOptional: false;
|
|
69
|
-
};
|
|
70
|
-
ownershipMode: {
|
|
71
|
-
type: _lssm_lib_schema396.FieldType<string, string>;
|
|
72
|
-
isOptional: false;
|
|
73
|
-
};
|
|
74
|
-
externalAccountId: {
|
|
75
|
-
type: _lssm_lib_schema396.FieldType<string, string>;
|
|
76
|
-
isOptional: true;
|
|
77
|
-
};
|
|
78
|
-
secretProvider: {
|
|
79
|
-
type: _lssm_lib_schema396.FieldType<string, string>;
|
|
80
|
-
isOptional: false;
|
|
81
|
-
};
|
|
82
|
-
secretRef: {
|
|
83
|
-
type: _lssm_lib_schema396.FieldType<string, string>;
|
|
84
|
-
isOptional: false;
|
|
85
|
-
};
|
|
86
|
-
status: {
|
|
87
|
-
type: _lssm_lib_schema396.FieldType<string, string>;
|
|
88
|
-
isOptional: false;
|
|
89
|
-
};
|
|
90
|
-
environment: {
|
|
91
|
-
type: _lssm_lib_schema396.FieldType<string, string>;
|
|
92
|
-
isOptional: true;
|
|
93
|
-
};
|
|
94
|
-
healthStatus: {
|
|
95
|
-
type: _lssm_lib_schema396.FieldType<string, string>;
|
|
96
|
-
isOptional: true;
|
|
97
|
-
};
|
|
98
|
-
healthCheckedAt: {
|
|
99
|
-
type: _lssm_lib_schema396.FieldType<Date, string>;
|
|
100
|
-
isOptional: true;
|
|
101
|
-
};
|
|
102
|
-
healthLatencyMs: {
|
|
103
|
-
type: _lssm_lib_schema396.FieldType<number, number>;
|
|
104
|
-
isOptional: true;
|
|
105
|
-
};
|
|
106
|
-
healthErrorCode: {
|
|
107
|
-
type: _lssm_lib_schema396.FieldType<string, string>;
|
|
108
|
-
isOptional: true;
|
|
109
|
-
};
|
|
110
|
-
healthErrorMessage: {
|
|
111
|
-
type: _lssm_lib_schema396.FieldType<string, string>;
|
|
112
|
-
isOptional: true;
|
|
113
|
-
};
|
|
114
|
-
usageRequestCount: {
|
|
115
|
-
type: _lssm_lib_schema396.FieldType<number, number>;
|
|
116
|
-
isOptional: true;
|
|
117
|
-
};
|
|
118
|
-
usageSuccessCount: {
|
|
119
|
-
type: _lssm_lib_schema396.FieldType<number, number>;
|
|
120
|
-
isOptional: true;
|
|
121
|
-
};
|
|
122
|
-
usageErrorCount: {
|
|
123
|
-
type: _lssm_lib_schema396.FieldType<number, number>;
|
|
124
|
-
isOptional: true;
|
|
125
|
-
};
|
|
126
|
-
usageLastUsedAt: {
|
|
127
|
-
type: _lssm_lib_schema396.FieldType<Date, string>;
|
|
128
|
-
isOptional: true;
|
|
129
|
-
};
|
|
130
|
-
usageLastErrorAt: {
|
|
131
|
-
type: _lssm_lib_schema396.FieldType<Date, string>;
|
|
132
|
-
isOptional: true;
|
|
133
|
-
};
|
|
134
|
-
usageLastErrorCode: {
|
|
135
|
-
type: _lssm_lib_schema396.FieldType<string, string>;
|
|
136
|
-
isOptional: true;
|
|
137
|
-
};
|
|
138
|
-
createdAt: {
|
|
139
|
-
type: _lssm_lib_schema396.FieldType<Date, string>;
|
|
140
|
-
isOptional: true;
|
|
141
|
-
};
|
|
142
|
-
updatedAt: {
|
|
143
|
-
type: _lssm_lib_schema396.FieldType<Date, string>;
|
|
144
|
-
isOptional: true;
|
|
145
|
-
};
|
|
146
|
-
}>, undefined>;
|
|
147
|
-
declare const UpdateIntegrationConnection: OperationSpec<SchemaModel<{
|
|
148
|
-
connectionId: {
|
|
149
|
-
type: _lssm_lib_schema396.FieldType<string, string>;
|
|
150
|
-
isOptional: false;
|
|
151
|
-
};
|
|
152
|
-
label: {
|
|
153
|
-
type: _lssm_lib_schema396.FieldType<string, string>;
|
|
154
|
-
isOptional: true;
|
|
155
|
-
};
|
|
156
|
-
status: {
|
|
157
|
-
type: _lssm_lib_schema396.FieldType<string, string>;
|
|
158
|
-
isOptional: true;
|
|
159
|
-
};
|
|
160
|
-
ownershipMode: {
|
|
161
|
-
type: _lssm_lib_schema396.FieldType<string, string>;
|
|
162
|
-
isOptional: true;
|
|
163
|
-
};
|
|
164
|
-
externalAccountId: {
|
|
165
|
-
type: _lssm_lib_schema396.FieldType<string, string>;
|
|
166
|
-
isOptional: true;
|
|
167
|
-
};
|
|
168
|
-
secretProvider: {
|
|
169
|
-
type: _lssm_lib_schema396.FieldType<string, string>;
|
|
170
|
-
isOptional: true;
|
|
171
|
-
};
|
|
172
|
-
secretRef: {
|
|
173
|
-
type: _lssm_lib_schema396.FieldType<string, string>;
|
|
174
|
-
isOptional: true;
|
|
175
|
-
};
|
|
176
|
-
config: {
|
|
177
|
-
type: _lssm_lib_schema396.FieldType<Record<string, unknown>, Record<string, unknown>>;
|
|
178
|
-
isOptional: true;
|
|
179
|
-
};
|
|
180
|
-
}>, SchemaModel<{
|
|
181
|
-
id: {
|
|
182
|
-
type: _lssm_lib_schema396.FieldType<string, string>;
|
|
183
|
-
isOptional: false;
|
|
184
|
-
};
|
|
185
|
-
tenantId: {
|
|
186
|
-
type: _lssm_lib_schema396.FieldType<string, string>;
|
|
187
|
-
isOptional: false;
|
|
188
|
-
};
|
|
189
|
-
integrationKey: {
|
|
190
|
-
type: _lssm_lib_schema396.FieldType<string, string>;
|
|
191
|
-
isOptional: false;
|
|
192
|
-
};
|
|
193
|
-
integrationVersion: {
|
|
194
|
-
type: _lssm_lib_schema396.FieldType<number, number>;
|
|
195
|
-
isOptional: false;
|
|
196
|
-
};
|
|
197
|
-
label: {
|
|
198
|
-
type: _lssm_lib_schema396.FieldType<string, string>;
|
|
199
|
-
isOptional: false;
|
|
200
|
-
};
|
|
201
|
-
ownershipMode: {
|
|
202
|
-
type: _lssm_lib_schema396.FieldType<string, string>;
|
|
203
|
-
isOptional: false;
|
|
204
|
-
};
|
|
205
|
-
externalAccountId: {
|
|
206
|
-
type: _lssm_lib_schema396.FieldType<string, string>;
|
|
207
|
-
isOptional: true;
|
|
208
|
-
};
|
|
209
|
-
secretProvider: {
|
|
210
|
-
type: _lssm_lib_schema396.FieldType<string, string>;
|
|
211
|
-
isOptional: false;
|
|
212
|
-
};
|
|
213
|
-
secretRef: {
|
|
214
|
-
type: _lssm_lib_schema396.FieldType<string, string>;
|
|
215
|
-
isOptional: false;
|
|
216
|
-
};
|
|
217
|
-
status: {
|
|
218
|
-
type: _lssm_lib_schema396.FieldType<string, string>;
|
|
219
|
-
isOptional: false;
|
|
220
|
-
};
|
|
221
|
-
environment: {
|
|
222
|
-
type: _lssm_lib_schema396.FieldType<string, string>;
|
|
223
|
-
isOptional: true;
|
|
224
|
-
};
|
|
225
|
-
healthStatus: {
|
|
226
|
-
type: _lssm_lib_schema396.FieldType<string, string>;
|
|
227
|
-
isOptional: true;
|
|
228
|
-
};
|
|
229
|
-
healthCheckedAt: {
|
|
230
|
-
type: _lssm_lib_schema396.FieldType<Date, string>;
|
|
231
|
-
isOptional: true;
|
|
232
|
-
};
|
|
233
|
-
healthLatencyMs: {
|
|
234
|
-
type: _lssm_lib_schema396.FieldType<number, number>;
|
|
235
|
-
isOptional: true;
|
|
236
|
-
};
|
|
237
|
-
healthErrorCode: {
|
|
238
|
-
type: _lssm_lib_schema396.FieldType<string, string>;
|
|
239
|
-
isOptional: true;
|
|
240
|
-
};
|
|
241
|
-
healthErrorMessage: {
|
|
242
|
-
type: _lssm_lib_schema396.FieldType<string, string>;
|
|
243
|
-
isOptional: true;
|
|
244
|
-
};
|
|
245
|
-
usageRequestCount: {
|
|
246
|
-
type: _lssm_lib_schema396.FieldType<number, number>;
|
|
247
|
-
isOptional: true;
|
|
248
|
-
};
|
|
249
|
-
usageSuccessCount: {
|
|
250
|
-
type: _lssm_lib_schema396.FieldType<number, number>;
|
|
251
|
-
isOptional: true;
|
|
252
|
-
};
|
|
253
|
-
usageErrorCount: {
|
|
254
|
-
type: _lssm_lib_schema396.FieldType<number, number>;
|
|
255
|
-
isOptional: true;
|
|
256
|
-
};
|
|
257
|
-
usageLastUsedAt: {
|
|
258
|
-
type: _lssm_lib_schema396.FieldType<Date, string>;
|
|
259
|
-
isOptional: true;
|
|
260
|
-
};
|
|
261
|
-
usageLastErrorAt: {
|
|
262
|
-
type: _lssm_lib_schema396.FieldType<Date, string>;
|
|
263
|
-
isOptional: true;
|
|
264
|
-
};
|
|
265
|
-
usageLastErrorCode: {
|
|
266
|
-
type: _lssm_lib_schema396.FieldType<string, string>;
|
|
267
|
-
isOptional: true;
|
|
268
|
-
};
|
|
269
|
-
createdAt: {
|
|
270
|
-
type: _lssm_lib_schema396.FieldType<Date, string>;
|
|
271
|
-
isOptional: true;
|
|
272
|
-
};
|
|
273
|
-
updatedAt: {
|
|
274
|
-
type: _lssm_lib_schema396.FieldType<Date, string>;
|
|
275
|
-
isOptional: true;
|
|
276
|
-
};
|
|
277
|
-
}>, undefined>;
|
|
278
|
-
declare const DeleteIntegrationConnection: OperationSpec<SchemaModel<{
|
|
279
|
-
connectionId: {
|
|
280
|
-
type: _lssm_lib_schema396.FieldType<string, string>;
|
|
281
|
-
isOptional: false;
|
|
282
|
-
};
|
|
283
|
-
}>, SchemaModel<{
|
|
284
|
-
success: {
|
|
285
|
-
type: _lssm_lib_schema396.FieldType<boolean, boolean>;
|
|
286
|
-
isOptional: false;
|
|
287
|
-
};
|
|
288
|
-
}>, undefined>;
|
|
289
|
-
declare const ListIntegrationConnections: OperationSpec<SchemaModel<{
|
|
290
|
-
tenantId: {
|
|
291
|
-
type: _lssm_lib_schema396.FieldType<string, string>;
|
|
292
|
-
isOptional: false;
|
|
293
|
-
};
|
|
294
|
-
category: {
|
|
295
|
-
type: _lssm_lib_schema396.FieldType<string, string>;
|
|
296
|
-
isOptional: true;
|
|
297
|
-
};
|
|
298
|
-
status: {
|
|
299
|
-
type: _lssm_lib_schema396.FieldType<string, string>;
|
|
300
|
-
isOptional: true;
|
|
301
|
-
};
|
|
302
|
-
}>, SchemaModel<{
|
|
303
|
-
connections: {
|
|
304
|
-
type: SchemaModel<{
|
|
305
|
-
id: {
|
|
306
|
-
type: _lssm_lib_schema396.FieldType<string, string>;
|
|
307
|
-
isOptional: false;
|
|
308
|
-
};
|
|
309
|
-
tenantId: {
|
|
310
|
-
type: _lssm_lib_schema396.FieldType<string, string>;
|
|
311
|
-
isOptional: false;
|
|
312
|
-
};
|
|
313
|
-
integrationKey: {
|
|
314
|
-
type: _lssm_lib_schema396.FieldType<string, string>;
|
|
315
|
-
isOptional: false;
|
|
316
|
-
};
|
|
317
|
-
integrationVersion: {
|
|
318
|
-
type: _lssm_lib_schema396.FieldType<number, number>;
|
|
319
|
-
isOptional: false;
|
|
320
|
-
};
|
|
321
|
-
label: {
|
|
322
|
-
type: _lssm_lib_schema396.FieldType<string, string>;
|
|
323
|
-
isOptional: false;
|
|
324
|
-
};
|
|
325
|
-
ownershipMode: {
|
|
326
|
-
type: _lssm_lib_schema396.FieldType<string, string>;
|
|
327
|
-
isOptional: false;
|
|
328
|
-
};
|
|
329
|
-
externalAccountId: {
|
|
330
|
-
type: _lssm_lib_schema396.FieldType<string, string>;
|
|
331
|
-
isOptional: true;
|
|
332
|
-
};
|
|
333
|
-
secretProvider: {
|
|
334
|
-
type: _lssm_lib_schema396.FieldType<string, string>;
|
|
335
|
-
isOptional: false;
|
|
336
|
-
};
|
|
337
|
-
secretRef: {
|
|
338
|
-
type: _lssm_lib_schema396.FieldType<string, string>;
|
|
339
|
-
isOptional: false;
|
|
340
|
-
};
|
|
341
|
-
status: {
|
|
342
|
-
type: _lssm_lib_schema396.FieldType<string, string>;
|
|
343
|
-
isOptional: false;
|
|
344
|
-
};
|
|
345
|
-
environment: {
|
|
346
|
-
type: _lssm_lib_schema396.FieldType<string, string>;
|
|
347
|
-
isOptional: true;
|
|
348
|
-
};
|
|
349
|
-
healthStatus: {
|
|
350
|
-
type: _lssm_lib_schema396.FieldType<string, string>;
|
|
351
|
-
isOptional: true;
|
|
352
|
-
};
|
|
353
|
-
healthCheckedAt: {
|
|
354
|
-
type: _lssm_lib_schema396.FieldType<Date, string>;
|
|
355
|
-
isOptional: true;
|
|
356
|
-
};
|
|
357
|
-
healthLatencyMs: {
|
|
358
|
-
type: _lssm_lib_schema396.FieldType<number, number>;
|
|
359
|
-
isOptional: true;
|
|
360
|
-
};
|
|
361
|
-
healthErrorCode: {
|
|
362
|
-
type: _lssm_lib_schema396.FieldType<string, string>;
|
|
363
|
-
isOptional: true;
|
|
364
|
-
};
|
|
365
|
-
healthErrorMessage: {
|
|
366
|
-
type: _lssm_lib_schema396.FieldType<string, string>;
|
|
367
|
-
isOptional: true;
|
|
368
|
-
};
|
|
369
|
-
usageRequestCount: {
|
|
370
|
-
type: _lssm_lib_schema396.FieldType<number, number>;
|
|
371
|
-
isOptional: true;
|
|
372
|
-
};
|
|
373
|
-
usageSuccessCount: {
|
|
374
|
-
type: _lssm_lib_schema396.FieldType<number, number>;
|
|
375
|
-
isOptional: true;
|
|
376
|
-
};
|
|
377
|
-
usageErrorCount: {
|
|
378
|
-
type: _lssm_lib_schema396.FieldType<number, number>;
|
|
379
|
-
isOptional: true;
|
|
380
|
-
};
|
|
381
|
-
usageLastUsedAt: {
|
|
382
|
-
type: _lssm_lib_schema396.FieldType<Date, string>;
|
|
383
|
-
isOptional: true;
|
|
384
|
-
};
|
|
385
|
-
usageLastErrorAt: {
|
|
386
|
-
type: _lssm_lib_schema396.FieldType<Date, string>;
|
|
387
|
-
isOptional: true;
|
|
388
|
-
};
|
|
389
|
-
usageLastErrorCode: {
|
|
390
|
-
type: _lssm_lib_schema396.FieldType<string, string>;
|
|
391
|
-
isOptional: true;
|
|
392
|
-
};
|
|
393
|
-
createdAt: {
|
|
394
|
-
type: _lssm_lib_schema396.FieldType<Date, string>;
|
|
395
|
-
isOptional: true;
|
|
396
|
-
};
|
|
397
|
-
updatedAt: {
|
|
398
|
-
type: _lssm_lib_schema396.FieldType<Date, string>;
|
|
399
|
-
isOptional: true;
|
|
400
|
-
};
|
|
401
|
-
}>;
|
|
402
|
-
isOptional: false;
|
|
403
|
-
isArray: true;
|
|
404
|
-
};
|
|
405
|
-
}>, undefined>;
|
|
406
|
-
declare const TestIntegrationConnection: OperationSpec<SchemaModel<{
|
|
407
|
-
connectionId: {
|
|
408
|
-
type: _lssm_lib_schema396.FieldType<string, string>;
|
|
409
|
-
isOptional: false;
|
|
410
|
-
};
|
|
411
|
-
}>, SchemaModel<{
|
|
412
|
-
success: {
|
|
413
|
-
type: _lssm_lib_schema396.FieldType<boolean, boolean>;
|
|
414
|
-
isOptional: false;
|
|
415
|
-
};
|
|
416
|
-
status: {
|
|
417
|
-
type: _lssm_lib_schema396.FieldType<string, string>;
|
|
418
|
-
isOptional: true;
|
|
419
|
-
};
|
|
420
|
-
latencyMs: {
|
|
421
|
-
type: _lssm_lib_schema396.FieldType<number, number>;
|
|
422
|
-
isOptional: true;
|
|
423
|
-
};
|
|
424
|
-
error: {
|
|
425
|
-
type: _lssm_lib_schema396.FieldType<string, string>;
|
|
426
|
-
isOptional: true;
|
|
427
|
-
};
|
|
428
|
-
errorCode: {
|
|
429
|
-
type: _lssm_lib_schema396.FieldType<string, string>;
|
|
430
|
-
isOptional: true;
|
|
431
|
-
};
|
|
432
|
-
}>, undefined>;
|
|
433
|
-
declare const integrationContracts: Record<string, AnyOperationSpec>;
|
|
434
|
-
declare function registerIntegrationContracts(registry: OperationSpecRegistry): OperationSpecRegistry;
|
|
435
|
-
//#endregion
|
|
436
|
-
export { CreateIntegrationConnection, DeleteIntegrationConnection, ListIntegrationConnections, TestIntegrationConnection, UpdateIntegrationConnection, integrationContracts, registerIntegrationContracts };
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import { registerDocBlocks } from "../../docs/registry.js";
|
|
2
|
-
import "../../registry.js";
|
|
3
|
-
|
|
4
|
-
//#region src/openbanking/docs/openbanking.docblock.ts
|
|
5
|
-
const tech_contracts_openbanking_DocBlocks = [{
|
|
6
|
-
id: "docs.tech.contracts.openbanking",
|
|
7
|
-
title: "Open Banking (Powens) Overview",
|
|
8
|
-
summary: "The Pocket Family Office vertical now supports read-only open banking capabilities powered by Powens. This doc summarises the contract surfaces, canonical data models, workflows, telemetry, and guardrails introduced to make Powens a first-class integration.",
|
|
9
|
-
kind: "reference",
|
|
10
|
-
visibility: "public",
|
|
11
|
-
route: "/docs/tech/contracts/openbanking",
|
|
12
|
-
tags: [
|
|
13
|
-
"tech",
|
|
14
|
-
"contracts",
|
|
15
|
-
"openbanking"
|
|
16
|
-
],
|
|
17
|
-
body: "# Open Banking (Powens) Overview\n\nThe Pocket Family Office vertical now supports read-only open banking capabilities powered by Powens. This doc summarises the contract surfaces, canonical data models, workflows, telemetry, and guardrails introduced to make Powens a first-class integration.\n\n## Integration Spec\n\nPowens is registered under `openbanking.powens` with category `open-banking` and currently supports the BYOK ownership mode. The spec exposes three read-only capabilities:\n\n- `openbanking.accounts.read`\n- `openbanking.transactions.read`\n- `openbanking.balances.read`\n\nConfiguration and secrets are separated:\n\n| Config Field | Description |\n| --- | --- |\n| `environment` | Powens environment (`sandbox` \\| `production`) |\n| `baseUrl?` | Optional API base URL override |\n| `region?` | Optional Powens region identifier |\n| `pollingIntervalMs?` | Optional custom sync cadence |\n\n| Secret Field | Description |\n| --- | --- |\n| `clientId` | Powens OAuth client identifier |\n| `clientSecret` | Powens OAuth client secret |\n| `apiKey?` | Optional supplemental Powens API key |\n| `webhookSecret?` | Optional webhook signing secret |\n\n## Canonical Data Models\n\nCanonical schemas live in `@lssm/lib.contracts/integrations/openbanking/models`:\n\n- `BankAccountRecord` – account metadata (institution, IBAN/BIC, masked numbers, balances, sync timestamps)\n- `BankTransactionRecord` – transaction ledger (amounts, categories, counterparty, status)\n- `AccountBalanceRecord` – balance snapshots per account and balance type\n\nThese schemas power the vertical contracts and workflows, ensuring downstream features never use raw Powens payloads directly.\n\n## Provider Implementation\n\n`PowensOpenBankingProvider` wraps `PowensClient` which handles OAuth token management, request retries, and error mapping. The provider maps Powens payloads to the canonical interfaces exported from `integrations/providers/openbanking`.\n\nFactory support lives in `IntegrationProviderFactory.createOpenBankingProvider`, which validates configuration, loads BYOK secrets, and instantiates the provider.\n\n## Contracts\n\nCommand/query contracts exist under `integrations/openbanking/contracts`:\n\n- `openbanking.accounts.sync` & `openbanking.accounts.list`\n- `openbanking.transactions.sync` & `openbanking.transactions.list`\n- `openbanking.balances.refresh` & `openbanking.balances.get`\n\nThe Pocket Family Office bundle also exposes `pfo.openbanking.generate-overview`, which aggregates balances and transactions into a derived knowledge document.\n\n## Workflows\n\nNew workflow specs (all requiring the `primaryOpenBanking` slot) orchestrate the sync flows:\n\n- `pfo.workflow.sync-openbanking-accounts`\n- `pfo.workflow.sync-openbanking-transactions`\n- `pfo.workflow.refresh-openbanking-balances`\n- `pfo.workflow.generate-openbanking-overview`\n\nEach workflow runs against the Powens provider, persists canonical records, and emits telemetry.\n\n## Knowledge & LLM Exposure\n\nRaw Powens payloads are never stored in knowledge spaces. Instead, `knowledge.financial-overview` captures derived summaries (cashflow, category breakdowns, balance trends) produced by `pfo.openbanking.generate-overview`. The space is `operational` category with 180-day retention and automation write access.\n\nWhen exposing data to LLMs or analytics:\n\n- Use derived summaries only.\n- Redact PII fields using `redactOpenBankingTelemetryPayload`.\n- Never emit IBANs, unmasked account numbers, or counterparty detail in telemetry/logs.\n\n## Telemetry\n\nTelemetry constants live in `integrations/openbanking/telemetry`. Key events:\n\n- `openbanking.accounts.synced`\n- `openbanking.transactions.synced`\n- `openbanking.balances.refreshed`\n- `openbanking.overview.generated`\n\nAll events require tenant/app/blueprint/config metadata, and sensitive properties are flagged to avoid accidental leakage.\n\n## Guardrails\n\n`ensurePrimaryOpenBankingIntegration` verifies `primaryOpenBanking` is bound and healthy before workflows proceed. Runtime pre-flight checks already block workflows when the connection is disconnected or in error status.\n\n## Blueprint & Tenant Defaults\n\n`pocketFamilyOfficeBlueprint` now includes:\n\n- `primaryOpenBanking` slot (required, BYOK)\n- `openbanking.*.read` capabilities enabled by default\n- Workflow bindings for the new sync flows\n\nSample tenant bindings (`tenant.sample.ts`) reference `conn-powens-primary` and bind the new knowledge space.\n\n---\n\nFollow this doc when extending open banking support (e.g., adding payment initiation, additional providers, or expanded analytics) to keep the integration consistent and audited.\n\n\n\n\n\n"
|
|
18
|
-
}];
|
|
19
|
-
registerDocBlocks(tech_contracts_openbanking_DocBlocks);
|
|
20
|
-
|
|
21
|
-
//#endregion
|
|
22
|
-
export { tech_contracts_openbanking_DocBlocks };
|