Files
git.stella-ops.org/src/TimelineIndexer/StellaOps.TimelineIndexer/AGENTS.md
2025-12-26 11:44:40 +02:00

2.3 KiB

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.

Required Reading

  • docs/modules/telemetry/architecture.md
  • docs/modules/platform/architecture-overview.md

Working Agreement

    1. Update task status to DOING/DONE in both correspoding sprint file /docs/implplan/SPRINT_*.md when you start or finish work.
    1. Review this charter and the Required Reading documents before coding; confirm prerequisites are met.
    1. Keep changes deterministic (stable ordering, timestamps, hashes) and align with offline/air-gap expectations.
    1. Coordinate doc updates, tests, and cross-guild communication whenever contracts or workflows change.
    1. Revert to TODO if you pause the task without shipping changes; leave notes in commit/PR descriptions for context.