[INFO] fetching crate mmdflux 2.6.1...
[INFO] documenting mmdflux-2.6.1 against da3f5c31e5535b3dc210067de660a45784ae1e9c for pr-162169
[INFO] extracting crate mmdflux 2.6.1 into /workspace/builds/worker-0-tc2/source
[INFO] removed /workspace/builds/worker-0-tc2/source/.cargo/config.toml
[INFO] removed /workspace/builds/worker-0-tc2/source/rust-toolchain.toml
[INFO] started tweaking crates.io crate mmdflux 2.6.1
[INFO] removed 0 missing examples
[INFO] finished tweaking crates.io crate mmdflux 2.6.1
[INFO] tweaked toml for crates.io crate mmdflux 2.6.1 written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate mmdflux 2.6.1 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 mmdflux 2.6.1 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-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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] 896a141b1fc98aeb428bd3fd59c90f10ed98e68d66d74e156394a15b300e93a9
[INFO] running `Command { std: "docker" "start" "896a141b1fc98aeb428bd3fd59c90f10ed98e68d66d74e156394a15b300e93a9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "896a141b1fc98aeb428bd3fd59c90f10ed98e68d66d74e156394a15b300e93a9", 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" "896a141b1fc98aeb428bd3fd59c90f10ed98e68d66d74e156394a15b300e93a9" "/opt/rustwide/cargo-home/bin/cargo" "+da3f5c31e5535b3dc210067de660a45784ae1e9c" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "896a141b1fc98aeb428bd3fd59c90f10ed98e68d66d74e156394a15b300e93a9", 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" "896a141b1fc98aeb428bd3fd59c90f10ed98e68d66d74e156394a15b300e93a9" "/opt/rustwide/cargo-home/bin/cargo" "+da3f5c31e5535b3dc210067de660a45784ae1e9c" "doc" "--frozen" "--no-deps" "--document-private-items" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling ucd-trie v0.1.7
[INFO] [stderr]    Compiling memchr v2.8.0
[INFO] [stderr]     Checking serde v1.0.228
[INFO] [stderr]     Checking serde_json v1.0.149
[INFO] [stderr]    Compiling clap_derive v4.6.1
[INFO] [stderr]     Checking xterm-color v1.0.2
[INFO] [stderr]     Checking pest v2.8.6
[INFO] [stderr]     Checking tracing-serde v0.2.0
[INFO] [stderr]     Checking tracing-subscriber v0.3.23
[INFO] [stderr]     Checking clap v4.6.1
[INFO] [stderr]    Compiling pest_meta v2.8.6
[INFO] [stderr]    Compiling pest_generator v2.8.6
[INFO] [stderr]    Compiling pest_derive v2.8.6
[INFO] [stderr]  Documenting mmdflux v2.6.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unresolved link to `*`
[INFO] [stdout]    --> src/diagrams/state/compiler.rs:204:37
[INFO] [stdout]     |
[INFO] [stdout] 204 | /// `scope` identifies the current [*] coalescing scope — `"__root"` at top level,
[INFO] [stdout]     |                                     ^ no item named `*` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout]     = note: `#[warn(rustdoc::broken_intra_doc_links)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `targets`
[INFO] [stdout]   --> src/engines/graph/algorithms/layered/kernel/order.rs:98:31
[INFO] [stdout]    |
[INFO] [stdout] 98 |     /// Adjacency: source -> [targets]
[INFO] [stdout]    |                               ^^^^^^^ no item named `targets` in scope
[INFO] [stdout]    |
[INFO] [stdout]    = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `sources`
[INFO] [stdout]    --> src/engines/graph/algorithms/layered/kernel/order.rs:100:39
[INFO] [stdout]     |
[INFO] [stdout] 100 |     /// Reverse adjacency: target -> [sources]
[INFO] [stdout]     |                                       ^^^^^^^ no item named `sources` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `text`
[INFO] [stdout]   --> src/mermaid/ast.rs:32:21
[INFO] [stdout]    |
[INFO] [stdout] 32 |     /// Rectangle: [text]
[INFO] [stdout]    |                     ^^^^ no item named `text` in scope
[INFO] [stdout]    |
[INFO] [stdout]    = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `text`
[INFO] [stdout]   --> src/mermaid/ast.rs:36:20
[INFO] [stdout]    |
[INFO] [stdout] 36 |     /// Stadium: ([text])
[INFO] [stdout]    |                    ^^^^ no item named `text` in scope
[INFO] [stdout]    |
[INFO] [stdout]    = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `text`
[INFO] [stdout]   --> src/mermaid/ast.rs:38:23
[INFO] [stdout]    |
[INFO] [stdout] 38 |     /// Subroutine: [[text]]
[INFO] [stdout]    |                       ^^^^ no item named `text` in scope
[INFO] [stdout]    |
[INFO] [stdout]    = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `GraphGeometry`
[INFO] [stdout]   --> src/runtime/layout.rs:10:60
[INFO] [stdout]    |
[INFO] [stdout] 10 | //! `TextMetricsProvider` measurement seam, and the full [`GraphGeometry`] hint
[INFO] [stdout]    |                                                            ^^^^^^^^^^^^^ no item named `GraphGeometry` in scope
[INFO] [stdout]    |
[INFO] [stdout]    = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `GraphGeometry`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           `TextMetricsProvider` measurement seam, and the full [`GraphGeometry`] hint
[INFO] [stdout]                                                                 ^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: no item named `GraphGeometry` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/runtime/layout.rs:1:1
[INFO] [stdout]     |
[INFO] [stdout]   1 | / //! Direct graph-in / geometry-out layout facade.
[INFO] [stdout]   2 | | //!
[INFO] [stdout]   3 | | //! This is a narrow, stable public surface for callers that build a
[INFO] [stdout]   4 | | //! [`crate::graph::Graph`] in memory and want positioned node and routed edge
[INFO] [stdout] ...   |
[INFO] [stdout] 409 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Direct graph-in / geometry-out layout facade`
[INFO] [stdout]     = help: ends near `Direct graph-in / geometry-out layout facade.`
[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/runtime/layout.rs:1:1
[INFO] [stdout]     |
[INFO] [stdout]   1 | / //! Direct graph-in / geometry-out layout facade.
[INFO] [stdout]   2 | | //!
[INFO] [stdout]   3 | | //! This is a narrow, stable public surface for callers that build a
[INFO] [stdout]   4 | | //! [`crate::graph::Graph`] in memory and want positioned node and routed edge
[INFO] [stdout] ...   |
[INFO] [stdout] 409 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Direct graph-in / geometry-out layout facade.`
[INFO] [stdout]     = help: ends near `Direct graph-in / geometry-out layout facade.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/engines/graph/selection.rs:27:1
[INFO] [stdout]    |
[INFO] [stdout] 27 | / pub enum AlgorithmId {
[INFO] [stdout] 28 | |     /// Sugiyama layered hierarchical layout.
[INFO] [stdout] 29 | |     Layered,
[INFO] [stdout] 30 | |     /// ELK Mr. Tree algorithm.
[INFO] [stdout] 31 | |     MrTree,
[INFO] [stdout] 32 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the way this is parsed might change in the future
[INFO] [stdout]    = help: starts near `Algorithm identifier (e.g., `Layered`, `Mrtree`) used in engine selection.`
[INFO] [stdout]    = help: ends near `Algorithm identifier used in the combined engine+algorithm taxonomy.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/engines/graph/selection.rs:27:1
[INFO] [stdout]    |
[INFO] [stdout] 27 | / pub enum AlgorithmId {
[INFO] [stdout] 28 | |     /// Sugiyama layered hierarchical layout.
[INFO] [stdout] 29 | |     Layered,
[INFO] [stdout] 30 | |     /// ELK Mr. Tree algorithm.
[INFO] [stdout] 31 | |     MrTree,
[INFO] [stdout] 32 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the way this is parsed might change in the future
[INFO] [stdout]    = help: starts near `Algorithm identifier used in the combined engine+algorithm taxonomy.`
[INFO] [stdout]    = help: ends near `Algorithm identifier used in the combined engine+algorithm taxonomy.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/engines/graph/selection.rs:36:1
[INFO] [stdout]    |
[INFO] [stdout] 36 | / pub struct EngineAlgorithmId {
[INFO] [stdout] 37 | |     engine: EngineId,
[INFO] [stdout] 38 | |     algorithm: AlgorithmId,
[INFO] [stdout] 39 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the way this is parsed might change in the future
[INFO] [stdout]    = help: starts near `Combined engine + algorithm identifier for explicit layout engine selection.`
[INFO] [stdout]    = help: ends near `Combined engine+algorithm identifier for explicit layout engine selection.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/engines/graph/selection.rs:36:1
[INFO] [stdout]    |
[INFO] [stdout] 36 | / pub struct EngineAlgorithmId {
[INFO] [stdout] 37 | |     engine: EngineId,
[INFO] [stdout] 38 | |     algorithm: AlgorithmId,
[INFO] [stdout] 39 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the way this is parsed might change in the future
[INFO] [stdout]    = help: starts near `Combined engine+algorithm identifier for explicit layout engine selection.`
[INFO] [stdout]    = help: ends near `Combined engine+algorithm identifier for explicit layout engine selection.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/engines/graph/selection.rs:16:1
[INFO] [stdout]    |
[INFO] [stdout] 16 | / pub enum EngineId {
[INFO] [stdout] 17 | |     /// mmdflux-native Sugiyama implementation (recommended default).
[INFO] [stdout] 18 | |     Flux,
[INFO] [stdout] 19 | |     /// Mermaid-compatible Sugiyama with dagre.js parity semantics.
[INFO] [stdout] ...  |
[INFO] [stdout] 22 | |     Elk,
[INFO] [stdout] 23 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the way this is parsed might change in the future
[INFO] [stdout]    = help: starts near `Engine identifier (e.g., `Flux`, `Mermaid`, `Elk`).`
[INFO] [stdout]    = help: ends near `Engine family identifier used in the combined engine+algorithm taxonomy.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/engines/graph/selection.rs:16:1
[INFO] [stdout]    |
[INFO] [stdout] 16 | / pub enum EngineId {
[INFO] [stdout] 17 | |     /// mmdflux-native Sugiyama implementation (recommended default).
[INFO] [stdout] 18 | |     Flux,
[INFO] [stdout] 19 | |     /// Mermaid-compatible Sugiyama with dagre.js parity semantics.
[INFO] [stdout] ...  |
[INFO] [stdout] 22 | |     Elk,
[INFO] [stdout] 23 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the way this is parsed might change in the future
[INFO] [stdout]    = help: starts near `Engine family identifier used in the combined engine+algorithm taxonomy.`
[INFO] [stdout]    = help: ends near `Engine family identifier used in the combined engine+algorithm taxonomy.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/engines/graph/layout.rs:77:1
[INFO] [stdout]    |
[INFO] [stdout] 77 | / pub enum LabelDummyPlacement {
[INFO] [stdout] 78 | |     #[default]
[INFO] [stdout] 79 | |     Midpoint,
[INFO] [stdout] 80 | |     WidestLayer,
[INFO] [stdout] 81 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the way this is parsed might change in the future
[INFO] [stdout]    = help: starts near `Layout configuration for the Sugiyama hierarchical engine.`
[INFO] [stdout]    = help: ends near `dummy sits in the chain, while routing decides how the edge traverses it.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/engines/graph/layout.rs:77:1
[INFO] [stdout]    |
[INFO] [stdout] 77 | / pub enum LabelDummyPlacement {
[INFO] [stdout] 78 | |     #[default]
[INFO] [stdout] 79 | |     Midpoint,
[INFO] [stdout] 80 | |     WidestLayer,
[INFO] [stdout] 81 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the way this is parsed might change in the future
[INFO] [stdout]    = help: starts near `Placement strategy for edge-label dummies within long edge chains.`
[INFO] [stdout]    = help: ends near `Placement strategy for edge-label dummies within long edge chains.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/engines/graph/layout.rs:108:1
[INFO] [stdout]     |
[INFO] [stdout] 108 | / pub enum LabelDummyRouting {
[INFO] [stdout] 109 | |     #[default]
[INFO] [stdout] 110 | |     Center,
[INFO] [stdout] 111 | |     Bend,
[INFO] [stdout] 112 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Layout configuration for the Sugiyama hierarchical engine.`
[INFO] [stdout]     = help: ends near `Orthogonal to [`LabelDummyPlacement`].`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/engines/graph/layout.rs:108:1
[INFO] [stdout]     |
[INFO] [stdout] 108 | / pub enum LabelDummyRouting {
[INFO] [stdout] 109 | |     #[default]
[INFO] [stdout] 110 | |     Center,
[INFO] [stdout] 111 | |     Bend,
[INFO] [stdout] 112 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Routing strategy for how an edge path traverses its label dummy's rect.`
[INFO] [stdout]     = help: ends near `Routing strategy for how an edge path traverses its label dummy's rect.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/engines/graph/layout.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | / pub struct LayoutConfig {
[INFO] [stdout] 227 | |     pub direction: LayoutDirection,
[INFO] [stdout] 228 | |     pub node_sep: f64,
[INFO] [stdout] 229 | |     pub edge_sep: f64,
[INFO] [stdout] ...   |
[INFO] [stdout] 265 | |     pub subgraph_title_margin: Option<SubgraphTitleMargin>,
[INFO] [stdout] 266 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Layout configuration for the Sugiyama hierarchical engine.`
[INFO] [stdout]     = help: ends near `Canonical caller-facing graph layout configuration.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/engines/graph/layout.rs:226:1
[INFO] [stdout]     |
[INFO] [stdout] 226 | / pub struct LayoutConfig {
[INFO] [stdout] 227 | |     pub direction: LayoutDirection,
[INFO] [stdout] 228 | |     pub node_sep: f64,
[INFO] [stdout] 229 | |     pub edge_sep: f64,
[INFO] [stdout] ...   |
[INFO] [stdout] 265 | |     pub subgraph_title_margin: Option<SubgraphTitleMargin>,
[INFO] [stdout] 266 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Canonical caller-facing graph layout configuration.`
[INFO] [stdout]     = help: ends near `Canonical caller-facing graph layout configuration.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/engines/graph/layout.rs:35:1
[INFO] [stdout]    |
[INFO] [stdout] 35 | / pub enum LayoutDirection {
[INFO] [stdout] 36 | |     #[default]
[INFO] [stdout] 37 | |     TopBottom,
[INFO] [stdout] 38 | |     BottomTop,
[INFO] [stdout] 39 | |     LeftRight,
[INFO] [stdout] 40 | |     RightLeft,
[INFO] [stdout] 41 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the way this is parsed might change in the future
[INFO] [stdout]    = help: starts near `Layout configuration for the Sugiyama hierarchical engine.`
[INFO] [stdout]    = help: ends near `Direction for the public graph-layout config.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/engines/graph/layout.rs:35:1
[INFO] [stdout]    |
[INFO] [stdout] 35 | / pub enum LayoutDirection {
[INFO] [stdout] 36 | |     #[default]
[INFO] [stdout] 37 | |     TopBottom,
[INFO] [stdout] 38 | |     BottomTop,
[INFO] [stdout] 39 | |     LeftRight,
[INFO] [stdout] 40 | |     RightLeft,
[INFO] [stdout] 41 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the way this is parsed might change in the future
[INFO] [stdout]    = help: starts near `Direction for the public graph-layout config.`
[INFO] [stdout]    = help: ends near `Direction for the public graph-layout config.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/engines/graph/layout.rs:7:1
[INFO] [stdout]    |
[INFO] [stdout]  7 | / pub enum Ranker {
[INFO] [stdout]  8 | |     #[default]
[INFO] [stdout]  9 | |     NetworkSimplex,
[INFO] [stdout] 10 | |     LongestPath,
[INFO] [stdout] 11 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the way this is parsed might change in the future
[INFO] [stdout]    = help: starts near `Layout configuration for the Sugiyama hierarchical engine.`
[INFO] [stdout]    = help: ends near `Ranking algorithm selection for the public graph-layout config.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/engines/graph/layout.rs:7:1
[INFO] [stdout]    |
[INFO] [stdout]  7 | / pub enum Ranker {
[INFO] [stdout]  8 | |     #[default]
[INFO] [stdout]  9 | |     NetworkSimplex,
[INFO] [stdout] 10 | |     LongestPath,
[INFO] [stdout] 11 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the way this is parsed might change in the future
[INFO] [stdout]    = help: starts near `Ranking algorithm selection for the public graph-layout config.`
[INFO] [stdout]    = help: ends near `Ranking algorithm selection for the public graph-layout config.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/engines/graph/layout.rs:163:1
[INFO] [stdout]     |
[INFO] [stdout] 163 | / pub struct SubgraphTitleMargin {
[INFO] [stdout] 164 | |     /// Pixels above the subgraph title (Mermaid `subGraphTitleMargin.top`).
[INFO] [stdout] 165 | |     pub top: f64,
[INFO] [stdout] 166 | |     /// Pixels below the subgraph title (Mermaid `subGraphTitleMargin.bottom`).
[INFO] [stdout] 167 | |     pub bottom: f64,
[INFO] [stdout] 168 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Layout configuration for the Sugiyama hierarchical engine.`
[INFO] [stdout]     = help: ends near `Mermaid's `flowchart.subGraphTitleMargin: { top, bottom }` knob.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/engines/graph/layout.rs:163:1
[INFO] [stdout]     |
[INFO] [stdout] 163 | / pub struct SubgraphTitleMargin {
[INFO] [stdout] 164 | |     /// Pixels above the subgraph title (Mermaid `subGraphTitleMargin.top`).
[INFO] [stdout] 165 | |     pub top: f64,
[INFO] [stdout] 166 | |     /// Pixels below the subgraph title (Mermaid `subGraphTitleMargin.bottom`).
[INFO] [stdout] 167 | |     pub bottom: f64,
[INFO] [stdout] 168 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Rank-axis margin reserved around a subgraph's title text, mirroring`
[INFO] [stdout]     = help: ends near `Rank-axis margin reserved around a subgraph's title text, mirroring`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/runtime/config_input.rs:29:1
[INFO] [stdout]    |
[INFO] [stdout] 29 | / pub struct RuntimeConfigInput {
[INFO] [stdout] 30 | |     pub layout_engine: Option<String>,
[INFO] [stdout] 31 | |     pub cluster_ranksep: Option<f64>,
[INFO] [stdout] 32 | |     pub padding: Option<usize>,
[INFO] [stdout] ...  |
[INFO] [stdout] 50 | |     pub layout: Option<LayoutConfigInput>,
[INFO] [stdout] 51 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the way this is parsed might change in the future
[INFO] [stdout]    = help: starts near `Serde-friendly config input for JSON consumers (Wasm, API).`
[INFO] [stdout]    = help: ends near `Serde-friendly render config accepted from JSON callers.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/runtime/config_input.rs:29:1
[INFO] [stdout]    |
[INFO] [stdout] 29 | / pub struct RuntimeConfigInput {
[INFO] [stdout] 30 | |     pub layout_engine: Option<String>,
[INFO] [stdout] 31 | |     pub cluster_ranksep: Option<f64>,
[INFO] [stdout] 32 | |     pub padding: Option<usize>,
[INFO] [stdout] ...  |
[INFO] [stdout] 50 | |     pub layout: Option<LayoutConfigInput>,
[INFO] [stdout] 51 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the way this is parsed might change in the future
[INFO] [stdout]    = help: starts near `Serde-friendly render config accepted from JSON callers.`
[INFO] [stdout]    = help: ends near `Serde-friendly render config accepted from JSON callers.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/runtime/config_input.rs:409:1
[INFO] [stdout]     |
[INFO] [stdout] 409 | / pub fn apply_svg_surface_defaults(
[INFO] [stdout] 410 | |     format: OutputFormat,
[INFO] [stdout] 411 | |     config: &mut RenderConfig,
[INFO] [stdout] 412 | |     force_engine: bool,
[INFO] [stdout] ...   |
[INFO] [stdout] 429 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Apply default SVG surface settings (curve, engine) when format is SVG.`
[INFO] [stdout]     = help: ends near `Apply SVG surface defaults for flux-layered engine.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/runtime/config_input.rs:409:1
[INFO] [stdout]     |
[INFO] [stdout] 409 | / pub fn apply_svg_surface_defaults(
[INFO] [stdout] 410 | |     format: OutputFormat,
[INFO] [stdout] 411 | |     config: &mut RenderConfig,
[INFO] [stdout] 412 | |     force_engine: bool,
[INFO] [stdout] ...   |
[INFO] [stdout] 429 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Apply SVG surface defaults for flux-layered engine.`
[INFO] [stdout]     = help: ends near `Apply SVG surface defaults for flux-layered engine.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/runtime/mod.rs:37:1
[INFO] [stdout]    |
[INFO] [stdout] 37 | / pub fn detect_diagram(input: &str) -> Option<&'static str> {
[INFO] [stdout] 38 | |     match detect_input_frontend(input)? {
[INFO] [stdout] 39 | |         InputFrontend::Mermaid => default_registry().detect(input),
[INFO] [stdout] 40 | |         InputFrontend::Mmds => crate::mmds::detect_diagram_type(input).ok(),
[INFO] [stdout] 41 | |     }
[INFO] [stdout] 42 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the way this is parsed might change in the future
[INFO] [stdout]    = help: starts near `Detect the diagram type from input text.`
[INFO] [stdout]    = help: ends near `Detect the diagram type from input text.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/runtime/mod.rs:128:1
[INFO] [stdout]     |
[INFO] [stdout] 128 | / pub fn materialize_diagram(
[INFO] [stdout] 129 | |     input: &str,
[INFO] [stdout] 130 | |     config: &RenderConfig,
[INFO] [stdout] 131 | | ) -> Result<crate::mmds::Document, RenderError> {
[INFO] [stdout] ...   |
[INFO] [stdout] 161 | |     payload::materialize_payload(payload, &effective_config)
[INFO] [stdout] 162 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Detect, parse, solve, and materialize Mermaid source or MMDS JSON as MMDS.`
[INFO] [stdout]     = help: ends near `Detect, parse, solve, and materialize graph-family text input as MMDS.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/runtime/mod.rs:128:1
[INFO] [stdout]     |
[INFO] [stdout] 128 | / pub fn materialize_diagram(
[INFO] [stdout] 129 | |     input: &str,
[INFO] [stdout] 130 | |     config: &RenderConfig,
[INFO] [stdout] 131 | | ) -> Result<crate::mmds::Document, RenderError> {
[INFO] [stdout] ...   |
[INFO] [stdout] 161 | |     payload::materialize_payload(payload, &effective_config)
[INFO] [stdout] 162 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Detect, parse, solve, and materialize graph-family text input as MMDS.`
[INFO] [stdout]     = help: ends near `Detect, parse, solve, and materialize graph-family text input as MMDS.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/runtime/mod.rs:53:1
[INFO] [stdout]     |
[INFO] [stdout]  53 | / pub fn render_diagram(
[INFO] [stdout]  54 | |     input: &str,
[INFO] [stdout]  55 | |     format: OutputFormat,
[INFO] [stdout]  56 | |     config: &RenderConfig,
[INFO] [stdout] ...   |
[INFO] [stdout] 118 | |     payload::render_payload(payload, format, &effective_config)
[INFO] [stdout] 119 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Detect, parse, and render Mermaid source or MMDS JSON in one call.`
[INFO] [stdout]     = help: ends near `Detect, parse, and render a diagram from text input in one call.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/runtime/mod.rs:53:1
[INFO] [stdout]     |
[INFO] [stdout]  53 | / pub fn render_diagram(
[INFO] [stdout]  54 | |     input: &str,
[INFO] [stdout]  55 | |     format: OutputFormat,
[INFO] [stdout]  56 | |     config: &RenderConfig,
[INFO] [stdout] ...   |
[INFO] [stdout] 118 | |     payload::render_payload(payload, format, &effective_config)
[INFO] [stdout] 119 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Detect, parse, and render a diagram from text input in one call.`
[INFO] [stdout]     = help: ends near `Detect, parse, and render a diagram from text input in one call.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/runtime/mod.rs:171:1
[INFO] [stdout]     |
[INFO] [stdout] 171 | / pub fn render_document(
[INFO] [stdout] 172 | |     document: &crate::mmds::Document,
[INFO] [stdout] 173 | |     format: OutputFormat,
[INFO] [stdout] 174 | |     config: &RenderConfig,
[INFO] [stdout] ...   |
[INFO] [stdout] 193 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Render a parsed graph-family MMDS document.`
[INFO] [stdout]     = help: ends near `Render a parsed graph-family MMDS document.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/runtime/mod.rs:211:1
[INFO] [stdout]     |
[INFO] [stdout] 211 | / pub fn validate_diagram(input: &str) -> String {
[INFO] [stdout] 212 | |     if matches!(detect_input_frontend(input), Some(InputFrontend::Mmds)) {
[INFO] [stdout] 213 | |         return match crate::mmds::validate_input(input) {
[INFO] [stdout] 214 | |             Ok(()) => validation_success_json(Vec::new()),
[INFO] [stdout] ...   |
[INFO] [stdout] 240 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Validate input and return structured JSON diagnostics.`
[INFO] [stdout]     = help: ends near `Validate Mermaid input and return structured diagnostics as JSON.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/runtime/mod.rs:211:1
[INFO] [stdout]     |
[INFO] [stdout] 211 | / pub fn validate_diagram(input: &str) -> String {
[INFO] [stdout] 212 | |     if matches!(detect_input_frontend(input), Some(InputFrontend::Mmds)) {
[INFO] [stdout] 213 | |         return match crate::mmds::validate_input(input) {
[INFO] [stdout] 214 | |             Ok(()) => validation_success_json(Vec::new()),
[INFO] [stdout] ...   |
[INFO] [stdout] 240 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Validate Mermaid input and return structured diagnostics as JSON.`
[INFO] [stdout]     = help: ends near `Validate Mermaid input and return structured diagnostics as JSON.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `crate::views::project` is both a function and a module
[INFO] [stdout]   --> src/views/evaluate.rs:17:21
[INFO] [stdout]    |
[INFO] [stdout] 17 |     /// [`project`](crate::views::project) during materialization.
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^^^ ambiguous link
[INFO] [stdout]    |
[INFO] [stdout] help: to link to the function, add parentheses
[INFO] [stdout]    |
[INFO] [stdout] 17 |     /// [`project`](crate::views::project()) during materialization.
[INFO] [stdout]    |                                          ++
[INFO] [stdout] help: to link to the module, prefix with `mod@`
[INFO] [stdout]    |
[INFO] [stdout] 17 |     /// [`project`](mod@crate::views::project) during materialization.
[INFO] [stdout]    |                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `crate::views::project` is both a function and a module
[INFO] [stdout]   --> src/views/evaluate.rs:41:21
[INFO] [stdout]    |
[INFO] [stdout] 41 | /// use [`project`](crate::views::project) for the full materialized view.
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^^^ ambiguous link
[INFO] [stdout]    |
[INFO] [stdout] help: to link to the function, add parentheses
[INFO] [stdout]    |
[INFO] [stdout] 41 | /// use [`project`](crate::views::project()) for the full materialized view.
[INFO] [stdout]    |                                          ++
[INFO] [stdout] help: to link to the module, prefix with `mod@`
[INFO] [stdout]    |
[INFO] [stdout] 41 | /// use [`project`](mod@crate::views::project) for the full materialized view.
[INFO] [stdout]    |                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not document `mmdflux`
[INFO] running `Command { std: "docker" "inspect" "896a141b1fc98aeb428bd3fd59c90f10ed98e68d66d74e156394a15b300e93a9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "896a141b1fc98aeb428bd3fd59c90f10ed98e68d66d74e156394a15b300e93a9", kill_on_drop: false }`
[INFO] [stdout] 896a141b1fc98aeb428bd3fd59c90f10ed98e68d66d74e156394a15b300e93a9
