epam/ai-dial-admin-backend
Admin Panel API for AIDIAL Core
What's novel
Admin Panel API for AIDIAL Core
Code Analysis
20 files read · 7 roundsA Spring Boot 3.x REST API admin panel that manages AIDIAL Core AI platform configurations (models, applications, interceptors, keys, roles, routes, toolsets) in a relational database, with version-aware config export/import, optimistic concurrency control, and multi-cloud secret manager integration
Strengths
The version-aware config filtering (VersionAwareFieldFilter) is genuinely sophisticated — it recursively walks JSON schemas with allOf/$ref resolution and intelligently removes entities that would become invalid after field stripping. The import/export pipeline with preview, conflict resolution policies, and backward compatibility handling shows real production-grade depth. The codebase is well-organized with clear separation between domain services, config transfer, and export layers.
Weaknesses
The domain services (ModelService, InterceptorService, etc.) follow a very repetitive CRUD pattern with significant code duplication across entities — the optimistic locking, rollback, and endpoint resolution logic is nearly identical in each. The ConfigImporter's use of TransactionAspectSupport.setRollbackOnly() as a 'trick' for preview is a code smell that could mask issues. The project has 530 source files but much of it is boilerplate JPA entities, mappers, and DTOs rather than novel logic.
Score Breakdown
Signal breakdown
Innovation
Craft
Traction
Scope
Evidence
Commits
350
Contributors
14
Files
1972
Active weeks
39
Repository
Language
Java
Stars
6
Forks
3
License
Apache-2.0