@cleocode/lafs 2026.4.0 → 2026.4.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (131) hide show
  1. package/README.md +97 -68
  2. package/dist/src/a2a/bindings/grpc.d.ts +117 -11
  3. package/dist/src/a2a/bindings/grpc.d.ts.map +1 -1
  4. package/dist/src/a2a/bindings/grpc.js +79 -8
  5. package/dist/src/a2a/bindings/grpc.js.map +1 -1
  6. package/dist/src/a2a/bindings/http.d.ts +129 -14
  7. package/dist/src/a2a/bindings/http.d.ts.map +1 -1
  8. package/dist/src/a2a/bindings/http.js +93 -12
  9. package/dist/src/a2a/bindings/http.js.map +1 -1
  10. package/dist/src/a2a/bindings/index.d.ts +80 -7
  11. package/dist/src/a2a/bindings/index.d.ts.map +1 -1
  12. package/dist/src/a2a/bindings/index.js +69 -2
  13. package/dist/src/a2a/bindings/index.js.map +1 -1
  14. package/dist/src/a2a/bindings/jsonrpc.d.ts +193 -9
  15. package/dist/src/a2a/bindings/jsonrpc.d.ts.map +1 -1
  16. package/dist/src/a2a/bindings/jsonrpc.js +152 -9
  17. package/dist/src/a2a/bindings/jsonrpc.js.map +1 -1
  18. package/dist/src/a2a/bridge.d.ts +232 -37
  19. package/dist/src/a2a/bridge.d.ts.map +1 -1
  20. package/dist/src/a2a/bridge.js +172 -24
  21. package/dist/src/a2a/bridge.js.map +1 -1
  22. package/dist/src/a2a/extensions.d.ts +221 -12
  23. package/dist/src/a2a/extensions.d.ts.map +1 -1
  24. package/dist/src/a2a/extensions.js +175 -11
  25. package/dist/src/a2a/extensions.js.map +1 -1
  26. package/dist/src/a2a/index.d.ts +2 -0
  27. package/dist/src/a2a/index.d.ts.map +1 -1
  28. package/dist/src/a2a/index.js +2 -0
  29. package/dist/src/a2a/index.js.map +1 -1
  30. package/dist/src/a2a/streaming.d.ts +274 -2
  31. package/dist/src/a2a/streaming.d.ts.map +1 -1
  32. package/dist/src/a2a/streaming.js +245 -2
  33. package/dist/src/a2a/streaming.js.map +1 -1
  34. package/dist/src/a2a/task-lifecycle.d.ts +339 -19
  35. package/dist/src/a2a/task-lifecycle.d.ts.map +1 -1
  36. package/dist/src/a2a/task-lifecycle.js +302 -19
  37. package/dist/src/a2a/task-lifecycle.js.map +1 -1
  38. package/dist/src/budgetEnforcement.d.ts +88 -14
  39. package/dist/src/budgetEnforcement.d.ts.map +1 -1
  40. package/dist/src/budgetEnforcement.js +132 -19
  41. package/dist/src/budgetEnforcement.js.map +1 -1
  42. package/dist/src/circuit-breaker/index.d.ts +254 -9
  43. package/dist/src/circuit-breaker/index.d.ts.map +1 -1
  44. package/dist/src/circuit-breaker/index.js +218 -9
  45. package/dist/src/circuit-breaker/index.js.map +1 -1
  46. package/dist/src/compliance.d.ts +176 -0
  47. package/dist/src/compliance.d.ts.map +1 -1
  48. package/dist/src/compliance.js +100 -0
  49. package/dist/src/compliance.js.map +1 -1
  50. package/dist/src/conformance.d.ts +52 -0
  51. package/dist/src/conformance.d.ts.map +1 -1
  52. package/dist/src/conformance.js +41 -0
  53. package/dist/src/conformance.js.map +1 -1
  54. package/dist/src/conformanceProfiles.d.ts +66 -0
  55. package/dist/src/conformanceProfiles.d.ts.map +1 -1
  56. package/dist/src/conformanceProfiles.js +51 -0
  57. package/dist/src/conformanceProfiles.js.map +1 -1
  58. package/dist/src/deprecationRegistry.d.ts +80 -0
  59. package/dist/src/deprecationRegistry.d.ts.map +1 -1
  60. package/dist/src/deprecationRegistry.js +50 -0
  61. package/dist/src/deprecationRegistry.js.map +1 -1
  62. package/dist/src/discovery.d.ts +344 -63
  63. package/dist/src/discovery.d.ts.map +1 -1
  64. package/dist/src/discovery.js +67 -13
  65. package/dist/src/discovery.js.map +1 -1
  66. package/dist/src/envelope.d.ts +252 -0
  67. package/dist/src/envelope.d.ts.map +1 -1
  68. package/dist/src/envelope.js +165 -0
  69. package/dist/src/envelope.js.map +1 -1
  70. package/dist/src/errorRegistry.d.ts +159 -0
  71. package/dist/src/errorRegistry.d.ts.map +1 -1
  72. package/dist/src/errorRegistry.js +115 -0
  73. package/dist/src/errorRegistry.js.map +1 -1
  74. package/dist/src/fieldExtraction.d.ts +125 -25
  75. package/dist/src/fieldExtraction.d.ts.map +1 -1
  76. package/dist/src/fieldExtraction.js +85 -16
  77. package/dist/src/fieldExtraction.js.map +1 -1
  78. package/dist/src/flagResolver.d.ts +75 -9
  79. package/dist/src/flagResolver.d.ts.map +1 -1
  80. package/dist/src/flagResolver.js +20 -4
  81. package/dist/src/flagResolver.js.map +1 -1
  82. package/dist/src/flagSemantics.d.ts +76 -1
  83. package/dist/src/flagSemantics.d.ts.map +1 -1
  84. package/dist/src/flagSemantics.js +66 -0
  85. package/dist/src/flagSemantics.js.map +1 -1
  86. package/dist/src/health/index.d.ts +87 -6
  87. package/dist/src/health/index.d.ts.map +1 -1
  88. package/dist/src/health/index.js +54 -6
  89. package/dist/src/health/index.js.map +1 -1
  90. package/dist/src/index.d.ts +12 -1
  91. package/dist/src/index.d.ts.map +1 -1
  92. package/dist/src/index.js +12 -1
  93. package/dist/src/index.js.map +1 -1
  94. package/dist/src/mviProjection.d.ts +42 -6
  95. package/dist/src/mviProjection.d.ts.map +1 -1
  96. package/dist/src/mviProjection.js +31 -5
  97. package/dist/src/mviProjection.js.map +1 -1
  98. package/dist/src/native-loader.d.ts +49 -0
  99. package/dist/src/native-loader.d.ts.map +1 -0
  100. package/dist/src/native-loader.js +56 -0
  101. package/dist/src/native-loader.js.map +1 -0
  102. package/dist/src/problemDetails.d.ts +70 -4
  103. package/dist/src/problemDetails.d.ts.map +1 -1
  104. package/dist/src/problemDetails.js +21 -3
  105. package/dist/src/problemDetails.js.map +1 -1
  106. package/dist/src/shutdown/index.d.ts +96 -7
  107. package/dist/src/shutdown/index.d.ts.map +1 -1
  108. package/dist/src/shutdown/index.js +72 -7
  109. package/dist/src/shutdown/index.js.map +1 -1
  110. package/dist/src/tokenEstimator.d.ts +97 -11
  111. package/dist/src/tokenEstimator.d.ts.map +1 -1
  112. package/dist/src/tokenEstimator.js +90 -11
  113. package/dist/src/tokenEstimator.js.map +1 -1
  114. package/dist/src/types.d.ts +467 -2
  115. package/dist/src/types.d.ts.map +1 -1
  116. package/dist/src/types.js +64 -0
  117. package/dist/src/types.js.map +1 -1
  118. package/dist/src/validateEnvelope.d.ts +59 -1
  119. package/dist/src/validateEnvelope.d.ts.map +1 -1
  120. package/dist/src/validateEnvelope.js +75 -9
  121. package/dist/src/validateEnvelope.js.map +1 -1
  122. package/dist/tsconfig.build.tsbuildinfo +1 -1
  123. package/lafs.md +3 -4
  124. package/package.json +6 -3
  125. package/dist/src/mcpAdapter.d.ts +0 -29
  126. package/dist/src/mcpAdapter.d.ts.map +0 -1
  127. package/dist/src/mcpAdapter.js +0 -286
  128. package/dist/src/mcpAdapter.js.map +0 -1
  129. package/schemas/v1/conformance-profiles.d.ts +0 -15
  130. package/schemas/v1/envelope.schema.d.ts +0 -14
  131. package/schemas/v1/error-registry.d.ts +0 -24
