Campaign Request Basics¶
The versioned input for astraeus campaign-plan is normally written in YAML
with schema_version: campaign_plan_request_v1.
Main Blocks¶
| Block | Purpose |
|---|---|
campaign |
Campaign ID, type, objective, and high-level constraints. |
deployment_assets |
Launchers, OTVs, carriers, availability, release policy, and initial state. |
satellites |
Explicit spacecraft to place. |
satellite_groups |
Compact repeated spacecraft definitions. |
target_structure |
Requested planes, slots, distribution, and orbital target. |
assignment |
Automatic assignment policy and deliberate overrides. |
environment |
Reference epoch and related planning context. |
solver |
Strategy, refinement, execution, and artifact-detail policy. |
A request needs campaign, deployment_assets, target_structure, and either
explicit satellites or satellite groups.
Compact Example¶
schema_version: campaign_plan_request_v1
campaign:
campaign_id: deployment-study
type: constellation_deployment
objective:
plane_count: 2
slots_per_plane: 2
target_orbit:
apo_alt_km: 500
peri_alt_km: 500
tolerances:
apo_alt_km: 1
peri_alt_km: 1
constraints:
max_campaign_duration_s: 172800
deployment_assets:
- asset_id: launcher-1
asset_type: launcher_insertion
satellite_groups:
- satellite_id_prefix: STUDY-SAT
count: 4
deployed_by: launcher-1
target_structure:
distribution_mode: round_robin
planes:
- plane_id: plane-1
slot_count: 2
- plane_id: plane-2
slot_count: 2
solver:
strategy_id: constellation_deployment
The deployment example adds initial orbit, spacecraft, propulsion, assignment, and epoch detail needed for an executable study.
Assets And Spacecraft¶
Campaigns are asset-centered. Each satellite or group names the asset that deploys it; the asset's type, availability, release timing, and initial orbital state affect assignment and mission generation.
Use satellites when spacecraft differ materially or must carry explicit IDs.
Use satellite_groups when repeated spacecraft share mass and propulsion
assumptions. Group expansion still produces individual assignments and missions
in the result.
Targets And Assignment¶
target_structure defines what completion means. Plane and slot counts,
distribution policy, orbital targets, tolerances, and campaign constraints should
be explicit enough that campaign_summary.target_summary can explain closure.
Automatic assignment is the normal baseline. Add overrides only for deliberate constraints or comparison cases; extensive overrides can obscure whether the strategy itself is effective.
Solver And Artifact Detail¶
The solver selects a compatible strategy and may refine assignment or timing. The common artifact policies are:
summary: one self-contained campaign resultfull: the result plus per-satellite mission side bundles
Begin with summary mode. Full mission bundles increase output volume and are most useful after the campaign summary identifies specific missions for investigation.
Validate every edited request before execution:
astraeus campaign-plan validate --input <request.yaml>
For exact fields and constraints, use the Campaign request reference. Next: Running campaigns.