Skip to content

IA-1015: feat: add UUID lookup, language/filtering/detail-level/testing configs and config history

khadija.elbachouri a demandé de fusionner feature/IA-1015 vers develop

Summary

This MR introduces UUID-based assistant lookup and a full suite of configuration modules for the Japprends assistant service, along with a testing and config history tracking system.


Changes

Bug Fixes & Improvements

  • Add UUID-based assistant lookup (getByUuid endpoint) across controller, service, repository, and exception
  • Configure RestTemplate with connection timeout using HttpComponentsClientHttpRequestFactory
  • Add dynamic system prompt support to RAGService via method overload
  • Fix transcription response field mapping to texte_complet
  • Add Keycloak OAuth2 resource server config to application.yml
  • Fix OCR URL in local profile (application-local.yml)
  • Bump brainboost-common to 0.0.107-RELEASE

New Features

Detail Level Config

  • CRUD endpoints to get, update, and reset assistant detail level
  • Constants class for all 5 level descriptions and examples

Language Config

  • Get, update, and reset language configuration per assistant
  • Toggle individual language support
  • Update primary/secondary language independently
  • Update communication style (AMICAL, NEUTRE, ACADEMIQUE)
  • Auto-creates default config if none exists

Filtering Config

  • Get, update, and reset filtering rules per assistant
  • Manage blocked terms for assistant and students separately
  • Create, update, and delete custom filtering rules
  • Auto-creates default rules if none exist

Testing Module

  • Submit test queries (text, image via OCR, audio via transcription)
  • Evaluate test responses with score and feedback
  • Bulk test submission
  • Test history with pagination and date range filtering
  • Statistics: average score, pass rate, evaluation type distribution
  • Performance metrics with daily activity and score improvement
  • Full test report generation for a given period

Config History

  • Track all configuration changes per assistant (section, action, comment, user)
  • Paginated history retrieval
  • Clear history (admin only)
  • Shared ApiResponse<T> wrapper introduced for all config endpoints

Rapports de requête de fusion