@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.
Files changed (144) hide show
  1. package/LICENSE +0 -0
  2. package/README.md +0 -0
  3. package/dist/schemas/v1/agent-card.schema.json +230 -0
  4. package/dist/schemas/v1/conformance-profiles.json +0 -0
  5. package/dist/schemas/v1/context-ledger.schema.json +70 -0
  6. package/dist/schemas/v1/discovery.schema.json +132 -0
  7. package/dist/schemas/v1/envelope.schema.json +0 -0
  8. package/dist/schemas/v1/error-registry.json +0 -0
  9. package/dist/src/a2a/bindings/grpc.d.ts +1 -0
  10. package/dist/src/a2a/bindings/grpc.d.ts.map +1 -0
  11. package/dist/src/a2a/bindings/grpc.js +1 -0
  12. package/dist/src/a2a/bindings/grpc.js.map +1 -0
  13. package/dist/src/a2a/bindings/http.d.ts +2 -1
  14. package/dist/src/a2a/bindings/http.d.ts.map +1 -0
  15. package/dist/src/a2a/bindings/http.js +8 -2
  16. package/dist/src/a2a/bindings/http.js.map +1 -0
  17. package/dist/src/a2a/bindings/index.d.ts +3 -2
  18. package/dist/src/a2a/bindings/index.d.ts.map +1 -0
  19. package/dist/src/a2a/bindings/index.js +5 -4
  20. package/dist/src/a2a/bindings/index.js.map +1 -0
  21. package/dist/src/a2a/bindings/jsonrpc.d.ts +1 -0
  22. package/dist/src/a2a/bindings/jsonrpc.d.ts.map +1 -0
  23. package/dist/src/a2a/bindings/jsonrpc.js +3 -1
  24. package/dist/src/a2a/bindings/jsonrpc.js.map +1 -0
  25. package/dist/src/a2a/bridge.d.ts +5 -7
  26. package/dist/src/a2a/bridge.d.ts.map +1 -0
  27. package/dist/src/a2a/bridge.js +15 -24
  28. package/dist/src/a2a/bridge.js.map +1 -0
  29. package/dist/src/a2a/extensions.d.ts +1 -0
  30. package/dist/src/a2a/extensions.d.ts.map +1 -0
  31. package/dist/src/a2a/extensions.js +3 -2
  32. package/dist/src/a2a/extensions.js.map +1 -0
  33. package/dist/src/a2a/index.d.ts +8 -7
  34. package/dist/src/a2a/index.d.ts.map +1 -0
  35. package/dist/src/a2a/index.js +22 -27
  36. package/dist/src/a2a/index.js.map +1 -0
  37. package/dist/src/a2a/streaming.d.ts +2 -1
  38. package/dist/src/a2a/streaming.d.ts.map +1 -0
  39. package/dist/src/a2a/streaming.js +10 -9
  40. package/dist/src/a2a/streaming.js.map +1 -0
  41. package/dist/src/a2a/task-lifecycle.d.ts +2 -1
  42. package/dist/src/a2a/task-lifecycle.d.ts.map +1 -0
  43. package/dist/src/a2a/task-lifecycle.js +25 -7
  44. package/dist/src/a2a/task-lifecycle.js.map +1 -0
  45. package/dist/src/budgetEnforcement.d.ts +5 -6
  46. package/dist/src/budgetEnforcement.d.ts.map +1 -0
  47. package/dist/src/budgetEnforcement.js +14 -12
  48. package/dist/src/budgetEnforcement.js.map +1 -0
  49. package/dist/src/circuit-breaker/index.d.ts +6 -1
  50. package/dist/src/circuit-breaker/index.d.ts.map +1 -0
  51. package/dist/src/circuit-breaker/index.js +8 -5
  52. package/dist/src/circuit-breaker/index.js.map +1 -0
  53. package/dist/src/cli.d.ts +1 -0
  54. package/dist/src/cli.d.ts.map +1 -0
  55. package/dist/src/cli.js +12 -11
  56. package/dist/src/cli.js.map +1 -0
  57. package/dist/src/compliance.d.ts +4 -3
  58. package/dist/src/compliance.d.ts.map +1 -0
  59. package/dist/src/compliance.js +14 -13
  60. package/dist/src/compliance.js.map +1 -0
  61. package/dist/src/conformance.d.ts +3 -2
  62. package/dist/src/conformance.d.ts.map +1 -0
  63. package/dist/src/conformance.js +83 -76
  64. package/dist/src/conformance.js.map +1 -0
  65. package/dist/src/conformanceProfiles.d.ts +2 -1
  66. package/dist/src/conformanceProfiles.d.ts.map +1 -0
  67. package/dist/src/conformanceProfiles.js +2 -1
  68. package/dist/src/conformanceProfiles.js.map +1 -0
  69. package/dist/src/deprecationRegistry.d.ts +2 -1
  70. package/dist/src/deprecationRegistry.d.ts.map +1 -0
  71. package/dist/src/deprecationRegistry.js +8 -7
  72. package/dist/src/deprecationRegistry.js.map +1 -0
  73. package/dist/src/discovery.d.ts +3 -2
  74. package/dist/src/discovery.d.ts.map +1 -0
  75. package/dist/src/discovery.js +63 -59
  76. package/dist/src/discovery.js.map +1 -0
  77. package/dist/src/envelope.d.ts +10 -9
  78. package/dist/src/envelope.d.ts.map +1 -0
  79. package/dist/src/envelope.js +14 -15
  80. package/dist/src/envelope.js.map +1 -0
  81. package/dist/src/errorRegistry.d.ts +4 -3
  82. package/dist/src/errorRegistry.d.ts.map +1 -0
  83. package/dist/src/errorRegistry.js +4 -3
  84. package/dist/src/errorRegistry.js.map +1 -0
  85. package/dist/src/fieldExtraction.d.ts +3 -2
  86. package/dist/src/fieldExtraction.d.ts.map +1 -0
  87. package/dist/src/fieldExtraction.js +15 -11
  88. package/dist/src/fieldExtraction.js.map +1 -0
  89. package/dist/src/flagResolver.d.ts +2 -1
  90. package/dist/src/flagResolver.d.ts.map +1 -0
  91. package/dist/src/flagResolver.js +2 -1
  92. package/dist/src/flagResolver.js.map +1 -0
  93. package/dist/src/flagSemantics.d.ts +4 -3
  94. package/dist/src/flagSemantics.d.ts.map +1 -0
  95. package/dist/src/flagSemantics.js +12 -11
  96. package/dist/src/flagSemantics.js.map +1 -0
  97. package/dist/src/health/index.d.ts +16 -3
  98. package/dist/src/health/index.d.ts.map +1 -0
  99. package/dist/src/health/index.js +21 -20
  100. package/dist/src/health/index.js.map +1 -0
  101. package/dist/src/index.d.ts +23 -23
  102. package/dist/src/index.d.ts.map +1 -0
  103. package/dist/src/index.js +29 -28
  104. package/dist/src/index.js.map +1 -0
  105. package/dist/src/mcpAdapter.d.ts +4 -3
  106. package/dist/src/mcpAdapter.d.ts.map +1 -0
  107. package/dist/src/mcpAdapter.js +62 -57
  108. package/dist/src/mcpAdapter.js.map +1 -0
  109. package/dist/src/mviProjection.d.ts +1 -0
  110. package/dist/src/mviProjection.d.ts.map +1 -0
  111. package/dist/src/mviProjection.js +1 -0
  112. package/dist/src/mviProjection.js.map +1 -0
  113. package/dist/src/problemDetails.d.ts +1 -0
  114. package/dist/src/problemDetails.d.ts.map +1 -0
  115. package/dist/src/problemDetails.js +6 -0
  116. package/dist/src/problemDetails.js.map +1 -0
  117. package/dist/src/shutdown/index.d.ts +7 -2
  118. package/dist/src/shutdown/index.d.ts.map +1 -0
  119. package/dist/src/shutdown/index.js +6 -5
  120. package/dist/src/shutdown/index.js.map +1 -0
  121. package/dist/src/tokenEstimator.d.ts +1 -0
  122. package/dist/src/tokenEstimator.d.ts.map +1 -0
  123. package/dist/src/tokenEstimator.js +1 -2
  124. package/dist/src/tokenEstimator.js.map +1 -0
  125. package/dist/src/types.d.ts +10 -9
  126. package/dist/src/types.d.ts.map +1 -0
  127. package/dist/src/types.js +12 -2
  128. package/dist/src/types.js.map +1 -0
  129. package/dist/src/validateEnvelope.d.ts +2 -1
  130. package/dist/src/validateEnvelope.d.ts.map +1 -0
  131. package/dist/src/validateEnvelope.js +11 -10
  132. package/dist/src/validateEnvelope.js.map +1 -0
  133. package/dist/tsconfig.build.tsbuildinfo +1 -0
  134. package/lafs.md +0 -0
  135. package/package.json +10 -11
  136. package/schemas/v1/agent-card.schema.json +0 -0
  137. package/schemas/v1/conformance-profiles.d.ts +15 -0
  138. package/schemas/v1/conformance-profiles.json +0 -0
  139. package/schemas/v1/context-ledger.schema.json +0 -0
  140. package/schemas/v1/discovery.schema.json +0 -0
  141. package/schemas/v1/envelope.schema.d.ts +14 -0
  142. package/schemas/v1/envelope.schema.json +0 -0
  143. package/schemas/v1/error-registry.d.ts +24 -0
  144. package/schemas/v1/error-registry.json +0 -0
