Platform Core

Common Library

common is the shared platform library. It holds everything more than one application needs: the persisted domain model, the pipeline abstractions, memory, the AI abstractions, storage, serialization and security utilities.

It depends only on lib (the foundation layer with the wire protocol types and media utilities) and is consumed by the engine and the bridge — plus, as a published Maven artifact, by services outside this repository. See Modules.

Because of that, the public types here are a shared contract: renaming a model field or changing a pipeline interface affects code that is not in this repository.

Package Layout

Two package roots coexist. ai.promethist. carries the original layout, ai.promethist.common. the newer one; both are part of this module and are scanned together.

Package Contents

ai.promethist.model

MongoDB documents and the value types they contain — see Domain Model.

ai.promethist.repository, ai.promethist.common.repository

Repositories — see Entity Repositories.

ai.promethist.pipeline

The pipeline abstractions and their component interfaces — see Pipeline Abstractions.

ai.promethist.ai

Model factories, configurations, inference models and the tool box abstraction — see AI Abstractions and Tool Boxes.

ai.promethist.memory

Chat, data and scoped memory — see Memory.

ai.promethist.storage, ai.promethist.common.storage

Resource storage abstraction and its backends — see Storage.

ai.promethist.serialization, ai.promethist.converter, ai.promethist.common.configuration

Jackson and MessagePack mappers, database converters and the configuration properties classes — see Serialization and Configuration Properties.

ai.promethist.security, ai.promethist.common.security

API keys, roles and authentication helpers — see Security Model.

ai.promethist.service, ai.promethist.common.service

Services that are not engine-specific: AclService (access control), AuditService, UserService (the user resolution contract), CrawlerService and WebPageFetcher (web retrieval), TritonService (inference), NavigationService, McpConnectorService, MailgunService (email), ChatMemoryService, EvaluationQueryService (evaluation result queries).

ai.promethist.bridge

The bridge’s properties, configurations and result documents — they live here so both the bridge and the platform backend can read them. See Bridge Configuration.

ai.promethist.component

Shared components, including the Keycloak device authenticator.

ai.promethist.audio, ai.promethist.text, ai.promethist.util, ai.promethist.visual, ai.promethist.metrics, ai.promethist.messaging, ai.promethist.mail, ai.promethist.exception, ai.promethist.dto

Supporting utilities: audio helpers, text and prompt utilities, metric registry helpers, message sending contracts, localized exceptions and the DTOs shared with clients.

Build Notes

  • Spring Web, Spring Security and the Spring AI model artifacts are compileOnly — the library compiles against them but consumers bring their own versions at runtime.

  • The module has its own protobuf/gRPC code generation for the Triton inference client.

  • It is published as a Maven artifact (promethist-common) with a sources jar to the repository configured for the build.

In this section