truthguard-ai 0.2.0 → 0.3.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.
Potentially problematic release.
This version of truthguard-ai might be problematic. Click here for more details.
- package/dist-npm/Claims/index.d.ts +73 -0
- package/dist-npm/Claims/index.d.ts.map +1 -0
- package/dist-npm/Claims/index.js +1669 -0
- package/dist-npm/Claims/index.js.map +1 -0
- package/dist-npm/Config/index.d.ts +41 -0
- package/dist-npm/Config/index.d.ts.map +1 -0
- package/dist-npm/Config/index.js +129 -0
- package/dist-npm/Config/index.js.map +1 -0
- package/dist-npm/Grounding/index.d.ts +40 -0
- package/dist-npm/Grounding/index.d.ts.map +1 -0
- package/dist-npm/Grounding/index.js +1433 -0
- package/dist-npm/Grounding/index.js.map +1 -0
- package/dist-npm/L2/index.d.ts +93 -0
- package/dist-npm/L2/index.d.ts.map +1 -0
- package/dist-npm/L2/index.js +1773 -0
- package/dist-npm/L2/index.js.map +1 -0
- package/dist-npm/Matchers/index.d.ts +101 -0
- package/dist-npm/Matchers/index.d.ts.map +1 -0
- package/dist-npm/Matchers/index.js +690 -0
- package/dist-npm/Matchers/index.js.map +1 -0
- package/dist-npm/Mode/index.d.ts +87 -0
- package/dist-npm/Mode/index.d.ts.map +1 -0
- package/dist-npm/Mode/index.js +117 -0
- package/dist-npm/Mode/index.js.map +1 -0
- package/dist-npm/Policy/index.d.ts +89 -0
- package/dist-npm/Policy/index.d.ts.map +1 -0
- package/dist-npm/Policy/index.js +143 -0
- package/dist-npm/Policy/index.js.map +1 -0
- package/dist-npm/Registry/index.d.ts +93 -0
- package/dist-npm/Registry/index.d.ts.map +1 -0
- package/dist-npm/Registry/index.js +818 -0
- package/dist-npm/Registry/index.js.map +1 -0
- package/dist-npm/Rules/index.d.ts +587 -0
- package/dist-npm/Rules/index.d.ts.map +1 -0
- package/dist-npm/Rules/index.js +6236 -0
- package/dist-npm/Rules/index.js.map +1 -0
- package/dist-npm/Rules/intents.d.ts +22 -0
- package/dist-npm/Rules/intents.d.ts.map +1 -0
- package/dist-npm/Rules/intents.js +242 -0
- package/dist-npm/Rules/intents.js.map +1 -0
- package/dist-npm/TraceReadiness/index.d.ts +42 -0
- package/dist-npm/TraceReadiness/index.d.ts.map +1 -0
- package/dist-npm/TraceReadiness/index.js +169 -0
- package/dist-npm/TraceReadiness/index.js.map +1 -0
- package/dist-npm/i18n/index.d.ts +44 -0
- package/dist-npm/i18n/index.d.ts.map +1 -0
- package/dist-npm/i18n/index.js +124 -0
- package/dist-npm/i18n/index.js.map +1 -0
- package/package.json +5 -17
- package/dist/cli/index.d.ts +0 -15
- package/dist/cli/index.d.ts.map +0 -1
- package/dist/cli/index.js +0 -807
- package/dist/cli/index.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/Registry/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,587 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Grounding Rules
|
|
3
|
+
*
|
|
4
|
+
* Implements V1 detection logic for the five grounding failure types:
|
|
5
|
+
*
|
|
6
|
+
* grounding.empty_fabrication — tool returned empty, LLM fabricated facts
|
|
7
|
+
* grounding.no_tool_call — factual question answered without any tool call
|
|
8
|
+
* grounding.math_error — tool returned correct data, LLM computed incorrectly
|
|
9
|
+
* grounding.data_ignored — tool returned correct data, LLM ignored/altered it
|
|
10
|
+
* grounding.wrong_query — tool called with wrong parameters
|
|
11
|
+
* grounding.incomplete_response— response is empty/truncated despite tool data
|
|
12
|
+
*
|
|
13
|
+
* Each rule is a pure function: (trace, claims, verdicts) → DetectedFailure | null
|
|
14
|
+
*/
|
|
15
|
+
import type { Claim, ClaimVerdict, DetectedFailure, FailureConfidence, FailureType, Trace } from '../types';
|
|
16
|
+
export interface TracePattern {
|
|
17
|
+
totalSteps: number;
|
|
18
|
+
toolCallCount: number;
|
|
19
|
+
toolOutputCount: number;
|
|
20
|
+
uniqueTools: string[];
|
|
21
|
+
repeatedTools: Map<string, number>;
|
|
22
|
+
hasFinalResponse: boolean;
|
|
23
|
+
finalResponseLength: number;
|
|
24
|
+
lastStepRole: string;
|
|
25
|
+
/** True when the last step is tool_output or tool_call — agent stopped mid-execution */
|
|
26
|
+
stoppedMidExecution: boolean;
|
|
27
|
+
/** Tools called >1 time (comparison/multi-entity pattern) */
|
|
28
|
+
comparisonPattern: boolean;
|
|
29
|
+
/** Distinct entities searched (heuristic: unique params for same tool) */
|
|
30
|
+
distinctParamSets: number;
|
|
31
|
+
}
|
|
32
|
+
/** Analyze a trace's structural patterns without evaluating claims. */
|
|
33
|
+
export declare function analyzeTracePatterns(trace: Trace): TracePattern;
|
|
34
|
+
/**
|
|
35
|
+
* Raw rule result before orchestration enrichment.
|
|
36
|
+
* Individual rule functions return this shape; runAllRules() promotes
|
|
37
|
+
* them to full DetectedFailure with severity and role.
|
|
38
|
+
*/
|
|
39
|
+
export interface RawFailure {
|
|
40
|
+
type: FailureType;
|
|
41
|
+
description: string;
|
|
42
|
+
claimIds: string[];
|
|
43
|
+
confidence: FailureConfidence;
|
|
44
|
+
diagnosis?: string;
|
|
45
|
+
suggestedFix?: string;
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Detects when tools returned empty results (or no results at all) but
|
|
49
|
+
* the LLM response contains UNGROUNDED claims (potential fabrication).
|
|
50
|
+
*
|
|
51
|
+
* Covers two cases:
|
|
52
|
+
* 1. Tool outputs exist but are all empty ([], null, {})
|
|
53
|
+
* 2. Tool calls were made but no tool_output steps were recorded
|
|
54
|
+
* (missing instrumentation or tool failure)
|
|
55
|
+
*/
|
|
56
|
+
export declare function detectEmptyFabrication(trace: Trace, claims: Claim[], verdicts: ClaimVerdict[]): RawFailure | null;
|
|
57
|
+
/**
|
|
58
|
+
* Detects when the trace contains no tool calls at all but the final response
|
|
59
|
+
* makes specific factual claims (numbers, dates, counts).
|
|
60
|
+
*/
|
|
61
|
+
export declare function detectNoToolCall(trace: Trace, claims: Claim[], _verdicts: ClaimVerdict[]): RawFailure | null;
|
|
62
|
+
/**
|
|
63
|
+
* Detects when tools WERE called but specific factual claims in the response
|
|
64
|
+
* could not be verified against any tool output.
|
|
65
|
+
*
|
|
66
|
+
* This is semantically different from `no_tool_call`:
|
|
67
|
+
* - `no_tool_call` = agent didn't call any tools at all (hallucinating from training data)
|
|
68
|
+
* - `unverified_value` = agent called tools but produced values not found in outputs
|
|
69
|
+
*
|
|
70
|
+
* Fires when: tools were called AND at least 2 UNGROUNDED factual claims exist
|
|
71
|
+
* AND the ratio of ungrounded/total exceeds 50% (not just a single borderline miss).
|
|
72
|
+
*/
|
|
73
|
+
export declare function detectUnverifiedValue(trace: Trace, claims: Claim[], verdicts: ClaimVerdict[]): RawFailure | null;
|
|
74
|
+
/**
|
|
75
|
+
* Detects when tool outputs returned correct data but the LLM
|
|
76
|
+
* computed/aggregated them incorrectly.
|
|
77
|
+
*
|
|
78
|
+
* Strategy: if there are multiple numeric values in tool outputs,
|
|
79
|
+
* compute expected aggregations (sum, average). If an UNGROUNDED
|
|
80
|
+
* number/count claim is close to (but not equal to) an expected
|
|
81
|
+
* aggregation, flag it as a math error.
|
|
82
|
+
*/
|
|
83
|
+
export declare function detectMathError(trace: Trace, _claims: Claim[], verdicts: ClaimVerdict[]): RawFailure | null;
|
|
84
|
+
/**
|
|
85
|
+
* Detects when tool outputs returned correct data but the LLM's response
|
|
86
|
+
* claims values that directly contradict the tool outputs (not just aggregations).
|
|
87
|
+
*
|
|
88
|
+
* Specifically: UNGROUNDED claims where the source value IS present in tool outputs
|
|
89
|
+
* (i.e., the deviation is small but direction is wrong) OR where different values
|
|
90
|
+
* that ARE in the tool output were ignored in favour of fabricated ones.
|
|
91
|
+
*/
|
|
92
|
+
export declare function detectDataIgnored(_trace: Trace, _claims: Claim[], verdicts: ClaimVerdict[]): RawFailure | null;
|
|
93
|
+
/**
|
|
94
|
+
* Detects when the agent called tools with parameters that don't match the
|
|
95
|
+
* user's apparent intent.
|
|
96
|
+
*
|
|
97
|
+
* Checks:
|
|
98
|
+
* 1. Date mismatch — dates in user input vs dates in tool parameters
|
|
99
|
+
* 2. Entity mismatch — quoted strings or proper nouns in user input
|
|
100
|
+
* that don't appear in tool parameters
|
|
101
|
+
*/
|
|
102
|
+
export declare function detectWrongQuery(trace: Trace, claims: Claim[], _verdicts: ClaimVerdict[]): RawFailure | null;
|
|
103
|
+
/**
|
|
104
|
+
* Detects entity mismatch between user input and tool parameters.
|
|
105
|
+
* This is a heuristic — proper nouns or quoted strings in user input
|
|
106
|
+
* may not directly correspond to tool parameter values (IDs, normalized
|
|
107
|
+
* forms, partial matches). Returns low confidence.
|
|
108
|
+
*/
|
|
109
|
+
export declare function detectEntityMismatch(trace: Trace, _claims: Claim[], _verdicts: ClaimVerdict[]): RawFailure | null;
|
|
110
|
+
/**
|
|
111
|
+
* Detects when the final response is empty, very short, or contains no
|
|
112
|
+
* verifiable claims despite tools having returned meaningful data.
|
|
113
|
+
*
|
|
114
|
+
* This catches truncated/cut-off responses that would otherwise get a
|
|
115
|
+
* vacuous 100% score due to having nothing to verify.
|
|
116
|
+
*/
|
|
117
|
+
export declare function detectIncompleteResponse(trace: Trace, claims: Claim[], _verdicts: ClaimVerdict[]): RawFailure | null;
|
|
118
|
+
/**
|
|
119
|
+
* Detects when fragments of the system prompt appear in the final response.
|
|
120
|
+
* This indicates the LLM is leaking internal instructions to the user.
|
|
121
|
+
*
|
|
122
|
+
* Strategy: extract meaningful phrases (5+ words) from the system prompt
|
|
123
|
+
* and check if any appear verbatim in the final response.
|
|
124
|
+
*/
|
|
125
|
+
export declare function detectPromptLeak(trace: Trace, _claims: Claim[], _verdicts: ClaimVerdict[]): RawFailure | null;
|
|
126
|
+
/**
|
|
127
|
+
* Detects when a tool returned an error/exception but the agent responded
|
|
128
|
+
* as if the data was valid.
|
|
129
|
+
*
|
|
130
|
+
* Strategy: scan tool outputs for error patterns. If found, check if the
|
|
131
|
+
* final response acknowledges the error. If not → the agent silently
|
|
132
|
+
* ignored a tool failure.
|
|
133
|
+
*/
|
|
134
|
+
export declare function detectToolErrorIgnored(trace: Trace, _claims: Claim[], verdicts: ClaimVerdict[]): RawFailure | null;
|
|
135
|
+
/**
|
|
136
|
+
* Detects when the response contains claims that contradict each other —
|
|
137
|
+
* same entity/subject with conflicting values.
|
|
138
|
+
*
|
|
139
|
+
* Strategy: group claims by their normalized subject text, then compare
|
|
140
|
+
* values within each group. If two claims reference the same entity but
|
|
141
|
+
* state different values for the same attribute, flag as contradiction.
|
|
142
|
+
*/
|
|
143
|
+
export declare function detectContradictoryClaims(trace: Trace, claims: Claim[], _verdicts: ClaimVerdict[]): RawFailure | null;
|
|
144
|
+
/**
|
|
145
|
+
* Detects when the agent calls the same tool with the same parameters
|
|
146
|
+
* multiple times — a retry storm or infinite loop pattern.
|
|
147
|
+
*
|
|
148
|
+
* Strategy: group tool calls by (toolName, stringified parameters).
|
|
149
|
+
* If any combination appears 3+ times, flag it.
|
|
150
|
+
*/
|
|
151
|
+
export declare function detectExcessiveToolCalls(trace: Trace, _claims: Claim[], _verdicts: ClaimVerdict[]): RawFailure | null;
|
|
152
|
+
/**
|
|
153
|
+
* Detects when the user asked a multi-part question but the agent only
|
|
154
|
+
* addressed some parts — leaving portions of the query unanswered.
|
|
155
|
+
*
|
|
156
|
+
* Strategy: extract question marks / enumerated items from user input,
|
|
157
|
+
* then check whether the response contains content for each part.
|
|
158
|
+
*/
|
|
159
|
+
export declare function detectPartialAnswer(trace: Trace, _claims: Claim[], _verdicts: ClaimVerdict[]): RawFailure | null;
|
|
160
|
+
/**
|
|
161
|
+
* Detects when the agent's response contains sensitive data patterns
|
|
162
|
+
* (SSN, credit cards, passwords, API keys, private keys).
|
|
163
|
+
*
|
|
164
|
+
* Strategy: scan the final response for known sensitive data formats.
|
|
165
|
+
* Tool outputs may legitimately contain such data, but the response
|
|
166
|
+
* should redact or omit it.
|
|
167
|
+
*/
|
|
168
|
+
export declare function detectSensitiveDataExposure(trace: Trace, _claims: Claim[], _verdicts: ClaimVerdict[]): RawFailure | null;
|
|
169
|
+
/**
|
|
170
|
+
* Detects when the agent's response contains temporal references that
|
|
171
|
+
* conflict with the tool output — e.g., tool returns 2024 data but
|
|
172
|
+
* the response states it's from 2023, or uses "as of" with a wrong date.
|
|
173
|
+
*
|
|
174
|
+
* Also flags when the user asks about a specific time period and the
|
|
175
|
+
* tool was queried for a different one (complementing detectWrongQuery
|
|
176
|
+
* but focusing on temporal staleness in the response itself).
|
|
177
|
+
*/
|
|
178
|
+
export declare function detectStaleKnowledge(trace: Trace, _claims: Claim[], _verdicts: ClaimVerdict[]): RawFailure | null;
|
|
179
|
+
/**
|
|
180
|
+
* Detects when the agent draws a global/universal conclusion from data
|
|
181
|
+
* that is clearly a subset — e.g., tool returns 5 records from one
|
|
182
|
+
* department but the response says "across the entire company".
|
|
183
|
+
*
|
|
184
|
+
* Strategy:
|
|
185
|
+
* 1. Check tool call params for scope-limiting indicators (limit, offset,
|
|
186
|
+
* specific department/team/date filters).
|
|
187
|
+
* 2. Check tool output for small result sets (arrays with few items).
|
|
188
|
+
* 3. Check response for global/universal language.
|
|
189
|
+
* If the tool scope is narrow but the response scope is broad → flag.
|
|
190
|
+
*/
|
|
191
|
+
export declare function detectScopeMismatch(trace: Trace, _claims: Claim[], _verdicts: ClaimVerdict[]): RawFailure | null;
|
|
192
|
+
/**
|
|
193
|
+
* Detects when the agent uses high-certainty language but the evidence
|
|
194
|
+
* is weak — e.g., ungrounded/unverifiable claims combined with "exactly".
|
|
195
|
+
*
|
|
196
|
+
* Strategy:
|
|
197
|
+
* 1. Count ungrounded + unverifiable verdicts.
|
|
198
|
+
* 2. Check response for certainty language.
|
|
199
|
+
* 3. If certainty language is present but evidence quality is low → flag.
|
|
200
|
+
*/
|
|
201
|
+
export declare function detectOverconfidentLanguage(trace: Trace, _claims: Claim[], verdicts: ClaimVerdict[]): RawFailure | null;
|
|
202
|
+
/**
|
|
203
|
+
* Detects when the tool returned data that has nothing to do with the
|
|
204
|
+
* user's question, but the agent used it to formulate a response anyway.
|
|
205
|
+
*
|
|
206
|
+
* This is the "wrong chunk" / "retrieval mismatch" pattern from RAG
|
|
207
|
+
* evaluations (Arize Phoenix), generalized for tool-calling agents.
|
|
208
|
+
*
|
|
209
|
+
* Strategy:
|
|
210
|
+
* 1. Extract key terms from the user query (nouns, entities).
|
|
211
|
+
* 2. Extract key terms from tool output data.
|
|
212
|
+
* 3. Check overlap - if very low, the tool data is probably irrelevant.
|
|
213
|
+
* 4. If the agent still made factual claims → flag.
|
|
214
|
+
*/
|
|
215
|
+
export declare function detectIrrelevantContext(trace: Trace, claims: Claim[], verdicts: ClaimVerdict[]): RawFailure | null;
|
|
216
|
+
/**
|
|
217
|
+
* Detects when the agent's final response mentions person/entity names
|
|
218
|
+
* that are NOT found in any tool output or system prompt.
|
|
219
|
+
*/
|
|
220
|
+
export declare function detectHallucinatedEntity(trace: Trace, _claims: Claim[], _verdicts: ClaimVerdict[]): RawFailure | null;
|
|
221
|
+
/**
|
|
222
|
+
* Detects when the agent's response omits a significant portion of data
|
|
223
|
+
* returned by tools, without explicit summarization context.
|
|
224
|
+
*
|
|
225
|
+
* Tier B (warn-grade) by default. Escalates to high confidence when the
|
|
226
|
+
* user or system prompt contains explicit completeness triggers
|
|
227
|
+
* like "navedi sve", "list all", etc.
|
|
228
|
+
*/
|
|
229
|
+
export declare function detectSelectiveOmission(trace: Trace, claims: Claim[], _verdicts: ClaimVerdict[]): RawFailure | null;
|
|
230
|
+
/**
|
|
231
|
+
* Detects when the user asks for an aggregation (sum, average, min, max,
|
|
232
|
+
* difference) in any of the top 10 world languages + Serbian, but the
|
|
233
|
+
* agent responds with individual data values without computing the
|
|
234
|
+
* requested operation.
|
|
235
|
+
*
|
|
236
|
+
* Strategy:
|
|
237
|
+
* 1. Scan user input for multilingual aggregation keywords.
|
|
238
|
+
* 2. Group numeric values from tool outputs by field name.
|
|
239
|
+
* 3. Compute expected aggregate per field (sum, avg, min, max, diff).
|
|
240
|
+
* 4. Fire if individual values appear in the response but the
|
|
241
|
+
* expected aggregate does not.
|
|
242
|
+
*/
|
|
243
|
+
export declare function detectQuestionNotAnswered(trace: Trace, _claims: Claim[], _verdicts: ClaimVerdict[]): RawFailure | null;
|
|
244
|
+
/**
|
|
245
|
+
* Detects when tool calls have empty or structurally invalid input,
|
|
246
|
+
* causing API validation errors (e.g. HTTP 400 "input should be a valid dictionary").
|
|
247
|
+
*
|
|
248
|
+
* Root cause: agent framework serializes empty params as [] instead of {},
|
|
249
|
+
* or omits required fields entirely. The API rejects the call, and the
|
|
250
|
+
* agent either loops or falls back to an error message.
|
|
251
|
+
*
|
|
252
|
+
* Strategy:
|
|
253
|
+
* 1. Find tool_call steps with empty parameters ({}).
|
|
254
|
+
* 2. Check subsequent tool_output for input validation error patterns.
|
|
255
|
+
* 3. High confidence when validation error explicitly mentions input/params.
|
|
256
|
+
* 4. Medium confidence when empty params + generic error.
|
|
257
|
+
*/
|
|
258
|
+
export declare function detectMalformedToolInput(trace: Trace, _claims: Claim[], _verdicts: ClaimVerdict[]): RawFailure | null;
|
|
259
|
+
/**
|
|
260
|
+
* Detects when the final response contains raw tool call markup (XML or JSON)
|
|
261
|
+
* instead of a user-facing answer.
|
|
262
|
+
*/
|
|
263
|
+
export declare function detectRawOutputLeak(trace: Trace, _claims: Claim[], _verdicts: ClaimVerdict[]): RawFailure | null;
|
|
264
|
+
/**
|
|
265
|
+
* Detects when the final response is intermediate LLM reasoning or planning text
|
|
266
|
+
* rather than a synthesized answer.
|
|
267
|
+
*/
|
|
268
|
+
export declare function detectIntermediateResponseLeak(trace: Trace, _claims: Claim[], _verdicts: ClaimVerdict[]): RawFailure | null;
|
|
269
|
+
/**
|
|
270
|
+
* Detects when the LLM response was truncated because it hit the token limit.
|
|
271
|
+
*/
|
|
272
|
+
export declare function detectTokenLimitTruncation(trace: Trace, _claims: Claim[], _verdicts: ClaimVerdict[]): RawFailure | null;
|
|
273
|
+
/**
|
|
274
|
+
* Detects when an API rate limit (429) caused the agent to degrade.
|
|
275
|
+
*/
|
|
276
|
+
export declare function detectRateLimitDegradation(trace: Trace, _claims: Claim[], _verdicts: ClaimVerdict[]): RawFailure | null;
|
|
277
|
+
/**
|
|
278
|
+
* Detects when an API quota/billing error (402, 403 with quota message)
|
|
279
|
+
* caused the agent to produce an empty or fabricated response.
|
|
280
|
+
*/
|
|
281
|
+
export declare function detectQuotaExhaustion(trace: Trace, _claims: Claim[], _verdicts: ClaimVerdict[]): RawFailure | null;
|
|
282
|
+
/**
|
|
283
|
+
* Detects when the trace shows a different model was used than what was
|
|
284
|
+
* requested (silent model downgrade).
|
|
285
|
+
*/
|
|
286
|
+
export declare function detectModelFallback(trace: Trace, _claims: Claim[], _verdicts: ClaimVerdict[]): RawFailure | null;
|
|
287
|
+
/**
|
|
288
|
+
* Detect when the AI responds in a different language than the user's input.
|
|
289
|
+
*
|
|
290
|
+
* Detection strategy:
|
|
291
|
+
* 1. Cyrillic user input + Latin-only response → HIGH confidence
|
|
292
|
+
* 2. Serbian Latin (diacritics/words) + English response → MEDIUM confidence
|
|
293
|
+
* 3. trace.metadata.lang hint used to boost confidence
|
|
294
|
+
*/
|
|
295
|
+
export declare function detectLanguageMismatch(trace: Trace, _claims: Claim[], _verdicts: ClaimVerdict[]): RawFailure | null;
|
|
296
|
+
/**
|
|
297
|
+
* Detects when user input steps are duplicated in a multi-turn trace.
|
|
298
|
+
*
|
|
299
|
+
* Common patterns this catches:
|
|
300
|
+
* 1. Consecutive identical user_input steps — the framework sends the
|
|
301
|
+
* same message twice (e.g. once as history, once as the new input).
|
|
302
|
+
* 2. A short conversation “title” or greeting appears as the first
|
|
303
|
+
* user_input in every turn, inflating the exchange count.
|
|
304
|
+
*
|
|
305
|
+
* This is an instrumentation quality issue — it does not affect LLM
|
|
306
|
+
* output correctness, but inflates conversation metrics and can confuse
|
|
307
|
+
* monitoring dashboards.
|
|
308
|
+
*/
|
|
309
|
+
export declare function detectDuplicateUserInput(trace: Trace, _claims: Claim[], _verdicts: ClaimVerdict[]): RawFailure | null;
|
|
310
|
+
/**
|
|
311
|
+
* Detects when values belonging to different entities are swapped in the response.
|
|
312
|
+
* E.g. tool says Jelena: 211h, Aca: 194h but response says Jelena: 194h, Aca: 211h.
|
|
313
|
+
*
|
|
314
|
+
* Strategy:
|
|
315
|
+
* 1. Find tool outputs with multi-record arrays (2+ entities)
|
|
316
|
+
* 2. Build entity→value map from tool data (name-field → numeric-field pairs)
|
|
317
|
+
* 3. Find UNGROUNDED entity-scoped claims in response
|
|
318
|
+
* 4. Check if the claimed value belongs to a DIFFERENT entity in the tool data
|
|
319
|
+
*/
|
|
320
|
+
export declare function detectEntityValueSwap(trace: Trace, _claims: Claim[], verdicts: ClaimVerdict[]): RawFailure | null;
|
|
321
|
+
/**
|
|
322
|
+
* Detects inline arithmetic/conversion errors in the response.
|
|
323
|
+
* E.g. "255 minuta (4.3 sata)" — but 255/60 = 4.25, not 4.3.
|
|
324
|
+
*
|
|
325
|
+
* Strategy:
|
|
326
|
+
* 1. Find claim pairs in close proximity that have different units
|
|
327
|
+
* 2. Verify the conversion: does valueA × conversionFactor ≈ valueB?
|
|
328
|
+
* 3. Also check parenthetical conversions: "X unit (Y other_unit)"
|
|
329
|
+
*/
|
|
330
|
+
export declare function detectArithmeticError(trace: Trace, claims: Claim[], _verdicts: ClaimVerdict[]): RawFailure | null;
|
|
331
|
+
/**
|
|
332
|
+
* Detects when the response violates explicit system prompt directives.
|
|
333
|
+
*
|
|
334
|
+
* Focuses on deterministically checkable rules:
|
|
335
|
+
* - Forbidden content (technical identifiers, tool names, programming terms)
|
|
336
|
+
* - Required patterns (if checkable via regex)
|
|
337
|
+
*
|
|
338
|
+
* Does NOT duplicate language checking (handled by detectLanguageMismatch).
|
|
339
|
+
*/
|
|
340
|
+
export declare function detectInstructionViolation(trace: Trace, _claims: Claim[], _verdicts: ClaimVerdict[]): RawFailure | null;
|
|
341
|
+
/**
|
|
342
|
+
* Detects when a tool returned empty/zero results for a query that the user
|
|
343
|
+
* clearly expected to succeed, AND the final response acknowledges the
|
|
344
|
+
* inability to find data. This signals a tool capability gap — the tool
|
|
345
|
+
* doesn’t support the kind of search the user asked for (e.g. searching
|
|
346
|
+
* employees by job position when the tool only searches by name).
|
|
347
|
+
*
|
|
348
|
+
* Requires:
|
|
349
|
+
* 1. At least one tool call with non-trivial parameters
|
|
350
|
+
* 2. The paired tool output indicates empty results (total: 0, empty array,
|
|
351
|
+
* "no results", etc.)
|
|
352
|
+
* 3. The final response contains an admission of failure
|
|
353
|
+
*/
|
|
354
|
+
export declare function detectToolCapabilityGap(trace: Trace, _claims: Claim[], _verdicts: ClaimVerdict[]): RawFailure | null;
|
|
355
|
+
/**
|
|
356
|
+
* Detects when the AI response in the current turn contains specific numeric
|
|
357
|
+
* values that can be traced to tool outputs from previous conversation turns
|
|
358
|
+
* but NOT to any tool output in the current turn.
|
|
359
|
+
*
|
|
360
|
+
* This matters because system prompts typically instruct: “Always use tool
|
|
361
|
+
* results, never rely on memory.” If the agent re-uses stale numbers from
|
|
362
|
+
* an earlier turn, the data may be outdated or refer to a different question.
|
|
363
|
+
*
|
|
364
|
+
* Only fires for multi-turn traces.
|
|
365
|
+
*/
|
|
366
|
+
export declare function detectStaleCrossTurnReuse(trace: Trace, _claims: Claim[], _verdicts: ClaimVerdict[]): RawFailure | null;
|
|
367
|
+
/**
|
|
368
|
+
* Detects when a tool was called with date-range parameters but the output
|
|
369
|
+
* contains data for dates outside that range. This means the tool itself
|
|
370
|
+
* (or the backend API) is buggy — the agent asked correctly but got wrong-
|
|
371
|
+
* period data. Different from wrong_query, which flags wrong *parameters*.
|
|
372
|
+
*
|
|
373
|
+
* Signal:
|
|
374
|
+
* 1. Extract date params from tool_call (from_date/to_date, startDate/endDate, etc.).
|
|
375
|
+
* 2. Extract ISO dates from the paired tool_output content.
|
|
376
|
+
* 3. If any output date falls outside the requested range, fire.
|
|
377
|
+
*/
|
|
378
|
+
export declare function detectToolPeriodMismatch(trace: Trace, _claims: Claim[], _verdicts: ClaimVerdict[]): RawFailure | null;
|
|
379
|
+
/**
|
|
380
|
+
* Detects when the agent hit a platform-imposed tool-call limit before
|
|
381
|
+
* completing the task. Signals:
|
|
382
|
+
* 1. A user_input or tool_output step whose content contains a
|
|
383
|
+
* budget-limit message injected by the platform (e.g.
|
|
384
|
+
* "Dostignut je limit poziva alata", "tool call limit reached").
|
|
385
|
+
* 2. The final_response follows shortly after, meaning the agent was
|
|
386
|
+
* forced to answer with whatever data it had gathered so far.
|
|
387
|
+
*
|
|
388
|
+
* This is different from quota_exhaustion (HTTP 402/429 billing errors).
|
|
389
|
+
*/
|
|
390
|
+
export declare function detectToolBudgetExhaustion(trace: Trace, _claims: Claim[], _verdicts: ClaimVerdict[]): RawFailure | null;
|
|
391
|
+
/**
|
|
392
|
+
* Detects when the response labels data as belonging to a specific period
|
|
393
|
+
* (e.g. "Q1 2024", "March 2024", "H1") but the dates in tool output
|
|
394
|
+
* actually correspond to a different period.
|
|
395
|
+
*
|
|
396
|
+
* Common in finance/HR: user asks for Q1, tool returns correct data,
|
|
397
|
+
* but AI labels it as Q2 — or vice versa.
|
|
398
|
+
*
|
|
399
|
+
* Strategy:
|
|
400
|
+
* 1. Scan response for period labels (Q1-Q4, H1/H2, month+year).
|
|
401
|
+
* 2. For each label, compute expected date bounds.
|
|
402
|
+
* 3. Extract ISO dates from tool output.
|
|
403
|
+
* 4. If tool dates predominantly fall outside the labeled period → fire.
|
|
404
|
+
*/
|
|
405
|
+
export declare function detectPeriodLabelMismatch(trace: Trace, _claims: Claim[], _verdicts: ClaimVerdict[]): RawFailure | null;
|
|
406
|
+
/**
|
|
407
|
+
* Detects when the user requests an aggregation for a specific period
|
|
408
|
+
* but the agent computes the aggregation over data from a different or
|
|
409
|
+
* broader period.
|
|
410
|
+
*
|
|
411
|
+
* Example: User asks "total salary for March 2024", tool returns data
|
|
412
|
+
* for Jan-Jun 2024, AI sums all 6 months instead of filtering to March.
|
|
413
|
+
*
|
|
414
|
+
* Strategy:
|
|
415
|
+
* 1. Detect aggregation intent in user input (reuse AGGREGATION_INTENTS).
|
|
416
|
+
* 2. Extract period from user input using parsePeriodBounds.
|
|
417
|
+
* 3. Extract dates + numeric values from tool output records.
|
|
418
|
+
* 4. Compute expected aggregate for the user's period only.
|
|
419
|
+
* 5. If response contains the full-data aggregate but NOT the
|
|
420
|
+
* period-scoped aggregate → fire.
|
|
421
|
+
*/
|
|
422
|
+
export declare function detectAggregationScopeError(trace: Trace, _claims: Claim[], _verdicts: ClaimVerdict[]): RawFailure | null;
|
|
423
|
+
/**
|
|
424
|
+
* Detects when the user asks for results grouped by some dimension
|
|
425
|
+
* (e.g. "by department", "po sektoru", "per team") but the response
|
|
426
|
+
* provides only a single flat aggregate without the breakdown.
|
|
427
|
+
*
|
|
428
|
+
* Strategy:
|
|
429
|
+
* 1. Scan user input for grouping prepositions (GROUPING_INTENTS).
|
|
430
|
+
* 2. Extract the dimension word after the preposition.
|
|
431
|
+
* 3. Check if tool output contains a field matching that dimension.
|
|
432
|
+
* 4. Check if the response contains multiple distinct values for
|
|
433
|
+
* that dimension — or just a single aggregate.
|
|
434
|
+
* 5. Fire if the tool output has groupable data but the response
|
|
435
|
+
* only shows one number (flat aggregate).
|
|
436
|
+
*/
|
|
437
|
+
export declare function detectMissingGroupingDimension(trace: Trace, _claims: Claim[], _verdicts: ClaimVerdict[]): RawFailure | null;
|
|
438
|
+
/**
|
|
439
|
+
* Detects when the user's question implies a business-logic transformation
|
|
440
|
+
* (e.g. "net salary", "after tax", "with discount", "attrition rate")
|
|
441
|
+
* but the response appears to use raw/untransformed values from tool output.
|
|
442
|
+
*
|
|
443
|
+
* TG cannot verify the transformation itself (it would need domain knowledge),
|
|
444
|
+
* but it CAN flag when:
|
|
445
|
+
* 1. The user's question contains a transformational keyword.
|
|
446
|
+
* 2. The tool output contains raw numeric values.
|
|
447
|
+
* 3. The response uses those exact raw values (no transformation applied).
|
|
448
|
+
*
|
|
449
|
+
* This is an advisory rule (observe), not a blocker.
|
|
450
|
+
*/
|
|
451
|
+
export declare function detectTransformationalIntent(trace: Trace, _claims: Claim[], _verdicts: ClaimVerdict[]): RawFailure | null;
|
|
452
|
+
/**
|
|
453
|
+
* Detects when the user asks for a specific aggregation type (e.g. average)
|
|
454
|
+
* but the response contains a DIFFERENT aggregation (e.g. sum) from the
|
|
455
|
+
* same data.
|
|
456
|
+
*
|
|
457
|
+
* Example: User asks "prosečna plata" (average salary), tool returns
|
|
458
|
+
* [3000, 4000, 5000], response says "12000" (the sum, not avg 4000).
|
|
459
|
+
*
|
|
460
|
+
* Strategy:
|
|
461
|
+
* 1. Detect the user's aggregation intent (sum/avg/max/min/diff).
|
|
462
|
+
* 2. Compute ALL possible aggregates from tool output.
|
|
463
|
+
* 3. Check if response contains a DIFFERENT aggregate than requested.
|
|
464
|
+
* 4. Fire only when: requested aggregate is ABSENT and a wrong one
|
|
465
|
+
* is PRESENT — this is a substitution, not just a missing answer.
|
|
466
|
+
*/
|
|
467
|
+
export declare function detectMetricMismatch(trace: Trace, _claims: Claim[], _verdicts: ClaimVerdict[]): RawFailure | null;
|
|
468
|
+
/**
|
|
469
|
+
* Detects when the user asks about a period that is currently ongoing
|
|
470
|
+
* (e.g. "this month", "this quarter", YTD, MTD) and the response presents
|
|
471
|
+
* data without acknowledging that the period is incomplete.
|
|
472
|
+
*
|
|
473
|
+
* This is an advisory finding — the data itself may be correct for the
|
|
474
|
+
* partial period, but the user should be informed that numbers will change
|
|
475
|
+
* by period end.
|
|
476
|
+
*/
|
|
477
|
+
export declare function detectPartialPeriodRisk(trace: Trace, _claims: Claim[], _verdicts: ClaimVerdict[]): RawFailure | null;
|
|
478
|
+
/**
|
|
479
|
+
* Detects when the AI service was unavailable and only an error message
|
|
480
|
+
* was returned to the user. This covers:
|
|
481
|
+
* - API errors (timeout, 500, 502, 503, 429)
|
|
482
|
+
* - Quota/credit exhaustion on the client side (app catches before calling AI)
|
|
483
|
+
* - Any scenario where final_response contains only an error marker
|
|
484
|
+
*
|
|
485
|
+
* Fires when:
|
|
486
|
+
* - final_response metadata has `apiError: true`, OR
|
|
487
|
+
* - final_response content matches `[API Error]` prefix, OR
|
|
488
|
+
* - final_response content matches common "service unavailable" patterns
|
|
489
|
+
* AND there are no tool_call steps (the AI never got a chance to work)
|
|
490
|
+
*/
|
|
491
|
+
export declare function detectAIUnavailable(trace: Trace, _claims: Claim[], _verdicts: ClaimVerdict[]): RawFailure | null;
|
|
492
|
+
/**
|
|
493
|
+
* Detects when the AI explicitly refuses or states it cannot answer the
|
|
494
|
+
* user's question, despite having attempted tool calls.
|
|
495
|
+
*
|
|
496
|
+
* Distinct from ai_unavailable (service error) — here the AI *did* respond
|
|
497
|
+
* but the response content is an admission of failure rather than an answer.
|
|
498
|
+
*
|
|
499
|
+
* Fires when:
|
|
500
|
+
* - final_response contains refusal markers (❌, "ne mogu da potvrdim", etc.)
|
|
501
|
+
* - AND the trace has at least one tool_call (AI tried, but gave up)
|
|
502
|
+
* - AND the response is short (< 600 chars) — long answers with a caveat
|
|
503
|
+
* are not refusals
|
|
504
|
+
*/
|
|
505
|
+
export declare function detectAnswerRefusal(trace: Trace, _claims: Claim[], _verdicts: ClaimVerdict[]): RawFailure | null;
|
|
506
|
+
/**
|
|
507
|
+
* Detects when the AI repeatedly called the same tool(s) ineffectively,
|
|
508
|
+
* suggesting poor tool selection strategy.
|
|
509
|
+
*
|
|
510
|
+
* Fires when:
|
|
511
|
+
* - The same tool was called 3+ times with similar/identical inputs
|
|
512
|
+
* - OR tool_budget_exhaustion fired AND >50% of tool calls were to the
|
|
513
|
+
* same tool without getting useful data
|
|
514
|
+
*
|
|
515
|
+
* This catches the pattern where the AI keeps trying the same approach
|
|
516
|
+
* instead of selecting a different tool or strategy.
|
|
517
|
+
*/
|
|
518
|
+
export declare function detectToolSelectionError(trace: Trace, _claims: Claim[], _verdicts: ClaimVerdict[]): RawFailure | null;
|
|
519
|
+
/**
|
|
520
|
+
* Detects SQL errors, runtime exceptions, and other explicit error messages
|
|
521
|
+
* in tool outputs that indicate the tool call itself was malformed or the
|
|
522
|
+
* underlying system had a problem.
|
|
523
|
+
*
|
|
524
|
+
* Distinct from tool_error_ignored (grounding rule) which checks if the
|
|
525
|
+
* agent *acknowledged* the error. This rule focuses on *detecting* the error
|
|
526
|
+
* itself as an orchestration quality issue.
|
|
527
|
+
*
|
|
528
|
+
* Fires when:
|
|
529
|
+
* - Tool output contains SQL-specific errors (SQLSTATE, syntax error, column not found)
|
|
530
|
+
* - OR tool output contains stack traces or runtime exceptions
|
|
531
|
+
* - OR tool output contains explicit error JSON structures
|
|
532
|
+
*/
|
|
533
|
+
export declare function detectToolOutputError(trace: Trace, _claims: Claim[], _verdicts: ClaimVerdict[]): RawFailure | null;
|
|
534
|
+
/**
|
|
535
|
+
* Detects when the AI fabricated entity identifier parameters (e.g.
|
|
536
|
+
* person_key, employee_id) in tool calls. The fabricated values do not
|
|
537
|
+
* appear in any prior tool output in the conversation, and the tool
|
|
538
|
+
* returned "not found" or error responses for them.
|
|
539
|
+
*
|
|
540
|
+
* This is a critical failure mode: the AI invents short IDs like "U26"
|
|
541
|
+
* when the real format is "U1768812079496" (13+ digit), wasting all
|
|
542
|
+
* tool calls and leaving the user with no answer.
|
|
543
|
+
*
|
|
544
|
+
* Strategy:
|
|
545
|
+
* 1. Collect ALL string/number values from ALL tool outputs in the
|
|
546
|
+
* entire conversation (not just active turn).
|
|
547
|
+
* 2. For each tool call, check ID-like parameters against this corpus.
|
|
548
|
+
* 3. If the parameter value is NOT in the corpus AND the tool returned
|
|
549
|
+
* an error for that call → count as fabricated.
|
|
550
|
+
* 4. Fire if 2+ fabricated parameter values detected.
|
|
551
|
+
*/
|
|
552
|
+
export declare function detectFabricatedToolInput(trace: Trace, _claims: Claim[], _verdicts: ClaimVerdict[]): RawFailure | null;
|
|
553
|
+
/**
|
|
554
|
+
* Detects when the LLM computes percentages incorrectly.
|
|
555
|
+
*
|
|
556
|
+
* Checks:
|
|
557
|
+
* 1. Percentage-of-total: "X is Y% of Z" — verifies Y ≈ (X/Z)*100
|
|
558
|
+
* 2. Percentage change: "increased by Y%" — verifies Y ≈ ((new-old)/old)*100
|
|
559
|
+
* 3. Share/proportion as percentage: response says "45%" but actual share from
|
|
560
|
+
* tool data computes to a different percentage.
|
|
561
|
+
*/
|
|
562
|
+
export declare function detectPercentageError(trace: Trace, _claims: Claim[], verdicts: ClaimVerdict[]): RawFailure | null;
|
|
563
|
+
/**
|
|
564
|
+
* Detects when the LLM states a ratio or proportion that doesn't match
|
|
565
|
+
* the tool output data.
|
|
566
|
+
*
|
|
567
|
+
* Checks:
|
|
568
|
+
* 1. Explicit ratio "X:Y" — verifies against numeric pairs from tool data
|
|
569
|
+
* 2. "X out of Y" / "X od Y" — verifies X ≤ Y and that (X, Y) exist in data
|
|
570
|
+
* 3. Count-based ratios — "3 out of 5 employees" with tool data showing different counts
|
|
571
|
+
*/
|
|
572
|
+
export declare function detectRatioError(trace: Trace, _claims: Claim[], _verdicts: ClaimVerdict[]): RawFailure | null;
|
|
573
|
+
/**
|
|
574
|
+
* Detects when the LLM computes a multiplication or division incorrectly.
|
|
575
|
+
*
|
|
576
|
+
* Strategies:
|
|
577
|
+
* 1. Explicit "A × B = C" or "A / B = C" in response text — verify the arithmetic.
|
|
578
|
+
* 2. Known field triples from tool data — e.g. unit_price × quantity should equal total.
|
|
579
|
+
* 3. Per-unit calculations — e.g. total / count should equal per-unit value.
|
|
580
|
+
*/
|
|
581
|
+
export declare function detectMultiplicationError(trace: Trace, _claims: Claim[], _verdicts: ClaimVerdict[]): RawFailure | null;
|
|
582
|
+
/**
|
|
583
|
+
* Run all V1 grounding rules, then orchestrate: assign severity,
|
|
584
|
+
* detect primary vs. secondary failures, and suppress redundant ones.
|
|
585
|
+
*/
|
|
586
|
+
export declare function runAllRules(trace: Trace, claims: Claim[], verdicts: ClaimVerdict[], fullTrace?: Trace): DetectedFailure[];
|
|
587
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/Rules/index.ts"],"names":[],"mappings":"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"}
|