File size: 1,474 Bytes
afa4de7
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
# API Endpoints

This page lists all available API endpoints.

General

- All API routers are mounted under the `/api/v1` prefix (see `app.main`).
- Health endpoint is available at `/health`.

Health

- GET /health
  - Returns: `{ "status": "ok" }`
  - Purpose: basic liveness/health check.

Governance (risk/intent evaluation)

- POST /api/v1/intents/evaluate
  - Description: Evaluate an infrastructure intent and return a risk score and explanation.
  - Body: an InfrastructureIntentRequest JSON object (see the model in `app.models.infrastructure_intents`).
  - Behaviour: The endpoint converts the incoming intent to an OSS intent and calls into the locally initialized RiskEngine (`app.state.risk_engine`).
  - Errors: May return 500 if evaluation fails.

- POST /api/v1/intents/outcome
  - Description: Record the observed outcome of an executed intent to update priors.
  - Behaviour: Not implemented in this repository; the endpoint returns a `501 Not Implemented` (the current implementation raises a 501 indicating outcome recording is not yet implemented).

Other routers

- The application also registers routers for incidents, risk, intents, and history at `/api/v1` (see `app.main`). Consult the respective modules in `app.api` for their exact endpoints and payloads.

Notes

- The governance evaluation relies on a `RiskEngine` instance initialized at app startup (see `app.main`) which reads `ARF_HMC_MODEL` and `ARF_USE_HYPERPRIORS` environment variables.