[INFO] fetching crate bijux-gnss-receiver 0.1.0...
[INFO] documenting bijux-gnss-receiver-0.1.0 against da3f5c31e5535b3dc210067de660a45784ae1e9c for pr-162169
[INFO] extracting crate bijux-gnss-receiver 0.1.0 into /workspace/builds/worker-1-tc2/source
[INFO] started tweaking crates.io crate bijux-gnss-receiver 0.1.0
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate bijux-gnss-receiver 0.1.0
[INFO] tweaked toml for crates.io crate bijux-gnss-receiver 0.1.0 written to /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate bijux-gnss-receiver 0.1.0 on toolchain da3f5c31e5535b3dc210067de660a45784ae1e9c
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+da3f5c31e5535b3dc210067de660a45784ae1e9c" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate bijux-gnss-receiver 0.1.0 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+da3f5c31e5535b3dc210067de660a45784ae1e9c" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:8683fc1fc2eb5c9ac98e0d076ab094b2ffac7f99da555d2b6a2e27f346de2ec7" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 1b968382532abb457701cd14d96f8954f5d9580d9098114b59e6385d3eae960e
[INFO] running `Command { std: "docker" "start" "1b968382532abb457701cd14d96f8954f5d9580d9098114b59e6385d3eae960e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "1b968382532abb457701cd14d96f8954f5d9580d9098114b59e6385d3eae960e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "1b968382532abb457701cd14d96f8954f5d9580d9098114b59e6385d3eae960e" "/opt/rustwide/cargo-home/bin/cargo" "+da3f5c31e5535b3dc210067de660a45784ae1e9c" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "1b968382532abb457701cd14d96f8954f5d9580d9098114b59e6385d3eae960e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-w" "/opt/rustwide/workdir" "--user" "0:0" "1b968382532abb457701cd14d96f8954f5d9580d9098114b59e6385d3eae960e" "/opt/rustwide/cargo-home/bin/cargo" "+da3f5c31e5535b3dc210067de660a45784ae1e9c" "doc" "--frozen" "--no-deps" "--document-private-items" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling typenum v1.19.0
[INFO] [stderr]    Compiling serde_json v1.0.150
[INFO] [stderr]     Checking strength_reduce v0.2.4
[INFO] [stderr]    Compiling quote v1.0.45
[INFO] [stderr]     Checking regex-automata v0.4.16
[INFO] [stderr]     Checking time v0.3.47
[INFO] [stderr]     Checking num-integer v0.1.46
[INFO] [stderr]     Checking transpose v0.2.3
[INFO] [stderr]     Checking primal-check v0.3.4
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling syn v3.0.0
[INFO] [stderr]     Checking regex v1.13.1
[INFO] [stderr]     Checking hybrid-array v0.4.10
[INFO] [stderr]    Compiling serde_derive_internals v0.29.1
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling ref-cast-impl v1.0.25
[INFO] [stderr]     Checking block-buffer v0.12.0
[INFO] [stderr]     Checking crypto-common v0.2.1
[INFO] [stderr]     Checking ref-cast v1.0.25
[INFO] [stderr]    Compiling thiserror-impl v2.0.19
[INFO] [stderr]    Compiling schemars_derive v1.2.1
[INFO] [stderr]     Checking thiserror v2.0.19
[INFO] [stderr]     Checking digest v0.11.2
[INFO] [stderr]     Checking sha2 v0.11.0
[INFO] [stderr]     Checking serde v1.0.228
[INFO] [stderr]     Checking num-complex v0.4.6
[INFO] [stderr]     Checking schemars v1.2.1
[INFO] [stderr]     Checking rustfft v6.4.1
[INFO] [stderr]     Checking bijux-gnss-core v0.1.0
[INFO] [stderr]     Checking bijux-gnss-signal v0.1.0
[INFO] [stderr]     Checking bijux-gnss-nav v0.1.0
[INFO] [stderr]  Documenting bijux-gnss-receiver v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/engine/receiver_config.rs:353:1
[INFO] [stdout]     |
[INFO] [stdout] 353 | / pub enum AcquisitionThresholdMode {
[INFO] [stdout] 354 | |     /// Use the configured ratio thresholds directly.
[INFO] [stdout] 355 | |     #[default]
[INFO] [stdout] 356 | |     FixedRatio,
[INFO] [stdout] 357 | |     /// Calibrate the peak-to-mean threshold against a declared false-alarm probability.
[INFO] [stdout] 358 | |     CalibratedFalseAlarm,
[INFO] [stdout] 359 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Receiver configuration and schema.`
[INFO] [stdout]     = help: ends near `Threshold-derivation policy for acquisition acceptance.`
[INFO] [stdout]     = note: `#[deny(rustdoc::unportable_markdown)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/engine/receiver_config.rs:353:1
[INFO] [stdout]     |
[INFO] [stdout] 353 | / pub enum AcquisitionThresholdMode {
[INFO] [stdout] 354 | |     /// Use the configured ratio thresholds directly.
[INFO] [stdout] 355 | |     #[default]
[INFO] [stdout] 356 | |     FixedRatio,
[INFO] [stdout] 357 | |     /// Calibrate the peak-to-mean threshold against a declared false-alarm probability.
[INFO] [stdout] 358 | |     CalibratedFalseAlarm,
[INFO] [stdout] 359 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Threshold-derivation policy for acquisition acceptance.`
[INFO] [stdout]     = help: ends near `Threshold-derivation policy for acquisition acceptance.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/engine/receiver_config.rs:363:1
[INFO] [stdout]     |
[INFO] [stdout] 363 | / pub struct AcquisitionThresholdPolicyConfig {
[INFO] [stdout] 364 | |     /// Threshold derivation mode.
[INFO] [stdout] 365 | |     #[serde(default)]
[INFO] [stdout] 366 | |     pub mode: AcquisitionThresholdMode,
[INFO] [stdout] ...   |
[INFO] [stdout] 375 | |     pub confidence_level: f64,
[INFO] [stdout] 376 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Receiver configuration and schema.`
[INFO] [stdout]     = help: ends near `Acquisition threshold policy parameters.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/engine/receiver_config.rs:363:1
[INFO] [stdout]     |
[INFO] [stdout] 363 | / pub struct AcquisitionThresholdPolicyConfig {
[INFO] [stdout] 364 | |     /// Threshold derivation mode.
[INFO] [stdout] 365 | |     #[serde(default)]
[INFO] [stdout] 366 | |     pub mode: AcquisitionThresholdMode,
[INFO] [stdout] ...   |
[INFO] [stdout] 375 | |     pub confidence_level: f64,
[INFO] [stdout] 376 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Acquisition threshold policy parameters.`
[INFO] [stdout]     = help: ends near `Acquisition threshold policy parameters.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/engine/receiver_config.rs:22:1
[INFO] [stdout]    |
[INFO] [stdout] 22 | / pub struct ReceiverConfig {
[INFO] [stdout] 23 | |     /// Schema version for config compatibility.
[INFO] [stdout] 24 | |     #[schemars(with = "u32")]
[INFO] [stdout] 25 | |     pub schema_version: SchemaVersion,
[INFO] [stdout] ...  |
[INFO] [stdout] 49 | |     pub navigation: NavigationConfig,
[INFO] [stdout] 50 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the way this is parsed might change in the future
[INFO] [stdout]    = help: starts near `Receiver configuration and schema.`
[INFO] [stdout]    = help: ends near `On-disk receiver configuration.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/engine/receiver_config.rs:22:1
[INFO] [stdout]    |
[INFO] [stdout] 22 | / pub struct ReceiverConfig {
[INFO] [stdout] 23 | |     /// Schema version for config compatibility.
[INFO] [stdout] 24 | |     #[schemars(with = "u32")]
[INFO] [stdout] 25 | |     pub schema_version: SchemaVersion,
[INFO] [stdout] ...  |
[INFO] [stdout] 49 | |     pub navigation: NavigationConfig,
[INFO] [stdout] 50 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the way this is parsed might change in the future
[INFO] [stdout]    = help: starts near `On-disk receiver configuration.`
[INFO] [stdout]    = help: ends near `On-disk receiver configuration.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/engine/receiver_config.rs:302:1
[INFO] [stdout]     |
[INFO] [stdout] 302 | / pub enum ReceiverError {
[INFO] [stdout] 303 | |     /// Invalid input.
[INFO] [stdout] 304 | |     #[error(transparent)]
[INFO] [stdout] 305 | |     Input(#[from] InputError),
[INFO] [stdout] ...   |
[INFO] [stdout] 320 | |     Navigation(#[from] NavError),
[INFO] [stdout] 321 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Receiver configuration and schema.`
[INFO] [stdout]     = help: ends near `Receiver pipeline error wrapper.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/engine/receiver_config.rs:302:1
[INFO] [stdout]     |
[INFO] [stdout] 302 | / pub enum ReceiverError {
[INFO] [stdout] 303 | |     /// Invalid input.
[INFO] [stdout] 304 | |     #[error(transparent)]
[INFO] [stdout] 305 | |     Input(#[from] InputError),
[INFO] [stdout] ...   |
[INFO] [stdout] 320 | |     Navigation(#[from] NavError),
[INFO] [stdout] 321 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Receiver pipeline error wrapper.`
[INFO] [stdout]     = help: ends near `Receiver pipeline error wrapper.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/engine/receiver_config.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout]  54 | / pub struct ReceiverPipelineConfig {
[INFO] [stdout]  55 | |     /// Sample rate of the IF signal, in Hz.
[INFO] [stdout]  56 | |     pub sampling_freq_hz: f64,
[INFO] [stdout]  57 | |     /// Intermediate frequency, in Hz.
[INFO] [stdout] ...   |
[INFO] [stdout] 140 | |     pub constellation_policy: ConstellationSelectionPolicy,
[INFO] [stdout] 141 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Receiver configuration and schema.`
[INFO] [stdout]     = help: ends near `Derived receiver configuration used at runtime.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/engine/receiver_config.rs:54:1
[INFO] [stdout]     |
[INFO] [stdout]  54 | / pub struct ReceiverPipelineConfig {
[INFO] [stdout]  55 | |     /// Sample rate of the IF signal, in Hz.
[INFO] [stdout]  56 | |     pub sampling_freq_hz: f64,
[INFO] [stdout]  57 | |     /// Intermediate frequency, in Hz.
[INFO] [stdout] ...   |
[INFO] [stdout] 140 | |     pub constellation_policy: ConstellationSelectionPolicy,
[INFO] [stdout] 141 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Derived receiver configuration used at runtime.`
[INFO] [stdout]     = help: ends near `Derived receiver configuration used at runtime.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/io/data.rs:77:1
[INFO] [stdout]    |
[INFO] [stdout] 77 | / pub struct FileSamples {
[INFO] [stdout] 78 | |     file: File,
[INFO] [stdout] 79 | |     done: bool,
[INFO] [stdout] 80 | |     clock: SampleClock,
[INFO] [stdout] 81 | |     sample_index: u64,
[INFO] [stdout] 82 | |     metadata: RawIqMetadata,
[INFO] [stdout] 83 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the way this is parsed might change in the future
[INFO] [stdout]    = help: starts near `I/O helpers.`
[INFO] [stdout]    = help: ends near `File-backed sample source for raw IQ captures.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/io/data.rs:77:1
[INFO] [stdout]    |
[INFO] [stdout] 77 | / pub struct FileSamples {
[INFO] [stdout] 78 | |     file: File,
[INFO] [stdout] 79 | |     done: bool,
[INFO] [stdout] 80 | |     clock: SampleClock,
[INFO] [stdout] 81 | |     sample_index: u64,
[INFO] [stdout] 82 | |     metadata: RawIqMetadata,
[INFO] [stdout] 83 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the way this is parsed might change in the future
[INFO] [stdout]    = help: starts near `File-backed sample source for raw IQ captures.`
[INFO] [stdout]    = help: ends near `File-backed sample source for raw IQ captures.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/io/data.rs:26:1
[INFO] [stdout]    |
[INFO] [stdout] 26 | / pub struct MemorySamples {
[INFO] [stdout] 27 | |     data: Vec<i16>,
[INFO] [stdout] 28 | |     cursor_samples: usize,
[INFO] [stdout] 29 | |     clock: SampleClock,
[INFO] [stdout] 30 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the way this is parsed might change in the future
[INFO] [stdout]    = help: starts near `I/O helpers.`
[INFO] [stdout]    = help: ends near `Simple in-memory sample source for tests and examples.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/io/data.rs:26:1
[INFO] [stdout]    |
[INFO] [stdout] 26 | / pub struct MemorySamples {
[INFO] [stdout] 27 | |     data: Vec<i16>,
[INFO] [stdout] 28 | |     cursor_samples: usize,
[INFO] [stdout] 29 | |     clock: SampleClock,
[INFO] [stdout] 30 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the way this is parsed might change in the future
[INFO] [stdout]    = help: starts near `Simple in-memory sample source for tests and examples.`
[INFO] [stdout]    = help: ends near `Simple in-memory sample source for tests and examples.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/pipeline/acquisition.rs:140:1
[INFO] [stdout]     |
[INFO] [stdout] 140 | / pub struct Acquisition {
[INFO] [stdout] 141 | |     config: ReceiverPipelineConfig,
[INFO] [stdout] 142 | |     runtime: ReceiverRuntime,
[INFO] [stdout] 143 | |     doppler_search_hz: i32,
[INFO] [stdout] ...   |
[INFO] [stdout] 147 | |     stats: Mutex<AcquisitionStats>,
[INFO] [stdout] 148 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Acquisition engine.`
[INFO] [stdout]     = help: ends near `Acquisition engine (coarse search).`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/pipeline/acquisition.rs:140:1
[INFO] [stdout]     |
[INFO] [stdout] 140 | / pub struct Acquisition {
[INFO] [stdout] 141 | |     config: ReceiverPipelineConfig,
[INFO] [stdout] 142 | |     runtime: ReceiverRuntime,
[INFO] [stdout] 143 | |     doppler_search_hz: i32,
[INFO] [stdout] ...   |
[INFO] [stdout] 147 | |     stats: Mutex<AcquisitionStats>,
[INFO] [stdout] 148 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Acquisition engine (coarse search).`
[INFO] [stdout]     = help: ends near `Acquisition engine (coarse search).`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/pipeline/doppler.rs:11:1
[INFO] [stdout]    |
[INFO] [stdout] 11 | / pub fn carrier_hz_from_doppler_hz(intermediate_freq_hz: f64, doppler_hz: f64) -> f64 {
[INFO] [stdout] 12 | |     intermediate_freq_hz + doppler_hz
[INFO] [stdout] 13 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the way this is parsed might change in the future
[INFO] [stdout]    = help: starts near `Carrier/Doppler conversion helpers.`
[INFO] [stdout]    = help: ends near `sampled band.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/pipeline/doppler.rs:11:1
[INFO] [stdout]    |
[INFO] [stdout] 11 | / pub fn carrier_hz_from_doppler_hz(intermediate_freq_hz: f64, doppler_hz: f64) -> f64 {
[INFO] [stdout] 12 | |     intermediate_freq_hz + doppler_hz
[INFO] [stdout] 13 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the way this is parsed might change in the future
[INFO] [stdout]    = help: starts near `Convert a Doppler offset into an absolute carrier frequency inside the`
[INFO] [stdout]    = help: ends near `Convert a Doppler offset into an absolute carrier frequency inside the`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/pipeline/doppler.rs:17:1
[INFO] [stdout]    |
[INFO] [stdout] 17 | / pub fn doppler_hz_from_carrier_hz(intermediate_freq_hz: f64, carrier_hz: f64) -> f64 {
[INFO] [stdout] 18 | |     carrier_hz - intermediate_freq_hz
[INFO] [stdout] 19 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the way this is parsed might change in the future
[INFO] [stdout]    = help: starts near `Carrier/Doppler conversion helpers.`
[INFO] [stdout]    = help: ends near `Doppler offset relative to the configured intermediate frequency.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/pipeline/doppler.rs:17:1
[INFO] [stdout]    |
[INFO] [stdout] 17 | / pub fn doppler_hz_from_carrier_hz(intermediate_freq_hz: f64, carrier_hz: f64) -> f64 {
[INFO] [stdout] 18 | |     carrier_hz - intermediate_freq_hz
[INFO] [stdout] 19 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the way this is parsed might change in the future
[INFO] [stdout]    = help: starts near `Convert an absolute carrier frequency inside the sampled band into a`
[INFO] [stdout]    = help: ends near `Convert an absolute carrier frequency inside the sampled band into a`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/pipeline/tracking.rs:65:1
[INFO] [stdout]    |
[INFO] [stdout] 65 | / pub struct Tracking {
[INFO] [stdout] 66 | |     config: ReceiverPipelineConfig,
[INFO] [stdout] 67 | |     runtime: ReceiverRuntime,
[INFO] [stdout] 68 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the way this is parsed might change in the future
[INFO] [stdout]    = help: starts near `Tracking engine and related types.`
[INFO] [stdout]    = help: ends near `Tracking engine with basic E/P/L correlation per epoch.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/pipeline/tracking.rs:65:1
[INFO] [stdout]    |
[INFO] [stdout] 65 | / pub struct Tracking {
[INFO] [stdout] 66 | |     config: ReceiverPipelineConfig,
[INFO] [stdout] 67 | |     runtime: ReceiverRuntime,
[INFO] [stdout] 68 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the way this is parsed might change in the future
[INFO] [stdout]    = help: starts near `Tracking engine with basic E/P/L correlation per epoch.`
[INFO] [stdout]    = help: ends near `Tracking engine with basic E/P/L correlation per epoch.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/validation_report.rs:458:1
[INFO] [stdout]     |
[INFO] [stdout] 458 | / pub fn build_validation_report(
[INFO] [stdout] 459 | |     tracks: &[TrackingResult],
[INFO] [stdout] 460 | |     obs: &[ObsEpoch],
[INFO] [stdout] 461 | |     solutions: &[NavSolutionEpoch],
[INFO] [stdout] ...   |
[INFO] [stdout] 479 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Validation report helpers.`
[INFO] [stdout]     = help: ends near `Build the validation report for a run.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/validation_report.rs:458:1
[INFO] [stdout]     |
[INFO] [stdout] 458 | / pub fn build_validation_report(
[INFO] [stdout] 459 | |     tracks: &[TrackingResult],
[INFO] [stdout] 460 | |     obs: &[ObsEpoch],
[INFO] [stdout] 461 | |     solutions: &[NavSolutionEpoch],
[INFO] [stdout] ...   |
[INFO] [stdout] 479 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Build the validation report for a run.`
[INFO] [stdout]     = help: ends near `Build the validation report for a run.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/validation_report.rs:483:1
[INFO] [stdout]     |
[INFO] [stdout] 483 | / pub fn build_validation_report_from_observation_artifacts(
[INFO] [stdout] 484 | |     tracks: &[TrackingResult],
[INFO] [stdout] 485 | |     observation_artifacts: &ObservationPipelineArtifacts,
[INFO] [stdout] 486 | |     solutions: &[NavSolutionEpoch],
[INFO] [stdout] ...   |
[INFO] [stdout] 504 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Validation report helpers.`
[INFO] [stdout]     = help: ends near `Build the validation report for a run from observation artifacts that preserve raw residuals.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/validation_report.rs:483:1
[INFO] [stdout]     |
[INFO] [stdout] 483 | / pub fn build_validation_report_from_observation_artifacts(
[INFO] [stdout] 484 | |     tracks: &[TrackingResult],
[INFO] [stdout] 485 | |     observation_artifacts: &ObservationPipelineArtifacts,
[INFO] [stdout] 486 | |     solutions: &[NavSolutionEpoch],
[INFO] [stdout] ...   |
[INFO] [stdout] 504 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Build the validation report for a run from observation artifacts that preserve raw residuals.`
[INFO] [stdout]     = help: ends near `Build the validation report for a run from observation artifacts that preserve raw residuals.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/validation_report.rs:535:1
[INFO] [stdout]     |
[INFO] [stdout] 535 | / pub fn build_validation_report_from_observation_artifacts_with_budgets(
[INFO] [stdout] 536 | |     tracks: &[TrackingResult],
[INFO] [stdout] 537 | |     observation_artifacts: &ObservationPipelineArtifacts,
[INFO] [stdout] 538 | |     solutions: &[NavSolutionEpoch],
[INFO] [stdout] ...   |
[INFO] [stdout] 558 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Validation report helpers.`
[INFO] [stdout]     = help: ends near `Build the validation report for a run from observation artifacts with explicit validation budgets.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/validation_report.rs:535:1
[INFO] [stdout]     |
[INFO] [stdout] 535 | / pub fn build_validation_report_from_observation_artifacts_with_budgets(
[INFO] [stdout] 536 | |     tracks: &[TrackingResult],
[INFO] [stdout] 537 | |     observation_artifacts: &ObservationPipelineArtifacts,
[INFO] [stdout] 538 | |     solutions: &[NavSolutionEpoch],
[INFO] [stdout] ...   |
[INFO] [stdout] 558 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Build the validation report for a run from observation artifacts with explicit validation budgets.`
[INFO] [stdout]     = help: ends near `Build the validation report for a run from observation artifacts with explicit validation budgets.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/validation_report.rs:508:1
[INFO] [stdout]     |
[INFO] [stdout] 508 | / pub fn build_validation_report_with_budgets(
[INFO] [stdout] 509 | |     tracks: &[TrackingResult],
[INFO] [stdout] 510 | |     obs: &[ObsEpoch],
[INFO] [stdout] 511 | |     solutions: &[NavSolutionEpoch],
[INFO] [stdout] ...   |
[INFO] [stdout] 531 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Validation report helpers.`
[INFO] [stdout]     = help: ends near `Build the validation report for a run with explicit validation budgets.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/validation_report.rs:508:1
[INFO] [stdout]     |
[INFO] [stdout] 508 | / pub fn build_validation_report_with_budgets(
[INFO] [stdout] 509 | |     tracks: &[TrackingResult],
[INFO] [stdout] 510 | |     obs: &[ObsEpoch],
[INFO] [stdout] 511 | |     solutions: &[NavSolutionEpoch],
[INFO] [stdout] ...   |
[INFO] [stdout] 531 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Build the validation report for a run with explicit validation budgets.`
[INFO] [stdout]     = help: ends near `Build the validation report for a run with explicit validation budgets.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]     --> src/validation_report.rs:1265:1
[INFO] [stdout]      |
[INFO] [stdout] 1265 | / pub fn check_time_consistency(
[INFO] [stdout] 1266 | |     tracks: &[TrackingResult],
[INFO] [stdout] 1267 | |     sample_rate_hz: f64,
[INFO] [stdout] 1268 | | ) -> TimeConsistencyReport {
[INFO] [stdout] ...    |
[INFO] [stdout] 1346 | | }
[INFO] [stdout]      | |_^
[INFO] [stdout]      |
[INFO] [stdout]      = help: the way this is parsed might change in the future
[INFO] [stdout]      = help: starts near `Validation report helpers.`
[INFO] [stdout]      = help: ends near `Check time consistency in tracking epochs.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]     --> src/validation_report.rs:1265:1
[INFO] [stdout]      |
[INFO] [stdout] 1265 | / pub fn check_time_consistency(
[INFO] [stdout] 1266 | |     tracks: &[TrackingResult],
[INFO] [stdout] 1267 | |     sample_rate_hz: f64,
[INFO] [stdout] 1268 | | ) -> TimeConsistencyReport {
[INFO] [stdout] ...    |
[INFO] [stdout] 1346 | | }
[INFO] [stdout]      | |_^
[INFO] [stdout]      |
[INFO] [stdout]      = help: the way this is parsed might change in the future
[INFO] [stdout]      = help: starts near `Check time consistency in tracking epochs.`
[INFO] [stdout]      = help: ends near `Check time consistency in tracking epochs.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/validation_report.rs:53:1
[INFO] [stdout]    |
[INFO] [stdout] 53 | / pub struct ConvergenceReport {
[INFO] [stdout] 54 | |     /// Time to reach 1m horizontal error.
[INFO] [stdout] 55 | |     pub time_to_1m_s: Option<f64>,
[INFO] [stdout] 56 | |     /// Time to reach 0.3m horizontal error.
[INFO] [stdout] ...  |
[INFO] [stdout] 63 | |     pub worst_vert_m: f64,
[INFO] [stdout] 64 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the way this is parsed might change in the future
[INFO] [stdout]    = help: starts near `Validation report helpers.`
[INFO] [stdout]    = help: ends near `Convergence report for validation timelines.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/validation_report.rs:53:1
[INFO] [stdout]    |
[INFO] [stdout] 53 | / pub struct ConvergenceReport {
[INFO] [stdout] 54 | |     /// Time to reach 1m horizontal error.
[INFO] [stdout] 55 | |     pub time_to_1m_s: Option<f64>,
[INFO] [stdout] 56 | |     /// Time to reach 0.3m horizontal error.
[INFO] [stdout] ...  |
[INFO] [stdout] 63 | |     pub worst_vert_m: f64,
[INFO] [stdout] 64 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the way this is parsed might change in the future
[INFO] [stdout]    = help: starts near `Convergence report for validation timelines.`
[INFO] [stdout]    = help: ends near `Convergence report for validation timelines.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/validation_report.rs:274:1
[INFO] [stdout]     |
[INFO] [stdout] 274 | / pub struct DiagnosticPartitionReport {
[INFO] [stdout] 275 | |     /// Advisory diagnostics that do not directly enforce refusal.
[INFO] [stdout] 276 | |     pub advisory_diagnostics: Vec<String>,
[INFO] [stdout] 277 | |     /// Enforced refusal outcomes recorded in solutions.
[INFO] [stdout] 278 | |     pub enforced_refusals: Vec<String>,
[INFO] [stdout] 279 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Validation report helpers.`
[INFO] [stdout]     = help: ends near `Partition of advisory diagnostics versus enforced refusal outcomes.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/validation_report.rs:274:1
[INFO] [stdout]     |
[INFO] [stdout] 274 | / pub struct DiagnosticPartitionReport {
[INFO] [stdout] 275 | |     /// Advisory diagnostics that do not directly enforce refusal.
[INFO] [stdout] 276 | |     pub advisory_diagnostics: Vec<String>,
[INFO] [stdout] 277 | |     /// Enforced refusal outcomes recorded in solutions.
[INFO] [stdout] 278 | |     pub enforced_refusals: Vec<String>,
[INFO] [stdout] 279 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Partition of advisory diagnostics versus enforced refusal outcomes.`
[INFO] [stdout]     = help: ends near `Partition of advisory diagnostics versus enforced refusal outcomes.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/validation_report.rs:68:1
[INFO] [stdout]    |
[INFO] [stdout] 68 | / pub struct FixTimelineEntry {
[INFO] [stdout] 69 | |     /// Epoch index.
[INFO] [stdout] 70 | |     pub epoch_idx: u64,
[INFO] [stdout] 71 | |     /// Whether the solution is fixed.
[INFO] [stdout] 72 | |     pub fixed: bool,
[INFO] [stdout] 73 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the way this is parsed might change in the future
[INFO] [stdout]    = help: starts near `Validation report helpers.`
[INFO] [stdout]    = help: ends near `Fix timeline entry for validation report.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/validation_report.rs:68:1
[INFO] [stdout]    |
[INFO] [stdout] 68 | / pub struct FixTimelineEntry {
[INFO] [stdout] 69 | |     /// Epoch index.
[INFO] [stdout] 70 | |     pub epoch_idx: u64,
[INFO] [stdout] 71 | |     /// Whether the solution is fixed.
[INFO] [stdout] 72 | |     pub fixed: bool,
[INFO] [stdout] 73 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the way this is parsed might change in the future
[INFO] [stdout]    = help: starts near `Fix timeline entry for validation report.`
[INFO] [stdout]    = help: ends near `Fix timeline entry for validation report.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/validation_report.rs:294:1
[INFO] [stdout]     |
[INFO] [stdout] 294 | / pub struct NavConstellationResidualReport {
[INFO] [stdout] 295 | |     /// Constellation represented by the summary.
[INFO] [stdout] 296 | |     pub constellation: String,
[INFO] [stdout] 297 | |     /// Pre-fit residual RMS for that constellation (m).
[INFO] [stdout] ...   |
[INFO] [stdout] 304 | |     pub post_fit_sat_count: usize,
[INFO] [stdout] 305 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Validation report helpers.`
[INFO] [stdout]     = help: ends near `Navigation residual report per epoch.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/validation_report.rs:294:1
[INFO] [stdout]     |
[INFO] [stdout] 294 | / pub struct NavConstellationResidualReport {
[INFO] [stdout] 295 | |     /// Constellation represented by the summary.
[INFO] [stdout] 296 | |     pub constellation: String,
[INFO] [stdout] 297 | |     /// Pre-fit residual RMS for that constellation (m).
[INFO] [stdout] ...   |
[INFO] [stdout] 304 | |     pub post_fit_sat_count: usize,
[INFO] [stdout] 305 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Navigation residual report per epoch.`
[INFO] [stdout]     = help: ends near `Navigation residual report per epoch.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/validation_report.rs:223:1
[INFO] [stdout]     |
[INFO] [stdout] 223 | / pub enum NavIntegrityClass {
[INFO] [stdout] 224 | |     /// No integrity red flags were detected.
[INFO] [stdout] 225 | |     Nominal,
[INFO] [stdout] 226 | |     /// The solution did not provide the protection-level evidence required for integrity claims.
[INFO] [stdout] ...   |
[INFO] [stdout] 235 | |     Compound,
[INFO] [stdout] 236 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Validation report helpers.`
[INFO] [stdout]     = help: ends near `Integrity class for a navigation epoch.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/validation_report.rs:223:1
[INFO] [stdout]     |
[INFO] [stdout] 223 | / pub enum NavIntegrityClass {
[INFO] [stdout] 224 | |     /// No integrity red flags were detected.
[INFO] [stdout] 225 | |     Nominal,
[INFO] [stdout] 226 | |     /// The solution did not provide the protection-level evidence required for integrity claims.
[INFO] [stdout] ...   |
[INFO] [stdout] 235 | |     Compound,
[INFO] [stdout] 236 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Integrity class for a navigation epoch.`
[INFO] [stdout]     = help: ends near `Integrity class for a navigation epoch.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/validation_report.rs:240:1
[INFO] [stdout]     |
[INFO] [stdout] 240 | / pub struct NavIntegrityReport {
[INFO] [stdout] 241 | |     /// Epoch index.
[INFO] [stdout] 242 | |     pub epoch_idx: u64,
[INFO] [stdout] 243 | |     /// Classified integrity state.
[INFO] [stdout] ...   |
[INFO] [stdout] 246 | |     pub reasons: Vec<String>,
[INFO] [stdout] 247 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Validation report helpers.`
[INFO] [stdout]     = help: ends near `Integrity report entry for one navigation epoch.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/validation_report.rs:240:1
[INFO] [stdout]     |
[INFO] [stdout] 240 | / pub struct NavIntegrityReport {
[INFO] [stdout] 241 | |     /// Epoch index.
[INFO] [stdout] 242 | |     pub epoch_idx: u64,
[INFO] [stdout] 243 | |     /// Classified integrity state.
[INFO] [stdout] ...   |
[INFO] [stdout] 246 | |     pub reasons: Vec<String>,
[INFO] [stdout] 247 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Integrity report entry for one navigation epoch.`
[INFO] [stdout]     = help: ends near `Integrity report entry for one navigation epoch.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/validation_report.rs:309:1
[INFO] [stdout]     |
[INFO] [stdout] 309 | / pub struct NavResidualReport {
[INFO] [stdout] 310 | |     /// Epoch index.
[INFO] [stdout] 311 | |     pub epoch_idx: u64,
[INFO] [stdout] 312 | |     /// Post-fit RMS residual compatibility field (m).
[INFO] [stdout] ...   |
[INFO] [stdout] 325 | |     pub rejected: Vec<SatId>,
[INFO] [stdout] 326 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Validation report helpers.`
[INFO] [stdout]     = help: ends near `Navigation residual report per epoch.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/validation_report.rs:309:1
[INFO] [stdout]     |
[INFO] [stdout] 309 | / pub struct NavResidualReport {
[INFO] [stdout] 310 | |     /// Epoch index.
[INFO] [stdout] 311 | |     pub epoch_idx: u64,
[INFO] [stdout] 312 | |     /// Post-fit RMS residual compatibility field (m).
[INFO] [stdout] ...   |
[INFO] [stdout] 325 | |     pub rejected: Vec<SatId>,
[INFO] [stdout] 326 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Navigation residual report per epoch.`
[INFO] [stdout]     = help: ends near `Navigation residual report per epoch.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/validation_report.rs:77:1
[INFO] [stdout]     |
[INFO] [stdout]  77 | / pub struct PppReadinessReport {
[INFO] [stdout]  78 | |     /// Whether multiple frequencies are present.
[INFO] [stdout]  79 | |     pub multi_freq_present: bool,
[INFO] [stdout]  80 | |     /// Whether linear combinations are valid.
[INFO] [stdout] ...   |
[INFO] [stdout]  99 | |     pub support: AdvancedSupportRow,
[INFO] [stdout] 100 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Validation report helpers.`
[INFO] [stdout]     = help: ends near `PPP readiness summary.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/validation_report.rs:77:1
[INFO] [stdout]     |
[INFO] [stdout]  77 | / pub struct PppReadinessReport {
[INFO] [stdout]  78 | |     /// Whether multiple frequencies are present.
[INFO] [stdout]  79 | |     pub multi_freq_present: bool,
[INFO] [stdout]  80 | |     /// Whether linear combinations are valid.
[INFO] [stdout] ...   |
[INFO] [stdout]  99 | |     pub support: AdvancedSupportRow,
[INFO] [stdout] 100 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `PPP readiness summary.`
[INFO] [stdout]     = help: ends near `PPP readiness summary.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/validation_report.rs:251:1
[INFO] [stdout]     |
[INFO] [stdout] 251 | / pub struct ProtectionLevelValidationReport {
[INFO] [stdout] 252 | |     /// Reference-matched epochs considered in validation.
[INFO] [stdout] 253 | |     pub matched_epoch_count: usize,
[INFO] [stdout] 254 | |     /// Matched epochs that reported horizontal protection levels.
[INFO] [stdout] ...   |
[INFO] [stdout] 269 | |     pub min_vertical_margin_m: Option<f64>,
[INFO] [stdout] 270 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Validation report helpers.`
[INFO] [stdout]     = help: ends near `Summary of emitted protection levels against measured reference-position error.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/validation_report.rs:251:1
[INFO] [stdout]     |
[INFO] [stdout] 251 | / pub struct ProtectionLevelValidationReport {
[INFO] [stdout] 252 | |     /// Reference-matched epochs considered in validation.
[INFO] [stdout] 253 | |     pub matched_epoch_count: usize,
[INFO] [stdout] 254 | |     /// Matched epochs that reported horizontal protection levels.
[INFO] [stdout] ...   |
[INFO] [stdout] 269 | |     pub min_vertical_margin_m: Option<f64>,
[INFO] [stdout] 270 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Summary of emitted protection levels against measured reference-position error.`
[INFO] [stdout]     = help: ends near `Summary of emitted protection levels against measured reference-position error.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/validation_report.rs:330:1
[INFO] [stdout]     |
[INFO] [stdout] 330 | / pub struct ReferencePositionErrorEpoch {
[INFO] [stdout] 331 | |     /// Epoch index.
[INFO] [stdout] 332 | |     pub epoch_idx: u64,
[INFO] [stdout] 333 | |     /// East error (m).
[INFO] [stdout] ...   |
[INFO] [stdout] 356 | |     pub vertical_margin_m: Option<f64>,
[INFO] [stdout] 357 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Validation report helpers.`
[INFO] [stdout]     = help: ends near `Reference-position error components for one navigation epoch.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/validation_report.rs:330:1
[INFO] [stdout]     |
[INFO] [stdout] 330 | / pub struct ReferencePositionErrorEpoch {
[INFO] [stdout] 331 | |     /// Epoch index.
[INFO] [stdout] 332 | |     pub epoch_idx: u64,
[INFO] [stdout] 333 | |     /// East error (m).
[INFO] [stdout] ...   |
[INFO] [stdout] 356 | |     pub vertical_margin_m: Option<f64>,
[INFO] [stdout] 357 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Reference-position error components for one navigation epoch.`
[INFO] [stdout]     = help: ends near `Reference-position error components for one navigation epoch.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/validation_report.rs:144:1
[INFO] [stdout]     |
[INFO] [stdout] 144 | / pub struct TimeConsistencyReport {
[INFO] [stdout] 145 | |     /// Number of channels inspected.
[INFO] [stdout] 146 | |     pub channels: usize,
[INFO] [stdout] 147 | |     /// Number of epochs checked.
[INFO] [stdout] ...   |
[INFO] [stdout] 162 | |     pub warnings: Vec<String>,
[INFO] [stdout] 163 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Validation report helpers.`
[INFO] [stdout]     = help: ends near `Time consistency report for tracking epochs.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/validation_report.rs:144:1
[INFO] [stdout]     |
[INFO] [stdout] 144 | / pub struct TimeConsistencyReport {
[INFO] [stdout] 145 | |     /// Number of channels inspected.
[INFO] [stdout] 146 | |     pub channels: usize,
[INFO] [stdout] 147 | |     /// Number of epochs checked.
[INFO] [stdout] ...   |
[INFO] [stdout] 162 | |     pub warnings: Vec<String>,
[INFO] [stdout] 163 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Time consistency report for tracking epochs.`
[INFO] [stdout]     = help: ends near `Time consistency report for tracking epochs.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/validation_report.rs:283:1
[INFO] [stdout]     |
[INFO] [stdout] 283 | / pub struct ValidationAssumptionReport {
[INFO] [stdout] 284 | |     /// Time systems used in solutions.
[INFO] [stdout] 285 | |     pub time_systems: Vec<String>,
[INFO] [stdout] 286 | |     /// Reference frames used in solutions.
[INFO] [stdout] ...   |
[INFO] [stdout] 289 | |     pub clock_models: Vec<String>,
[INFO] [stdout] 290 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Validation report helpers.`
[INFO] [stdout]     = help: ends near `Assumption summary across validation outputs.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/validation_report.rs:283:1
[INFO] [stdout]     |
[INFO] [stdout] 283 | / pub struct ValidationAssumptionReport {
[INFO] [stdout] 284 | |     /// Time systems used in solutions.
[INFO] [stdout] 285 | |     pub time_systems: Vec<String>,
[INFO] [stdout] 286 | |     /// Reference frames used in solutions.
[INFO] [stdout] ...   |
[INFO] [stdout] 289 | |     pub clock_models: Vec<String>,
[INFO] [stdout] 290 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Assumption summary across validation outputs.`
[INFO] [stdout]     = help: ends near `Assumption summary across validation outputs.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/validation_report.rs:167:1
[INFO] [stdout]     |
[INFO] [stdout] 167 | / pub struct ValidationBudgets {
[INFO] [stdout] 168 | |     /// Acquisition Doppler tolerance (Hz).
[INFO] [stdout] 169 | |     pub acq_doppler_hz: f64,
[INFO] [stdout] 170 | |     /// Acquisition code phase tolerance (samples).
[INFO] [stdout] ...   |
[INFO] [stdout] 187 | |     pub reference_position_error_3d_m_max: Option<f64>,
[INFO] [stdout] 188 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Validation report helpers.`
[INFO] [stdout]     = help: ends near `Validation budgets for various metrics.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/validation_report.rs:167:1
[INFO] [stdout]     |
[INFO] [stdout] 167 | / pub struct ValidationBudgets {
[INFO] [stdout] 168 | |     /// Acquisition Doppler tolerance (Hz).
[INFO] [stdout] 169 | |     pub acq_doppler_hz: f64,
[INFO] [stdout] 170 | |     /// Acquisition code phase tolerance (samples).
[INFO] [stdout] ...   |
[INFO] [stdout] 187 | |     pub reference_position_error_3d_m_max: Option<f64>,
[INFO] [stdout] 188 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Validation budgets for various metrics.`
[INFO] [stdout]     = help: ends near `Validation budgets for various metrics.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/validation_report.rs:36:1
[INFO] [stdout]    |
[INFO] [stdout] 36 | / pub struct ValidationErrorStats {
[INFO] [stdout] 37 | |     /// Sample count.
[INFO] [stdout] 38 | |     pub count: usize,
[INFO] [stdout] 39 | |     /// Mean error value.
[INFO] [stdout] ...  |
[INFO] [stdout] 48 | |     pub max: f64,
[INFO] [stdout] 49 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the way this is parsed might change in the future
[INFO] [stdout]    = help: starts near `Validation report helpers.`
[INFO] [stdout]    = help: ends near `Validation error summary statistics.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/validation_report.rs:36:1
[INFO] [stdout]    |
[INFO] [stdout] 36 | / pub struct ValidationErrorStats {
[INFO] [stdout] 37 | |     /// Sample count.
[INFO] [stdout] 38 | |     pub count: usize,
[INFO] [stdout] 39 | |     /// Mean error value.
[INFO] [stdout] ...  |
[INFO] [stdout] 48 | |     pub max: f64,
[INFO] [stdout] 49 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the way this is parsed might change in the future
[INFO] [stdout]    = help: starts near `Validation error summary statistics.`
[INFO] [stdout]    = help: ends near `Validation error summary statistics.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/validation_report.rs:376:1
[INFO] [stdout]     |
[INFO] [stdout] 376 | / pub struct ValidationReport {
[INFO] [stdout] 377 | |     /// Total samples counted.
[INFO] [stdout] 378 | |     pub samples: usize,
[INFO] [stdout] 379 | |     /// Number of epochs.
[INFO] [stdout] ...   |
[INFO] [stdout] 440 | |     pub assumptions: ValidationAssumptionReport,
[INFO] [stdout] 441 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Validation report helpers.`
[INFO] [stdout]     = help: ends near `Validation report output structure.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/validation_report.rs:376:1
[INFO] [stdout]     |
[INFO] [stdout] 376 | / pub struct ValidationReport {
[INFO] [stdout] 377 | |     /// Total samples counted.
[INFO] [stdout] 378 | |     pub samples: usize,
[INFO] [stdout] 379 | |     /// Number of epochs.
[INFO] [stdout] ...   |
[INFO] [stdout] 440 | |     pub assumptions: ValidationAssumptionReport,
[INFO] [stdout] 441 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Validation report output structure.`
[INFO] [stdout]     = help: ends near `Validation report output structure.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/validation_report.rs:192:1
[INFO] [stdout]     |
[INFO] [stdout] 192 | / pub struct ValidationSciencePolicy {
[INFO] [stdout] 193 | |     /// Minimum mean C/N0 expected for stable acceptance.
[INFO] [stdout] 194 | |     pub min_mean_cn0_dbhz: f64,
[INFO] [stdout] 195 | |     /// Maximum PDOP for stable geometry.
[INFO] [stdout] ...   |
[INFO] [stdout] 204 | |     pub min_lock_ratio: f64,
[INFO] [stdout] 205 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Validation report helpers.`
[INFO] [stdout]     = help: ends near `Scientific policy used for validation and integrity classification.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/validation_report.rs:192:1
[INFO] [stdout]     |
[INFO] [stdout] 192 | / pub struct ValidationSciencePolicy {
[INFO] [stdout] 193 | |     /// Minimum mean C/N0 expected for stable acceptance.
[INFO] [stdout] 194 | |     pub min_mean_cn0_dbhz: f64,
[INFO] [stdout] 195 | |     /// Maximum PDOP for stable geometry.
[INFO] [stdout] ...   |
[INFO] [stdout] 204 | |     pub min_lock_ratio: f64,
[INFO] [stdout] 205 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Scientific policy used for validation and integrity classification.`
[INFO] [stdout]     = help: ends near `Scientific policy used for validation and integrity classification.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not document `bijux-gnss-receiver`
[INFO] running `Command { std: "docker" "inspect" "1b968382532abb457701cd14d96f8954f5d9580d9098114b59e6385d3eae960e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1b968382532abb457701cd14d96f8954f5d9580d9098114b59e6385d3eae960e", kill_on_drop: false }`
[INFO] [stdout] 1b968382532abb457701cd14d96f8954f5d9580d9098114b59e6385d3eae960e
