@cleocode/lafs 1.8.0 → 2026.4.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/LICENSE +0 -0
- package/README.md +0 -0
- package/dist/schemas/v1/agent-card.schema.json +230 -0
- package/dist/schemas/v1/conformance-profiles.json +0 -0
- package/dist/schemas/v1/context-ledger.schema.json +70 -0
- package/dist/schemas/v1/discovery.schema.json +132 -0
- package/dist/schemas/v1/envelope.schema.json +0 -0
- package/dist/schemas/v1/error-registry.json +0 -0
- package/dist/src/a2a/bindings/grpc.d.ts +1 -0
- package/dist/src/a2a/bindings/grpc.d.ts.map +1 -0
- package/dist/src/a2a/bindings/grpc.js +1 -0
- package/dist/src/a2a/bindings/grpc.js.map +1 -0
- package/dist/src/a2a/bindings/http.d.ts +2 -1
- package/dist/src/a2a/bindings/http.d.ts.map +1 -0
- package/dist/src/a2a/bindings/http.js +8 -2
- package/dist/src/a2a/bindings/http.js.map +1 -0
- package/dist/src/a2a/bindings/index.d.ts +3 -2
- package/dist/src/a2a/bindings/index.d.ts.map +1 -0
- package/dist/src/a2a/bindings/index.js +5 -4
- package/dist/src/a2a/bindings/index.js.map +1 -0
- package/dist/src/a2a/bindings/jsonrpc.d.ts +1 -0
- package/dist/src/a2a/bindings/jsonrpc.d.ts.map +1 -0
- package/dist/src/a2a/bindings/jsonrpc.js +3 -1
- package/dist/src/a2a/bindings/jsonrpc.js.map +1 -0
- package/dist/src/a2a/bridge.d.ts +5 -7
- package/dist/src/a2a/bridge.d.ts.map +1 -0
- package/dist/src/a2a/bridge.js +15 -24
- package/dist/src/a2a/bridge.js.map +1 -0
- package/dist/src/a2a/extensions.d.ts +1 -0
- package/dist/src/a2a/extensions.d.ts.map +1 -0
- package/dist/src/a2a/extensions.js +3 -2
- package/dist/src/a2a/extensions.js.map +1 -0
- package/dist/src/a2a/index.d.ts +8 -7
- package/dist/src/a2a/index.d.ts.map +1 -0
- package/dist/src/a2a/index.js +22 -27
- package/dist/src/a2a/index.js.map +1 -0
- package/dist/src/a2a/streaming.d.ts +2 -1
- package/dist/src/a2a/streaming.d.ts.map +1 -0
- package/dist/src/a2a/streaming.js +10 -9
- package/dist/src/a2a/streaming.js.map +1 -0
- package/dist/src/a2a/task-lifecycle.d.ts +2 -1
- package/dist/src/a2a/task-lifecycle.d.ts.map +1 -0
- package/dist/src/a2a/task-lifecycle.js +25 -7
- package/dist/src/a2a/task-lifecycle.js.map +1 -0
- package/dist/src/budgetEnforcement.d.ts +5 -6
- package/dist/src/budgetEnforcement.d.ts.map +1 -0
- package/dist/src/budgetEnforcement.js +14 -12
- package/dist/src/budgetEnforcement.js.map +1 -0
- package/dist/src/circuit-breaker/index.d.ts +6 -1
- package/dist/src/circuit-breaker/index.d.ts.map +1 -0
- package/dist/src/circuit-breaker/index.js +8 -5
- package/dist/src/circuit-breaker/index.js.map +1 -0
- package/dist/src/cli.d.ts +1 -0
- package/dist/src/cli.d.ts.map +1 -0
- package/dist/src/cli.js +12 -11
- package/dist/src/cli.js.map +1 -0
- package/dist/src/compliance.d.ts +4 -3
- package/dist/src/compliance.d.ts.map +1 -0
- package/dist/src/compliance.js +14 -13
- package/dist/src/compliance.js.map +1 -0
- package/dist/src/conformance.d.ts +3 -2
- package/dist/src/conformance.d.ts.map +1 -0
- package/dist/src/conformance.js +83 -76
- package/dist/src/conformance.js.map +1 -0
- package/dist/src/conformanceProfiles.d.ts +2 -1
- package/dist/src/conformanceProfiles.d.ts.map +1 -0
- package/dist/src/conformanceProfiles.js +2 -1
- package/dist/src/conformanceProfiles.js.map +1 -0
- package/dist/src/deprecationRegistry.d.ts +2 -1
- package/dist/src/deprecationRegistry.d.ts.map +1 -0
- package/dist/src/deprecationRegistry.js +8 -7
- package/dist/src/deprecationRegistry.js.map +1 -0
- package/dist/src/discovery.d.ts +3 -2
- package/dist/src/discovery.d.ts.map +1 -0
- package/dist/src/discovery.js +63 -59
- package/dist/src/discovery.js.map +1 -0
- package/dist/src/envelope.d.ts +10 -9
- package/dist/src/envelope.d.ts.map +1 -0
- package/dist/src/envelope.js +14 -15
- package/dist/src/envelope.js.map +1 -0
- package/dist/src/errorRegistry.d.ts +4 -3
- package/dist/src/errorRegistry.d.ts.map +1 -0
- package/dist/src/errorRegistry.js +4 -3
- package/dist/src/errorRegistry.js.map +1 -0
- package/dist/src/fieldExtraction.d.ts +3 -2
- package/dist/src/fieldExtraction.d.ts.map +1 -0
- package/dist/src/fieldExtraction.js +15 -11
- package/dist/src/fieldExtraction.js.map +1 -0
- package/dist/src/flagResolver.d.ts +2 -1
- package/dist/src/flagResolver.d.ts.map +1 -0
- package/dist/src/flagResolver.js +2 -1
- package/dist/src/flagResolver.js.map +1 -0
- package/dist/src/flagSemantics.d.ts +4 -3
- package/dist/src/flagSemantics.d.ts.map +1 -0
- package/dist/src/flagSemantics.js +12 -11
- package/dist/src/flagSemantics.js.map +1 -0
- package/dist/src/health/index.d.ts +16 -3
- package/dist/src/health/index.d.ts.map +1 -0
- package/dist/src/health/index.js +21 -20
- package/dist/src/health/index.js.map +1 -0
- package/dist/src/index.d.ts +23 -23
- package/dist/src/index.d.ts.map +1 -0
- package/dist/src/index.js +29 -28
- package/dist/src/index.js.map +1 -0
- package/dist/src/mcpAdapter.d.ts +4 -3
- package/dist/src/mcpAdapter.d.ts.map +1 -0
- package/dist/src/mcpAdapter.js +62 -57
- package/dist/src/mcpAdapter.js.map +1 -0
- package/dist/src/mviProjection.d.ts +1 -0
- package/dist/src/mviProjection.d.ts.map +1 -0
- package/dist/src/mviProjection.js +1 -0
- package/dist/src/mviProjection.js.map +1 -0
- package/dist/src/problemDetails.d.ts +1 -0
- package/dist/src/problemDetails.d.ts.map +1 -0
- package/dist/src/problemDetails.js +6 -0
- package/dist/src/problemDetails.js.map +1 -0
- package/dist/src/shutdown/index.d.ts +7 -2
- package/dist/src/shutdown/index.d.ts.map +1 -0
- package/dist/src/shutdown/index.js +6 -5
- package/dist/src/shutdown/index.js.map +1 -0
- package/dist/src/tokenEstimator.d.ts +1 -0
- package/dist/src/tokenEstimator.d.ts.map +1 -0
- package/dist/src/tokenEstimator.js +1 -2
- package/dist/src/tokenEstimator.js.map +1 -0
- package/dist/src/types.d.ts +10 -9
- package/dist/src/types.d.ts.map +1 -0
- package/dist/src/types.js +12 -2
- package/dist/src/types.js.map +1 -0
- package/dist/src/validateEnvelope.d.ts +2 -1
- package/dist/src/validateEnvelope.d.ts.map +1 -0
- package/dist/src/validateEnvelope.js +11 -10
- package/dist/src/validateEnvelope.js.map +1 -0
- package/dist/tsconfig.build.tsbuildinfo +1 -0
- package/lafs.md +0 -0
- package/package.json +10 -11
- package/schemas/v1/agent-card.schema.json +0 -0
- package/schemas/v1/conformance-profiles.d.ts +15 -0
- package/schemas/v1/conformance-profiles.json +0 -0
- package/schemas/v1/context-ledger.schema.json +0 -0
- package/schemas/v1/discovery.schema.json +0 -0
- package/schemas/v1/envelope.schema.d.ts +14 -0
- package/schemas/v1/envelope.schema.json +0 -0
- package/schemas/v1/error-registry.d.ts +24 -0
- package/schemas/v1/error-registry.json +0 -0
package/dist/src/mcpAdapter.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { randomUUID } from
|
|
1
|
+
import { randomUUID } from 'node:crypto';
|
|
2
2
|
/**
|
|
3
3
|
* Extract result from MCP content array
|
|
4
4
|
* Attempts to parse JSON content, falls back to text representation
|
|
@@ -11,7 +11,7 @@ function extractResultFromContent(content) {
|
|
|
11
11
|
const textParts = [];
|
|
12
12
|
const otherContent = [];
|
|
13
13
|
for (const item of content) {
|
|
14
|
-
if (item.type ===
|
|
14
|
+
if (item.type === 'text' && item.text) {
|
|
15
15
|
textParts.push(item.text);
|
|
16
16
|
}
|
|
17
17
|
else {
|
|
@@ -20,11 +20,11 @@ function extractResultFromContent(content) {
|
|
|
20
20
|
}
|
|
21
21
|
// Try to parse as JSON if single text item looks like JSON
|
|
22
22
|
if (textParts.length === 1) {
|
|
23
|
-
const text = textParts[0]?.trim() ??
|
|
24
|
-
if (text.startsWith(
|
|
23
|
+
const text = textParts[0]?.trim() ?? '';
|
|
24
|
+
if (text.startsWith('{') || text.startsWith('[')) {
|
|
25
25
|
try {
|
|
26
26
|
const parsed = JSON.parse(text);
|
|
27
|
-
if (typeof parsed ===
|
|
27
|
+
if (typeof parsed === 'object' && parsed !== null) {
|
|
28
28
|
return parsed;
|
|
29
29
|
}
|
|
30
30
|
}
|
|
@@ -36,7 +36,7 @@ function extractResultFromContent(content) {
|
|
|
36
36
|
// Combine into result object
|
|
37
37
|
const result = {};
|
|
38
38
|
if (textParts.length > 0) {
|
|
39
|
-
result.text = textParts.length === 1 ? textParts[0] : textParts.join(
|
|
39
|
+
result.text = textParts.length === 1 ? textParts[0] : textParts.join('\n');
|
|
40
40
|
}
|
|
41
41
|
if (otherContent.length > 0) {
|
|
42
42
|
result.content = otherContent;
|
|
@@ -72,15 +72,15 @@ function truncateToBudget(content, budget) {
|
|
|
72
72
|
// Close any open structures
|
|
73
73
|
const openBraces = (truncated.match(/\{/g) || []).length - (truncated.match(/\}/g) || []).length;
|
|
74
74
|
const openBrackets = (truncated.match(/\[/g) || []).length - (truncated.match(/\]/g) || []).length;
|
|
75
|
-
truncated +=
|
|
76
|
-
truncated +=
|
|
75
|
+
truncated += '}'.repeat(Math.max(0, openBraces));
|
|
76
|
+
truncated += ']'.repeat(Math.max(0, openBrackets));
|
|
77
77
|
try {
|
|
78
78
|
const parsed = JSON.parse(truncated);
|
|
79
79
|
// Add truncation notice
|
|
80
|
-
if (typeof parsed ===
|
|
81
|
-
parsed[
|
|
82
|
-
parsed[
|
|
83
|
-
parsed[
|
|
80
|
+
if (typeof parsed === 'object' && parsed !== null) {
|
|
81
|
+
parsed['_truncated'] = true;
|
|
82
|
+
parsed['_originalTokens'] = originalEstimate;
|
|
83
|
+
parsed['_budget'] = budget;
|
|
84
84
|
}
|
|
85
85
|
return { result: parsed, truncated: true, originalEstimate };
|
|
86
86
|
}
|
|
@@ -89,7 +89,7 @@ function truncateToBudget(content, budget) {
|
|
|
89
89
|
return {
|
|
90
90
|
result: {
|
|
91
91
|
_truncated: true,
|
|
92
|
-
_error:
|
|
92
|
+
_error: 'Content truncated due to budget constraints',
|
|
93
93
|
_originalTokens: originalEstimate,
|
|
94
94
|
_budget: budget,
|
|
95
95
|
},
|
|
@@ -104,46 +104,50 @@ function truncateToBudget(content, budget) {
|
|
|
104
104
|
function convertMCPErrorToLAFS(mcpResult, operation) {
|
|
105
105
|
const content = mcpResult.content;
|
|
106
106
|
const errorText = content
|
|
107
|
-
.filter((item) => item.type ===
|
|
107
|
+
.filter((item) => item.type === 'text' && typeof item.text === 'string')
|
|
108
108
|
.map((item) => item.text)
|
|
109
|
-
.join(
|
|
109
|
+
.join('\n');
|
|
110
110
|
// Determine error category based on error text
|
|
111
|
-
let category =
|
|
112
|
-
let code =
|
|
111
|
+
let category = 'INTERNAL';
|
|
112
|
+
let code = 'E_MCP_INTERNAL_ERROR';
|
|
113
113
|
let retryable = false;
|
|
114
114
|
let retryAfterMs = null;
|
|
115
115
|
const errorLower = errorText.toLowerCase();
|
|
116
|
-
if (errorLower.includes(
|
|
117
|
-
|
|
118
|
-
|
|
116
|
+
if (errorLower.includes('not found') ||
|
|
117
|
+
errorLower.includes("doesn't exist") ||
|
|
118
|
+
errorLower.includes('does not exist')) {
|
|
119
|
+
category = 'NOT_FOUND';
|
|
120
|
+
code = 'E_MCP_NOT_FOUND';
|
|
119
121
|
}
|
|
120
|
-
else if (errorLower.includes(
|
|
121
|
-
category =
|
|
122
|
-
code =
|
|
122
|
+
else if (errorLower.includes('rate limit') || errorLower.includes('too many requests')) {
|
|
123
|
+
category = 'RATE_LIMIT';
|
|
124
|
+
code = 'E_MCP_RATE_LIMIT';
|
|
123
125
|
retryable = true;
|
|
124
126
|
retryAfterMs = 60000; // 1 minute default
|
|
125
127
|
}
|
|
126
|
-
else if (errorLower.includes(
|
|
127
|
-
|
|
128
|
-
|
|
128
|
+
else if (errorLower.includes('auth') ||
|
|
129
|
+
errorLower.includes('unauthorized') ||
|
|
130
|
+
errorLower.includes('forbidden')) {
|
|
131
|
+
category = 'AUTH';
|
|
132
|
+
code = 'E_MCP_AUTH_ERROR';
|
|
129
133
|
}
|
|
130
|
-
else if (errorLower.includes(
|
|
131
|
-
category =
|
|
132
|
-
code =
|
|
134
|
+
else if (errorLower.includes('permission') || errorLower.includes('access denied')) {
|
|
135
|
+
category = 'PERMISSION';
|
|
136
|
+
code = 'E_MCP_PERMISSION_DENIED';
|
|
133
137
|
}
|
|
134
|
-
else if (errorLower.includes(
|
|
135
|
-
category =
|
|
136
|
-
code =
|
|
138
|
+
else if (errorLower.includes('validation') || errorLower.includes('invalid')) {
|
|
139
|
+
category = 'VALIDATION';
|
|
140
|
+
code = 'E_MCP_VALIDATION_ERROR';
|
|
137
141
|
}
|
|
138
|
-
else if (errorLower.includes(
|
|
139
|
-
category =
|
|
140
|
-
code =
|
|
142
|
+
else if (errorLower.includes('timeout') || errorLower.includes('transient')) {
|
|
143
|
+
category = 'TRANSIENT';
|
|
144
|
+
code = 'E_MCP_TRANSIENT_ERROR';
|
|
141
145
|
retryable = true;
|
|
142
146
|
retryAfterMs = 5000; // 5 seconds
|
|
143
147
|
}
|
|
144
148
|
return {
|
|
145
149
|
code,
|
|
146
|
-
message: errorText ||
|
|
150
|
+
message: errorText || 'MCP tool execution failed',
|
|
147
151
|
category,
|
|
148
152
|
retryable,
|
|
149
153
|
retryAfterMs,
|
|
@@ -167,21 +171,21 @@ export function wrapMCPResult(mcpResult, operation, budget) {
|
|
|
167
171
|
const timestamp = new Date().toISOString();
|
|
168
172
|
// Build base meta
|
|
169
173
|
const meta = {
|
|
170
|
-
specVersion:
|
|
171
|
-
schemaVersion:
|
|
174
|
+
specVersion: '1.0.0',
|
|
175
|
+
schemaVersion: '1.0.0',
|
|
172
176
|
timestamp,
|
|
173
177
|
operation,
|
|
174
178
|
requestId,
|
|
175
|
-
transport:
|
|
179
|
+
transport: 'sdk',
|
|
176
180
|
strict: true,
|
|
177
|
-
mvi:
|
|
181
|
+
mvi: 'standard',
|
|
178
182
|
contextVersion: 1,
|
|
179
183
|
};
|
|
180
184
|
// Handle MCP error
|
|
181
185
|
if (mcpResult.isError) {
|
|
182
186
|
const error = convertMCPErrorToLAFS(mcpResult, operation);
|
|
183
187
|
return {
|
|
184
|
-
$schema:
|
|
188
|
+
$schema: 'https://lafs.dev/schemas/v1/envelope.schema.json',
|
|
185
189
|
_meta: meta,
|
|
186
190
|
success: false,
|
|
187
191
|
result: null,
|
|
@@ -201,7 +205,7 @@ export function wrapMCPResult(mcpResult, operation, budget) {
|
|
|
201
205
|
originalEstimate = budgetResult.originalEstimate;
|
|
202
206
|
// Put token estimate in extensions to comply with strict schema
|
|
203
207
|
extensions = {
|
|
204
|
-
|
|
208
|
+
'x-mcp-token-estimate': {
|
|
205
209
|
estimated: truncated ? budget : originalEstimate,
|
|
206
210
|
truncated,
|
|
207
211
|
originalEstimate: truncated ? originalEstimate : undefined,
|
|
@@ -209,7 +213,7 @@ export function wrapMCPResult(mcpResult, operation, budget) {
|
|
|
209
213
|
};
|
|
210
214
|
}
|
|
211
215
|
return {
|
|
212
|
-
$schema:
|
|
216
|
+
$schema: 'https://lafs.dev/schemas/v1/envelope.schema.json',
|
|
213
217
|
_meta: meta,
|
|
214
218
|
success: true,
|
|
215
219
|
result,
|
|
@@ -225,31 +229,31 @@ export function wrapMCPResult(mcpResult, operation, budget) {
|
|
|
225
229
|
* @param category - Error category
|
|
226
230
|
* @returns LAFS error envelope
|
|
227
231
|
*/
|
|
228
|
-
export function createAdapterErrorEnvelope(message, operation, category =
|
|
232
|
+
export function createAdapterErrorEnvelope(message, operation, category = 'INTERNAL') {
|
|
229
233
|
const requestId = randomUUID();
|
|
230
234
|
const timestamp = new Date().toISOString();
|
|
231
235
|
const error = {
|
|
232
|
-
code:
|
|
236
|
+
code: 'E_MCP_ADAPTER_ERROR',
|
|
233
237
|
message,
|
|
234
238
|
category,
|
|
235
|
-
retryable: category ===
|
|
236
|
-
retryAfterMs: category ===
|
|
239
|
+
retryable: category === 'TRANSIENT' || category === 'RATE_LIMIT',
|
|
240
|
+
retryAfterMs: category === 'RATE_LIMIT' ? 60000 : category === 'TRANSIENT' ? 5000 : null,
|
|
237
241
|
details: {
|
|
238
242
|
operation,
|
|
239
243
|
adapterError: true,
|
|
240
244
|
},
|
|
241
245
|
};
|
|
242
246
|
return {
|
|
243
|
-
$schema:
|
|
247
|
+
$schema: 'https://lafs.dev/schemas/v1/envelope.schema.json',
|
|
244
248
|
_meta: {
|
|
245
|
-
specVersion:
|
|
246
|
-
schemaVersion:
|
|
249
|
+
specVersion: '1.0.0',
|
|
250
|
+
schemaVersion: '1.0.0',
|
|
247
251
|
timestamp,
|
|
248
252
|
operation,
|
|
249
253
|
requestId,
|
|
250
|
-
transport:
|
|
254
|
+
transport: 'sdk',
|
|
251
255
|
strict: true,
|
|
252
|
-
mvi:
|
|
256
|
+
mvi: 'standard',
|
|
253
257
|
contextVersion: 1,
|
|
254
258
|
},
|
|
255
259
|
success: false,
|
|
@@ -261,12 +265,12 @@ export function createAdapterErrorEnvelope(message, operation, category = "INTER
|
|
|
261
265
|
* Type guard to check if content is TextContent
|
|
262
266
|
*/
|
|
263
267
|
export function isTextContent(content) {
|
|
264
|
-
return (typeof content ===
|
|
268
|
+
return (typeof content === 'object' &&
|
|
265
269
|
content !== null &&
|
|
266
|
-
|
|
267
|
-
content.type ===
|
|
268
|
-
|
|
269
|
-
typeof content.text ===
|
|
270
|
+
'type' in content &&
|
|
271
|
+
content.type === 'text' &&
|
|
272
|
+
'text' in content &&
|
|
273
|
+
typeof content.text === 'string');
|
|
270
274
|
}
|
|
271
275
|
/**
|
|
272
276
|
* Parse MCP text content as JSON if possible
|
|
@@ -279,3 +283,4 @@ export function parseMCPTextContent(content) {
|
|
|
279
283
|
return content.text;
|
|
280
284
|
}
|
|
281
285
|
}
|
|
286
|
+
//# sourceMappingURL=mcpAdapter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mcpAdapter.js","sourceRoot":"","sources":["../../src/mcpAdapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -17,3 +17,4 @@ export declare function projectEnvelope(envelope: LAFSEnvelope, mviLevel?: MVILe
|
|
|
17
17
|
* Uses simple heuristic: 1 token per ~4 characters of JSON.
|
|
18
18
|
*/
|
|
19
19
|
export declare function estimateProjectedTokens(projected: Record<string, unknown>): number;
|
|
20
|
+
//# sourceMappingURL=mviProjection.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mviProjection.d.ts","sourceRoot":"","sources":["../../src/mviProjection.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,EAAE,YAAY,EAAuB,QAAQ,EAAE,MAAM,YAAY,CAAC;AAW9E;;;;;;GAMG;AACH,wBAAgB,eAAe,CAC7B,QAAQ,EAAE,YAAY,EACtB,QAAQ,CAAC,EAAE,QAAQ,GAClB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAWzB;AAoGD;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAGlF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mviProjection.js","sourceRoot":"","sources":["../../src/mviProjection.ts"],"names":[],"mappings":"AAgBA;;;;;;GAMG;AACH,MAAM,UAAU,eAAe,CAC7B,QAAsB,EACtB,QAAmB;IAEnB,MAAM,KAAK,GAAG,QAAQ,IAAI,QAAQ,CAAC,KAAK,CAAC,GAAG,IAAI,UAAU,CAAC;IAC3D,QAAQ,KAAK,EAAE,CAAC;QACd,KAAK,SAAS;YACZ,OAAO,cAAc,CAAC,QAAQ,CAAC,CAAC;QAClC,KAAK,UAAU;YACb,OAAO,eAAe,CAAC,QAAQ,CAAC,CAAC;QACnC,KAAK,MAAM,CAAC;QACZ,KAAK,QAAQ;YACX,OAAO,QAA8C,CAAC;IAC1D,CAAC;AACH,CAAC;AAED,SAAS,cAAc,CAAC,GAAiB;IACvC,MAAM,MAAM,GAA4B;QACtC,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,KAAK,EAAE,kBAAkB,CAAC,GAAG,CAAC,KAAK,CAAC;KACrC,CAAC;IAEF,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;QAChB,MAAM,CAAC,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC;IAC7B,CAAC;SAAM,IAAI,GAAG,CAAC,KAAK,EAAE,CAAC;QACrB,MAAM,CAAC,KAAK,GAAG,mBAAmB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAChD,CAAC;IAED,IAAI,GAAG,CAAC,WAAW,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC/D,MAAM,CAAC,WAAW,GAAG,GAAG,CAAC,WAAW,CAAC;IACvC,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,eAAe,CAAC,GAAiB;IACxC,MAAM,MAAM,GAA4B;QACtC,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,KAAK,EAAE,mBAAmB,CAAC,GAAG,CAAC,KAAK,CAAC;KACtC,CAAC;IAEF,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;QAChB,MAAM,CAAC,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC;IAC7B,CAAC;SAAM,CAAC;QACN,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC;QACrB,IAAI,GAAG,CAAC,KAAK,EAAE,CAAC;YACd,MAAM,CAAC,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC;QAC3B,CAAC;IACH,CAAC;IAED,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC;QACb,MAAM,CAAC,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC;IACzB,CAAC;IAED,IAAI,GAAG,CAAC,WAAW,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC/D,MAAM,CAAC,WAAW,GAAG,GAAG,CAAC,WAAW,CAAC;IACvC,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,kBAAkB,CAAC,IAAc;IACxC,MAAM,CAAC,GAAG,IAAwB,CAAC;IACnC,MAAM,SAAS,GAA4B;QACzC,SAAS,EAAE,CAAC,CAAC,SAAS;QACtB,cAAc,EAAE,CAAC,CAAC,cAAc;KACjC,CAAC;IACF,IAAI,CAAC,CAAC,SAAS;QAAE,SAAS,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,CAAC;IACnD,IAAI,CAAC,CAAC,QAAQ,EAAE,MAAM;QAAE,SAAS,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC;IACxD,IAAI,CAAC,CAAC,cAAc;QAAE,SAAS,CAAC,cAAc,GAAG,CAAC,CAAC,cAAc,CAAC;IAClE,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,mBAAmB,CAAC,IAAc;IACzC,MAAM,CAAC,GAAG,IAAwB,CAAC;IACnC,MAAM,SAAS,GAA4B;QACzC,SAAS,EAAE,CAAC,CAAC,SAAS;QACtB,SAAS,EAAE,CAAC,CAAC,SAAS;QACtB,SAAS,EAAE,CAAC,CAAC,SAAS;QACtB,GAAG,EAAE,CAAC,CAAC,GAAG;QACV,cAAc,EAAE,CAAC,CAAC,cAAc;KACjC,CAAC;IACF,IAAI,CAAC,CAAC,SAAS;QAAE,SAAS,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,CAAC;IACnD,IAAI,CAAC,CAAC,QAAQ,EAAE,MAAM;QAAE,SAAS,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC;IACxD,IAAI,CAAC,CAAC,cAAc;QAAE,SAAS,CAAC,cAAc,GAAG,CAAC,CAAC,cAAc,CAAC;IAClE,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAgB;IAC3C,MAAM,CAAC,GAAG,KAAuB,CAAC;IAClC,MAAM,SAAS,GAA4B;QACzC,IAAI,EAAE,CAAC,CAAC,IAAI;KACb,CAAC;IAEF,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;QAClB,SAAS,CAAC,WAAW,GAAG,CAAC,CAAC,WAAW,CAAC;IACxC,CAAC;IAED,IAAI,CAAC,CAAC,YAAY,KAAK,IAAI,IAAI,CAAC,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;QAC5D,SAAS,CAAC,YAAY,GAAG,CAAC,CAAC,YAAY,CAAC;IAC1C,CAAC;IAED,IAAI,CAAC,CAAC,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACnD,SAAS,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC;IAChC,CAAC;IAED,IAAI,CAAC,CAAC,kBAAkB,KAAK,SAAS,EAAE,CAAC;QACvC,SAAS,CAAC,kBAAkB,GAAG,CAAC,CAAC,kBAAkB,CAAC;IACtD,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,uBAAuB,CAAC,SAAkC;IACxE,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;IACvC,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AACpC,CAAC"}
|
|
@@ -32,3 +32,4 @@ export declare function lafsErrorToProblemDetails(error: LAFSError, requestId?:
|
|
|
32
32
|
* Content-Type for RFC 9457 Problem Details responses.
|
|
33
33
|
*/
|
|
34
34
|
export declare const PROBLEM_DETAILS_CONTENT_TYPE: "application/problem+json";
|
|
35
|
+
//# sourceMappingURL=problemDetails.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"problemDetails.d.ts","sourceRoot":"","sources":["../../src/problemDetails.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C,oDAAoD;AACpD,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,SAAS,EAAE,OAAO,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED;;;;;;;GAOG;AACH,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,SAAS,EAChB,SAAS,CAAC,EAAE,MAAM,GACjB,kBAAkB,CA8BpB;AAED;;GAEG;AACH,eAAO,MAAM,4BAA4B,EAAG,0BAAmC,CAAC"}
|
|
@@ -1,3 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Core RFC 9457 Problem Details bridge.
|
|
3
|
+
* Converts LAFSError to RFC 9457-compliant Problem Details objects.
|
|
4
|
+
* Available for any transport, not just HTTP.
|
|
5
|
+
*/
|
|
1
6
|
import { getRegistryCode } from './errorRegistry.js';
|
|
2
7
|
/**
|
|
3
8
|
* Convert a LAFSError to an RFC 9457 Problem Details object.
|
|
@@ -43,3 +48,4 @@ export function lafsErrorToProblemDetails(error, requestId) {
|
|
|
43
48
|
* Content-Type for RFC 9457 Problem Details responses.
|
|
44
49
|
*/
|
|
45
50
|
export const PROBLEM_DETAILS_CONTENT_TYPE = 'application/problem+json';
|
|
51
|
+
//# sourceMappingURL=problemDetails.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"problemDetails.js","sourceRoot":"","sources":["../../src/problemDetails.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAqBrD;;;;;;;GAOG;AACH,MAAM,UAAU,yBAAyB,CACvC,KAAgB,EAChB,SAAkB;IAElB,MAAM,QAAQ,GAAG,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAE7C,MAAM,EAAE,GAAuB;QAC7B,IAAI,EAAE,8BAA8B,KAAK,CAAC,IAAI,EAAE;QAChD,KAAK,EAAE,KAAK,CAAC,IAAI;QACjB,MAAM,EAAE,QAAQ,EAAE,UAAU,IAAI,GAAG;QACnC,MAAM,EAAE,KAAK,CAAC,OAAO;QACrB,SAAS,EAAE,KAAK,CAAC,SAAS;KAC3B,CAAC;IAEF,IAAI,SAAS;QAAE,EAAE,CAAC,QAAQ,GAAG,SAAS,CAAC;IACvC,IAAI,KAAK,CAAC,YAAY,IAAI,IAAI;QAAE,EAAE,CAAC,YAAY,GAAG,KAAK,CAAC,YAAY,CAAC;IAErE,wCAAwC;IACxC,IAAI,KAAK,CAAC,WAAW,IAAI,IAAI;QAAE,EAAE,CAAC,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC;IAClE,IAAI,KAAK,CAAC,kBAAkB,IAAI,IAAI;QAAE,EAAE,CAAC,kBAAkB,GAAG,KAAK,CAAC,kBAAkB,CAAC;IACvF,IAAI,KAAK,CAAC,eAAe,IAAI,IAAI;QAAE,EAAE,CAAC,eAAe,GAAG,KAAK,CAAC,eAAe,CAAC;IAC9E,IAAI,KAAK,CAAC,MAAM,IAAI,IAAI;QAAE,EAAE,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;IAEnD,gDAAgD;IAChD,IAAI,KAAK,CAAC,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC3D,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;YACzD,IAAI,CAAC,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,CAAC;gBACjB,EAAE,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;YAClB,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,EAAE,CAAC;AACZ,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAAG,0BAAmC,CAAC"}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Handles graceful shutdown of LAFS servers
|
|
5
5
|
*/
|
|
6
|
-
import { Server } from 'http';
|
|
6
|
+
import type { Server } from 'http';
|
|
7
7
|
export interface GracefulShutdownConfig {
|
|
8
8
|
timeout?: number;
|
|
9
9
|
signals?: NodeJS.Signals[];
|
|
@@ -57,7 +57,11 @@ export declare function forceShutdown(exitCode?: number): void;
|
|
|
57
57
|
* app.use(shutdownMiddleware());
|
|
58
58
|
* ```
|
|
59
59
|
*/
|
|
60
|
-
export declare function shutdownMiddleware(): (
|
|
60
|
+
export declare function shutdownMiddleware(): (_req: unknown, res: {
|
|
61
|
+
status: (code: number) => {
|
|
62
|
+
json: (body: unknown) => void;
|
|
63
|
+
};
|
|
64
|
+
}, next: () => void) => void;
|
|
61
65
|
/**
|
|
62
66
|
* Wait for shutdown to complete
|
|
63
67
|
*
|
|
@@ -67,3 +71,4 @@ export declare function shutdownMiddleware(): (req: any, res: any, next: any) =>
|
|
|
67
71
|
* ```
|
|
68
72
|
*/
|
|
69
73
|
export declare function waitForShutdown(): Promise<void>;
|
|
74
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/shutdown/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAEnC,MAAM,WAAW,sBAAsB;IACrC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC;IAC3B,UAAU,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IACxC,OAAO,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;CACtC;AAED,MAAM,WAAW,aAAa;IAC5B,cAAc,EAAE,OAAO,CAAC;IACxB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,iBAAiB,CAAC,EAAE,IAAI,CAAC;CAC1B;AAOD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,GAAE,sBAA2B,GAAG,IAAI,CAoC1F;AAgED;;GAEG;AACH,wBAAgB,cAAc,IAAI,OAAO,CAExC;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,aAAa,CAEhD;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,QAAQ,GAAE,MAAU,GAAG,IAAI,CAGxD;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,KAE9B,MAAM,OAAO,EACb,KAAK;IAAE,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK;QAAE,IAAI,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAA;KAAE,CAAA;CAAE,EACpE,MAAM,MAAM,IAAI,UAWnB;AAED;;;;;;;GAOG;AACH,wBAAsB,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC,CAIrD"}
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
*/
|
|
6
6
|
const state = {
|
|
7
7
|
isShuttingDown: false,
|
|
8
|
-
activeConnections: 0
|
|
8
|
+
activeConnections: 0,
|
|
9
9
|
};
|
|
10
10
|
/**
|
|
11
11
|
* Enable graceful shutdown for an HTTP server
|
|
@@ -70,7 +70,7 @@ async function performShutdown(server, timeout, onShutdown, onClose) {
|
|
|
70
70
|
if (onShutdown) {
|
|
71
71
|
await Promise.race([
|
|
72
72
|
onShutdown(),
|
|
73
|
-
new Promise((_, reject) => setTimeout(() => reject(new Error('Shutdown timeout')), timeout))
|
|
73
|
+
new Promise((_, reject) => setTimeout(() => reject(new Error('Shutdown timeout')), timeout)),
|
|
74
74
|
]);
|
|
75
75
|
}
|
|
76
76
|
// Stop accepting new connections
|
|
@@ -104,7 +104,7 @@ async function performShutdown(server, timeout, onShutdown, onClose) {
|
|
|
104
104
|
}
|
|
105
105
|
}
|
|
106
106
|
function sleep(ms) {
|
|
107
|
-
return new Promise(resolve => setTimeout(resolve, ms));
|
|
107
|
+
return new Promise((resolve) => setTimeout(resolve, ms));
|
|
108
108
|
}
|
|
109
109
|
/**
|
|
110
110
|
* Check if server is shutting down
|
|
@@ -134,11 +134,11 @@ export function forceShutdown(exitCode = 1) {
|
|
|
134
134
|
* ```
|
|
135
135
|
*/
|
|
136
136
|
export function shutdownMiddleware() {
|
|
137
|
-
return (
|
|
137
|
+
return (_req, res, next) => {
|
|
138
138
|
if (state.isShuttingDown) {
|
|
139
139
|
res.status(503).json({
|
|
140
140
|
error: 'Service is shutting down',
|
|
141
|
-
status: 'unavailable'
|
|
141
|
+
status: 'unavailable',
|
|
142
142
|
});
|
|
143
143
|
return;
|
|
144
144
|
}
|
|
@@ -158,3 +158,4 @@ export async function waitForShutdown() {
|
|
|
158
158
|
await sleep(100);
|
|
159
159
|
}
|
|
160
160
|
}
|
|
161
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/shutdown/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -85,3 +85,4 @@ export declare function estimateTokens(value: unknown, options?: TokenEstimatorO
|
|
|
85
85
|
* Convenience function to estimate tokens from a JSON string.
|
|
86
86
|
*/
|
|
87
87
|
export declare function estimateTokensJSON(json: string, options?: TokenEstimatorOptions): number;
|
|
88
|
+
//# sourceMappingURL=tokenEstimator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tokenEstimator.d.ts","sourceRoot":"","sources":["../../src/tokenEstimator.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,MAAM,WAAW,qBAAqB;IACpC;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AA0BD;;;;;;;;GAQG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,OAAO,CAAkC;gBAErC,OAAO,GAAE,qBAA0B;IAI/C;;;;;;OAMG;IACH,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM;IAIhC;;;;;;OAMG;IACH,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAQlC;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAiE5B;;OAEG;IACH,OAAO,CAAC,aAAa;IAiBrB;;OAEG;IACH,OAAO,CAAC,cAAc;IAgCtB;;OAEG;IACH,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO;IASrC;;;OAGG;IACH,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM;IAcrC;;OAEG;IACH,QAAQ,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC;CA+BzB;AAED;;GAEG;AACH,eAAO,MAAM,gBAAgB,gBAAuB,CAAC;AAErD;;GAEG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,qBAAqB,GAAG,MAAM,CAGtF;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,qBAAqB,GAAG,MAAM,CAGxF"}
|
|
@@ -12,9 +12,7 @@
|
|
|
12
12
|
function countGraphemes(str) {
|
|
13
13
|
// Use Intl.Segmenter for proper grapheme counting (Node.js 16+, modern browsers)
|
|
14
14
|
if (typeof Intl !== 'undefined' && 'Segmenter' in Intl) {
|
|
15
|
-
// @ts-ignore - Intl.Segmenter may not be in all TypeScript lib versions
|
|
16
15
|
const segmenter = new Intl.Segmenter('en', { granularity: 'grapheme' });
|
|
17
|
-
// @ts-ignore
|
|
18
16
|
return Array.from(segmenter.segment(str)).length;
|
|
19
17
|
}
|
|
20
18
|
// Fallback: count code points using spread operator (handles surrogate pairs)
|
|
@@ -236,3 +234,4 @@ export function estimateTokensJSON(json, options) {
|
|
|
236
234
|
const estimator = options ? new TokenEstimator(options) : defaultEstimator;
|
|
237
235
|
return estimator.estimateJSON(json);
|
|
238
236
|
}
|
|
237
|
+
//# sourceMappingURL=tokenEstimator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tokenEstimator.js","sourceRoot":"","sources":["../../src/tokenEstimator.ts"],"names":[],"mappings":"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"}
|
package/dist/src/types.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
export type LAFSTransport =
|
|
2
|
-
export type LAFSErrorCategory =
|
|
1
|
+
export type LAFSTransport = 'cli' | 'http' | 'grpc' | 'sdk';
|
|
2
|
+
export type LAFSErrorCategory = 'VALIDATION' | 'AUTH' | 'PERMISSION' | 'NOT_FOUND' | 'CONFLICT' | 'RATE_LIMIT' | 'TRANSIENT' | 'INTERNAL' | 'CONTRACT' | 'MIGRATION';
|
|
3
3
|
export interface Warning {
|
|
4
4
|
code: string;
|
|
5
5
|
message: string;
|
|
@@ -40,21 +40,21 @@ export interface LAFSError {
|
|
|
40
40
|
docUrl?: string;
|
|
41
41
|
}
|
|
42
42
|
export interface LAFSPageCursor {
|
|
43
|
-
mode:
|
|
43
|
+
mode: 'cursor';
|
|
44
44
|
nextCursor: string | null;
|
|
45
45
|
hasMore: boolean;
|
|
46
46
|
limit?: number;
|
|
47
47
|
total?: number | null;
|
|
48
48
|
}
|
|
49
49
|
export interface LAFSPageOffset {
|
|
50
|
-
mode:
|
|
50
|
+
mode: 'offset';
|
|
51
51
|
limit: number;
|
|
52
52
|
offset: number;
|
|
53
53
|
hasMore: boolean;
|
|
54
54
|
total?: number | null;
|
|
55
55
|
}
|
|
56
56
|
export interface LAFSPageNone {
|
|
57
|
-
mode:
|
|
57
|
+
mode: 'none';
|
|
58
58
|
}
|
|
59
59
|
export type LAFSPage = LAFSPageCursor | LAFSPageOffset | LAFSPageNone;
|
|
60
60
|
export interface ContextLedgerEntry {
|
|
@@ -74,7 +74,7 @@ export interface ContextLedger {
|
|
|
74
74
|
maxEntries: number;
|
|
75
75
|
}
|
|
76
76
|
export interface LAFSEnvelope {
|
|
77
|
-
$schema:
|
|
77
|
+
$schema: 'https://lafs.dev/schemas/v1/envelope.schema.json';
|
|
78
78
|
_meta: LAFSMeta;
|
|
79
79
|
success: boolean;
|
|
80
80
|
result: Record<string, unknown> | Record<string, unknown>[] | null;
|
|
@@ -83,11 +83,11 @@ export interface LAFSEnvelope {
|
|
|
83
83
|
_extensions?: Record<string, unknown>;
|
|
84
84
|
}
|
|
85
85
|
export interface FlagInput {
|
|
86
|
-
requestedFormat?:
|
|
86
|
+
requestedFormat?: 'json' | 'human';
|
|
87
87
|
jsonFlag?: boolean;
|
|
88
88
|
humanFlag?: boolean;
|
|
89
|
-
projectDefault?:
|
|
90
|
-
userDefault?:
|
|
89
|
+
projectDefault?: 'json' | 'human';
|
|
90
|
+
userDefault?: 'json' | 'human';
|
|
91
91
|
/**
|
|
92
92
|
* When true, indicates the output is connected to an interactive terminal.
|
|
93
93
|
* If no explicit format flag or project/user default is set, TTY terminals
|
|
@@ -133,3 +133,4 @@ export interface BudgetEnforcementResult {
|
|
|
133
133
|
budget: number;
|
|
134
134
|
truncated: boolean;
|
|
135
135
|
}
|
|
136
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}
|
package/dist/src/types.js
CHANGED
|
@@ -1,12 +1,22 @@
|
|
|
1
1
|
export const MVI_LEVELS = new Set([
|
|
2
|
-
'minimal',
|
|
2
|
+
'minimal',
|
|
3
|
+
'standard',
|
|
4
|
+
'full',
|
|
5
|
+
'custom',
|
|
3
6
|
]);
|
|
4
7
|
export function isMVILevel(value) {
|
|
5
8
|
return typeof value === 'string' && MVI_LEVELS.has(value);
|
|
6
9
|
}
|
|
7
10
|
export const AGENT_ACTIONS = new Set([
|
|
8
|
-
'retry',
|
|
11
|
+
'retry',
|
|
12
|
+
'retry_modified',
|
|
13
|
+
'escalate',
|
|
14
|
+
'stop',
|
|
15
|
+
'wait',
|
|
16
|
+
'refresh_context',
|
|
17
|
+
'authenticate',
|
|
9
18
|
]);
|
|
10
19
|
export function isAgentAction(value) {
|
|
11
20
|
return typeof value === 'string' && AGENT_ACTIONS.has(value);
|
|
12
21
|
}
|
|
22
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAwBA,MAAM,CAAC,MAAM,UAAU,GAA0B,IAAI,GAAG,CAAW;IACjE,SAAS;IACT,UAAU;IACV,MAAM;IACN,QAAQ;CACT,CAAC,CAAC;AAEH,MAAM,UAAU,UAAU,CAAC,KAAc;IACvC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,UAAU,CAAC,GAAG,CAAC,KAAiB,CAAC,CAAC;AACxE,CAAC;AA0BD,MAAM,CAAC,MAAM,aAAa,GAAiC,IAAI,GAAG,CAAkB;IAClF,OAAO;IACP,gBAAgB;IAChB,UAAU;IACV,MAAM;IACN,MAAM;IACN,iBAAiB;IACjB,cAAc;CACf,CAAC,CAAC;AAEH,MAAM,UAAU,aAAa,CAAC,KAAc;IAC1C,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,aAAa,CAAC,GAAG,CAAC,KAAwB,CAAC,CAAC;AAClF,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { LAFSEnvelope } from
|
|
1
|
+
import type { LAFSEnvelope } from './types.js';
|
|
2
2
|
/** Structured representation of a single validation error from AJV */
|
|
3
3
|
export interface StructuredValidationError {
|
|
4
4
|
path: string;
|
|
@@ -13,3 +13,4 @@ export interface EnvelopeValidationResult {
|
|
|
13
13
|
}
|
|
14
14
|
export declare function validateEnvelope(input: unknown): EnvelopeValidationResult;
|
|
15
15
|
export declare function assertEnvelope(input: unknown): LAFSEnvelope;
|
|
16
|
+
//# sourceMappingURL=validateEnvelope.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validateEnvelope.d.ts","sourceRoot":"","sources":["../../src/validateEnvelope.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAmC/C,sEAAsE;AACtE,MAAM,WAAW,yBAAyB;IACxC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACjC;AAED,MAAM,WAAW,wBAAwB;IACvC,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,gBAAgB,EAAE,yBAAyB,EAAE,CAAC;CAC/C;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,wBAAwB,CAuBzE;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,YAAY,CAM3D"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { createRequire } from
|
|
2
|
-
import envelopeSchema from
|
|
1
|
+
import { createRequire } from 'node:module';
|
|
2
|
+
import envelopeSchema from '../schemas/v1/envelope.schema.json' with { type: 'json' };
|
|
3
3
|
const require = createRequire(import.meta.url);
|
|
4
|
-
const AjvModule = require(
|
|
5
|
-
const AddFormatsModule = require(
|
|
6
|
-
const AjvCtor = (typeof AjvModule ===
|
|
7
|
-
const addFormats = (typeof AddFormatsModule ===
|
|
4
|
+
const AjvModule = require('ajv');
|
|
5
|
+
const AddFormatsModule = require('ajv-formats');
|
|
6
|
+
const AjvCtor = (typeof AjvModule === 'function' ? AjvModule : AjvModule.default);
|
|
7
|
+
const addFormats = (typeof AddFormatsModule === 'function' ? AddFormatsModule : AddFormatsModule.default);
|
|
8
8
|
const ajv = new AjvCtor({ allErrors: true, strict: true, allowUnionTypes: true });
|
|
9
9
|
addFormats(ajv);
|
|
10
10
|
const validate = ajv.compile(envelopeSchema);
|
|
@@ -14,9 +14,9 @@ export function validateEnvelope(input) {
|
|
|
14
14
|
return { valid: true, errors: [], structuredErrors: [] };
|
|
15
15
|
}
|
|
16
16
|
const structuredErrors = (validate.errors ?? []).map((error) => ({
|
|
17
|
-
path: error.instancePath ||
|
|
18
|
-
keyword: error.keyword ??
|
|
19
|
-
message: error.message ??
|
|
17
|
+
path: error.instancePath || '/',
|
|
18
|
+
keyword: error.keyword ?? 'unknown',
|
|
19
|
+
message: error.message ?? 'validation error',
|
|
20
20
|
params: error.params ?? {},
|
|
21
21
|
}));
|
|
22
22
|
const errors = structuredErrors.map((se) => `${se.path} ${se.message}`.trim());
|
|
@@ -25,7 +25,8 @@ export function validateEnvelope(input) {
|
|
|
25
25
|
export function assertEnvelope(input) {
|
|
26
26
|
const result = validateEnvelope(input);
|
|
27
27
|
if (!result.valid) {
|
|
28
|
-
throw new Error(`Invalid LAFS envelope: ${result.errors.join(
|
|
28
|
+
throw new Error(`Invalid LAFS envelope: ${result.errors.join('; ')}`);
|
|
29
29
|
}
|
|
30
30
|
return input;
|
|
31
31
|
}
|
|
32
|
+
//# sourceMappingURL=validateEnvelope.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validateEnvelope.js","sourceRoot":"","sources":["../../src/validateEnvelope.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,cAAc,MAAM,oCAAoC,CAAC,OAAO,IAAI,EAAE,MAAM,EAAE,CAAC;AAGtF,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC/C,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAId,CAAC;AAClB,MAAM,gBAAgB,GAAG,OAAO,CAAC,aAAa,CAElB,CAAC;AAE7B,MAAM,OAAO,GAAG,CAAC,OAAO,SAAS,KAAK,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAY/E,CAAC;AAEF,MAAM,UAAU,GAAG,CACjB,OAAO,gBAAgB,KAAK,UAAU,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,gBAAgB,CAAC,OAAO,CAC3D,CAAC;AAE5B,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC,CAAC;AAClF,UAAU,CAAC,GAAG,CAAC,CAAC;AAEhB,MAAM,QAAQ,GAAG,GAAG,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;AAgB7C,MAAM,UAAU,gBAAgB,CAAC,KAAc;IAC7C,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC9B,IAAI,KAAK,EAAE,CAAC;QACV,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,gBAAgB,EAAE,EAAE,EAAE,CAAC;IAC3D,CAAC;IAED,MAAM,gBAAgB,GAAgC,CAAC,QAAQ,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,GAAG,CAC/E,CAAC,KAKA,EAAE,EAAE,CAAC,CAAC;QACL,IAAI,EAAE,KAAK,CAAC,YAAY,IAAI,GAAG;QAC/B,OAAO,EAAE,KAAK,CAAC,OAAO,IAAI,SAAS;QACnC,OAAO,EAAE,KAAK,CAAC,OAAO,IAAI,kBAAkB;QAC5C,MAAM,EAAE,KAAK,CAAC,MAAM,IAAI,EAAE;KAC3B,CAAC,CACH,CAAC;IAEF,MAAM,MAAM,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;IAE/E,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAC;AACpD,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,KAAc;IAC3C,MAAM,MAAM,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC;IACvC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CAAC,0BAA0B,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACxE,CAAC;IACD,OAAO,KAAqB,CAAC;AAC/B,CAAC"}
|