Skip to main content

aion_server/api/http/
mod.rs

1//! axum HTTP/JSON workflow facade.
2//!
3//! Module layout:
4//! - [`router`] — public router construction (the only public surface).
5//! - `workflows` — workflow management handlers.
6//! - `schedules` — schedule management handlers.
7//! - `events` — websocket event-subscription handlers.
8//! - `deploy` — operator deploy handlers (mounted only when `[deploy].enabled`).
9//! - `awl_deployed` — the read-only deployed-AWL studio surface (mounted only
10//!   when `[deploy].enabled`, alongside the deploy read model it reflects).
11//! - `authoring` — server-side Gleam authoring (mounted only when `[authoring].gleam_path` is set).
12//! - `dev_ui` — local dev-server surface (mounted only when `[dev].enabled`).
13//! - `auth` — caller-identity extraction from request headers.
14//! - `routing` — shard-owner forwarding for HTTP writes (clustered builds).
15//! - `visibility` — visibility query-string parsing and namespace scoping.
16//! - `payload` — HTTP body/payload encode-decode shapes and conversions.
17//! - `build` — `GET /build`, the server's own revision.
18//! - `update_status` — `GET /update-status`, the installed version joined
19//!   with the last completed manual update check.
20//! - `describe_live` — the mid-step join: current step + attempt liveness +
21//!   progress note + transcript tail, in one read.
22//! - `assistant` — `GET /assistant`, the built-in assistant this binary carries.
23//! - `queues` — the fleet-wide unserved-queue read.
24//! - `managed_workers` — `GET /workers/managed`, the supervision status join,
25//!   and the `POST /workers/managed/{name}/{start,stop,restart}` lifecycle
26//!   commands (mounted only when `[deploy].enabled`, like the gRPC
27//!   `DeployService` counterparts they mirror).
28//! - `unrecoverable` — the fleet-wide degraded-residency read.
29//! - `clean_dtos` — clean JSON request/response DTOs for the workflow POST endpoints.
30//! - `error` — wire-error-to-HTTP response mapping.
31
32mod assistant;
33pub(crate) mod auth;
34mod authoring;
35mod awl;
36mod awl_deployed;
37mod build;
38mod changelog;
39mod clean_dtos;
40mod cluster_command;
41mod deploy;
42mod describe_live;
43mod dev_ui;
44mod error;
45mod events;
46mod history;
47mod intervene;
48mod managed_workers;
49mod outbox;
50mod payload;
51mod queues;
52mod router;
53#[cfg(feature = "haematite-backend")]
54mod routing;
55mod schedules;
56mod transcripts;
57mod unrecoverable;
58mod update_status;
59mod visibility;
60mod whoami;
61mod worker_deployments;
62mod workers;
63mod workflows;
64
65#[cfg(test)]
66mod events_filter_integration_tests;
67#[cfg(test)]
68mod history_tests;
69#[cfg(test)]
70mod test_support;
71#[cfg(test)]
72mod transcripts_tests;
73
74pub use router::{http_router, workflow_router};