Restructure solution layout by module

This commit is contained in:
master
2025-10-28 15:10:40 +02:00
parent 95daa159c4
commit d870da18ce
4103 changed files with 192899 additions and 187024 deletions

View File

@@ -0,0 +1,28 @@
# Tenant Timeline Indexer — Agent Charter
## Mission
Build the tenant-scoped timeline ingestion and query service described in Epic 15. Consume structured timeline events from all services, maintain queryable indices, and expose APIs to Console and CLI without violating imposed rule guarantees.
## Responsibilities
- Define Postgres schema, RLS policies, and ingestion pipelines for `timeline_events`.
- Provide event consumers for NATS/Redis queues with dedupe + ordering logic.
- Serve REST/gRPC APIs powering Console Forensics Explorer and CLI `stella obs trace`/`timeline` flows.
- Emit metrics/traces/logs for ingestion health and query performance.
## Collaboration
- Coordinate with Telemetry Core for event schema definitions.
- Work with Evidence Locker to link events to evidence bundle digests.
- Align with Authority on new `timeline:read` scopes and tenant enforcement.
## Definition of Done
- Service ships with deterministic migrations + repeatable seeds.
- Integration tests replay recorded event fixtures to stable results.
- Docs updated under `/docs/forensics/timeline.md` per release.
## Module Layout
- `StellaOps.TimelineIndexer.Core/` — event models, ordering/dedupe logic, query contracts.
- `StellaOps.TimelineIndexer.Infrastructure/` — Postgres/NATS clients, persistence abstractions.
- `StellaOps.TimelineIndexer.WebService/` — query/lookup APIs and authentication glue.
- `StellaOps.TimelineIndexer.Worker/` — ingestion consumers and background compaction jobs.
- `StellaOps.TimelineIndexer.Tests/` — unit tests focused on ordering/dedupe/query correctness.
- `StellaOps.TimelineIndexer.sln` — solution aggregating module projects.