update class diagram

This commit is contained in:
Aaron Po
2026-05-14 19:49:14 -04:00
parent 2ee7b3d2a2
commit 688c28f85d

View File

@@ -1,4 +1,4 @@
@startuml
@startuml class_diagram
' ==========================================
' CONFIGURATION & STYLING
@@ -8,6 +8,8 @@ skinparam classAttributeFontSize 9
skinparam defaultFontSize 25
skinparam titleFontSize 30
title Biergarten Data Pipeline — Class Diagram
package "Domain: Models" {
class Location {
@@ -141,7 +143,7 @@ package "Domain: Models" {
LocationContext *-- Completeness
}
@startuml
package "Domain: Application Configuration" {
class SamplingOptions {
+ temperature: float = 1.0F
@@ -167,12 +169,10 @@ package "Domain: Application Configuration" {
+ pipeline: PipelineOptions
}
' --- Domain Model Relationships ---
ApplicationOptions *-- GeneratorOptions
ApplicationOptions *-- PipelineOptions
GeneratorOptions o-- SamplingOptions
}
@endum
package "Domain: Policy" {
@@ -297,7 +297,6 @@ package "Infrastructure: Logging" {
- ToString(phase) : std::string
}
' --- Logging Relationships ---
LogEntry *-- LogLevel
LogEntry *-- PipelinePhase
PipelineLogger ..> LogEntry : emits
@@ -363,6 +362,22 @@ package "Infrastructure: Enrichment" {
}
package "Infrastructure: Prompting" {
interface IPromptDirectory <<interface>> {
+ Load(key : std::string_view) : std::string
}
class PromptDirectory {
- prompt_dir_ : std::filesystem::path
- cache_ : std::unordered_map<std::string, std::string>
+ PromptDirectory(prompt_dir : const std::filesystem::path&)
+ Load(key : std::string_view) : std::string
}
IPromptDirectory <|.. PromptDirectory
}
package "Infrastructure: Data Generation" {
interface DataGenerator <<interface>> {
@@ -386,6 +401,7 @@ package "Infrastructure: Data Generation" {
- model_ : ModelHandle
- context_ : ContextHandle
- prompt_formatter_ : std::unique_ptr<PromptFormatter>
- prompt_directory_ : std::unique_ptr<IPromptDirectory>
- rng_ : std::mt19937
+ GenerateBrewery(...) : BreweryResult
+ GenerateBeer(...) : BeerResult
@@ -459,8 +475,6 @@ package "Infrastructure: Data Export" {
}
class BiergartenPipelineOrchestrator {
- preloader_ : std::unique_ptr<DataPreloader>
- enrichment_service_ : std::unique_ptr<EnrichmentService>
@@ -531,6 +545,7 @@ DateTimeProvider <|.. SystemDateTimeProvider
WikipediaService *-- WebClient
WikipediaService ..> ContextStrategy
LlamaGenerator *-- PromptFormatter
LlamaGenerator *-- IPromptDirectory
LlamaGenerator ..> GeneratorOptions
SqliteExportService *-- DateTimeProvider