9734eec63c
Generated by per-group subagents covering all 52 modules across: core (18), infrastructure (10), apps (5), interfaces (3), plugins (7), testing (9) Documentation format: - AsciiDoc (.adoc) files in docs/modules/<group>/ - PlantUML (.puml) files in docs/diagrams/ - .adoc files reference diagrams via include:: directives Each doc covers: purpose, responsibilities, non-responsibilities, key types, event flow, integration points, invariants, PlantUML diagram, known issues, and open questions.
37 lines
1.1 KiB
Plaintext
37 lines
1.1 KiB
Plaintext
@startuml
|
|
!theme plain
|
|
package "infra-artifacts-cas" {
|
|
class CasArtifactStore
|
|
class CasConfig
|
|
interface ArtifactIndex
|
|
class SqliteArtifactIndex
|
|
class SegmentLayout
|
|
class SegmentWriter
|
|
class SegmentReader
|
|
class Location
|
|
class TailScanner
|
|
class LivenessScanner
|
|
class Compactor
|
|
class Evictor
|
|
class DefaultMaterializingArtifactWriter
|
|
}
|
|
interface ArtifactStore <<core:artifactstore>>
|
|
interface MaterializingArtifactWriter <<core:artifacts>>
|
|
ArtifactStore <|.. CasArtifactStore
|
|
MaterializingArtifactWriter <|.. DefaultMaterializingArtifactWriter
|
|
CasArtifactStore *--> CasConfig
|
|
CasArtifactStore *--> ArtifactIndex
|
|
CasArtifactStore *--> SegmentWriter
|
|
CasArtifactStore *--> SegmentReader
|
|
ArtifactIndex <|.. SqliteArtifactIndex
|
|
CasArtifactStore --> TailScanner : recover()
|
|
CasArtifactStore --> Compactor : compact()
|
|
CasArtifactStore --> Evictor : evict()
|
|
Compactor --> LivenessScanner
|
|
Evictor --> LivenessScanner
|
|
TailScanner --> ArtifactIndex : uses
|
|
TailScanner --> SegmentLayout : uses
|
|
SegmentWriter --> SegmentLayout : uses
|
|
SegmentReader --> SegmentLayout : uses
|
|
@enduml
|