Commit Graph

71 Commits

Author SHA1 Message Date
ApsisRS contributors d5bb762020 orbit: mark the new error enums non exhaustive
EphemerisSamplingError and ManeuverApplicationError were missing the
attribute the other fifteen error kinds carry. Record the distinction
between an error enum, which is marked so a new category does not break a
caller, and a domain state enum, which is left exhaustive so the compiler
points at every match that a new variant needs.
2026-09-26 23:40:43 +08:00
ApsisRS contributors c9d2605385 docs: fix the broken intra doc links and check them in CI
Running rustdoc with -D warnings found nine broken links: a misspelt
WGS84, links to methods and constants that are private or in a crate that
is not a dependency, and three redundant explicit targets. Fix each and add
a documentation step to CI so a doc comment cannot drift away from the code
it describes without the build noticing.
2026-09-26 23:37:48 +08:00
ApsisRS contributors 7531ebacd6 workspace: remove dependencies that are declared but never used
Thirty four crates listed apsis-core or apsis-math without referencing it,
and apsis-kepler listed apsis-time and apsis-tle as well. Each was verified
removable by compiling with it taken out. An unused dependency still costs
build time and makes the dependency graph and the layer check report
relations that do not exist. The layer check now reports 104 edges, down
from 141.
2026-09-26 23:36:38 +08:00
ApsisRS contributors f299d633fe docs: correct the core error claim and record the error strategy
apsis-core described Error and Result as the workspace's single error
surface, but no crate uses them: every layer with a domain specific failure
defines its own Error and ErrorKind, whose variants name the concrete
conditions a caller matches on. Correct the doc comment and record the
strategy, including the Option versus Result split and the tolerance
conventions.
2026-09-26 23:29:25 +08:00
ApsisRS contributors c875aeefa6 validation: add the coverage geometry cross-check
The network layer was the only layer without a Python cross-check, and
validation/python/constellation/ was an empty placeholder that the README
described as existing. Add the dump example and the reference script, which
recomputes the geometry from the spherical triangle relations rather than
from the Rust code, and remove the placeholder.
2026-09-26 23:26:13 +08:00
ApsisRS contributors 8b53cb1d1b ci: run the integration checks and add a dependency free benchmark
The cross-layer integration checks were examples containing assertions
that cargo test never ran, so a break in one layer's assumptions about
another could pass CI. Run them explicitly.

