Files
git.stella-ops.org/docs/modules/scheduler/AGENTS.md
master 8355e2ff75
Some checks failed
Docs CI / lint-and-preview (push) Has been cancelled
feat: Add initial implementation of Vulnerability Resolver Jobs
- Created project for StellaOps.Scanner.Analyzers.Native.Tests with necessary dependencies.
- Documented roles and guidelines in AGENTS.md for Scheduler module.
- Implemented IResolverJobService interface and InMemoryResolverJobService for handling resolver jobs.
- Added ResolverBacklogNotifier and ResolverBacklogService for monitoring job metrics.
- Developed API endpoints for managing resolver jobs and retrieving metrics.
- Defined models for resolver job requests and responses.
- Integrated dependency injection for resolver job services.
- Implemented ImpactIndexSnapshot for persisting impact index data.
- Introduced SignalsScoringOptions for configurable scoring weights in reachability scoring.
- Added unit tests for ReachabilityScoringService and RuntimeFactsIngestionService.
- Created dotnet-filter.sh script to handle command-line arguments for dotnet.
- Established nuget-prime project for managing package downloads.
2025-11-18 07:52:15 +02:00

2.4 KiB

Scheduler agent guide

Mission

Scheduler detects advisory/VEX deltas, computes impact windows, and orchestrates re-evaluations across Scanner and Policy Engine. Docs in this directory are the front-door contract for contributors.

Working directory

  • docs/modules/scheduler (docs-only); code changes live under src/Scheduler/** but must be coordinated via sprint plans.

Roles & owners

  • Docs author: curates AGENTS/TASKS/runbooks; keeps determinism/offline guidance accurate.
  • Scheduler engineer (Worker/WebService): aligns implementation notes with architecture and ensures observability/runbook updates land with code.
  • Observability/Ops: maintains dashboards/rules, documents operational SLOs and alert contracts.

Required Reading

  • docs/modules/scheduler/README.md
  • docs/modules/scheduler/architecture.md
  • docs/modules/scheduler/implementation_plan.md
  • docs/modules/platform/architecture-overview.md

How to work

  1. Open relevant sprint file in docs/implplan/SPRINT_*.md and set task status to DOING there and in docs/modules/scheduler/TASKS.md before starting.
  2. Confirm prerequisites above are read; note any missing contracts in sprint Decisions & Risks.
  3. Keep outputs deterministic (stable ordering, UTC ISO-8601 timestamps, sorted lists) and offline-friendly (no external fetches without mirrors).
  4. When changing behavior, update runbooks and observability assets in ./operations/.
  5. On completion, set status to DONE in both the sprint file and TASKS.md; if paused, revert to TODO and add a brief note.

Guardrails

  • Honour the Aggregation-Only Contract where applicable (see ../../ingestion/aggregation-only-contract.md).
  • No undocumented schema or API contract changes; document deltas in architecture or implementation_plan.
  • Keep Offline Kit parity—document air-gapped workflows for any new feature.
  • Prefer deterministic fixtures and avoid machine-specific artefacts in examples.

Testing & determinism expectations

  • Examples and snippets should be reproducible; pin sample timestamps to UTC and sort collections.
  • Observability examples must align with published metric names and labels; update operations/worker-prometheus-rules.yaml if alert semantics change.

Status mirrors

  • Sprint tracker: /docs/implplan/SPRINT_*.md (source of record for Delivery Tracker).
  • Local tracker: docs/modules/scheduler/TASKS.md (mirrors sprint status; keep in sync).