@@ -1,4 +1,4 @@
1
- import { randomUUID } from "node:crypto";
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 === "text" && item.text) {
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("{") || 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 === "object" && parsed !== null) {
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("\n");
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 += "}".repeat(Math.max(0, openBraces));
76
- truncated += "]".repeat(Math.max(0, openBrackets));
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 === "object" && parsed !== null) {
81
- parsed["_truncated"] = true;
82
- parsed["_originalTokens"] = originalEstimate;
83
- parsed["_budget"] = budget;
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: "Content truncated due to budget constraints",
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 === "text" && typeof item.text === "string")
107
+ .filter((item) => item.type === 'text' && typeof item.text === 'string')
108
108
  .map((item) => item.text)
109
- .join("\n");
109
+ .join('\n');
110
110
  // Determine error category based on error text
111
- let category = "INTERNAL";
112
- let code = "E_MCP_INTERNAL_ERROR";
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("not found") || errorLower.includes("doesn't exist") || errorLower.includes("does not exist")) {
117
- category = "NOT_FOUND";
118
- code = "E_MCP_NOT_FOUND";
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("rate limit") || errorLower.includes("too many requests")) {
121
- category = "RATE_LIMIT";
122
- code = "E_MCP_RATE_LIMIT";
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("auth") || errorLower.includes("unauthorized") || errorLower.includes("forbidden")) {
127
- category = "AUTH";
128
- code = "E_MCP_AUTH_ERROR";
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("permission") || errorLower.includes("access denied")) {
131
- category = "PERMISSION";
132
- code = "E_MCP_PERMISSION_DENIED";
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("validation") || errorLower.includes("invalid")) {
135
- category = "VALIDATION";
136
- code = "E_MCP_VALIDATION_ERROR";
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("timeout") || errorLower.includes("transient")) {
139
- category = "TRANSIENT";
140
- code = "E_MCP_TRANSIENT_ERROR";
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 || "MCP tool execution failed",
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: "1.0.0",
171
- schemaVersion: "1.0.0",
174
+ specVersion: '1.0.0',
175
+ schemaVersion: '1.0.0',
172
176
  timestamp,
173
177
  operation,
174
178
  requestId,
175
- transport: "sdk",
179
+ transport: 'sdk',
176
180
  strict: true,
177
- mvi: "standard",
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: "https://lafs.dev/schemas/v1/envelope.schema.json",
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
- "x-mcp-token-estimate": {
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: "https://lafs.dev/schemas/v1/envelope.schema.json",
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 = "INTERNAL") {
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: "E_MCP_ADAPTER_ERROR",
236
+ code: 'E_MCP_ADAPTER_ERROR',
233
237
  message,
234
238
  category,
235
- retryable: category === "TRANSIENT" || category === "RATE_LIMIT",
236
- retryAfterMs: category === "RATE_LIMIT" ? 60000 : category === "TRANSIENT" ? 5000 : null,
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: "https://lafs.dev/schemas/v1/envelope.schema.json",
247
+ $schema: 'https://lafs.dev/schemas/v1/envelope.schema.json',
244
248
  _meta: {
245
- specVersion: "1.0.0",
246
- schemaVersion: "1.0.0",
249
+ specVersion: '1.0.0',
250
+ schemaVersion: '1.0.0',
247
251
  timestamp,
248
252
  operation,
249
253
  requestId,
250
- transport: "sdk",
254
+ transport: 'sdk',
251
255
  strict: true,
252
- mvi: "standard",
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 === "object" &&
268
+ return (typeof content === 'object' &&
265
269
  content !== null &&
266
- "type" in content &&
267
- content.type === "text" &&
268
- "text" in content &&
269
- typeof content.text === "string");
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"}
@@ -114,3 +114,4 @@ export function estimateProjectedTokens(projected) {
114
114
  const json = JSON.stringify(projected);
115
115
  return Math.ceil(json.length / 4);
116
116
  }
117
+ //# sourceMappingURL=mviProjection.js.map
@@ -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(): (req: any, res: any, next: any) => void;
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 (req, res, next) => {
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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"}
@@ -1,5 +1,5 @@
1
- export type LAFSTransport = "cli" | "http" | "grpc" | "sdk";
2
- export type LAFSErrorCategory = "VALIDATION" | "AUTH" | "PERMISSION" | "NOT_FOUND" | "CONFLICT" | "RATE_LIMIT" | "TRANSIENT" | "INTERNAL" | "CONTRACT" | "MIGRATION";
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: "cursor";
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: "offset";
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: "none";
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: "https://lafs.dev/schemas/v1/envelope.schema.json";
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?: "json" | "human";
86
+ requestedFormat?: 'json' | 'human';
87
87
  jsonFlag?: boolean;
88
88
  humanFlag?: boolean;
89
- projectDefault?: "json" | "human";
90
- userDefault?: "json" | "human";
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', 'standard', 'full', 'custom',
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', 'retry_modified', 'escalate', 'stop', 'wait', 'refresh_context', 'authenticate',
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 "./types.js";
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 "node:module";
2
- import envelopeSchema from "../schemas/v1/envelope.schema.json" with { type: "json" };
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("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);
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 ?? "unknown",
19
- message: error.message ?? "validation error",
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"}