The benches/ and tests/ directories were empty placeholders that a virtual
workspace does not compile, and benches/criterion named a third party crate
this workspace forbids. Remove both and add a real zero dependency
benchmark as a facade example.
2026-09-26 23:22:34 +08:00
ApsisRS contributors 604838c927 orbit: add maneuver models and wire the orbit facade 2026-09-26 23:17:16 +08:00
ApsisRS contributors f45f2ad713 orbit: add ephemeris sampling and Hermite interpolation 2026-09-26 23:11:00 +08:00
ApsisRS contributors 48300342ab apsis-rs: fix the network example altitude check 2026-09-26 22:57:03 +08:00
ApsisRS contributors a09dd802e0 sim: add simulation facade and integration example 2026-09-26 22:52:51 +08:00
ApsisRS contributors 2ebd85a434 sim: add output trace recording 2026-09-26 22:50:05 +08:00
ApsisRS contributors f56ec891a0 sim: add scenario definition and text loading 2026-09-26 22:48:27 +08:00
ApsisRS contributors 861ec120f4 sim: add discrete event simulation engine 2026-09-26 22:28:23 +08:00
ApsisRS contributors 5f064fd422 sim: add event type and time ordered event queue 2026-09-26 22:23:13 +08:00
ApsisRS contributors 6e1deec750 ops: add precedence constraints and an improvement pass 2026-09-26 22:21:20 +08:00
ApsisRS contributors 083921fae9 apsis-rs: add end to end operations integration example 2026-09-26 17:08:06 +08:00
ApsisRS contributors a83df0333a ops: add greedy task planner 2026-09-26 17:07:12 +08:00
ApsisRS contributors f8fd175266 ops: add schedule conflict detection 2026-09-26 17:04:56 +08:00
ApsisRS contributors 305db01140 ops: add schedule representation and evaluation 2026-09-26 17:02:35 +08:00
ApsisRS contributors f388d9cdaf ops: fix a lint in the task tests 2026-09-26 17:00:11 +08:00
ApsisRS contributors b3808d9a2a ops: add tasks with resource requirements and windows 2026-09-26 16:59:48 +08:00
ApsisRS contributors 72640083af ops: add resources with availability windows and capacity 2026-09-26 16:57:54 +08:00
ApsisRS contributors cc5d0dbd19 physics: add the TEME to Earth-fixed transformation 2026-09-26 16:54:09 +08:00
ApsisRS contributors 5ef517f7c9 physics: add IAU 2000A nutation and IAU 2006 precession 2026-09-26 16:48:57 +08:00
ApsisRS contributors 574971076e apsis-rs: add end to end network integration example 2026-09-26 16:09:27 +08:00
ApsisRS contributors eb8ef3fa3b network: add mesh connectivity and critical link analysis 2026-09-26 16:06:59 +08:00
ApsisRS contributors 0bc127277f network: add handover policy with hysteresis and dwell time 2026-09-26 16:04:52 +08:00
ApsisRS contributors 033c85a338 network: add shortest path and interval routing 2026-09-26 16:03:15 +08:00
ApsisRS contributors 84e62abe52 network: add time-varying topology graph and series 2026-09-26 16:01:19 +08:00
ApsisRS contributors 016c3a4b76 network: add inter-satellite link geometry 2026-09-26 15:58:49 +08:00
ApsisRS contributors dcd1774b3f network: add access window finder 2026-09-26 15:51:47 +08:00
ApsisRS contributors ea89c217eb network: add coverage geometry, footprint, and visibility 2026-09-26 15:48:14 +08:00
ApsisRS contributors bebf7c4df0 network: add Walker constellation construction 2026-09-26 15:44:38 +08:00
ApsisRS contributors 990f1d47d0 rf: add the exact P.676 slant path with the P.835 atmosphere 2026-09-26 15:43:12 +08:00
ApsisRS contributors 3116d8c22d rf: pin the S.465 revision in the citation 2026-09-26 15:36:23 +08:00
ApsisRS contributors a0730cfb33 rf: derive the rain height from P.839 in the path method 2026-09-26 15:35:20 +08:00
ApsisRS contributors b298a00651 rf: add the ITU-R P.839-4 rain height model 2026-09-26 15:34:34 +08:00
ApsisRS contributors ed833d2d59 workspace: add the S.465 cross-check and document the ITU-R suite 2026-09-26 15:29:41 +08:00
ApsisRS contributors 37d8d977d4 rf: add the ITU-R S.465 reference antenna pattern 2026-09-26 15:27:58 +08:00
ApsisRS contributors 1d8ff398bb rf: correct the P.618 elevation units and the pattern citation 2026-09-26 15:18:10 +08:00
ApsisRS contributors d5ba27e784 rf: replace gaseous and rain models with ITU-R P.676-12 and P.838-3 2026-09-26 15:13:48 +08:00
ApsisRS contributors fb1dd47a9f rf: add link budget cross-check example and script 2026-09-26 14:46:36 +08:00
ApsisRS contributors 8144df75a3 rf: add carrier to interference and noise combination 2026-09-26 14:44:05 +08:00
ApsisRS contributors 1581a1951c rf: add atmospheric gaseous and rain attenuation models 2026-09-26 14:42:47 +08:00
ApsisRS contributors 85f3d8198c rf: add Doppler shift and range rate models 2026-09-26 14:40:12 +08:00
ApsisRS contributors fcc45eddbd rf: add link budget with gain to temperature figure 2026-09-26 14:38:32 +08:00
ApsisRS contributors 32a9b1634f rf: add noise temperature and cascade models 2026-09-26 14:37:15 +08:00
ApsisRS contributors c9baeb87d2 rf: add parabolic aperture and off-axis pattern models 2026-09-26 14:36:01 +08:00
ApsisRS contributors cd1cdb7810 rf: add decibel, power, gain, and free space primitives 2026-09-26 14:32:58 +08:00
ApsisRS contributors da86f2f2ed orbit: add layer facade that combines propagation and elements 2026-09-26 14:21:55 +08:00