Add unit and feature tests for ticket processing and article management
- Implement Fake repositories and services for testing purposes. - Create tests for Article API including creation, validation, and listing. - Develop ProcessTicketJobFlowTest to validate ticket processing logic. - Add QuickReplyAdminTest for creating and updating quick replies. - Implement TicketAndArticleModelTest to ensure proper cascading deletes and credential encryption. - Create TicketIngestionTest for ticket creation and job dispatching. - Add TicketShowPageTest to verify rendering of quick replies and tool calls. - Implement unit tests for ClassifierPromptBuilder, EmbeddingService, LlmJsonDecoder, QuickReplyResolver, SupportReplyService, TicketResultPayloadBuilder, TicketToolCallService, and ToolCallRequestValidator.
This commit is contained in:
@@ -38,7 +38,8 @@
|
||||
<div class="font-medium">3. De betekenis wordt omgezet naar een zoekcode</div>
|
||||
<p class="text-sm text-slate-600">
|
||||
De app maakt van de nette vraag een soort getallen-code. Die code beschrijft niet de exacte
|
||||
woorden, maar waar de vraag over gaat. Daardoor kan "mail doet het niet" ook artikelen vinden
|
||||
woorden, maar waar de vraag over gaat. Daardoor kan "mail doet het niet" ook artikelen
|
||||
vinden
|
||||
waarin "e-mail storing" staat.
|
||||
</p>
|
||||
</div>
|
||||
@@ -67,7 +68,8 @@
|
||||
<div class="font-medium">7. Er komt een advies of een melding</div>
|
||||
<p class="text-sm text-slate-600">
|
||||
Als het artikel een snelantwoord heeft, gebruikt de app dat direct. Anders maakt de AI een
|
||||
korte conceptreactie. Als er geen passend artikel is, schrijft de app geen klantantwoord maar
|
||||
korte conceptreactie. Als er geen passend artikel is, schrijft de app geen klantantwoord
|
||||
maar
|
||||
meldt hij dat de kennisbank iets mist.
|
||||
</p>
|
||||
</div>
|
||||
@@ -147,13 +149,15 @@
|
||||
<h3 class="font-semibold">Hulpmiddelen en allowed actions</h3>
|
||||
<p class="mt-2 text-sm text-slate-600">
|
||||
Sommige antwoorden worden beter als de app iets kan nakijken. Daarom kan een artikel aangeven welke
|
||||
hulpmiddelen toegestaan zijn. De AI mag zo'n hulpmiddel alleen voorstellen; de applicatie controleert
|
||||
hulpmiddelen toegestaan zijn. De AI mag zo'n hulpmiddel alleen voorstellen; de applicatie
|
||||
controleert
|
||||
daarna zelf of het echt mag.
|
||||
</p>
|
||||
<div class="mt-4 rounded border p-3">
|
||||
<div class="font-medium">Nu beschikbaar: domain_inf</div>
|
||||
<p class="mt-1 text-sm text-slate-600">
|
||||
Hiermee kan de app domeininformatie ophalen. Dat kan alleen als het artikel `domain_inf` toestaat,
|
||||
Hiermee kan de app domeininformatie ophalen. Dat kan alleen als het artikel `domain_inf`
|
||||
toestaat,
|
||||
als de vraag een domeinnaam bevat, en als er API-gegevens op het ticket zijn opgeslagen.
|
||||
</p>
|
||||
</div>
|
||||
@@ -164,9 +168,12 @@
|
||||
<div class="mt-4 space-y-3 text-sm text-slate-600">
|
||||
<div><span class="font-medium text-slate-900">Embedding:</span> een betekenis-code van tekst.</div>
|
||||
<div><span class="font-medium text-slate-900">Chunk:</span> een klein stukje van een artikel.</div>
|
||||
<div><span class="font-medium text-slate-900">Confidence:</span> hoe zeker de AI is van zijn keuze.</div>
|
||||
<div><span class="font-medium text-slate-900">Knowledge gap:</span> de kennisbank heeft waarschijnlijk nog geen goed artikel voor deze vraag.</div>
|
||||
<div><span class="font-medium text-slate-900">Toolcall:</span> een gecontroleerde actie waarmee de app extra informatie kan ophalen.</div>
|
||||
<div><span class="font-medium text-slate-900">Confidence:</span> hoe zeker de AI is van zijn keuze.
|
||||
</div>
|
||||
<div><span class="font-medium text-slate-900">Knowledge gap:</span> de kennisbank heeft
|
||||
waarschijnlijk nog geen goed artikel voor deze vraag.</div>
|
||||
<div><span class="font-medium text-slate-900">Toolcall:</span> een gecontroleerde actie waarmee de
|
||||
app extra informatie kan ophalen.</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
@@ -180,7 +187,8 @@
|
||||
</div>
|
||||
<div class="rounded border p-3">
|
||||
<div class="font-medium">App zoekt</div>
|
||||
<p class="mt-1 text-sm text-slate-600">De app zoekt kaartjes over mail, domeinen en instellingen.</p>
|
||||
<p class="mt-1 text-sm text-slate-600">De app zoekt kaartjes over mail, domeinen en instellingen.
|
||||
</p>
|
||||
</div>
|
||||
<div class="rounded border p-3">
|
||||
<div class="font-medium">AI kiest</div>
|
||||
@@ -188,7 +196,8 @@
|
||||
</div>
|
||||
<div class="rounded border p-3">
|
||||
<div class="font-medium">Support controleert</div>
|
||||
<p class="mt-1 text-sm text-slate-600">Support ziet het advies, de reden en de gebruikte stappen.</p>
|
||||
<p class="mt-1 text-sm text-slate-600">Support ziet het advies, de reden en de gebruikte stappen.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
Reference in New Issue
Block a user