Files
git.stella-ops.org/docs/devops/policy-schema-export.md
master 730354a1af
Some checks failed
Docs CI / lint-and-preview (push) Has been cancelled
feat: Implement Scheduler Worker Options and Planner Loop
- Added `SchedulerWorkerOptions` class to encapsulate configuration for the scheduler worker.
- Introduced `PlannerBackgroundService` to manage the planner loop, fetching and processing planning runs.
- Created `PlannerExecutionService` to handle the execution logic for planning runs, including impact targeting and run persistence.
- Developed `PlannerExecutionResult` and `PlannerExecutionStatus` to standardize execution outcomes.
- Implemented validation logic within `SchedulerWorkerOptions` to ensure proper configuration.
- Added documentation for the planner loop and impact targeting features.
- Established health check endpoints and authentication mechanisms for the Signals service.
- Created unit tests for the Signals API to ensure proper functionality and response handling.
- Configured options for authority integration and fallback authentication methods.
2025-10-27 09:46:31 +02:00

1.2 KiB

Policy Schema Export Automation

This utility generates JSON Schema documents for the Policy Engine run contracts.

Command

scripts/export-policy-schemas.sh [output-directory]

When no output directory is supplied, schemas are written to docs/schemas/.

The exporter builds against StellaOps.Scheduler.Models and emits:

  • policy-run-request.schema.json
  • policy-run-status.schema.json
  • policy-diff-summary.schema.json
  • policy-explain-trace.schema.json

The build pipeline (.gitea/workflows/build-test-deploy.yml, job Export policy run schemas) runs this script on every push and pull request. Exports land under artifacts/policy-schemas/<commit>/, are published as the policy-schema-exports artifact, and changes trigger a Slack post to #policy-engine via the POLICY_ENGINE_SCHEMA_WEBHOOK secret. A unified diff is stored alongside the exports for downstream consumers.

CI integration checklist

  • Invoke the script in the DevOps pipeline (see DEVOPS-POLICY-20-004).
  • Publish the generated schemas as pipeline artifacts.
  • Notify downstream consumers when schemas change (Slack #policy-engine, changelog snippet).
  • Gate CLI validation once schema artifacts are available.