@vinkius-core/mcp-fusion 2.9.0 → 2.12.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cli/fusion.d.ts +3 -0
- package/dist/cli/fusion.d.ts.map +1 -1
- package/dist/cli/fusion.js +125 -3
- package/dist/cli/fusion.js.map +1 -1
- package/dist/cli/templates/config.js +3 -3
- package/dist/cli/templates/config.js.map +1 -1
- package/dist/cli/templates/constants.d.ts +1 -1
- package/dist/cli/templates/constants.d.ts.map +1 -1
- package/dist/cli/templates/constants.js +1 -1
- package/dist/cli/templates/constants.js.map +1 -1
- package/dist/cli/templates/core.js +5 -5
- package/dist/cli/templates/middleware.d.ts +1 -1
- package/dist/cli/templates/middleware.d.ts.map +1 -1
- package/dist/cli/templates/middleware.js +16 -13
- package/dist/cli/templates/middleware.js.map +1 -1
- package/dist/cli/templates/readme.d.ts.map +1 -1
- package/dist/cli/templates/readme.js +14 -18
- package/dist/cli/templates/readme.js.map +1 -1
- package/dist/cli/templates/tools.d.ts +4 -0
- package/dist/cli/templates/tools.d.ts.map +1 -1
- package/dist/cli/templates/tools.js +26 -29
- package/dist/cli/templates/tools.js.map +1 -1
- package/dist/cli/templates/vectors/database.d.ts.map +1 -1
- package/dist/cli/templates/vectors/database.js +14 -19
- package/dist/cli/templates/vectors/database.js.map +1 -1
- package/dist/cli/templates/vectors/oauth.d.ts.map +1 -1
- package/dist/cli/templates/vectors/oauth.js +4 -5
- package/dist/cli/templates/vectors/oauth.js.map +1 -1
- package/dist/cli/templates/vectors/openapi.js +2 -2
- package/dist/cli/templates/vectors/workflow.js +1 -1
- package/dist/cli/templates/vectors/workflow.js.map +1 -1
- package/dist/client/FusionClient.d.ts +55 -0
- package/dist/client/FusionClient.d.ts.map +1 -1
- package/dist/client/FusionClient.js +30 -0
- package/dist/client/FusionClient.js.map +1 -1
- package/dist/client/index.d.ts +1 -1
- package/dist/client/index.d.ts.map +1 -1
- package/dist/client/index.js.map +1 -1
- package/dist/core/builder/ActionGroupBuilder.d.ts +86 -46
- package/dist/core/builder/ActionGroupBuilder.d.ts.map +1 -1
- package/dist/core/builder/ActionGroupBuilder.js +68 -26
- package/dist/core/builder/ActionGroupBuilder.js.map +1 -1
- package/dist/core/builder/ErrorBuilder.d.ts +59 -0
- package/dist/core/builder/ErrorBuilder.d.ts.map +1 -0
- package/dist/core/builder/ErrorBuilder.js +99 -0
- package/dist/core/builder/ErrorBuilder.js.map +1 -0
- package/dist/core/builder/FluentRouter.d.ts +91 -0
- package/dist/core/builder/FluentRouter.d.ts.map +1 -0
- package/dist/core/builder/FluentRouter.js +121 -0
- package/dist/core/builder/FluentRouter.js.map +1 -0
- package/dist/core/builder/FluentSchemaHelpers.d.ts +237 -0
- package/dist/core/builder/FluentSchemaHelpers.d.ts.map +1 -0
- package/dist/core/builder/FluentSchemaHelpers.js +227 -0
- package/dist/core/builder/FluentSchemaHelpers.js.map +1 -0
- package/dist/core/builder/FluentToolBuilder.d.ts +347 -0
- package/dist/core/builder/FluentToolBuilder.d.ts.map +1 -0
- package/dist/core/builder/FluentToolBuilder.js +525 -0
- package/dist/core/builder/FluentToolBuilder.js.map +1 -0
- package/dist/core/builder/GroupedToolBuilder.d.ts +91 -1
- package/dist/core/builder/GroupedToolBuilder.d.ts.map +1 -1
- package/dist/core/builder/GroupedToolBuilder.js +122 -4
- package/dist/core/builder/GroupedToolBuilder.js.map +1 -1
- package/dist/core/builder/ToolDefinitionCompiler.d.ts +1 -0
- package/dist/core/builder/ToolDefinitionCompiler.d.ts.map +1 -1
- package/dist/core/builder/ToolDefinitionCompiler.js +1 -1
- package/dist/core/builder/ToolDefinitionCompiler.js.map +1 -1
- package/dist/core/builder/index.d.ts +4 -0
- package/dist/core/builder/index.d.ts.map +1 -1
- package/dist/core/builder/index.js +7 -0
- package/dist/core/builder/index.js.map +1 -1
- package/dist/core/execution/EgressGuard.js +1 -1
- package/dist/core/execution/EgressGuard.js.map +1 -1
- package/dist/core/execution/ExecutionPipeline.d.ts +8 -2
- package/dist/core/execution/ExecutionPipeline.d.ts.map +1 -1
- package/dist/core/execution/ExecutionPipeline.js +18 -9
- package/dist/core/execution/ExecutionPipeline.js.map +1 -1
- package/dist/core/execution/PipelineHooks.d.ts +0 -6
- package/dist/core/execution/PipelineHooks.d.ts.map +1 -1
- package/dist/core/execution/PipelineHooks.js +7 -3
- package/dist/core/execution/PipelineHooks.js.map +1 -1
- package/dist/core/index.d.ts +5 -7
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +2 -4
- package/dist/core/index.js.map +1 -1
- package/dist/core/initFusion.d.ts +119 -87
- package/dist/core/initFusion.d.ts.map +1 -1
- package/dist/core/initFusion.js +56 -66
- package/dist/core/initFusion.js.map +1 -1
- package/dist/core/registry/ToolRegistry.d.ts +1 -1
- package/dist/core/registry/ToolRegistry.d.ts.map +1 -1
- package/dist/core/registry/ToolRegistry.js +1 -1
- package/dist/core/registry/ToolRegistry.js.map +1 -1
- package/dist/core/schema/SchemaGenerator.d.ts +1 -1
- package/dist/core/schema/SchemaGenerator.d.ts.map +1 -1
- package/dist/core/schema/SchemaGenerator.js +38 -1
- package/dist/core/schema/SchemaGenerator.js.map +1 -1
- package/dist/core/types.d.ts +19 -0
- package/dist/core/types.d.ts.map +1 -1
- package/dist/exposition/ExpositionCompiler.d.ts.map +1 -1
- package/dist/exposition/ExpositionCompiler.js +25 -2
- package/dist/exposition/ExpositionCompiler.js.map +1 -1
- package/dist/index.d.ts +3 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -2
- package/dist/index.js.map +1 -1
- package/dist/introspection/BehaviorDigest.d.ts +2 -2
- package/dist/introspection/BehaviorDigest.d.ts.map +1 -1
- package/dist/introspection/BehaviorDigest.js +38 -36
- package/dist/introspection/BehaviorDigest.js.map +1 -1
- package/dist/introspection/CapabilityLockfile.d.ts +2 -2
- package/dist/introspection/CapabilityLockfile.d.ts.map +1 -1
- package/dist/introspection/CapabilityLockfile.js +9 -9
- package/dist/introspection/CapabilityLockfile.js.map +1 -1
- package/dist/introspection/CryptoAttestation.d.ts.map +1 -1
- package/dist/introspection/CryptoAttestation.js +27 -36
- package/dist/introspection/CryptoAttestation.js.map +1 -1
- package/dist/introspection/ToolContract.d.ts +2 -2
- package/dist/introspection/ToolContract.d.ts.map +1 -1
- package/dist/introspection/ToolContract.js +9 -9
- package/dist/introspection/ToolContract.js.map +1 -1
- package/dist/introspection/canonicalize.d.ts +16 -1
- package/dist/introspection/canonicalize.d.ts.map +1 -1
- package/dist/introspection/canonicalize.js +24 -3
- package/dist/introspection/canonicalize.js.map +1 -1
- package/dist/presenter/PostProcessor.d.ts +4 -2
- package/dist/presenter/PostProcessor.d.ts.map +1 -1
- package/dist/presenter/PostProcessor.js +10 -10
- package/dist/presenter/PostProcessor.js.map +1 -1
- package/dist/presenter/Presenter.d.ts +112 -6
- package/dist/presenter/Presenter.d.ts.map +1 -1
- package/dist/presenter/Presenter.js +134 -40
- package/dist/presenter/Presenter.js.map +1 -1
- package/dist/presenter/SelectUtils.d.ts +78 -0
- package/dist/presenter/SelectUtils.d.ts.map +1 -0
- package/dist/presenter/SelectUtils.js +141 -0
- package/dist/presenter/SelectUtils.js.map +1 -0
- package/dist/presenter/index.d.ts +3 -0
- package/dist/presenter/index.d.ts.map +1 -1
- package/dist/presenter/index.js +6 -0
- package/dist/presenter/index.js.map +1 -1
- package/dist/presenter/suggest.d.ts +39 -0
- package/dist/presenter/suggest.d.ts.map +1 -0
- package/dist/presenter/suggest.js +41 -0
- package/dist/presenter/suggest.js.map +1 -0
- package/dist/presenter/typeHelpers.d.ts +147 -0
- package/dist/presenter/typeHelpers.d.ts.map +1 -0
- package/dist/presenter/typeHelpers.js +152 -0
- package/dist/presenter/typeHelpers.js.map +1 -0
- package/dist/prompt/FluentPromptBuilder.d.ts +155 -0
- package/dist/prompt/FluentPromptBuilder.d.ts.map +1 -0
- package/dist/prompt/FluentPromptBuilder.js +193 -0
- package/dist/prompt/FluentPromptBuilder.js.map +1 -0
- package/dist/prompt/index.d.ts +1 -0
- package/dist/prompt/index.d.ts.map +1 -1
- package/dist/prompt/index.js +1 -0
- package/dist/prompt/index.js.map +1 -1
- package/dist/server/DevServer.js +8 -8
- package/dist/server/DevServer.js.map +1 -1
- package/dist/server/ServerAttachment.d.ts +1 -1
- package/dist/server/ServerAttachment.d.ts.map +1 -1
- package/dist/server/ServerAttachment.js +57 -4
- package/dist/server/ServerAttachment.js.map +1 -1
- package/dist/state-sync/ResponseDecorator.d.ts +1 -1
- package/dist/state-sync/StateSyncBuilder.d.ts +75 -0
- package/dist/state-sync/StateSyncBuilder.d.ts.map +1 -0
- package/dist/state-sync/StateSyncBuilder.js +123 -0
- package/dist/state-sync/StateSyncBuilder.js.map +1 -0
- package/dist/state-sync/index.d.ts +1 -0
- package/dist/state-sync/index.d.ts.map +1 -1
- package/dist/state-sync/index.js +1 -0
- package/dist/state-sync/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CapabilityLockfile.js","sourceRoot":"","sources":["../../src/introspection/CapabilityLockfile.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"CapabilityLockfile.js","sourceRoot":"","sources":["../../src/introspection/CapabilityLockfile.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CryptoAttestation.d.ts","sourceRoot":"","sources":["../../src/introspection/CryptoAttestation.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"CryptoAttestation.d.ts","sourceRoot":"","sources":["../../src/introspection/CryptoAttestation.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,31 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
*
|
|
6
|
-
* Provides cryptographic attestation and capability pinning
|
|
7
|
-
* for MCP Fusion tool contracts. This module enables:
|
|
8
|
-
*
|
|
9
|
-
* 1. **Digital Signing**: Sign a `ToolContract` or `ServerDigest`
|
|
10
|
-
* using HMAC-SHA256 (built-in) or pluggable external signers
|
|
11
|
-
* (Sigstore, AWS KMS, Azure Key Vault).
|
|
12
|
-
*
|
|
13
|
-
* 2. **Runtime Verification**: At server startup, re-compute the
|
|
14
|
-
* behavioral digest and compare it against the expected
|
|
15
|
-
* (signed) digest. If they differ, fail fast with a clear
|
|
16
|
-
* attestation error.
|
|
17
|
-
*
|
|
18
|
-
* 3. **Capability Pinning**: Expose a `fusionTrust` capability
|
|
19
|
-
* in the MCP `server.capabilities` that clients can inspect
|
|
20
|
-
* to verify the server's behavioral identity.
|
|
21
|
-
*
|
|
22
|
-
* **Zero-overhead principle**: When attestation is not configured,
|
|
23
|
-
* no cryptographic operations execute — the attach flow is
|
|
24
|
-
* identical to the default path.
|
|
25
|
-
*
|
|
26
|
-
* @module
|
|
27
|
-
*/
|
|
28
|
-
import { createHmac, timingSafeEqual } from 'node:crypto';
|
|
1
|
+
// Node 18 does not expose `crypto` as a global — resolve via node:crypto.webcrypto
|
|
2
|
+
const subtle = globalThis.crypto?.subtle
|
|
3
|
+
// eslint-disable-next-line @typescript-eslint/no-require-imports
|
|
4
|
+
?? (await import('node:crypto')).webcrypto.subtle;
|
|
29
5
|
// ============================================================================
|
|
30
6
|
// HMAC Signer (Built-in)
|
|
31
7
|
// ============================================================================
|
|
@@ -42,7 +18,7 @@ export function createHmacSigner(secret) {
|
|
|
42
18
|
return hmacSign(digest, secret);
|
|
43
19
|
},
|
|
44
20
|
async verify(digest, signature) {
|
|
45
|
-
const expected = hmacSign(digest, secret);
|
|
21
|
+
const expected = await hmacSign(digest, secret);
|
|
46
22
|
return timingSafeCompare(expected, signature);
|
|
47
23
|
},
|
|
48
24
|
};
|
|
@@ -174,21 +150,36 @@ function resolveSigner(config) {
|
|
|
174
150
|
return config.signer;
|
|
175
151
|
}
|
|
176
152
|
/**
|
|
177
|
-
* HMAC-SHA256 sign.
|
|
153
|
+
* HMAC-SHA256 sign using Web Crypto API.
|
|
178
154
|
* @internal
|
|
179
155
|
*/
|
|
180
|
-
function hmacSign(data, secret) {
|
|
181
|
-
|
|
156
|
+
async function hmacSign(data, secret) {
|
|
157
|
+
const encoder = new TextEncoder();
|
|
158
|
+
const keyData = encoder.encode(secret);
|
|
159
|
+
const msgData = encoder.encode(data);
|
|
160
|
+
const key = await subtle.importKey('raw', keyData, { name: 'HMAC', hash: 'SHA-256' }, false, ['sign']);
|
|
161
|
+
const signature = await subtle.sign('HMAC', key, msgData);
|
|
162
|
+
return Array.from(new Uint8Array(signature))
|
|
163
|
+
.map(b => b.toString(16).padStart(2, '0'))
|
|
164
|
+
.join('');
|
|
182
165
|
}
|
|
183
166
|
/**
|
|
184
|
-
*
|
|
167
|
+
* Constant-time string comparison to prevent timing attacks.
|
|
168
|
+
*
|
|
169
|
+
* Compares byte-by-byte using XOR accumulation — the comparison
|
|
170
|
+
* always processes all bytes regardless of where differences occur.
|
|
185
171
|
* @internal
|
|
186
172
|
*/
|
|
187
173
|
function timingSafeCompare(a, b) {
|
|
188
174
|
if (a.length !== b.length)
|
|
189
175
|
return false;
|
|
190
|
-
const
|
|
191
|
-
const
|
|
192
|
-
|
|
176
|
+
const encoder = new TextEncoder();
|
|
177
|
+
const bufA = encoder.encode(a);
|
|
178
|
+
const bufB = encoder.encode(b);
|
|
179
|
+
let diff = 0;
|
|
180
|
+
for (let i = 0; i < bufA.length; i++) {
|
|
181
|
+
diff |= bufA[i] ^ bufB[i];
|
|
182
|
+
}
|
|
183
|
+
return diff === 0;
|
|
193
184
|
}
|
|
194
185
|
//# sourceMappingURL=CryptoAttestation.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CryptoAttestation.js","sourceRoot":"","sources":["../../src/introspection/CryptoAttestation.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"CryptoAttestation.js","sourceRoot":"","sources":["../../src/introspection/CryptoAttestation.ts"],"names":[],"mappings":"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"}
|
|
@@ -149,13 +149,13 @@ export interface HandlerEntitlements {
|
|
|
149
149
|
* @param builder - A registered tool builder
|
|
150
150
|
* @returns A fully materialized `ToolContract`
|
|
151
151
|
*/
|
|
152
|
-
export declare function materializeContract<TContext>(builder: ToolBuilder<TContext>): ToolContract
|
|
152
|
+
export declare function materializeContract<TContext>(builder: ToolBuilder<TContext>): Promise<ToolContract>;
|
|
153
153
|
/**
|
|
154
154
|
* Compile contracts for all tools in a registry.
|
|
155
155
|
*
|
|
156
156
|
* @param builders - Iterable of all registered tool builders
|
|
157
157
|
* @returns Record mapping tool names to their materialized contracts
|
|
158
158
|
*/
|
|
159
|
-
export declare function compileContracts<TContext>(builders: Iterable<ToolBuilder<TContext>>): Record<string, ToolContract
|
|
159
|
+
export declare function compileContracts<TContext>(builders: Iterable<ToolBuilder<TContext>>): Promise<Record<string, ToolContract>>;
|
|
160
160
|
export { sha256, canonicalize } from './canonicalize.js';
|
|
161
161
|
//# sourceMappingURL=ToolContract.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ToolContract.d.ts","sourceRoot":"","sources":["../../src/introspection/ToolContract.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"ToolContract.d.ts","sourceRoot":"","sources":["../../src/introspection/ToolContract.ts"],"names":[],"mappings":"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"}
|
|
@@ -36,7 +36,7 @@ import { sha256, canonicalize } from './canonicalize.js';
|
|
|
36
36
|
* @param builder - A registered tool builder
|
|
37
37
|
* @returns A fully materialized `ToolContract`
|
|
38
38
|
*/
|
|
39
|
-
export function materializeContract(builder) {
|
|
39
|
+
export async function materializeContract(builder) {
|
|
40
40
|
const toolDef = builder.buildToolDefinition();
|
|
41
41
|
const metadata = builder.getActionMetadata();
|
|
42
42
|
// Surface
|
|
@@ -49,7 +49,7 @@ export function materializeContract(builder) {
|
|
|
49
49
|
readOnly: action.readOnly,
|
|
50
50
|
requiredFields: action.requiredFields,
|
|
51
51
|
presenterName: action.presenterName,
|
|
52
|
-
inputSchemaDigest: sha256(JSON.stringify(action.requiredFields)),
|
|
52
|
+
inputSchemaDigest: await sha256(JSON.stringify(action.requiredFields)),
|
|
53
53
|
hasMiddleware: action.hasMiddleware,
|
|
54
54
|
};
|
|
55
55
|
}
|
|
@@ -58,10 +58,10 @@ export function materializeContract(builder) {
|
|
|
58
58
|
description: toolDef.description,
|
|
59
59
|
tags: builder.getTags(),
|
|
60
60
|
actions,
|
|
61
|
-
inputSchemaDigest: sha256(canonicalize(toolDef.inputSchema)),
|
|
61
|
+
inputSchemaDigest: await sha256(canonicalize(toolDef.inputSchema)),
|
|
62
62
|
};
|
|
63
63
|
// Behavior — extract from action metadata (Presenter introspection accessors)
|
|
64
|
-
const behavior = materializeBehavior(metadata, builder);
|
|
64
|
+
const behavior = await materializeBehavior(metadata, builder);
|
|
65
65
|
// Token Economics
|
|
66
66
|
const tokenEconomics = computeTokenEconomics(metadata, behavior);
|
|
67
67
|
// Entitlements — placeholder (real AST analysis in EntitlementScanner)
|
|
@@ -79,7 +79,7 @@ export function materializeContract(builder) {
|
|
|
79
79
|
* Materialize the behavioral contract from action metadata.
|
|
80
80
|
* @internal
|
|
81
81
|
*/
|
|
82
|
-
function materializeBehavior(metadata, builder) {
|
|
82
|
+
async function materializeBehavior(metadata, builder) {
|
|
83
83
|
// Collect Presenter data from the first action that declares one
|
|
84
84
|
let egressSchemaDigest = null;
|
|
85
85
|
let systemRulesFingerprint = 'none';
|
|
@@ -99,10 +99,10 @@ function materializeBehavior(metadata, builder) {
|
|
|
99
99
|
}
|
|
100
100
|
if (presenterSchemaKeys.size > 0) {
|
|
101
101
|
const sortedKeys = [...presenterSchemaKeys].sort();
|
|
102
|
-
egressSchemaDigest = sha256(sortedKeys.join(','));
|
|
102
|
+
egressSchemaDigest = await sha256(sortedKeys.join(','));
|
|
103
103
|
}
|
|
104
104
|
if (systemRulesFingerprint !== 'dynamic' && presenterSchemaKeys.size > 0) {
|
|
105
|
-
systemRulesFingerprint = 'static:' + sha256([...presenterSchemaKeys].sort().join(','));
|
|
105
|
+
systemRulesFingerprint = 'static:' + await sha256([...presenterSchemaKeys].sort().join(','));
|
|
106
106
|
}
|
|
107
107
|
// Middleware chain — extract names from builder
|
|
108
108
|
const middlewareChain = [];
|
|
@@ -166,10 +166,10 @@ function computeTokenEconomics(metadata, behavior) {
|
|
|
166
166
|
* @param builders - Iterable of all registered tool builders
|
|
167
167
|
* @returns Record mapping tool names to their materialized contracts
|
|
168
168
|
*/
|
|
169
|
-
export function compileContracts(builders) {
|
|
169
|
+
export async function compileContracts(builders) {
|
|
170
170
|
const contracts = {};
|
|
171
171
|
for (const builder of builders) {
|
|
172
|
-
const contract = materializeContract(builder);
|
|
172
|
+
const contract = await materializeContract(builder);
|
|
173
173
|
contracts[contract.surface.name] = contract;
|
|
174
174
|
}
|
|
175
175
|
return contracts;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ToolContract.js","sourceRoot":"","sources":["../../src/introspection/ToolContract.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,OAAO,EAAoB,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAkIzD,+EAA+E;AAC/E,kBAAkB;AAClB,+EAA+E;AAE/E;;;;;;;;;GASG;AACH,MAAM,UAAU,mBAAmB,
|
|
1
|
+
{"version":3,"file":"ToolContract.js","sourceRoot":"","sources":["../../src/introspection/ToolContract.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Canonical — Shared Cryptographic Primitives
|
|
3
|
+
*
|
|
4
|
+
* Deterministic JSON serialization and SHA-256 hashing
|
|
5
|
+
* used across governance modules. Single source of truth
|
|
6
|
+
* eliminates duplication and guarantees behavioral consistency.
|
|
7
|
+
*
|
|
8
|
+
* Uses Web Crypto API (globalThis.crypto.subtle) for runtime
|
|
9
|
+
* agnosticism — works on Node.js 20+, Cloudflare Workers, Deno, Bun.
|
|
10
|
+
*
|
|
11
|
+
* @module
|
|
12
|
+
* @internal
|
|
13
|
+
*/
|
|
1
14
|
/**
|
|
2
15
|
* SHA-256 hash of a string, returned as lowercase hex.
|
|
3
16
|
*
|
|
17
|
+
* Uses the Web Crypto API (crypto.subtle) for runtime agnosticism.
|
|
18
|
+
*
|
|
4
19
|
* @param input - The string to hash
|
|
5
20
|
* @returns 64-character hex digest
|
|
6
21
|
*/
|
|
7
|
-
export declare function sha256(input: string): string
|
|
22
|
+
export declare function sha256(input: string): Promise<string>;
|
|
8
23
|
/**
|
|
9
24
|
* Canonical JSON serialization with deterministic key ordering.
|
|
10
25
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"canonicalize.d.ts","sourceRoot":"","sources":["../../src/introspection/canonicalize.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"canonicalize.d.ts","sourceRoot":"","sources":["../../src/introspection/canonicalize.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAMH;;;;;;;GAOG;AACH,wBAAsB,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAY3D;AAgBD;;;;;;;;;;GAUG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,CAYjD"}
|
|
@@ -5,21 +5,42 @@
|
|
|
5
5
|
* used across governance modules. Single source of truth
|
|
6
6
|
* eliminates duplication and guarantees behavioral consistency.
|
|
7
7
|
*
|
|
8
|
+
* Uses Web Crypto API (globalThis.crypto.subtle) for runtime
|
|
9
|
+
* agnosticism — works on Node.js 20+, Cloudflare Workers, Deno, Bun.
|
|
10
|
+
*
|
|
8
11
|
* @module
|
|
9
12
|
* @internal
|
|
10
13
|
*/
|
|
11
|
-
import { createHash } from 'node:crypto';
|
|
12
14
|
// ============================================================================
|
|
13
15
|
// Hashing
|
|
14
16
|
// ============================================================================
|
|
15
17
|
/**
|
|
16
18
|
* SHA-256 hash of a string, returned as lowercase hex.
|
|
17
19
|
*
|
|
20
|
+
* Uses the Web Crypto API (crypto.subtle) for runtime agnosticism.
|
|
21
|
+
*
|
|
18
22
|
* @param input - The string to hash
|
|
19
23
|
* @returns 64-character hex digest
|
|
20
24
|
*/
|
|
21
|
-
export function sha256(input) {
|
|
22
|
-
|
|
25
|
+
export async function sha256(input) {
|
|
26
|
+
const data = new TextEncoder().encode(input);
|
|
27
|
+
// Web Crypto API (browsers, Cloudflare Workers, Deno, Bun, Node 20+)
|
|
28
|
+
if (typeof globalThis.crypto !== 'undefined' && globalThis.crypto.subtle) {
|
|
29
|
+
const hashBuffer = await globalThis.crypto.subtle.digest('SHA-256', data);
|
|
30
|
+
return hexFromBuffer(hashBuffer);
|
|
31
|
+
}
|
|
32
|
+
// Node.js fallback (test environments, older Node versions)
|
|
33
|
+
const { createHash } = await import('node:crypto');
|
|
34
|
+
return createHash('sha256').update(data).digest('hex');
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Convert an ArrayBuffer to lowercase hex string.
|
|
38
|
+
* @internal
|
|
39
|
+
*/
|
|
40
|
+
function hexFromBuffer(buffer) {
|
|
41
|
+
return Array.from(new Uint8Array(buffer))
|
|
42
|
+
.map(b => b.toString(16).padStart(2, '0'))
|
|
43
|
+
.join('');
|
|
23
44
|
}
|
|
24
45
|
// ============================================================================
|
|
25
46
|
// Serialization
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"canonicalize.js","sourceRoot":"","sources":["../../src/introspection/canonicalize.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"canonicalize.js","sourceRoot":"","sources":["../../src/introspection/canonicalize.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,+EAA+E;AAC/E,UAAU;AACV,+EAA+E;AAE/E;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,MAAM,CAAC,KAAa;IACtC,MAAM,IAAI,GAAG,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAE7C,qEAAqE;IACrE,IAAI,OAAO,UAAU,CAAC,MAAM,KAAK,WAAW,IAAI,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QACvE,MAAM,UAAU,GAAG,MAAM,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QAC1E,OAAO,aAAa,CAAC,UAAU,CAAC,CAAC;IACrC,CAAC;IAED,4DAA4D;IAC5D,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,CAAC;IACnD,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAC3D,CAAC;AAED;;;GAGG;AACH,SAAS,aAAa,CAAC,MAAmB;IACtC,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;SACpC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;SACzC,IAAI,CAAC,EAAE,CAAC,CAAC;AAClB,CAAC;AAED,+EAA+E;AAC/E,gBAAgB;AAChB,+EAA+E;AAE/E;;;;;;;;;;GAUG;AACH,MAAM,UAAU,YAAY,CAAC,GAAY;IACrC,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;QACvC,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACvE,OAAO,MAAM,CAAC,IAAI,CAAC,KAAgC,CAAC;iBAC/C,IAAI,EAAE;iBACN,MAAM,CAA0B,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBAC3C,MAAM,CAAC,CAAC,CAAC,GAAI,KAAiC,CAAC,CAAC,CAAC,CAAC;gBAClD,OAAO,MAAM,CAAC;YAClB,CAAC,EAAE,EAAE,CAAC,CAAC;QACf,CAAC;QACD,OAAO,KAAK,CAAC;IACjB,CAAC,CAAC,CAAC;AACP,CAAC"}
|
|
@@ -17,15 +17,17 @@ import { type Presenter } from './Presenter.js';
|
|
|
17
17
|
* 1. **ToolResponse** → use directly (backward compatibility)
|
|
18
18
|
* 2. **ResponseBuilder** → call `.build()` (auto-build)
|
|
19
19
|
* 3. **Raw data + Presenter** → pipe through `Presenter.make(data).build()`
|
|
20
|
-
* 4. **Raw data without Presenter** → wrap
|
|
20
|
+
* 4. **Raw data without Presenter** → wrap via canonical `success()` helper
|
|
21
21
|
*
|
|
22
22
|
* @param result - The handler's return value
|
|
23
23
|
* @param presenter - The action's Presenter (from `returns` field), if any
|
|
24
|
+
* @param ctx - Optional request context
|
|
25
|
+
* @param selectFields - Optional `_select` field names for context window optimization
|
|
24
26
|
* @returns A valid MCP ToolResponse
|
|
25
27
|
*
|
|
26
28
|
* @internal
|
|
27
29
|
*/
|
|
28
|
-
export declare function postProcessResult(result: unknown, presenter: Presenter<unknown> | undefined, ctx?: unknown): ToolResponse;
|
|
30
|
+
export declare function postProcessResult(result: unknown, presenter: Presenter<unknown> | undefined, ctx?: unknown, selectFields?: string[]): ToolResponse;
|
|
29
31
|
/**
|
|
30
32
|
* Check if a value is a valid MCP ToolResponse.
|
|
31
33
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PostProcessor.d.ts","sourceRoot":"","sources":["../../src/presenter/PostProcessor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,EAAE,KAAK,YAAY,
|
|
1
|
+
{"version":3,"file":"PostProcessor.d.ts","sourceRoot":"","sources":["../../src/presenter/PostProcessor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,EAAE,KAAK,YAAY,EAA8B,MAAM,qBAAqB,CAAC;AAEpF,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAEhD;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,iBAAiB,CAC7B,MAAM,EAAE,OAAO,EACf,SAAS,EAAE,SAAS,CAAC,OAAO,CAAC,GAAG,SAAS,EACzC,GAAG,CAAC,EAAE,OAAO,EACb,YAAY,CAAC,EAAE,MAAM,EAAE,GACxB,YAAY,CAsBd;AAID;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,YAAY,CAOpE"}
|
|
@@ -8,10 +8,9 @@
|
|
|
8
8
|
* @internal
|
|
9
9
|
* @module
|
|
10
10
|
*/
|
|
11
|
-
import {} from '../core/response.js';
|
|
11
|
+
import { success as successResponse } from '../core/response.js';
|
|
12
12
|
import { isResponseBuilder } from './ResponseBuilder.js';
|
|
13
13
|
import {} from './Presenter.js';
|
|
14
|
-
// ── Post-Processing ──────────────────────────────────────
|
|
15
14
|
/**
|
|
16
15
|
* Post-process a handler's return value through the MVA priority hierarchy.
|
|
17
16
|
*
|
|
@@ -19,15 +18,17 @@ import {} from './Presenter.js';
|
|
|
19
18
|
* 1. **ToolResponse** → use directly (backward compatibility)
|
|
20
19
|
* 2. **ResponseBuilder** → call `.build()` (auto-build)
|
|
21
20
|
* 3. **Raw data + Presenter** → pipe through `Presenter.make(data).build()`
|
|
22
|
-
* 4. **Raw data without Presenter** → wrap
|
|
21
|
+
* 4. **Raw data without Presenter** → wrap via canonical `success()` helper
|
|
23
22
|
*
|
|
24
23
|
* @param result - The handler's return value
|
|
25
24
|
* @param presenter - The action's Presenter (from `returns` field), if any
|
|
25
|
+
* @param ctx - Optional request context
|
|
26
|
+
* @param selectFields - Optional `_select` field names for context window optimization
|
|
26
27
|
* @returns A valid MCP ToolResponse
|
|
27
28
|
*
|
|
28
29
|
* @internal
|
|
29
30
|
*/
|
|
30
|
-
export function postProcessResult(result, presenter, ctx) {
|
|
31
|
+
export function postProcessResult(result, presenter, ctx, selectFields) {
|
|
31
32
|
// Priority 1: Already a ToolResponse (has content array)
|
|
32
33
|
if (isToolResponse(result)) {
|
|
33
34
|
return result;
|
|
@@ -38,13 +39,12 @@ export function postProcessResult(result, presenter, ctx) {
|
|
|
38
39
|
}
|
|
39
40
|
// Priority 3: Raw data + Presenter → pipe through MVA
|
|
40
41
|
if (presenter) {
|
|
41
|
-
return presenter.make(result, ctx).build();
|
|
42
|
+
return presenter.make(result, ctx, selectFields).build();
|
|
42
43
|
}
|
|
43
|
-
// Priority 4: Raw data without Presenter →
|
|
44
|
-
|
|
45
|
-
?
|
|
46
|
-
:
|
|
47
|
-
return { content: [{ type: 'text', text }] };
|
|
44
|
+
// Priority 4: Raw data without Presenter → canonical success() helper
|
|
45
|
+
return successResponse(typeof result === 'string' || typeof result === 'object'
|
|
46
|
+
? result
|
|
47
|
+
: String(result));
|
|
48
48
|
}
|
|
49
49
|
// ── Type Guard ───────────────────────────────────────────
|
|
50
50
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PostProcessor.js","sourceRoot":"","sources":["../../src/presenter/PostProcessor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,EAAqB,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"PostProcessor.js","sourceRoot":"","sources":["../../src/presenter/PostProcessor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,EAAqB,OAAO,IAAI,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACpF,OAAO,EAAE,iBAAiB,EAAwB,MAAM,sBAAsB,CAAC;AAC/E,OAAO,EAAkB,MAAM,gBAAgB,CAAC;AAEhD;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,iBAAiB,CAC7B,MAAe,EACf,SAAyC,EACzC,GAAa,EACb,YAAuB;IAEvB,yDAAyD;IACzD,IAAI,cAAc,CAAC,MAAM,CAAC,EAAE,CAAC;QACzB,OAAO,MAAM,CAAC;IAClB,CAAC;IAED,4DAA4D;IAC5D,IAAI,iBAAiB,CAAC,MAAM,CAAC,EAAE,CAAC;QAC5B,OAAQ,MAA0B,CAAC,KAAK,EAAE,CAAC;IAC/C,CAAC;IAED,sDAAsD;IACtD,IAAI,SAAS,EAAE,CAAC;QACZ,OAAO,SAAS,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,YAAY,CAAC,CAAC,KAAK,EAAE,CAAC;IAC7D,CAAC;IAED,sEAAsE;IACtE,OAAO,eAAe,CAClB,OAAO,MAAM,KAAK,QAAQ,IAAI,OAAO,MAAM,KAAK,QAAQ;QACpD,CAAC,CAAE,MAA0B;QAC7B,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CACvB,CAAC;AACN,CAAC;AAED,4DAA4D;AAE5D;;;;;;;GAOG;AACH,MAAM,UAAU,cAAc,CAAC,KAAc;IACzC,OAAO,CACH,OAAO,KAAK,KAAK,QAAQ;QACzB,KAAK,KAAK,IAAI;QACd,SAAS,IAAI,KAAK;QAClB,KAAK,CAAC,OAAO,CAAE,KAA8B,CAAC,OAAO,CAAC,CACzD,CAAC;AACN,CAAC"}
|
|
@@ -52,7 +52,7 @@
|
|
|
52
52
|
*
|
|
53
53
|
* @module
|
|
54
54
|
*/
|
|
55
|
-
import {
|
|
55
|
+
import { z, ZodType, type ZodRawShape } from 'zod';
|
|
56
56
|
import { ResponseBuilder } from './ResponseBuilder.js';
|
|
57
57
|
import { type UiBlock } from './ui.js';
|
|
58
58
|
/**
|
|
@@ -136,6 +136,28 @@ export declare class Presenter<T> {
|
|
|
136
136
|
* ```
|
|
137
137
|
*/
|
|
138
138
|
schema<TSchema extends ZodType>(zodSchema: TSchema): Presenter<TSchema['_output']>;
|
|
139
|
+
/**
|
|
140
|
+
* Set the schema from an object of ZodTypes (enables `t.*` shorthand).
|
|
141
|
+
*
|
|
142
|
+
* Accepts a plain object where each value is a ZodType.
|
|
143
|
+
* Internally wraps it into `z.object(shape)` for full validation.
|
|
144
|
+
*
|
|
145
|
+
* @param shape - Object shape with ZodType values (e.g. `{ id: t.string, name: t.string }`)
|
|
146
|
+
* @returns A narrowed Presenter with the inferred output type
|
|
147
|
+
*
|
|
148
|
+
* @example
|
|
149
|
+
* ```typescript
|
|
150
|
+
* import { createPresenter, t } from '@vinkius-core/mcp-fusion';
|
|
151
|
+
*
|
|
152
|
+
* createPresenter('Invoice')
|
|
153
|
+
* .schema({
|
|
154
|
+
* id: t.string,
|
|
155
|
+
* amount: t.number.describe('in cents'),
|
|
156
|
+
* status: t.enum('draft', 'paid'),
|
|
157
|
+
* })
|
|
158
|
+
* ```
|
|
159
|
+
*/
|
|
160
|
+
schema<TShape extends ZodRawShape>(shape: TShape): Presenter<z.infer<z.ZodObject<TShape>>>;
|
|
139
161
|
/**
|
|
140
162
|
* Set JIT system rules that travel with the data.
|
|
141
163
|
*
|
|
@@ -244,6 +266,77 @@ export declare class Presenter<T> {
|
|
|
244
266
|
* ```
|
|
245
267
|
*/
|
|
246
268
|
suggestActions(fn: SuggestActionsFn<T>): this;
|
|
269
|
+
/**
|
|
270
|
+
* Alias for `.suggestActions()` — fluent shorthand.
|
|
271
|
+
*
|
|
272
|
+
* Define HATEOAS-style action suggestions based on data state.
|
|
273
|
+
* Use with the `suggest()` helper for maximum fluency.
|
|
274
|
+
*
|
|
275
|
+
* @param fn - `(data, ctx?) => (ActionSuggestion | null)[]`
|
|
276
|
+
* @returns `this` for chaining
|
|
277
|
+
*
|
|
278
|
+
* @example
|
|
279
|
+
* ```typescript
|
|
280
|
+
* import { suggest } from '@vinkius-core/mcp-fusion';
|
|
281
|
+
*
|
|
282
|
+
* .suggest((inv) => [
|
|
283
|
+
* suggest('invoices.get', 'View details'),
|
|
284
|
+
* inv.status === 'overdue'
|
|
285
|
+
* ? suggest('billing.remind', 'Send reminder')
|
|
286
|
+
* : null,
|
|
287
|
+
* ])
|
|
288
|
+
* ```
|
|
289
|
+
*/
|
|
290
|
+
suggest(fn: SuggestActionsFn<T>): this;
|
|
291
|
+
/**
|
|
292
|
+
* Alias for `.systemRules()` — fluent shorthand.
|
|
293
|
+
*
|
|
294
|
+
* @param rules - Static rules array or dynamic `(data, ctx?) => (string | null)[]`
|
|
295
|
+
* @returns `this` for chaining
|
|
296
|
+
*
|
|
297
|
+
* @example
|
|
298
|
+
* ```typescript
|
|
299
|
+
* .rules(['CRITICAL: amounts in CENTS.'])
|
|
300
|
+
* .rules((inv) => [
|
|
301
|
+
* inv.status === 'overdue' ? '⚠️ OVERDUE' : null,
|
|
302
|
+
* ])
|
|
303
|
+
* ```
|
|
304
|
+
*/
|
|
305
|
+
rules(rules: readonly string[] | ((data: T, ctx?: unknown) => (string | null)[])): this;
|
|
306
|
+
/**
|
|
307
|
+
* Alias for `.uiBlocks()` — fluent shorthand.
|
|
308
|
+
*
|
|
309
|
+
* @param fn - `(item, ctx?) => (UiBlock | null)[]`
|
|
310
|
+
* @returns `this` for chaining
|
|
311
|
+
*
|
|
312
|
+
* @example
|
|
313
|
+
* ```typescript
|
|
314
|
+
* .ui((inv) => [
|
|
315
|
+
* ui.echarts({ series: [{ type: 'gauge', data: [{ value: inv.amount / 100 }] }] }),
|
|
316
|
+
* ])
|
|
317
|
+
* ```
|
|
318
|
+
*/
|
|
319
|
+
ui(fn: ItemUiBlocksFn<T>): this;
|
|
320
|
+
/**
|
|
321
|
+
* Cognitive guardrail shorthand with auto-generated message.
|
|
322
|
+
*
|
|
323
|
+
* Truncates large collections and injects a smart summary block.
|
|
324
|
+
* For custom truncation messages, use `.agentLimit(max, onTruncate)` instead.
|
|
325
|
+
*
|
|
326
|
+
* @param max - Maximum items to keep in the data array
|
|
327
|
+
* @returns `this` for chaining
|
|
328
|
+
*
|
|
329
|
+
* @example
|
|
330
|
+
* ```typescript
|
|
331
|
+
* // Auto-generated message:
|
|
332
|
+
* .limit(50)
|
|
333
|
+
* // → "⚠️ Dataset truncated. 50 shown, {omitted} hidden. Use filters to narrow results."
|
|
334
|
+
*
|
|
335
|
+
* // For custom message, use agentLimit():
|
|
336
|
+
* .agentLimit(50, (omitted) => ui.summary(`Custom: ${omitted} hidden`))
|
|
337
|
+
* ```
|
|
338
|
+
*/
|
|
339
|
+
limit(max: number): this;
|
|
247
340
|
/**
|
|
248
341
|
* Compose a child Presenter for a nested relation.
|
|
249
342
|
*
|
|
@@ -295,7 +388,16 @@ export declare class Presenter<T> {
|
|
|
295
388
|
/**
|
|
296
389
|
* Compose a {@link ResponseBuilder} from raw data.
|
|
297
390
|
*
|
|
298
|
-
* Orchestrates: truncate → validate → embed → render UI → attach rules
|
|
391
|
+
* Orchestrates: truncate → validate → embed → render UI → attach rules
|
|
392
|
+
* → suggest actions → **Late Guillotine** (`_select` filter).
|
|
393
|
+
*
|
|
394
|
+
* **Late Guillotine pattern**: UI blocks, system rules, and action
|
|
395
|
+
* suggestions are computed using the **full** validated data, ensuring
|
|
396
|
+
* charts and rules never see `undefined` for pruned fields. Only the
|
|
397
|
+
* wire-facing data block in the ResponseBuilder is filtered by `_select`
|
|
398
|
+
* — the UI consumes full data in RAM, the AI consumes pruned data on
|
|
399
|
+
* the wire.
|
|
400
|
+
*
|
|
299
401
|
* After the first call, the Presenter is sealed (immutable).
|
|
300
402
|
*
|
|
301
403
|
* **Auto-detection**: If `data` is an array, items are validated
|
|
@@ -304,18 +406,22 @@ export declare class Presenter<T> {
|
|
|
304
406
|
*
|
|
305
407
|
* @param data - Raw data from the handler (object or array)
|
|
306
408
|
* @param ctx - Optional request context (for RBAC, locale, etc.)
|
|
409
|
+
* @param selectFields - Optional top-level field names to keep in the
|
|
410
|
+
* data block. When provided, only these keys survive in the JSON
|
|
411
|
+
* payload sent to the AI. Nested objects are kept whole (shallow).
|
|
307
412
|
* @returns A {@link ResponseBuilder} ready for chaining or `.build()`
|
|
308
413
|
* @throws If Zod validation fails
|
|
309
414
|
*
|
|
310
415
|
* @example
|
|
311
416
|
* ```typescript
|
|
312
|
-
* //
|
|
313
|
-
* // Manual:
|
|
417
|
+
* // Full data (default)
|
|
314
418
|
* return InvoicePresenter.make(rawInvoice).build();
|
|
315
|
-
*
|
|
419
|
+
*
|
|
420
|
+
* // With _select filtering — only 'status' reaches the AI
|
|
421
|
+
* return InvoicePresenter.make(rawInvoice, ctx, ['status']).build();
|
|
316
422
|
* ```
|
|
317
423
|
*/
|
|
318
|
-
make(data: T | T[], ctx?: unknown): ResponseBuilder;
|
|
424
|
+
make(data: T | T[], ctx?: unknown, selectFields?: string[]): ResponseBuilder;
|
|
319
425
|
/**
|
|
320
426
|
* Validate data through the Zod schema (if configured).
|
|
321
427
|
* For arrays, each item is validated independently.
|