@@ -1,286 +0,0 @@
1
- import { randomUUID } from 'node:crypto';
2
- /**
3
- * Extract result from MCP content array
4
- * Attempts to parse JSON content, falls back to text representation
5
- */
6
- function extractResultFromContent(content) {
7
- if (!content || content.length === 0) {
8
- return null;
9
- }
10
- // Combine all text content
11
- const textParts = [];
12
- const otherContent = [];
13
- for (const item of content) {
14
- if (item.type === 'text' && item.text) {
15
- textParts.push(item.text);
16
- }
17
- else {
18
- otherContent.push(item);
19
- }
20
- }
21
- // Try to parse as JSON if single text item looks like JSON
22
- if (textParts.length === 1) {
23
- const text = textParts[0]?.trim() ?? '';
24
- if (text.startsWith('{') || text.startsWith('[')) {
25
- try {
26
- const parsed = JSON.parse(text);
27
- if (typeof parsed === 'object' && parsed !== null) {
28
- return parsed;
29
- }
30
- }
31
- catch {
32
- // Not valid JSON, treat as text
33
- }
34
- }
35
- }
36
- // Combine into result object
37
- const result = {};
38
- if (textParts.length > 0) {
39
- result.text = textParts.length === 1 ? textParts[0] : textParts.join('\n');
40
- }
41
- if (otherContent.length > 0) {
42
- result.content = otherContent;
43
- }
44
- return result;
45
- }
46
- /**
47
- * Estimate token count from content
48
- * Rough estimation: ~4 characters per token
49
- */
50
- function estimateTokens(content) {
51
- if (!content)
52
- return 0;
53
- const jsonString = JSON.stringify(content);
54
- return Math.ceil(jsonString.length / 4);
55
- }
56
- /**
57
- * Truncate content to fit within budget
58
- */
59
- function truncateToBudget(content, budget) {
60
- if (!content)
61
- return { result: null, truncated: false, originalEstimate: 0 };
62
- const originalEstimate = estimateTokens(content);
63
- if (originalEstimate <= budget) {
64
- return { result: content, truncated: false, originalEstimate };
65
- }
66
- // Calculate truncation ratio
67
- const ratio = budget / originalEstimate;
68
- const jsonString = JSON.stringify(content);
69
- const targetLength = Math.floor(jsonString.length * ratio);
70
- // Truncate the string and try to make it valid JSON
71
- let truncated = jsonString.slice(0, targetLength);
72
- // Close any open structures
73
- const openBraces = (truncated.match(/\{/g) || []).length - (truncated.match(/\}/g) || []).length;
74
- const openBrackets = (truncated.match(/\[/g) || []).length - (truncated.match(/\]/g) || []).length;
75
- truncated += '}'.repeat(Math.max(0, openBraces));
76
- truncated += ']'.repeat(Math.max(0, openBrackets));
77
- try {
78
- const parsed = JSON.parse(truncated);
79
- // Add truncation notice
80
- if (typeof parsed === 'object' && parsed !== null) {
81
- parsed['_truncated'] = true;
82
- parsed['_originalTokens'] = originalEstimate;
83
- parsed['_budget'] = budget;
84
- }
85
- return { result: parsed, truncated: true, originalEstimate };
86
- }
87
- catch {
88
- // If parsing fails, return minimal result
89
- return {
90
- result: {
91
- _truncated: true,
92
- _error: 'Content truncated due to budget constraints',
93
- _originalTokens: originalEstimate,
94
- _budget: budget,
95
- },
96
- truncated: true,
97
- originalEstimate,
98
- };
99
- }
100
- }
101
- /**
102
- * Convert MCP error to LAFS error format
103
- */
104
- function convertMCPErrorToLAFS(mcpResult, operation) {
105
- const content = mcpResult.content;
106
- const errorText = content
107
- .filter((item) => item.type === 'text' && typeof item.text === 'string')
108
- .map((item) => item.text)
109
- .join('\n');
110
- // Determine error category based on error text
111
- let category = 'INTERNAL';
112
- let code = 'E_MCP_INTERNAL_ERROR';
113
- let retryable = false;
114
- let retryAfterMs = null;
115
- const errorLower = errorText.toLowerCase();
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';
121
- }
122
- else if (errorLower.includes('rate limit') || errorLower.includes('too many requests')) {
123
- category = 'RATE_LIMIT';
124
- code = 'E_MCP_RATE_LIMIT';
125
- retryable = true;
126
- retryAfterMs = 60000; // 1 minute default
127
- }
128
- else if (errorLower.includes('auth') ||
129
- errorLower.includes('unauthorized') ||
130
- errorLower.includes('forbidden')) {
131
- category = 'AUTH';
132
- code = 'E_MCP_AUTH_ERROR';
133
- }
134
- else if (errorLower.includes('permission') || errorLower.includes('access denied')) {
135
- category = 'PERMISSION';
136
- code = 'E_MCP_PERMISSION_DENIED';
137
- }
138
- else if (errorLower.includes('validation') || errorLower.includes('invalid')) {
139
- category = 'VALIDATION';
140
- code = 'E_MCP_VALIDATION_ERROR';
141
- }
142
- else if (errorLower.includes('timeout') || errorLower.includes('transient')) {
143
- category = 'TRANSIENT';
144
- code = 'E_MCP_TRANSIENT_ERROR';
145
- retryable = true;
146
- retryAfterMs = 5000; // 5 seconds
147
- }
148
- return {
149
- code,
150
- message: errorText || 'MCP tool execution failed',
151
- category,
152
- retryable,
153
- retryAfterMs,
154
- details: {
155
- operation,
156
- mcpError: true,
157
- contentTypes: content.map((c) => c.type),
158
- },
159
- };
160
- }
161
- /**
162
- * Wrap MCP tool result in LAFS envelope
163
- *
164
- * @param mcpResult - The raw MCP CallToolResult
165
- * @param operation - The operation name (tool name)
166
- * @param budget - Optional token budget for response
167
- * @returns LAFS-compliant envelope
168
- */
169
- export function wrapMCPResult(mcpResult, operation, budget) {
170
- const requestId = randomUUID();
171
- const timestamp = new Date().toISOString();
172
- // Build base meta
173
- const meta = {
174
- specVersion: '1.0.0',
175
- schemaVersion: '1.0.0',
176
- timestamp,
177
- operation,
178
- requestId,
179
- transport: 'sdk',
180
- strict: true,
181
- mvi: 'standard',
182
- contextVersion: 1,
183
- };
184
- // Handle MCP error
185
- if (mcpResult.isError) {
186
- const error = convertMCPErrorToLAFS(mcpResult, operation);
187
- return {
188
- $schema: 'https://lafs.dev/schemas/v1/envelope.schema.json',
189
- _meta: meta,
190
- success: false,
191
- result: null,
192
- error,
193
- };
194
- }
195
- // Extract result from MCP content
196
- let result = extractResultFromContent(mcpResult.content);
197
- let truncated = false;
198
- let originalEstimate = 0;
199
- let extensions;
200
- // Apply budget enforcement if specified
201
- if (budget !== undefined && budget > 0) {
202
- const budgetResult = truncateToBudget(result, budget);
203
- result = budgetResult.result;
204
- truncated = budgetResult.truncated;
205
- originalEstimate = budgetResult.originalEstimate;
206
- // Put token estimate in extensions to comply with strict schema
207
- extensions = {
208
- 'x-mcp-token-estimate': {
209
- estimated: truncated ? budget : originalEstimate,
210
- truncated,
211
- originalEstimate: truncated ? originalEstimate : undefined,
212
- },
213
- };
214
- }
215
- return {
216
- $schema: 'https://lafs.dev/schemas/v1/envelope.schema.json',
217
- _meta: meta,
218
- success: true,
219
- result,
220
- error: null,
221
- _extensions: extensions,
222
- };
223
- }
224
- /**
225
- * Create a LAFS error envelope for MCP adapter errors
226
- *
227
- * @param message - Error message
228
- * @param operation - The operation being performed
229
- * @param category - Error category
230
- * @returns LAFS error envelope
231
- */
232
- export function createAdapterErrorEnvelope(message, operation, category = 'INTERNAL') {
233
- const requestId = randomUUID();
234
- const timestamp = new Date().toISOString();
235
- const error = {
236
- code: 'E_MCP_ADAPTER_ERROR',
237
- message,
238
- category,
239
- retryable: category === 'TRANSIENT' || category === 'RATE_LIMIT',
240
- retryAfterMs: category === 'RATE_LIMIT' ? 60000 : category === 'TRANSIENT' ? 5000 : null,
241
- details: {
242
- operation,
243
- adapterError: true,
244
- },
245
- };
246
- return {
247
- $schema: 'https://lafs.dev/schemas/v1/envelope.schema.json',
248
- _meta: {
249
- specVersion: '1.0.0',
250
- schemaVersion: '1.0.0',
251
- timestamp,
252
- operation,
253
- requestId,
254
- transport: 'sdk',
255
- strict: true,
256
- mvi: 'standard',
257
- contextVersion: 1,
258
- },
259
- success: false,
260
- result: null,
261
- error,
262
- };
263
- }
264
- /**
265
- * Type guard to check if content is TextContent
266
- */
267
- export function isTextContent(content) {
268
- return (typeof content === 'object' &&
269
- content !== null &&
270
- 'type' in content &&
271
- content.type === 'text' &&
272
- 'text' in content &&
273
- typeof content.text === 'string');
274
- }
275
- /**
276
- * Parse MCP text content as JSON if possible
277
- */
278
- export function parseMCPTextContent(content) {
279
- try {
280
- return JSON.parse(content.text);
281
- }
282
- catch {
283
- return content.text;
284
- }
285
- }
286
- //# sourceMappingURL=mcpAdapter.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mcpAdapter.js","sourceRoot":"","sources":["../../src/mcpAdapter.ts"],"names":[],"mappings":"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"}
@@ -1,15 +0,0 @@
1
- // Auto-generated from conformance-profiles.json
2
- // Do not edit manually - run: node scripts/generate-json-types.mjs
3
-
4
- export interface ConformanceProfilesSchema {
5
- $schema: string;
6
- version: string;
7
- tiers: {
8
- core: string[];
9
- standard: string[];
10
- complete: string[];
11
- };
12
- }
13
-
14
- declare const schema: ConformanceProfilesSchema;
15
- export default schema;
@@ -1,14 +0,0 @@
1
- // Auto-generated from envelope.schema.json
2
- // Do not edit manually - run: node scripts/generate-json-types.mjs
3
-
4
- export interface EnvelopeSchema {
5
- $schema: string;
6
- $id: string;
7
- title: string;
8
- type: 'object';
9
- required: string[];
10
- properties: Record<string, unknown>;
11
- }
12
-
13
- declare const schema: EnvelopeSchema;
14
- export default schema;
@@ -1,24 +0,0 @@
1
- // Auto-generated from error-registry.json
2
- // Do not edit manually - run: node scripts/generate-json-types.mjs
3
-
4
- export interface ErrorEntry {
5
- code: string;
6
- category: 'CONTRACT' | 'VALIDATION' | 'NOT_FOUND' | 'CONFLICT' | 'SERVER' | 'TRANSPORT' | 'AUTH' | 'RATE_LIMIT' | 'TIMEOUT' | 'PAYMENT' | 'AGENT' | 'PROTOCOL' | 'HOOK';
7
- description: string;
8
- retryable: boolean;
9
- httpStatus: number;
10
- grpcStatus: string;
11
- cliExit: number;
12
- agentAction: 'stop' | 'retry' | 'retry_modified' | 'refresh_context' | 'continue' | 'escalate';
13
- typeUri: string;
14
- docUrl: string;
15
- }
16
-
17
- export interface ErrorRegistrySchema {
18
- $schema: string;
19
- version: string;
20
- codes: ErrorEntry[];
21
- }
22
-
23
- declare const schema: ErrorRegistrySchema;
24
- export default schema;