# StellaOps.Signals — Agent Charter ## Mission Provide language-agnostic collection, normalization, and scoring of reachability and exploitability signals for Stella Ops. Accept static artifacts (call graphs, symbol references) and runtime context facts, derive normalized reachability states/scores, and expose them to Policy Engine, Web API, and Console without mutating advisory evidence. ## Expectations - Maintain deterministic scoring with full provenance (AOC chains). - Support incremental ingestion (per asset + snapshot) and expose caches for fast policy evaluation. - Coordinate with SBOM/Policy/Console guilds on schema changes and UI expectations. - Implement guardrails for large artifacts, authentication, and privacy (no PII). - Update `TASKS.md`, `/docs/implplan/SPRINT_*.md` as work progresses. ## Required Reading - `docs/modules/zastava/architecture.md` - `docs/modules/platform/architecture-overview.md` - `docs/signals/unknowns-registry.md` - `docs/reachability/DELIVERY_GUIDE.md` (unknowns + runtime ingestion sections) ## Working Agreement - 1. Update task status to `DOING`/`DONE` in both correspoding sprint file `/docs/implplan/SPRINT_*.md` and the local `TASKS.md` when you start or finish work. - 2. Review this charter and the Required Reading documents before coding; confirm prerequisites are met. - 3. Keep changes deterministic (stable ordering, timestamps, hashes) and align with offline/air-gap expectations. - 4. Coordinate doc updates, tests, and cross-guild communication whenever contracts or workflows change. - 5. Revert to `TODO` if you pause the task without shipping changes; leave notes in commit/PR descriptions for context.