[INFO] cloning repository https://github.com/anuna-research/zetl
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/anuna-research/zetl" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fanuna-research%2Fzetl", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fanuna-research%2Fzetl'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 2c454efb632d2cfb71d3468a4572b5030edb4e06
[INFO] documenting anuna-research/zetl against da3f5c31e5535b3dc210067de660a45784ae1e9c for pr-162169
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fanuna-research%2Fzetl" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'...
[INFO] [stderr] done.
[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 git repo https://github.com/anuna-research/zetl
[INFO] removed 0 missing tests
[INFO] finished tweaking git repo https://github.com/anuna-research/zetl
[INFO] tweaked toml for git repo https://github.com/anuna-research/zetl written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/anuna-research/zetl 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 git repo https://github.com/anuna-research/zetl 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] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded wasm-bindgen-shared v0.2.111
[INFO] [stderr]   Downloaded wasm-bindgen v0.2.111
[INFO] [stderr]   Downloaded wasm-bindgen-macro-support v0.2.111
[INFO] [stderr]   Downloaded wasm-bindgen-macro v0.2.111
[INFO] [stderr]   Downloaded der-parser v9.0.0
[INFO] [stderr]   Downloaded oid-registry v0.7.1
[INFO] [stderr]   Downloaded asn1-rs-derive v0.5.1
[INFO] [stderr]   Downloaded base64urlsafedata v0.5.4
[INFO] [stderr]   Downloaded ownedbytes v0.7.0
[INFO] [stderr]   Downloaded murmurhash32 v0.3.1
[INFO] [stderr]   Downloaded webauthn-attestation-ca v0.5.4
[INFO] [stderr]   Downloaded tantivy-tokenizer-api v0.3.0
[INFO] [stderr]   Downloaded fastdivide v0.4.2
[INFO] [stderr]   Downloaded sketches-ddsketch v0.2.2
[INFO] [stderr]   Downloaded measure_time v0.8.3
[INFO] [stderr]   Downloaded levenshtein_automata v0.2.1
[INFO] [stderr]   Downloaded census v0.4.2
[INFO] [stderr]   Downloaded tantivy-common v0.7.0
[INFO] [stderr]   Downloaded tantivy-bitpacker v0.6.0
[INFO] [stderr]   Downloaded webauthn-rs-proto v0.5.4
[INFO] [stderr]   Downloaded tantivy-query-grammar v0.22.0
[INFO] [stderr]   Downloaded tantivy-sstable v0.3.0
[INFO] [stderr]   Downloaded tantivy-stacker v0.3.0
[INFO] [stderr]   Downloaded fs4 v0.8.4
[INFO] [stderr]   Downloaded webauthn-rs v0.5.4
[INFO] [stderr]   Downloaded oneshot v0.1.13
[INFO] [stderr]   Downloaded rpassword v7.5.2
[INFO] [stderr]   Downloaded tempfile v3.25.0
[INFO] [stderr]   Downloaded js-sys v0.3.88
[INFO] [stderr]   Downloaded spake2 v0.4.0
[INFO] [stderr]   Downloaded wasm-bindgen-futures v0.4.61
[INFO] [stderr]   Downloaded uuid v1.21.0
[INFO] [stderr]   Downloaded serde_cbor_2 v0.13.0
[INFO] [stderr]   Downloaded asn1-rs v0.6.2
[INFO] [stderr]   Downloaded tantivy-columnar v0.3.0
[INFO] [stderr]   Downloaded x509-parser v0.16.0
[INFO] [stderr]   Downloaded arc-swap v1.8.2
[INFO] [stderr]   Downloaded webauthn-rs-core v0.5.4
[INFO] [stderr]   Downloaded ureq-proto v0.5.3
[INFO] [stderr]   Downloaded rust_decimal v1.41.0
[INFO] [stderr]   Downloaded pulldown-cmark v0.12.2
[INFO] [stderr]   Downloaded tokenizers v0.21.4
[INFO] [stderr]   Downloaded ureq v3.2.0
[INFO] [stderr]   Downloaded referencing v0.26.2
[INFO] [stderr]   Downloaded jsonschema v0.26.2
[INFO] [stderr]   Downloaded borrow-or-share v0.2.4
[INFO] [stderr]   Downloaded minijinja v2.16.0
[INFO] [stderr]   Downloaded web-sys v0.3.88
[INFO] [stderr]   Downloaded interim v0.2.1
[INFO] [stderr]   Downloaded gix-hash v0.19.0
[INFO] [stderr]   Downloaded gix-commitgraph v0.29.0
[INFO] [stderr]   Downloaded gix-url v0.32.0
[INFO] [stderr]   Downloaded gix-revwalk v0.21.0
[INFO] [stderr]   Downloaded jj-lib-proc-macros v0.32.0
[INFO] [stderr]   Downloaded gix-pack v0.60.0
[INFO] [stderr]   Downloaded gix-packetline-blocking v0.19.3
[INFO] [stderr]   Downloaded tantivy v0.22.1
[INFO] [stderr]   Downloaded gix-validate v0.10.1
[INFO] [stderr]   Downloaded gix-path v0.10.22
[INFO] [stderr]   Downloaded gix-trace v0.1.18
[INFO] [stderr]   Downloaded gix-object v0.50.2
[INFO] [stderr]   Downloaded gix-utils v0.3.1
[INFO] [stderr]   Downloaded gix-features v0.43.1
[INFO] [stderr]   Downloaded prodash v30.0.1
[INFO] [stderr]   Downloaded gix-date v0.10.7
[INFO] [stderr]   Downloaded gix-actor v0.35.6
[INFO] [stderr]   Downloaded gix-ignore v0.16.0
[INFO] [stderr]   Downloaded gix-glob v0.21.0
[INFO] [stderr]   Downloaded tantivy-fst v0.5.0
[INFO] [stderr]   Downloaded gix-index v0.41.0
[INFO] [stderr]   Downloaded gix-chunk v0.4.12
[INFO] [stderr]   Downloaded gix-bitmap v0.2.16
[INFO] [stderr]   Downloaded gix-attributes v0.27.0
[INFO] [stderr]   Downloaded gix-refspec v0.31.0
[INFO] [stderr]   Downloaded gix-config-value v0.15.3
[INFO] [stderr]   Downloaded gix-ref v0.53.1
[INFO] [stderr]   Downloaded gix-worktree v0.42.0
[INFO] [stderr]   Downloaded uluru v3.1.0
[INFO] [stderr]   Downloaded gix v0.73.0
[INFO] [stderr]   Downloaded str_indices v0.3.2
[INFO] [stderr]   Downloaded gix-command v0.6.5
[INFO] [stderr]   Downloaded imageproc v0.25.0
[INFO] [stderr]   Downloaded git2 v0.19.0
[INFO] [stderr]   Downloaded gix-hashtable v0.9.0
[INFO] [stderr]   Downloaded gix-traverse v0.47.0
[INFO] [stderr]   Downloaded gix-lock v18.0.0
[INFO] [stderr]   Downloaded gix-tempfile v18.0.0
[INFO] [stderr]   Downloaded gix-fs v0.16.1
[INFO] [stderr]   Downloaded gix-quote v0.6.2
[INFO] [stderr]   Downloaded gix-submodule v0.20.0
[INFO] [stderr]   Downloaded gix-revision v0.35.0
[INFO] [stderr]   Downloaded gix-pathspec v0.12.0
[INFO] [stderr]   Downloaded gix-config v0.46.0
[INFO] [stderr]   Downloaded gix-sec v0.12.2
[INFO] [stderr]   Downloaded gix-shallow v0.5.0
[INFO] [stderr]   Downloaded gix-transport v0.48.0
[INFO] [stderr]   Downloaded gix-packetline v0.19.3
[INFO] [stderr]   Downloaded clru v0.6.3
[INFO] [stderr]   Downloaded gix-odb v0.70.0
[INFO] [stderr]   Downloaded gix-filter v0.20.0
[INFO] [stderr]   Downloaded gix-discover v0.41.0
[INFO] [stderr]   Downloaded rle v0.2.0
[INFO] [stderr]   Downloaded lz4_flex v0.9.5
[INFO] [stderr]   Downloaded jumprope v1.1.2
[INFO] [stderr]   Downloaded crc v2.1.0
[INFO] [stderr]   Downloaded content-tree v0.2.0
[INFO] [stderr]   Downloaded gix-protocol v0.51.0
[INFO] [stderr]   Downloaded gix-diff v0.53.0
[INFO] [stderr]   Downloaded imara-diff v0.1.8
[INFO] [stderr]   Downloaded nalgebra v0.32.6
[INFO] [stderr]   Downloaded diamond-types v1.0.0
[INFO] [stderr]   Downloaded humansize v1.1.1
[INFO] [stderr]   Downloaded crc-catalog v1.1.1
[INFO] [stderr]   Downloaded clap_mangen v0.2.33
[INFO] [stderr]   Downloaded roff v1.1.1
[INFO] [stderr]   Downloaded clap v4.5.59
[INFO] [stderr]   Downloaded clap_builder v4.5.59
[INFO] [stderr]   Downloaded libssh2-sys v0.3.1
[INFO] [stderr]   Downloaded clap_complete v4.6.2
[INFO] [stderr]   Downloaded libgit2-sys v0.17.0+1.8.1
[INFO] [stderr]   Downloaded bech32 v0.11.1
[INFO] [stderr]   Downloaded assert_cmd v2.1.2
[INFO] [stderr]   Downloaded ammonia v4.1.2
[INFO] [stderr]   Downloaded i18n-embed-fl v0.9.4
[INFO] [stderr]   Downloaded unic-langid v0.9.6
[INFO] [stderr]   Downloaded intl-memoizer v0.5.3
[INFO] [stderr]   Downloaded i18n-embed-impl v0.8.4
[INFO] [stderr]   Downloaded i18n-config v0.4.8
[INFO] [stderr]   Downloaded fluent-bundle v0.15.3
[INFO] [stderr]   Downloaded i18n-embed v0.15.4
[INFO] [stderr]   Downloaded fluent-langneg v0.13.1
[INFO] [stderr]   Downloaded self_cell v0.10.3
[INFO] [stderr]   Downloaded intl_pluralrules v7.0.2
[INFO] [stderr]   Downloaded unic-langid-impl v0.9.6
[INFO] [stderr]   Downloaded fluent v0.16.1
[INFO] [stderr]   Downloaded find-crate v0.6.3
[INFO] [stderr]   Downloaded fluent-syntax v0.11.1
[INFO] [stderr]   Downloaded cookie-factory v0.3.3
[INFO] [stderr]   Downloaded zvariant_derive v5.11.0
[INFO] [stderr]   Downloaded zvariant_utils v3.3.1
[INFO] [stderr]   Downloaded age v0.11.2
[INFO] [stderr]   Downloaded age-core v0.11.0
[INFO] [stderr]   Downloaded io_tee v0.1.1
[INFO] [stderr]   Downloaded tauri-plugin-opener v2.5.4
[INFO] [stderr]   Downloaded zbus v5.15.0
[INFO] [stderr]   Downloaded zvariant v5.11.0
[INFO] [stderr]   Downloaded zbus_names v4.3.2
[INFO] [stderr]   Downloaded zbus_macros v5.15.0
[INFO] [stderr]   Downloaded tauri-utils v2.9.1
[INFO] [stderr]   Downloaded tauri-plugin v2.6.1
[INFO] [stderr]   Downloaded jj-lib v0.32.0
[INFO] [stderr]   Downloaded tauri-build v2.6.1
[INFO] [stderr]   Downloaded tauri-runtime v2.11.1
[INFO] [stderr]   Downloaded tauri-macros v2.6.1
[INFO] [stderr]   Downloaded tauri-codegen v2.6.1
[INFO] [stderr]   Downloaded tray-icon v0.23.1
[INFO] [stderr]   Downloaded tauri-runtime-wry v2.11.1
[INFO] [stderr]   Downloaded tauri v2.11.1
[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] 823afec91412c94cb8dbc268a158ef37d6f6981ba125b6c988e4123d224b94fe
[INFO] running `Command { std: "docker" "start" "823afec91412c94cb8dbc268a158ef37d6f6981ba125b6c988e4123d224b94fe", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "823afec91412c94cb8dbc268a158ef37d6f6981ba125b6c988e4123d224b94fe", 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" "823afec91412c94cb8dbc268a158ef37d6f6981ba125b6c988e4123d224b94fe" "/opt/rustwide/cargo-home/bin/cargo" "+da3f5c31e5535b3dc210067de660a45784ae1e9c" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "823afec91412c94cb8dbc268a158ef37d6f6981ba125b6c988e4123d224b94fe", 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" "823afec91412c94cb8dbc268a158ef37d6f6981ba125b6c988e4123d224b94fe" "/opt/rustwide/cargo-home/bin/cargo" "+da3f5c31e5535b3dc210067de660a45784ae1e9c" "doc" "--frozen" "--no-deps" "--document-private-items" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling quote v1.0.44
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]     Checking smallvec v1.15.1
[INFO] [stderr]     Checking stable_deref_trait v1.2.1
[INFO] [stderr]    Compiling libc v0.2.182
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]     Checking subtle v2.6.1
[INFO] [stderr]    Compiling libm v0.2.16
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling zerocopy v0.8.40
[INFO] [stderr]     Checking parking_lot_core v0.9.12
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]     Checking getrandom v0.2.17
[INFO] [stderr]    Compiling syn v2.0.116
[INFO] [stderr]     Checking parking_lot v0.12.5
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]    Compiling num-conv v0.2.0
[INFO] [stderr]    Compiling siphasher v1.0.2
[INFO] [stderr]    Compiling time-core v0.1.8
[INFO] [stderr]     Checking mio v1.1.1
[INFO] [stderr]    Compiling time-macros v0.2.27
[INFO] [stderr]    Compiling phf_shared v0.11.3
[INFO] [stderr]     Checking nom v7.1.3
[INFO] [stderr]    Compiling phf_generator v0.11.3
[INFO] [stderr]    Compiling jobserver v0.1.34
[INFO] [stderr]    Compiling icu_properties_data v2.1.2
[INFO] [stderr]    Compiling cc v1.2.56
[INFO] [stderr]     Checking http v1.4.0
[INFO] [stderr]     Checking num-integer v0.1.46
[INFO] [stderr]     Checking socket2 v0.6.2
[INFO] [stderr]     Checking simd-adler32 v0.3.8
[INFO] [stderr]     Checking num-bigint v0.4.6
[INFO] [stderr]     Checking getrandom v0.3.4
[INFO] [stderr]     Checking sha2 v0.10.9
[INFO] [stderr]    Compiling getrandom v0.4.1
[INFO] [stderr]     Checking regex-syntax v0.8.9
[INFO] [stderr]     Checking alloc-no-stdlib v2.0.4
[INFO] [stderr]     Checking alloc-stdlib v0.2.2
[INFO] [stderr]     Checking miniz_oxide v0.8.9
[INFO] [stderr]     Checking rand_core v0.9.5
[INFO] [stderr]    Compiling rust-embed-utils v8.11.0
[INFO] [stderr]     Checking deranged v0.5.8
[INFO] [stderr]    Compiling openssl-sys v0.9.111
[INFO] [stderr]    Compiling zstd-sys v2.0.16+zstd.1.5.7
[INFO] [stderr]     Checking inout v0.1.4
[INFO] [stderr]     Checking utf-8 v0.7.6
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling rustc-hash v2.1.1
[INFO] [stderr]    Compiling type-map v0.5.1
[INFO] [stderr]     Checking flate2 v1.1.9
[INFO] [stderr]     Checking rusticata-macros v4.1.0
[INFO] [stderr]    Compiling curve25519-dalek v4.1.3
[INFO] [stderr]     Checking http-body v1.0.1
[INFO] [stderr]    Compiling string_cache_codegen v0.5.4
[INFO] [stderr]    Compiling phf_codegen v0.11.3
[INFO] [stderr]     Checking hmac v0.12.1
[INFO] [stderr]    Compiling self_cell v1.2.2
[INFO] [stderr]    Compiling zstd-safe v7.2.4
[INFO] [stderr]     Checking bytemuck v1.25.0
[INFO] [stderr]    Compiling log v0.4.29
[INFO] [stderr]    Compiling rustix v0.38.44
[INFO] [stderr]    Compiling rustix v1.1.3
[INFO] [stderr]     Checking data-encoding v2.10.0
[INFO] [stderr]    Compiling web_atoms v0.1.3
[INFO] [stderr]    Compiling self_cell v0.10.3
[INFO] [stderr]    Compiling libz-sys v1.1.25
[INFO] [stderr]     Checking ownedbytes v0.7.0
[INFO] [stderr]     Checking aho-corasick v1.1.4
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling oid-registry v0.7.1
[INFO] [stderr]     Checking linux-raw-sys v0.11.0
[INFO] [stderr]     Checking mac v0.1.1
[INFO] [stderr]    Compiling toml_datetime v0.6.11
[INFO] [stderr]    Compiling pastey v0.1.1
[INFO] [stderr]     Checking linux-raw-sys v0.4.15
[INFO] [stderr]     Checking time v0.3.47
[INFO] [stderr]     Checking precomputed-hash v0.1.1
[INFO] [stderr]    Compiling toml_edit v0.19.15
[INFO] [stderr]    Compiling openssl v0.10.75
[INFO] [stderr]     Checking futf v0.1.5
[INFO] [stderr]     Checking regex-automata v0.4.14
[INFO] [stderr]    Compiling lock_api v0.4.14
[INFO] [stderr]     Checking indexmap v2.13.0
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling darling_core v0.23.0
[INFO] [stderr]     Checking bitpacking v0.9.3
[INFO] [stderr]     Checking safe_arch v0.7.4
[INFO] [stderr]     Checking uuid v1.21.0
[INFO] [stderr]     Checking brotli-decompressor v5.0.0
[INFO] [stderr]     Checking num-complex v0.4.6
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.8.1
[INFO] [stderr]    Compiling zerovec-derive v0.11.2
[INFO] [stderr]    Compiling zerocopy-derive v0.8.40
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]     Checking zerofrom v0.1.6
[INFO] [stderr]    Compiling tinystr v0.8.2
[INFO] [stderr]     Checking yoke v0.8.1
[INFO] [stderr]    Compiling zeroize_derive v1.4.3
[INFO] [stderr]    Compiling futures-macro v0.3.32
[INFO] [stderr]     Checking zerovec v0.11.5
[INFO] [stderr]     Checking zeroize v1.8.2
[INFO] [stderr]     Checking zerotrie v0.2.3
[INFO] [stderr]    Compiling tokio-macros v2.6.0
[INFO] [stderr]     Checking futures-util v0.3.32
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]     Checking cipher v0.4.4
[INFO] [stderr]    Compiling phf_macros v0.11.3
[INFO] [stderr]     Checking potential_utf v0.1.4
[INFO] [stderr]     Checking icu_collections v2.1.1
[INFO] [stderr]     Checking icu_locale_core v2.1.1
[INFO] [stderr]     Checking unic-langid-impl v0.9.6
[INFO] [stderr]     Checking tokio v1.49.0
[INFO] [stderr]     Checking unic-langid v0.9.6
[INFO] [stderr]     Checking tracing v0.1.44
[INFO] [stderr]    Compiling rust-embed-impl v8.11.0
[INFO] [stderr]     Checking icu_provider v2.1.1
[INFO] [stderr]    Compiling basic-toml v0.1.10
[INFO] [stderr]     Checking icu_normalizer v2.1.1
[INFO] [stderr]     Checking icu_properties v2.1.2
[INFO] [stderr]    Compiling toml v0.5.11
[INFO] [stderr]    Compiling asn1-rs-derive v0.5.1
[INFO] [stderr]    Compiling asn1-rs-impl v0.2.0
[INFO] [stderr]    Compiling i18n-config v0.4.8
[INFO] [stderr]     Checking asn1-rs v0.6.2
[INFO] [stderr]     Checking idna_adapter v1.2.1
[INFO] [stderr]     Checking idna v1.1.0
[INFO] [stderr]    Compiling find-crate v0.6.3
[INFO] [stderr]     Checking url v2.5.8
[INFO] [stderr]    Compiling intl_pluralrules v7.0.2
[INFO] [stderr]    Compiling intl-memoizer v0.5.3
[INFO] [stderr]    Compiling fluent-langneg v0.13.1
[INFO] [stderr]     Checking phf v0.11.3
[INFO] [stderr]    Compiling fluent-syntax v0.11.1
[INFO] [stderr]    Compiling curve25519-dalek-derive v0.1.1
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling i18n-embed-impl v0.8.4
[INFO] [stderr]     Checking futures-executor v0.3.32
[INFO] [stderr]     Checking string_cache v0.8.9
[INFO] [stderr]     Checking base64urlsafedata v0.5.4
[INFO] [stderr]    Compiling fluent-bundle v0.15.3
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]     Checking tantivy-common v0.7.0
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]     Checking universal-hash v0.5.1
[INFO] [stderr]     Checking utf8-ranges v1.0.5
[INFO] [stderr]     Checking unicode-width v0.2.0
[INFO] [stderr]     Checking foldhash v0.1.5
[INFO] [stderr]     Checking clap_lex v1.0.0
[INFO] [stderr]    Compiling webauthn-attestation-ca v0.5.4
[INFO] [stderr]     Checking hashbrown v0.15.5
[INFO] [stderr]     Checking poly1305 v0.8.0
[INFO] [stderr]     Checking clap_builder v4.5.59
[INFO] [stderr]    Compiling proc-macro-crate v1.3.1
[INFO] [stderr]     Checking tantivy-fst v0.5.0
[INFO] [stderr]    Compiling fluent v0.16.1
[INFO] [stderr]     Checking thiserror v2.0.18
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]     Checking half v2.7.1
[INFO] [stderr]     Checking der-parser v9.0.0
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking rand_chacha v0.9.0
[INFO] [stderr]     Checking rand v0.9.2
[INFO] [stderr]     Checking futures v0.3.32
[INFO] [stderr]    Compiling rust-embed v8.11.0
[INFO] [stderr]     Checking chacha20 v0.9.1
[INFO] [stderr]    Compiling darling_macro v0.23.0
[INFO] [stderr]     Checking brotli v8.0.2
[INFO] [stderr]     Checking wide v0.7.33
[INFO] [stderr]    Compiling clap_derive v4.5.55
[INFO] [stderr]     Checking rand_distr v0.4.3
[INFO] [stderr]     Checking tantivy-bitpacker v0.6.0
[INFO] [stderr]     Checking signal-hook v0.3.18
[INFO] [stderr]     Checking tendril v0.4.3
[INFO] [stderr]     Checking hkdf v0.12.4
[INFO] [stderr]     Checking num-rational v0.4.2
[INFO] [stderr]    Compiling libgit2-sys v0.17.0+1.8.1
[INFO] [stderr]     Checking zstd v0.13.3
[INFO] [stderr]     Checking fdeflate v0.3.7
[INFO] [stderr]     Checking approx v0.5.1
[INFO] [stderr]     Checking arc-swap v1.8.2
[INFO] [stderr]    Compiling proc-macro-error-attr2 v2.0.0
[INFO] [stderr]     Checking sha1 v0.10.6
[INFO] [stderr]     Checking aead v0.5.2
[INFO] [stderr]    Compiling smartstring v1.0.1
[INFO] [stderr]     Checking murmurhash32 v0.3.1
[INFO] [stderr]     Checking dtoa v1.0.11
[INFO] [stderr]     Checking sync_wrapper v1.0.2
[INFO] [stderr]    Compiling webauthn-rs-core v0.5.4
[INFO] [stderr]     Checking pxfm v0.1.28
[INFO] [stderr]     Checking compression-core v0.4.31
[INFO] [stderr]     Checking ttf-parser v0.25.1
[INFO] [stderr]     Checking unicode-segmentation v1.12.0
[INFO] [stderr]    Compiling instability v0.3.11
[INFO] [stderr]     Checking hyper v1.8.1
[INFO] [stderr]     Checking dtoa-short v0.3.5
[INFO] [stderr]     Checking tantivy-stacker v0.3.0
[INFO] [stderr]     Checking clap v4.5.59
[INFO] [stderr]     Checking tinyvec v1.10.0
[INFO] [stderr]     Checking tungstenite v0.28.0
[INFO] [stderr]    Compiling proc-macro-error2 v2.0.1
[INFO] [stderr]     Checking chacha20poly1305 v0.10.1
[INFO] [stderr]     Checking simba v0.8.1
[INFO] [stderr]    Compiling i18n-embed v0.15.4
[INFO] [stderr]     Checking png v0.18.1
[INFO] [stderr]     Checking tantivy-sstable v0.3.0
[INFO] [stderr]    Compiling num_enum_derive v0.5.11
[INFO] [stderr]     Checking markup5ever v0.35.0
[INFO] [stderr]     Checking signal-hook-mio v0.2.5
[INFO] [stderr]    Compiling darling v0.23.0
[INFO] [stderr]     Checking cookie-factory v0.3.3
[INFO] [stderr]     Checking x509-parser v0.16.0
[INFO] [stderr]     Checking compression-codecs v0.4.37
[INFO] [stderr]     Checking moxcms v0.8.1
[INFO] [stderr]     Checking serde_cbor_2 v0.13.0
[INFO] [stderr]     Checking lru v0.12.5
[INFO] [stderr]     Checking hex-conservative v0.2.2
[INFO] [stderr]     Checking webauthn-rs-proto v0.5.4
[INFO] [stderr]     Checking owned_ttf_parser v0.25.1
[INFO] [stderr]     Checking serde_spanned v0.6.9
[INFO] [stderr]     Checking salsa20 v0.10.2
[INFO] [stderr]     Checking secrecy v0.10.3
[INFO] [stderr]    Compiling match_token v0.35.0
[INFO] [stderr]    Compiling pin-project-internal v1.1.11
[INFO] [stderr]    Compiling strum_macros v0.26.4
[INFO] [stderr]    Compiling cssparser-macros v0.6.1
[INFO] [stderr]     Checking pbkdf2 v0.12.2
[INFO] [stderr]     Checking twox-hash v1.6.3
[INFO] [stderr]     Checking http-body-util v0.1.3
[INFO] [stderr]    Compiling blake3 v1.8.3
[INFO] [stderr]     Checking itertools v0.13.0
[INFO] [stderr]     Checking crossbeam-channel v0.5.15
[INFO] [stderr]     Checking num-iter v0.1.45
[INFO] [stderr]     Checking rle v0.2.0
[INFO] [stderr]     Checking bstr v1.12.1
[INFO] [stderr]     Checking inotify-sys v0.1.5
[INFO] [stderr]     Checking instant v0.1.13
[INFO] [stderr]     Checking winnow v0.7.14
[INFO] [stderr]     Checking str_indices v0.4.4
[INFO] [stderr]    Compiling pulldown-cmark v0.12.2
[INFO] [stderr]     Checking base64ct v1.8.3
[INFO] [stderr]     Checking humansize v1.1.1
[INFO] [stderr]    Compiling anyhow v1.0.101
[INFO] [stderr]     Checking fastdivide v0.4.2
[INFO] [stderr]     Checking signature v2.2.0
[INFO] [stderr]     Checking io_tee v0.1.1
[INFO] [stderr]     Checking crc-catalog v1.1.1
[INFO] [stderr]     Checking toml_write v0.1.2
[INFO] [stderr]     Checking ab_glyph_rasterizer v0.1.10
[INFO] [stderr]     Checking tempfile v3.25.0
[INFO] [stderr]     Checking strum v0.26.3
[INFO] [stderr]     Checking inotify v0.9.6
[INFO] [stderr]     Checking ab_glyph v0.2.32
[INFO] [stderr]     Checking tantivy-columnar v0.3.0
[INFO] [stderr]     Checking unicode-truncate v1.1.0
[INFO] [stderr]     Checking crc v2.1.0
[INFO] [stderr]     Checking age-core v0.11.0
[INFO] [stderr]     Checking nalgebra v0.32.6
[INFO] [stderr]     Checking ed25519 v2.2.3
[INFO] [stderr]     Checking content-tree v0.2.0
[INFO] [stderr]     Checking password-hash v0.5.0
[INFO] [stderr]     Checking image v0.25.10
[INFO] [stderr]     Checking globset v0.4.18
[INFO] [stderr]     Checking jumprope v1.1.2
[INFO] [stderr]     Checking axum-core v0.5.6
[INFO] [stderr]     Checking measure_time v0.8.3
[INFO] [stderr]     Checking pin-project v1.1.11
[INFO] [stderr]     Checking compact_str v0.8.1
[INFO] [stderr]     Checking toml_edit v0.22.27
[INFO] [stderr]     Checking num v0.4.3
[INFO] [stderr]     Checking lz4_flex v0.9.5
[INFO] [stderr]     Checking cssparser v0.35.0
[INFO] [stderr]     Checking scrypt v0.11.0
[INFO] [stderr]     Checking html5ever v0.35.0
[INFO] [stderr]     Checking bitcoin_hashes v0.14.1
[INFO] [stderr]     Checking num_enum v0.5.11
[INFO] [stderr]     Checking async-compression v0.4.41
[INFO] [stderr]    Compiling i18n-embed-fl v0.9.4
[INFO] [stderr]     Checking crossterm v0.28.1
[INFO] [stderr]     Checking tokio-tungstenite v0.28.0
[INFO] [stderr]     Checking unicode-normalization v0.1.25
[INFO] [stderr]     Checking hyper-util v0.1.20
[INFO] [stderr]     Checking crossterm v0.29.0
[INFO] [stderr]     Checking tower v0.5.3
[INFO] [stderr]     Checking tokio-util v0.7.18
[INFO] [stderr]     Checking x25519-dalek v2.0.1
[INFO] [stderr]     Checking getopts v0.2.24
[INFO] [stderr]     Checking rust-stemmers v1.2.0
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking tantivy-tokenizer-api v0.3.0
[INFO] [stderr]     Checking sketches-ddsketch v0.2.2
[INFO] [stderr]     Checking regex v1.12.3
[INFO] [stderr]     Checking fs4 v0.8.4
[INFO] [stderr]     Checking serde_path_to_error v0.1.20
[INFO] [stderr]     Checking tantivy-query-grammar v0.22.0
[INFO] [stderr]     Checking brotli-decompressor v4.0.3
[INFO] [stderr]    Compiling include_dir_macros v0.7.4
[INFO] [stderr]     Checking blake2 v0.10.6
[INFO] [stderr]     Checking mio v0.8.11
[INFO] [stderr]     Checking memmap2 v0.9.10
[INFO] [stderr]     Checking filetime v0.2.27
[INFO] [stderr]     Checking rtoolbox v0.0.5
[INFO] [stderr]     Checking num_cpus v1.17.0
[INFO] [stderr]     Checking unicase v2.9.0
[INFO] [stderr]     Checking roff v1.1.1
[INFO] [stderr]     Checking str_indices v0.3.2
[INFO] [stderr]     Checking lz4_flex v0.11.5
[INFO] [stderr]     Checking census v0.4.2
[INFO] [stderr]     Checking pulldown-cmark-escape v0.11.0
[INFO] [stderr]     Checking bech32 v0.9.1
[INFO] [stderr]     Checking fixedbitset v0.5.7
[INFO] [stderr]     Checking constant_time_eq v0.4.2
[INFO] [stderr]     Checking oneshot v0.1.13
[INFO] [stderr]     Checking memo-map v0.3.3
[INFO] [stderr]     Checking matchit v0.8.4
[INFO] [stderr]     Checking maplit v1.0.2
[INFO] [stderr]     Checking htmlescape v0.3.1
[INFO] [stderr]     Checking levenshtein_automata v0.2.1
[INFO] [stderr]     Checking serde_yaml_ng v0.10.0
[INFO] [stderr]     Checking petgraph v0.7.1
[INFO] [stderr]     Checking brotli v7.0.0
[INFO] [stderr]     Checking ammonia v4.1.2
[INFO] [stderr]     Checking axum v0.8.8
[INFO] [stderr]     Checking tantivy v0.22.1
[INFO] [stderr]     Checking minijinja v2.16.0
[INFO] [stderr]     Checking age v0.11.2
[INFO] [stderr]     Checking imageproc v0.25.0
[INFO] [stderr]     Checking diamond-types v1.0.0
[INFO] [stderr]     Checking clap_mangen v0.2.33
[INFO] [stderr]     Checking rpassword v7.5.2
[INFO] [stderr]     Checking ratatui v0.29.0
[INFO] [stderr]     Checking notify v6.1.1
[INFO] [stderr]     Checking include_dir v0.7.4
[INFO] [stderr]     Checking argon2 v0.5.3
[INFO] [stderr]     Checking tower-http v0.6.8
[INFO] [stderr]     Checking comfy-table v7.2.2
[INFO] [stderr]     Checking bip39 v2.2.2
[INFO] [stderr]     Checking toml v0.8.23
[INFO] [stderr]     Checking webauthn-rs v0.5.4
[INFO] [stderr]     Checking ignore v0.4.25
[INFO] [stderr]     Checking ed25519-dalek v2.2.0
[INFO] [stderr]     Checking clap_complete v4.6.2
[INFO] [stderr]     Checking spake2 v0.4.0
[INFO] [stderr]     Checking quick-xml v0.36.2
[INFO] [stderr]     Checking bech32 v0.11.1
[INFO] [stderr]     Checking urlencoding v2.1.3
[INFO] [stderr]     Checking git2 v0.19.0
[INFO] [stderr]  Documenting zetl v0.9.3 (/opt/rustwide/workdir)
[INFO] [stderr]     Checking zetl v0.9.3 (/opt/rustwide/workdir)
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::<u64>::fetch_update`: renamed to `try_update` for consistency
[INFO] [stdout]    --> src/assets/store.rs:352:14
[INFO] [stdout]     |
[INFO] [stdout] 352 |             .fetch_update(Ordering::SeqCst, Ordering::SeqCst, |current| {
[INFO] [stdout]     |              ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]     |
[INFO] [stdout] 352 -             .fetch_update(Ordering::SeqCst, Ordering::SeqCst, |current| {
[INFO] [stdout] 352 +             .try_update(Ordering::SeqCst, Ordering::SeqCst, |current| {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::<u64>::fetch_update`: renamed to `try_update` for consistency
[INFO] [stdout]    --> src/assets/store.rs:365:14
[INFO] [stdout]     |
[INFO] [stdout] 365 |             .fetch_update(Ordering::SeqCst, Ordering::SeqCst, |current| {
[INFO] [stdout]     |              ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]     |
[INFO] [stdout] 365 -             .fetch_update(Ordering::SeqCst, Ordering::SeqCst, |current| {
[INFO] [stdout] 365 +             .try_update(Ordering::SeqCst, Ordering::SeqCst, |current| {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::<u64>::fetch_update`: renamed to `try_update` for consistency
[INFO] [stdout]    --> src/assets/store.rs:383:14
[INFO] [stdout]     |
[INFO] [stdout] 383 |             .fetch_update(Ordering::SeqCst, Ordering::SeqCst, |current| {
[INFO] [stdout]     |              ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]     |
[INFO] [stdout] 383 -             .fetch_update(Ordering::SeqCst, Ordering::SeqCst, |current| {
[INFO] [stdout] 383 +             .try_update(Ordering::SeqCst, Ordering::SeqCst, |current| {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `FileMerkle::root_hash`
[INFO] [stdout]   --> src/cache.rs:46:44
[INFO] [stdout]    |
[INFO] [stdout] 46 | /// per-file roots stored in each file's [`FileMerkle::root_hash`].
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^^^^^^^^^ no item named `FileMerkle` in scope
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(rustdoc::broken_intra_doc_links)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `FileMerkle`
[INFO] [stdout]    --> src/cache.rs:179:13
[INFO] [stdout]     |
[INFO] [stdout] 179 | /// has a [`FileMerkle`] root for `.md` files), all cached Merkle nodes are reused
[INFO] [stdout]     |             ^^^^^^^^^^ no item named `FileMerkle` 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 `FileMerkle`
[INFO] [stdout]    --> src/cache.rs:358:43
[INFO] [stdout]     |
[INFO] [stdout] 358 | /// For Markdown files with a populated [`FileMerkle`], hashes come from
[INFO] [stdout]     |                                           ^^^^^^^^^^ no item named `FileMerkle` 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 `SplLeafCached::ast_hash`
[INFO] [stdout]    --> src/cache.rs:359:24
[INFO] [stdout]     |
[INFO] [stdout] 359 | /// the pre-computed [`SplLeafCached::ast_hash`] entries.
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^^^ no item named `SplLeafCached` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `SplBlock::content`
[INFO] [stdout]    --> src/cache.rs:362:23
[INFO] [stdout]     |
[INFO] [stdout] 362 | /// on-the-fly from [`SplBlock::content`] so that mtime-triggered re-parses
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^ no item named `SplBlock` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `GenkeyOutput::render_human`
[INFO] [stdout]   --> src/cap/genkey.rs:81:21
[INFO] [stdout]    |
[INFO] [stdout] 81 | /// route through [`GenkeyOutput::render_human`] / the JSON helper so
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^ the struct `GenkeyOutput` has no field or associated item named `render_human`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `pad` links to private item `EphemeralPaddingSecret`
[INFO] [stdout]   --> src/cap/pad.rs:23:40
[INFO] [stdout]    |
[INFO] [stdout] 23 | //! Each padding scalar lives inside [`EphemeralPaddingSecret`], a
[INFO] [stdout]    |                                        ^^^^^^^^^^^^^^^^^^^^^^ this item is private
[INFO] [stdout]    |
[INFO] [stdout]    = note: this link resolves only because you passed `--document-private-items`, but will break without
[INFO] [stdout]    = note: `#[warn(rustdoc::private_intra_doc_links)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `pad_to_tier_with_rng` links to private item `EphemeralPaddingSecret`
[INFO] [stdout]    --> src/cap/pad.rs:104:7
[INFO] [stdout]     |
[INFO] [stdout] 104 | /// [`EphemeralPaddingSecret`], derives the public key, and drops the
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^^^^^^^^ this item is private
[INFO] [stdout]     |
[INFO] [stdout]     = note: this link resolves only because you passed `--document-private-items`, but will break without
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `BlockToken::parse_line_prefix`
[INFO] [stdout]    --> src/crdt/marks.rs:257:34
[INFO] [stdout]     |
[INFO] [stdout] 257 | /// are NOT handled here — see [`BlockToken::parse_line_prefix`]; callers
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `BlockToken` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `MarksDoc` links to private item `SpanOp`
[INFO] [stdout]   --> src/crdt/marks_doc.rs:65:43
[INFO] [stdout]    |
[INFO] [stdout] 65 | /// Sibling diamond-types oplog storing [`SpanOp`]s.
[INFO] [stdout]    |                                           ^^^^^^ this item is private
[INFO] [stdout]    |
[INFO] [stdout]    = note: this link resolves only because you passed `--document-private-items`, but will break without
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Section`
[INFO] [stdout]    --> src/drift.rs:267:64
[INFO] [stdout]     |
[INFO] [stdout] 267 | /// [`crate::merkle::grounding_section`] without producing a [`Section`] value.
[INFO] [stdout]     |                                                                ^^^^^^^ no item named `Section` 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 `StageInput::Markdown`
[INFO] [stdout]    --> src/ecosystems/adapter.rs:262:23
[INFO] [stdout]     |
[INFO] [stdout] 262 | /// - `pre-parse` → [`StageInput::Markdown`]
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^ the enum `StageInput` has no variant or associated item named `Markdown`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `StageInput::ForeignAst`
[INFO] [stdout]    --> src/ecosystems/adapter.rs:263:23
[INFO] [stdout]     |
[INFO] [stdout] 263 | /// - `transform` → [`StageInput::ForeignAst`] (already translated)
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^ the enum `StageInput` has no variant or associated item named `ForeignAst`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `StageInput::Html`
[INFO] [stdout]    --> src/ecosystems/adapter.rs:264:25
[INFO] [stdout]     |
[INFO] [stdout] 264 | /// - `post-render` → [`StageInput::Html`]
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^ the enum `StageInput` has no variant or associated item named `Html`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `HookMessage::Result`
[INFO] [stdout]    --> src/ecosystems/adapter.rs:325:50
[INFO] [stdout]     |
[INFO] [stdout] 325 | /// persistent-mode protocol already emits via [`HookMessage::Result`].
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^^^^^^^ no item named `HookMessage` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `detection::detect_all_ecosystems`
[INFO] [stdout]  --> src/ecosystems/check.rs:3:51
[INFO] [stdout]   |
[INFO] [stdout] 3 | //! Probes each registered ecosystem's runtime ([`detection::detect_all_ecosystems`]),
[INFO] [stdout]   |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `detection` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `RuntimeStatus::Missing.hint`
[INFO] [stdout]    --> src/ecosystems/check.rs:107:11
[INFO] [stdout]     |
[INFO] [stdout] 107 |     /// [`RuntimeStatus::Missing.hint`] / [`RuntimeStatus::OutdatedVersion.hint`];
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^ the enum `RuntimeStatus` has no variant or associated item named `Missing.hint`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `RuntimeStatus::OutdatedVersion.hint`
[INFO] [stdout]    --> src/ecosystems/check.rs:107:45
[INFO] [stdout]     |
[INFO] [stdout] 107 |     /// [`RuntimeStatus::Missing.hint`] / [`RuntimeStatus::OutdatedVersion.hint`];
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the enum `RuntimeStatus` has no variant or associated item named `OutdatedVersion.hint`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `EcosystemAdapter::probe`
[INFO] [stdout]   --> src/ecosystems/detection.rs:14:7
[INFO] [stdout]    |
[INFO] [stdout] 14 | //! [`EcosystemAdapter::probe`] implementations so all three follow the same
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^^ no item named `EcosystemAdapter` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `disabled_for_unavailable`
[INFO] [stdout]    --> src/ecosystems/detection.rs:181:26
[INFO] [stdout]     |
[INFO] [stdout] 181 | /// callers pass it to [`disabled_for_unavailable`] / [`enforce_required`]
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^^^^^^^^ no item named `disabled_for_unavailable` 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 `RuntimeStatus::Missing.hint`
[INFO] [stdout]    --> src/ecosystems/detection.rs:439:40
[INFO] [stdout]     |
[INFO] [stdout] 439 | /// Per-binary install hint shown in [`RuntimeStatus::Missing.hint`] and
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^ the enum `RuntimeStatus` has no variant or associated item named `Missing.hint`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `crate::feed::auth::SECRET_PARAM_KEYS`
[INFO] [stdout]    --> src/feed/credentials.rs:179:7
[INFO] [stdout]     |
[INFO] [stdout] 179 | /// [`crate::feed::auth::SECRET_PARAM_KEYS`].
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `SECRET_PARAM_KEYS` in module `auth`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `extracted`
[INFO] [stdout]   --> src/feed/license_resolve.rs:76:57
[INFO] [stdout]    |
[INFO] [stdout] 76 | /// license. The metadata sources are still walked so [`extracted`] can
[INFO] [stdout]    |                                                         ^^^^^^^^^ no item named `extracted` 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 `crate::feed::tests`
[INFO] [stdout]   --> src/feed/republication.rs:50:17
[INFO] [stdout]    |
[INFO] [stdout] 50 | /// matrix in [`crate::feed::tests`] (Phase 2 task-tests-pure-core)
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^ no item named `tests` in module `feed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `tests::idempotent`
[INFO] [stdout]   --> src/feed/rewrite_links.rs:41:29
[INFO] [stdout]    |
[INFO] [stdout] 41 | /// the perf assertion in [`tests::idempotent`].
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^^^^ no item named `tests` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `BuildContext::from_page_shard`
[INFO] [stdout]   --> src/hooks/build_context.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 14 | //!   [`BuildContext::from_page_shard`] time; mid-hook writes are emitted
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the struct `BuildContext` has no field or associated item named `from_page_shard`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `PageShard`
[INFO] [stdout]   --> src/hooks/build_context.rs:15:39
[INFO] [stdout]    |
[INFO] [stdout] 15 | //!   separately through the owning [`PageShard`] and are visible to later
[INFO] [stdout]    |                                       ^^^^^^^^^ no item named `PageShard` 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 `Err(BudgetExcursion)`
[INFO] [stdout]    --> src/hooks/nfr_gates.rs:294:7
[INFO] [stdout]     |
[INFO] [stdout] 294 | /// [`Err(BudgetExcursion)`] when the sample's P95 breaches the budget;
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^^^^^^ no item named `Err(BudgetExcursion)` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] help: there's a similarly named item `BudgetExcursion`
[INFO] [stdout]     |
[INFO] [stdout] 294 - /// [`Err(BudgetExcursion)`] when the sample's P95 breaches the budget;
[INFO] [stdout] 294 + /// [`BudgetExcursion`] when the sample's P95 breaches the budget;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Error`
[INFO] [stdout]    --> src/hooks/nfr_gates.rs:353:63
[INFO] [stdout]     |
[INFO] [stdout] 353 | /// Wrapper carrying a failed [`BudgetSummary`]. Implements [`Error`]
[INFO] [stdout]     |                                                               ^^^^^ no item named `Error` 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 `PipelineStats`
[INFO] [stdout]   --> src/hooks/observability.rs:28:7
[INFO] [stdout]    |
[INFO] [stdout] 28 | //! [`PipelineStats`] lets the pipeline stay pure (`Copy` per-page stats)
[INFO] [stdout]    |       ^^^^^^^^^^^^^ no item named `PipelineStats` in scope
[INFO] [stdout]    |
[INFO] [stdout]    = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `shutdown` links to private item `Self::shutdown_grace`
[INFO] [stdout]    --> src/hooks/persistent.rs:818:33
[INFO] [stdout]     |
[INFO] [stdout] 818 |     /// stdin, and wait up to [`Self::shutdown_grace`] for the child to
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^^^^^ this item is private
[INFO] [stdout]     |
[INFO] [stdout]     = note: this link resolves only because you passed `--document-private-items`, but will break without
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Predicate::source`
[INFO] [stdout]   --> src/hooks/predicate.rs:70:67
[INFO] [stdout]    |
[INFO] [stdout] 70 |         /// Original pattern text — preserved for diagnostics / [`Predicate::source`].
[INFO] [stdout]    |                                                                   ^^^^^^^^^^^^^^^^^ the struct `Predicate` has no field or associated item named `source`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `evaluate`
[INFO] [stdout]   --> src/hooks/selector.rs:16:25
[INFO] [stdout]    |
[INFO] [stdout] 16 | //! [`compile`] time; [`evaluate`] does pure predicate application with no
[INFO] [stdout]    |                         ^^^^^^^^ no item named `evaluate` 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 `evaluate`
[INFO] [stdout]   --> src/hooks/selector.rs:80:32
[INFO] [stdout]    |
[INFO] [stdout] 80 | /// Per-page input handed to [`evaluate`].
[INFO] [stdout]    |                                ^^^^^^^^ no item named `evaluate` in scope
[INFO] [stdout]    |
[INFO] [stdout]    = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `emit` links to private item `Self::cap_bytes`
[INFO] [stdout]    --> src/hooks/template_vars.rs:184:37
[INFO] [stdout]     |
[INFO] [stdout] 184 |     /// - Values serialising to > [`Self::cap_bytes`] are dropped with
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^ this item is private
[INFO] [stdout]     |
[INFO] [stdout]     = note: this link resolves only because you passed `--document-private-items`, but will break without
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Translator::foreign_to_zetl`
[INFO] [stdout]   --> src/hooks/translators/canonicalise.rs:19:32
[INFO] [stdout]    |
[INFO] [stdout] 19 | //! differences that survive [`Translator::foreign_to_zetl`] but get
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `Translator` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `AstType::from_str`
[INFO] [stdout]    --> src/hooks/translators/mod.rs:144:19
[INFO] [stdout]     |
[INFO] [stdout] 144 | /// Returned by [`AstType::from_str`] when the manifest's `ast_type`
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^ the enum `AstType` has no variant or associated item named `from_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `ExplicitGrounding`
[INFO] [stdout]    --> src/merkle.rs:692:16
[INFO] [stdout]     |
[INFO] [stdout] 692 | /// For each [`ExplicitGrounding`] found in any `file_merkle.spl_leaves`, every
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^ no item named `ExplicitGrounding` 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 `load_from_vault`
[INFO] [stdout]   --> src/predicates.rs:67:49
[INFO] [stdout]    |
[INFO] [stdout] 67 | /// vocabulary; absent (modelled as `None` by [`load_from_vault`]) ⇒ emergent.
[INFO] [stdout]    |                                                 ^^^^^^^^^^^^^^^ no item named `load_from_vault` in scope
[INFO] [stdout]    |
[INFO] [stdout]    = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `single_pane` links to private item `SINGLE_PANE_THRESHOLD`
[INFO] [stdout]    --> src/view/app.rs:221:53
[INFO] [stdout]     |
[INFO] [stdout] 221 |     /// `true` when the terminal is narrower than [`SINGLE_PANE_THRESHOLD`].
[INFO] [stdout]     |                                                     ^^^^^^^^^^^^^^^^^^^^^ this item is private
[INFO] [stdout]     |
[INFO] [stdout]     = note: this link resolves only because you passed `--document-private-items`, but will break without
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `auth` links to private item `Principal`
[INFO] [stdout]  --> src/web/auth/mod.rs:4:21
[INFO] [stdout]   |
[INFO] [stdout] 4 | //! authenticated [`Principal`]. The authorization layer downstream — SPL policy
[INFO] [stdout]   |                     ^^^^^^^^^ this item is private
[INFO] [stdout]   |
[INFO] [stdout]   = note: this link resolves only because you passed `--document-private-items`, but will break without
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `auth` links to private item `Authenticator`
[INFO] [stdout]   --> src/web/auth/mod.rs:10:40
[INFO] [stdout]    |
[INFO] [stdout] 10 | //! Each authentication method is an [`Authenticator`] implementation in its own
[INFO] [stdout]    |                                        ^^^^^^^^^^^^^ this item is private
[INFO] [stdout]    |
[INFO] [stdout]    = note: this link resolves only because you passed `--document-private-items`, but will break without
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `EdDSA`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           A capability token is an [`EdDSA`] JWT (`sub = "zetl-capability"`)
[INFO] [stdout]                                     ^^^^^^^
[INFO] [stdout]   = note: no item named `EdDSA` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `capability_url` links to private item `crate::web::auth::token`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`crate::web::auth::token`] recogniser. The token rides in the URL as
[INFO] [stdout]            ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: this link resolves only because you passed `--document-private-items`, but will break without
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `capability_url` links to private item `Principal`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           * **Log redaction.** ADR-4110(d) — the resolved [`Principal`] carries
[INFO] [stdout]                                                              ^^^^^^^^^^^
[INFO] [stdout]   = note: this link resolves only because you passed `--document-private-items`, but will break without
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `scope` links to private item `Principal`
[INFO] [stdout]   --> src/web/auth/capability_url.rs:70:38
[INFO] [stdout]    |
[INFO] [stdout] 70 |     /// layer interprets this as a [`Principal`] attribute (ADR-4111).
[INFO] [stdout]    |                                      ^^^^^^^^^ this item is private
[INFO] [stdout]    |
[INFO] [stdout]    = note: this link resolves only because you passed `--document-private-items`, but will break without
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `capability_gate` links to private item `CapabilityGrant`
[INFO] [stdout]    --> src/web/auth/capability_url.rs:443:33
[INFO] [stdout]     |
[INFO] [stdout] 443 | /// * The principal carries a [`CapabilityGrant`] (i.e. `PrincipalId::Capability`),
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^ this item is private
[INFO] [stdout]     |
[INFO] [stdout]     = note: this link resolves only because you passed `--document-private-items`, but will break without
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `password` links to private item `Authenticator`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           * **PasswordAuthenticator** — the cookie-session [`Authenticator`] that
[INFO] [stdout]                                                               ^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: this link resolves only because you passed `--document-private-items`, but will break without
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `NFR-4103`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           The argon2id parameters are embedded in the PHC string, so [`NFR-4103`]
[INFO] [stdout]                                                                       ^^^^^^^^^^
[INFO] [stdout]   = note: no item named `NFR-4103` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Role::Reader`
[INFO] [stdout]   --> src/web/auth/provision.rs:14:62
[INFO] [stdout]    |
[INFO] [stdout] 14 | //!   [`crate::user::Role::for_profile_with_vault`] return [`Role::Reader`].
[INFO] [stdout]    |                                                              ^^^^^^^^^^^^ no item named `Role` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `AuthChain`
[INFO] [stdout]   --> src/web/auth/resolve.rs:11:34
[INFO] [stdout]    |
[INFO] [stdout] 11 | //! `auth_resolve` carries the [`AuthChain`] as its *own* middleware state
[INFO] [stdout]    |                                  ^^^^^^^^^ no item named `AuthChain` 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 `feed::select::PageView`
[INFO] [stdout]    --> src/web/build.rs:367:36
[INFO] [stdout]     |
[INFO] [stdout] 367 | /// Borrow [`OwnedFeedPage`]s as [`feed::select::PageView`]s. Caller
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^^^^^^ no item named `feed` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `feed::types::FeedItem`
[INFO] [stdout]    --> src/web/build.rs:470:21
[INFO] [stdout]     |
[INFO] [stdout] 470 | /// synthesises a [`feed::types::FeedItem`] per page that opted in via
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^ no item named `feed` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `feed`
[INFO] [stdout]    --> src/web/build.rs:475:34
[INFO] [stdout]     |
[INFO] [stdout] 475 | /// Returns `Ok(None)` when the [feed] section is absent, disabled,
[INFO] [stdout]     |                                  ^^^^ no item named `feed` 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 `Component`
[INFO] [stdout]  --> src/web/components/mod.rs:3:9
[INFO] [stdout]   |
[INFO] [stdout] 3 | //! A [`Component`] is a directory `components/<name>/` holding a minijinja-fragment
[INFO] [stdout]   |         ^^^^^^^^^ no item named `Component` 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 `VaultLookup`
[INFO] [stdout]    --> src/web/engine.rs:489:50
[INFO] [stdout]     |
[INFO] [stdout] 489 | /// SPEC-048 REQ-4818 / CON-4806 — disk-backed [`VaultLookup`] for transclusion. Resolves
[INFO] [stdout]     |                                                  ^^^^^^^^^^^ no item named `VaultLookup` 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 `wikilinks`
[INFO] [stdout]    --> src/web/markdown.rs:508:15
[INFO] [stdout]     |
[INFO] [stdout] 508 | /// Replace [[wikilinks]] with plain <a> tags in preview/excerpt HTML.
[INFO] [stdout]     |               ^^^^^^^^^ no item named `wikilinks` 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 `wikilinks`
[INFO] [stdout]    --> src/web/markdown.rs:622:15
[INFO] [stdout]     |
[INFO] [stdout] 622 | /// Replace [[wikilinks]] with <a> tags in HTML, skipping content inside <code>/<pre>.
[INFO] [stdout]     |               ^^^^^^^^^ no item named `wikilinks` 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 `wikilinks`
[INFO] [stdout]    --> src/web/markdown.rs:839:15
[INFO] [stdout]     |
[INFO] [stdout] 839 | /// Replace [[wikilinks]] with visibility-aware <a> tags in HTML, skipping <code>/<pre>.
[INFO] [stdout]     |               ^^^^^^^^^ no item named `wikilinks` 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 `mark_flushed`
[INFO] [stdout]    --> src/web/ws.rs:621:44
[INFO] [stdout]     |
[INFO] [stdout] 621 |     /// The generation must be passed to [`mark_flushed`] to guard against
[INFO] [stdout]     |                                            ^^^^^^^^^^^^ no item named `mark_flushed` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `name`
[INFO] [stdout]    --> src/cli.rs:220:66
[INFO] [stdout]     |
[INFO] [stdout] 220 |         /// Theme name for hook discovery (looks in .zetl/themes/<name>/hooks/)
[INFO] [stdout]     |                                                                  ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(rustdoc::invalid_html_tags)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `name`
[INFO] [stdout]    --> src/cli.rs:335:47
[INFO] [stdout]     |
[INFO] [stdout] 335 |         /// Theme name (looks in .zetl/themes/<name>/)
[INFO] [stdout]     |                                               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `name`
[INFO] [stdout]    --> src/cli.rs:440:47
[INFO] [stdout]     |
[INFO] [stdout] 440 |         /// Theme name (looks in .zetl/themes/<name>/)
[INFO] [stdout]     |                                               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `name`
[INFO] [stdout]     --> src/cli.rs:1023:47
[INFO] [stdout]      |
[INFO] [stdout] 1023 |         /// Theme name (looks in .zetl/themes/<name>/hooks/)
[INFO] [stdout]      |                                               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `name`
[INFO] [stdout]     --> src/cli.rs:1031:47
[INFO] [stdout]      |
[INFO] [stdout] 1031 |         /// Theme name (looks in .zetl/themes/<name>/hooks/)
[INFO] [stdout]      |                                               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `name`
[INFO] [stdout]     --> src/cli.rs:1106:47
[INFO] [stdout]      |
[INFO] [stdout] 1106 |         /// Theme name (looks in .zetl/themes/<name>/hooks/).
[INFO] [stdout]      |                                               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `name`
[INFO] [stdout]     --> src/cli.rs:1126:47
[INFO] [stdout]      |
[INFO] [stdout] 1126 |         /// Theme name (looks in .zetl/themes/<name>/hooks/).
[INFO] [stdout]      |                                               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `name`
[INFO] [stdout]     --> src/cli.rs:1142:47
[INFO] [stdout]      |
[INFO] [stdout] 1142 |         /// Theme name (looks in .zetl/themes/<name>/hooks/).
[INFO] [stdout]      |                                               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `name`
[INFO] [stdout]     --> src/cli.rs:1290:47
[INFO] [stdout]      |
[INFO] [stdout] 1290 |         /// Theme name (looks in .zetl/themes/<name>/hooks/)
[INFO] [stdout]      |                                               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `token`
[INFO] [stdout]   --> src/feed/credentials.rs:54:45
[INFO] [stdout]    |
[INFO] [stdout] 54 |     /// Bearer token (Authorization: Bearer <token>).
[INFO] [stdout]    |                                             ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `lang`
[INFO] [stdout]    --> src/feed/license_resolve.rs:131:26
[INFO] [stdout]     |
[INFO] [stdout] 131 | ///   * legalcode / deed.<lang> suffixes (the human-readable redirect
[INFO] [stdout]     |                          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `theme`
[INFO] [stdout]     --> src/web/build.rs:2003:61
[INFO] [stdout]      |
[INFO] [stdout] 2003 | /// Priority (lowest to highest): bundled default → bundled <theme> → vault
[INFO] [stdout]      |                                                             ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `loc`
[INFO] [stdout]     --> src/web/engine.rs:1710:45
[INFO] [stdout]      |
[INFO] [stdout] 1710 | /// Minimal XML attribute/text escaping for <loc> content.
[INFO] [stdout]      |                                             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: redundant explicit link target
[INFO] [stdout]  --> src/web/islands/manifest.rs:4:46
[INFO] [stdout]   |
[INFO] [stdout] 4 | //! component manifest parser ([`IslandRaw`](crate::web::components::manifest::IslandRaw))
[INFO] [stdout]   |                                 -----------  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ explicit target is redundant
[INFO] [stdout]   |                                 |
[INFO] [stdout]   |                                 because label contains path that resolves to same destination
[INFO] [stdout]   |
[INFO] [stdout]   = note: when a link's destination is not specified,
[INFO] [stdout]           the label is used to resolve intra-doc links
[INFO] [stdout]   = note: `#[warn(rustdoc::redundant_explicit_links)]` on by default
[INFO] [stdout] help: remove explicit link target
[INFO] [stdout]   |
[INFO] [stdout] 4 - //! component manifest parser ([`IslandRaw`](crate::web::components::manifest::IslandRaw))
[INFO] [stdout] 4 + //! component manifest parser ([`IslandRaw`])
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `a`
[INFO] [stdout]    --> src/web/markdown.rs:508:38
[INFO] [stdout]     |
[INFO] [stdout] 508 | /// Replace [[wikilinks]] with plain <a> tags in preview/excerpt HTML.
[INFO] [stdout]     |                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `a`
[INFO] [stdout]    --> src/web/markdown.rs:622:32
[INFO] [stdout]     |
[INFO] [stdout] 622 | /// Replace [[wikilinks]] with <a> tags in HTML, skipping content inside <code>/<pre>.
[INFO] [stdout]     |                                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `code`
[INFO] [stdout]    --> src/web/markdown.rs:622:74
[INFO] [stdout]     |
[INFO] [stdout] 622 | /// Replace [[wikilinks]] with <a> tags in HTML, skipping content inside <code>/<pre>.
[INFO] [stdout]     |                                                                          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `pre`
[INFO] [stdout]    --> src/web/markdown.rs:622:81
[INFO] [stdout]     |
[INFO] [stdout] 622 | /// Replace [[wikilinks]] with <a> tags in HTML, skipping content inside <code>/<pre>.
[INFO] [stdout]     |                                                                                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `a`
[INFO] [stdout]    --> src/web/markdown.rs:839:49
[INFO] [stdout]     |
[INFO] [stdout] 839 | /// Replace [[wikilinks]] with visibility-aware <a> tags in HTML, skipping <code>/<pre>.
[INFO] [stdout]     |                                                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `code`
[INFO] [stdout]    --> src/web/markdown.rs:839:76
[INFO] [stdout]     |
[INFO] [stdout] 839 | /// Replace [[wikilinks]] with visibility-aware <a> tags in HTML, skipping <code>/<pre>.
[INFO] [stdout]     |                                                                            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `pre`
[INFO] [stdout]    --> src/web/markdown.rs:839:83
[INFO] [stdout]     |
[INFO] [stdout] 839 | /// Replace [[wikilinks]] with visibility-aware <a> tags in HTML, skipping <code>/<pre>.
[INFO] [stdout]     |                                                                                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `active-theme`
[INFO] [stdout]     --> src/web/routes.rs:2062:23
[INFO] [stdout]      |
[INFO] [stdout] 2062 | ///   1. .zetl/themes/<active-theme>/static/<path>  (per-theme override)
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `path`
[INFO] [stdout]     --> src/web/routes.rs:2062:45
[INFO] [stdout]      |
[INFO] [stdout] 2062 | ///   1. .zetl/themes/<active-theme>/static/<path>  (per-theme override)
[INFO] [stdout]      |                                             ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `path`
[INFO] [stdout]     --> src/web/routes.rs:2063:23
[INFO] [stdout]      |
[INFO] [stdout] 2063 | ///   2. .zetl/static/<path>                         (vault-wide fallback)
[INFO] [stdout]      |                       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `path`
[INFO] [stdout]     --> src/web/routes.rs:2186:48
[INFO] [stdout]      |
[INFO] [stdout] 2186 | /// Pick a Cache-Control header for a /_static/<path> request.
[INFO] [stdout]      |                                                ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `id`
[INFO] [stdout]     --> src/web/routes.rs:3592:32
[INFO] [stdout]      |
[INFO] [stdout] 3592 | /// GET /recovery/show?user_id=<id> — generate and display the 12-word recovery
[INFO] [stdout]      |                                ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `id`
[INFO] [stdout]     --> src/web/routes.rs:3970:28
[INFO] [stdout]      |
[INFO] [stdout] 3970 | /// GET /auth/recover?user=<id> — issue a 256-bit recovery challenge.
[INFO] [stdout]      |                            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `JWT`
[INFO] [stdout]     --> src/web/routes.rs:4130:28
[INFO] [stdout]      |
[INFO] [stdout] 4130 | /// GET /auth/accept?token=<JWT> — validate invitation and show registration form.
[INFO] [stdout]      |                            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `scope`
[INFO] [stdout]     --> src/web/routes.rs:4650:45
[INFO] [stdout]      |
[INFO] [stdout] 4650 | /// Returns a map of user_id → (role, Option<scope>).
[INFO] [stdout]      |                                             ^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout] help: try marking as source code
[INFO] [stdout]      |
[INFO] [stdout] 4650 | /// Returns a map of user_id → (role, `Option<scope>`).
[INFO] [stdout]      |                                       +             +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 4m 39s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: proc-macro-error2 v2.0.1
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 5`
[INFO] [stderr]    Generated /opt/rustwide/target/doc/zetl/index.html and 1 other file
[INFO] running `Command { std: "docker" "inspect" "823afec91412c94cb8dbc268a158ef37d6f6981ba125b6c988e4123d224b94fe", 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" "-e" "RUSTC_BOOTSTRAP=1" "-e" "DOCS_RS=1" "-w" "/opt/rustwide/workdir" "--user" "0:0" "823afec91412c94cb8dbc268a158ef37d6f6981ba125b6c988e4123d224b94fe" "/opt/rustwide/cargo-home/bin/cargo" "+da3f5c31e5535b3dc210067de660a45784ae1e9c" "rustdoc" "--lib" "-Zrustdoc-map" "--config" "build.rustdocflags=[\"--cfg\", \"docsrs\", \"-Z\", \"unstable-options\", \"--document-private-items\"]" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]  Documenting zetl v0.9.3 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unresolved link to `FileMerkle::root_hash`
[INFO] [stdout]   --> src/cache.rs:46:44
[INFO] [stdout]    |
[INFO] [stdout] 46 | /// per-file roots stored in each file's [`FileMerkle::root_hash`].
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^^^^^^^^^ no item named `FileMerkle` in scope
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(rustdoc::broken_intra_doc_links)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `FileMerkle`
[INFO] [stdout]    --> src/cache.rs:179:13
[INFO] [stdout]     |
[INFO] [stdout] 179 | /// has a [`FileMerkle`] root for `.md` files), all cached Merkle nodes are reused
[INFO] [stdout]     |             ^^^^^^^^^^ no item named `FileMerkle` 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 `FileMerkle`
[INFO] [stdout]    --> src/cache.rs:358:43
[INFO] [stdout]     |
[INFO] [stdout] 358 | /// For Markdown files with a populated [`FileMerkle`], hashes come from
[INFO] [stdout]     |                                           ^^^^^^^^^^ no item named `FileMerkle` 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 `SplLeafCached::ast_hash`
[INFO] [stdout]    --> src/cache.rs:359:24
[INFO] [stdout]     |
[INFO] [stdout] 359 | /// the pre-computed [`SplLeafCached::ast_hash`] entries.
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^^^ no item named `SplLeafCached` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `SplBlock::content`
[INFO] [stdout]    --> src/cache.rs:362:23
[INFO] [stdout]     |
[INFO] [stdout] 362 | /// on-the-fly from [`SplBlock::content`] so that mtime-triggered re-parses
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^ no item named `SplBlock` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `GenkeyOutput::render_human`
[INFO] [stdout]   --> src/cap/genkey.rs:81:21
[INFO] [stdout]    |
[INFO] [stdout] 81 | /// route through [`GenkeyOutput::render_human`] / the JSON helper so
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^ the struct `GenkeyOutput` has no field or associated item named `render_human`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `pad` links to private item `EphemeralPaddingSecret`
[INFO] [stdout]   --> src/cap/pad.rs:23:40
[INFO] [stdout]    |
[INFO] [stdout] 23 | //! Each padding scalar lives inside [`EphemeralPaddingSecret`], a
[INFO] [stdout]    |                                        ^^^^^^^^^^^^^^^^^^^^^^ this item is private
[INFO] [stdout]    |
[INFO] [stdout]    = note: this link will resolve properly if you pass `--document-private-items`
[INFO] [stdout]    = note: `#[warn(rustdoc::private_intra_doc_links)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `pad_to_tier_with_rng` links to private item `EphemeralPaddingSecret`
[INFO] [stdout]    --> src/cap/pad.rs:104:7
[INFO] [stdout]     |
[INFO] [stdout] 104 | /// [`EphemeralPaddingSecret`], derives the public key, and drops the
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^^^^^^^^ this item is private
[INFO] [stdout]     |
[INFO] [stdout]     = note: this link will resolve properly if you pass `--document-private-items`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `BlockToken::parse_line_prefix`
[INFO] [stdout]    --> src/crdt/marks.rs:257:34
[INFO] [stdout]     |
[INFO] [stdout] 257 | /// are NOT handled here — see [`BlockToken::parse_line_prefix`]; callers
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `BlockToken` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `MarksDoc` links to private item `SpanOp`
[INFO] [stdout]   --> src/crdt/marks_doc.rs:65:43
[INFO] [stdout]    |
[INFO] [stdout] 65 | /// Sibling diamond-types oplog storing [`SpanOp`]s.
[INFO] [stdout]    |                                           ^^^^^^ this item is private
[INFO] [stdout]    |
[INFO] [stdout]    = note: this link will resolve properly if you pass `--document-private-items`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `StageInput::Markdown`
[INFO] [stdout]    --> src/ecosystems/adapter.rs:262:23
[INFO] [stdout]     |
[INFO] [stdout] 262 | /// - `pre-parse` → [`StageInput::Markdown`]
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^ the enum `StageInput` has no variant or associated item named `Markdown`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `StageInput::ForeignAst`
[INFO] [stdout]    --> src/ecosystems/adapter.rs:263:23
[INFO] [stdout]     |
[INFO] [stdout] 263 | /// - `transform` → [`StageInput::ForeignAst`] (already translated)
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^ the enum `StageInput` has no variant or associated item named `ForeignAst`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `StageInput::Html`
[INFO] [stdout]    --> src/ecosystems/adapter.rs:264:25
[INFO] [stdout]     |
[INFO] [stdout] 264 | /// - `post-render` → [`StageInput::Html`]
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^ the enum `StageInput` has no variant or associated item named `Html`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `HookMessage::Result`
[INFO] [stdout]    --> src/ecosystems/adapter.rs:325:50
[INFO] [stdout]     |
[INFO] [stdout] 325 | /// persistent-mode protocol already emits via [`HookMessage::Result`].
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^^^^^^^ no item named `HookMessage` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `detection::detect_all_ecosystems`
[INFO] [stdout]  --> src/ecosystems/check.rs:3:51
[INFO] [stdout]   |
[INFO] [stdout] 3 | //! Probes each registered ecosystem's runtime ([`detection::detect_all_ecosystems`]),
[INFO] [stdout]   |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `detection` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `RuntimeStatus::Missing.hint`
[INFO] [stdout]    --> src/ecosystems/check.rs:107:11
[INFO] [stdout]     |
[INFO] [stdout] 107 |     /// [`RuntimeStatus::Missing.hint`] / [`RuntimeStatus::OutdatedVersion.hint`];
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^ the enum `RuntimeStatus` has no variant or associated item named `Missing.hint`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `RuntimeStatus::OutdatedVersion.hint`
[INFO] [stdout]    --> src/ecosystems/check.rs:107:45
[INFO] [stdout]     |
[INFO] [stdout] 107 |     /// [`RuntimeStatus::Missing.hint`] / [`RuntimeStatus::OutdatedVersion.hint`];
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the enum `RuntimeStatus` has no variant or associated item named `OutdatedVersion.hint`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `EcosystemAdapter::probe`
[INFO] [stdout]   --> src/ecosystems/detection.rs:14:7
[INFO] [stdout]    |
[INFO] [stdout] 14 | //! [`EcosystemAdapter::probe`] implementations so all three follow the same
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^^ no item named `EcosystemAdapter` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `disabled_for_unavailable`
[INFO] [stdout]    --> src/ecosystems/detection.rs:181:26
[INFO] [stdout]     |
[INFO] [stdout] 181 | /// callers pass it to [`disabled_for_unavailable`] / [`enforce_required`]
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^^^^^^^^ no item named `disabled_for_unavailable` 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 `RuntimeStatus::Missing.hint`
[INFO] [stdout]    --> src/ecosystems/detection.rs:439:40
[INFO] [stdout]     |
[INFO] [stdout] 439 | /// Per-binary install hint shown in [`RuntimeStatus::Missing.hint`] and
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^ the enum `RuntimeStatus` has no variant or associated item named `Missing.hint`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `crate::feed::auth::SECRET_PARAM_KEYS`
[INFO] [stdout]    --> src/feed/credentials.rs:179:7
[INFO] [stdout]     |
[INFO] [stdout] 179 | /// [`crate::feed::auth::SECRET_PARAM_KEYS`].
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `SECRET_PARAM_KEYS` in module `auth`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `extracted`
[INFO] [stdout]   --> src/feed/license_resolve.rs:76:57
[INFO] [stdout]    |
[INFO] [stdout] 76 | /// license. The metadata sources are still walked so [`extracted`] can
[INFO] [stdout]    |                                                         ^^^^^^^^^ no item named `extracted` 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 `crate::feed::tests`
[INFO] [stdout]   --> src/feed/republication.rs:50:17
[INFO] [stdout]    |
[INFO] [stdout] 50 | /// matrix in [`crate::feed::tests`] (Phase 2 task-tests-pure-core)
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^ no item named `tests` in module `feed`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `tests::idempotent`
[INFO] [stdout]   --> src/feed/rewrite_links.rs:41:29
[INFO] [stdout]    |
[INFO] [stdout] 41 | /// the perf assertion in [`tests::idempotent`].
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^^^^ no item named `tests` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `BuildContext::from_page_shard`
[INFO] [stdout]   --> src/hooks/build_context.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 14 | //!   [`BuildContext::from_page_shard`] time; mid-hook writes are emitted
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the struct `BuildContext` has no field or associated item named `from_page_shard`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `PageShard`
[INFO] [stdout]   --> src/hooks/build_context.rs:15:39
[INFO] [stdout]    |
[INFO] [stdout] 15 | //!   separately through the owning [`PageShard`] and are visible to later
[INFO] [stdout]    |                                       ^^^^^^^^^ no item named `PageShard` 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 `Err(BudgetExcursion)`
[INFO] [stdout]    --> src/hooks/nfr_gates.rs:294:7
[INFO] [stdout]     |
[INFO] [stdout] 294 | /// [`Err(BudgetExcursion)`] when the sample's P95 breaches the budget;
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^^^^^^ no item named `Err(BudgetExcursion)` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] help: there's a similarly named item `BudgetExcursion`
[INFO] [stdout]     |
[INFO] [stdout] 294 - /// [`Err(BudgetExcursion)`] when the sample's P95 breaches the budget;
[INFO] [stdout] 294 + /// [`BudgetExcursion`] when the sample's P95 breaches the budget;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Error`
[INFO] [stdout]    --> src/hooks/nfr_gates.rs:353:63
[INFO] [stdout]     |
[INFO] [stdout] 353 | /// Wrapper carrying a failed [`BudgetSummary`]. Implements [`Error`]
[INFO] [stdout]     |                                                               ^^^^^ no item named `Error` 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 `PipelineStats`
[INFO] [stdout]   --> src/hooks/observability.rs:28:7
[INFO] [stdout]    |
[INFO] [stdout] 28 | //! [`PipelineStats`] lets the pipeline stay pure (`Copy` per-page stats)
[INFO] [stdout]    |       ^^^^^^^^^^^^^ no item named `PipelineStats` in scope
[INFO] [stdout]    |
[INFO] [stdout]    = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `shutdown` links to private item `Self::shutdown_grace`
[INFO] [stdout]    --> src/hooks/persistent.rs:818:33
[INFO] [stdout]     |
[INFO] [stdout] 818 |     /// stdin, and wait up to [`Self::shutdown_grace`] for the child to
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^^^^^ this item is private
[INFO] [stdout]     |
[INFO] [stdout]     = note: this link will resolve properly if you pass `--document-private-items`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Predicate::source`
[INFO] [stdout]   --> src/hooks/predicate.rs:70:67
[INFO] [stdout]    |
[INFO] [stdout] 70 |         /// Original pattern text — preserved for diagnostics / [`Predicate::source`].
[INFO] [stdout]    |                                                                   ^^^^^^^^^^^^^^^^^ the struct `Predicate` has no field or associated item named `source`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `evaluate`
[INFO] [stdout]   --> src/hooks/selector.rs:16:25
[INFO] [stdout]    |
[INFO] [stdout] 16 | //! [`compile`] time; [`evaluate`] does pure predicate application with no
[INFO] [stdout]    |                         ^^^^^^^^ no item named `evaluate` 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 `evaluate`
[INFO] [stdout]   --> src/hooks/selector.rs:80:32
[INFO] [stdout]    |
[INFO] [stdout] 80 | /// Per-page input handed to [`evaluate`].
[INFO] [stdout]    |                                ^^^^^^^^ no item named `evaluate` in scope
[INFO] [stdout]    |
[INFO] [stdout]    = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `emit` links to private item `Self::cap_bytes`
[INFO] [stdout]    --> src/hooks/template_vars.rs:184:37
[INFO] [stdout]     |
[INFO] [stdout] 184 |     /// - Values serialising to > [`Self::cap_bytes`] are dropped with
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^ this item is private
[INFO] [stdout]     |
[INFO] [stdout]     = note: this link will resolve properly if you pass `--document-private-items`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Translator::foreign_to_zetl`
[INFO] [stdout]   --> src/hooks/translators/canonicalise.rs:19:32
[INFO] [stdout]    |
[INFO] [stdout] 19 | //! differences that survive [`Translator::foreign_to_zetl`] but get
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `Translator` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `AstType::from_str`
[INFO] [stdout]    --> src/hooks/translators/mod.rs:144:19
[INFO] [stdout]     |
[INFO] [stdout] 144 | /// Returned by [`AstType::from_str`] when the manifest's `ast_type`
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^ the enum `AstType` has no variant or associated item named `from_str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `ExplicitGrounding`
[INFO] [stdout]    --> src/merkle.rs:692:16
[INFO] [stdout]     |
[INFO] [stdout] 692 | /// For each [`ExplicitGrounding`] found in any `file_merkle.spl_leaves`, every
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^ no item named `ExplicitGrounding` 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 `load_from_vault`
[INFO] [stdout]   --> src/predicates.rs:67:49
[INFO] [stdout]    |
[INFO] [stdout] 67 | /// vocabulary; absent (modelled as `None` by [`load_from_vault`]) ⇒ emergent.
[INFO] [stdout]    |                                                 ^^^^^^^^^^^^^^^ no item named `load_from_vault` in scope
[INFO] [stdout]    |
[INFO] [stdout]    = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `single_pane` links to private item `SINGLE_PANE_THRESHOLD`
[INFO] [stdout]    --> src/view/app.rs:221:53
[INFO] [stdout]     |
[INFO] [stdout] 221 |     /// `true` when the terminal is narrower than [`SINGLE_PANE_THRESHOLD`].
[INFO] [stdout]     |                                                     ^^^^^^^^^^^^^^^^^^^^^ this item is private
[INFO] [stdout]     |
[INFO] [stdout]     = note: this link will resolve properly if you pass `--document-private-items`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `auth` links to private item `Principal`
[INFO] [stdout]  --> src/web/auth/mod.rs:4:21
[INFO] [stdout]   |
[INFO] [stdout] 4 | //! authenticated [`Principal`]. The authorization layer downstream — SPL policy
[INFO] [stdout]   |                     ^^^^^^^^^ this item is private
[INFO] [stdout]   |
[INFO] [stdout]   = note: this link will resolve properly if you pass `--document-private-items`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `auth` links to private item `Authenticator`
[INFO] [stdout]   --> src/web/auth/mod.rs:10:40
[INFO] [stdout]    |
[INFO] [stdout] 10 | //! Each authentication method is an [`Authenticator`] implementation in its own
[INFO] [stdout]    |                                        ^^^^^^^^^^^^^ this item is private
[INFO] [stdout]    |
[INFO] [stdout]    = note: this link will resolve properly if you pass `--document-private-items`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `EdDSA`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           A capability token is an [`EdDSA`] JWT (`sub = "zetl-capability"`)
[INFO] [stdout]                                     ^^^^^^^
[INFO] [stdout]   = note: no item named `EdDSA` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `capability_url` links to private item `crate::web::auth::token`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           [`crate::web::auth::token`] recogniser. The token rides in the URL as
[INFO] [stdout]            ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: this link will resolve properly if you pass `--document-private-items`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `capability_url` links to private item `Principal`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           * **Log redaction.** ADR-4110(d) — the resolved [`Principal`] carries
[INFO] [stdout]                                                              ^^^^^^^^^^^
[INFO] [stdout]   = note: this link will resolve properly if you pass `--document-private-items`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `scope` links to private item `Principal`
[INFO] [stdout]   --> src/web/auth/capability_url.rs:70:38
[INFO] [stdout]    |
[INFO] [stdout] 70 |     /// layer interprets this as a [`Principal`] attribute (ADR-4111).
[INFO] [stdout]    |                                      ^^^^^^^^^ this item is private
[INFO] [stdout]    |
[INFO] [stdout]    = note: this link will resolve properly if you pass `--document-private-items`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `capability_gate` links to private item `CapabilityGrant`
[INFO] [stdout]    --> src/web/auth/capability_url.rs:443:33
[INFO] [stdout]     |
[INFO] [stdout] 443 | /// * The principal carries a [`CapabilityGrant`] (i.e. `PrincipalId::Capability`),
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^ this item is private
[INFO] [stdout]     |
[INFO] [stdout]     = note: this link will resolve properly if you pass `--document-private-items`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `password` links to private item `Authenticator`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           * **PasswordAuthenticator** — the cookie-session [`Authenticator`] that
[INFO] [stdout]                                                               ^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: this link will resolve properly if you pass `--document-private-items`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `NFR-4103`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the link appears in this line:
[INFO] [stdout]           
[INFO] [stdout]           The argon2id parameters are embedded in the PHC string, so [`NFR-4103`]
[INFO] [stdout]                                                                       ^^^^^^^^^^
[INFO] [stdout]   = note: no item named `NFR-4103` in scope
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Component`
[INFO] [stdout]  --> src/web/components/mod.rs:3:9
[INFO] [stdout]   |
[INFO] [stdout] 3 | //! A [`Component`] is a directory `components/<name>/` holding a minijinja-fragment
[INFO] [stdout]   |         ^^^^^^^^^ no item named `Component` 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 `mark_flushed`
[INFO] [stdout]    --> src/web/ws.rs:621:44
[INFO] [stdout]     |
[INFO] [stdout] 621 |     /// The generation must be passed to [`mark_flushed`] to guard against
[INFO] [stdout]     |                                            ^^^^^^^^^^^^ no item named `mark_flushed` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `name`
[INFO] [stdout]    --> src/cli.rs:220:66
[INFO] [stdout]     |
[INFO] [stdout] 220 |         /// Theme name for hook discovery (looks in .zetl/themes/<name>/hooks/)
[INFO] [stdout]     |                                                                  ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(rustdoc::invalid_html_tags)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `name`
[INFO] [stdout]    --> src/cli.rs:335:47
[INFO] [stdout]     |
[INFO] [stdout] 335 |         /// Theme name (looks in .zetl/themes/<name>/)
[INFO] [stdout]     |                                               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `name`
[INFO] [stdout]    --> src/cli.rs:440:47
[INFO] [stdout]     |
[INFO] [stdout] 440 |         /// Theme name (looks in .zetl/themes/<name>/)
[INFO] [stdout]     |                                               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `name`
[INFO] [stdout]     --> src/cli.rs:1023:47
[INFO] [stdout]      |
[INFO] [stdout] 1023 |         /// Theme name (looks in .zetl/themes/<name>/hooks/)
[INFO] [stdout]      |                                               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `name`
[INFO] [stdout]     --> src/cli.rs:1031:47
[INFO] [stdout]      |
[INFO] [stdout] 1031 |         /// Theme name (looks in .zetl/themes/<name>/hooks/)
[INFO] [stdout]      |                                               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `name`
[INFO] [stdout]     --> src/cli.rs:1106:47
[INFO] [stdout]      |
[INFO] [stdout] 1106 |         /// Theme name (looks in .zetl/themes/<name>/hooks/).
[INFO] [stdout]      |                                               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `name`
[INFO] [stdout]     --> src/cli.rs:1126:47
[INFO] [stdout]      |
[INFO] [stdout] 1126 |         /// Theme name (looks in .zetl/themes/<name>/hooks/).
[INFO] [stdout]      |                                               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `name`
[INFO] [stdout]     --> src/cli.rs:1142:47
[INFO] [stdout]      |
[INFO] [stdout] 1142 |         /// Theme name (looks in .zetl/themes/<name>/hooks/).
[INFO] [stdout]      |                                               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `name`
[INFO] [stdout]     --> src/cli.rs:1290:47
[INFO] [stdout]      |
[INFO] [stdout] 1290 |         /// Theme name (looks in .zetl/themes/<name>/hooks/)
[INFO] [stdout]      |                                               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `token`
[INFO] [stdout]   --> src/feed/credentials.rs:54:45
[INFO] [stdout]    |
[INFO] [stdout] 54 |     /// Bearer token (Authorization: Bearer <token>).
[INFO] [stdout]    |                                             ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: redundant explicit link target
[INFO] [stdout]  --> src/web/islands/manifest.rs:4:46
[INFO] [stdout]   |
[INFO] [stdout] 4 | //! component manifest parser ([`IslandRaw`](crate::web::components::manifest::IslandRaw))
[INFO] [stdout]   |                                 -----------  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ explicit target is redundant
[INFO] [stdout]   |                                 |
[INFO] [stdout]   |                                 because label contains path that resolves to same destination
[INFO] [stdout]   |
[INFO] [stdout]   = note: when a link's destination is not specified,
[INFO] [stdout]           the label is used to resolve intra-doc links
[INFO] [stdout]   = note: `#[warn(rustdoc::redundant_explicit_links)]` on by default
[INFO] [stdout] help: remove explicit link target
[INFO] [stdout]   |
[INFO] [stdout] 4 - //! component manifest parser ([`IslandRaw`](crate::web::components::manifest::IslandRaw))
[INFO] [stdout] 4 + //! component manifest parser ([`IslandRaw`])
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `active-theme`
[INFO] [stdout]     --> src/web/routes.rs:2062:23
[INFO] [stdout]      |
[INFO] [stdout] 2062 | ///   1. .zetl/themes/<active-theme>/static/<path>  (per-theme override)
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `path`
[INFO] [stdout]     --> src/web/routes.rs:2062:45
[INFO] [stdout]      |
[INFO] [stdout] 2062 | ///   1. .zetl/themes/<active-theme>/static/<path>  (per-theme override)
[INFO] [stdout]      |                                             ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `path`
[INFO] [stdout]     --> src/web/routes.rs:2063:23
[INFO] [stdout]      |
[INFO] [stdout] 2063 | ///   2. .zetl/static/<path>                         (vault-wide fallback)
[INFO] [stdout]      |                       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `id`
[INFO] [stdout]     --> src/web/routes.rs:3592:32
[INFO] [stdout]      |
[INFO] [stdout] 3592 | /// GET /recovery/show?user_id=<id> — generate and display the 12-word recovery
[INFO] [stdout]      |                                ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `id`
[INFO] [stdout]     --> src/web/routes.rs:3970:28
[INFO] [stdout]      |
[INFO] [stdout] 3970 | /// GET /auth/recover?user=<id> — issue a 256-bit recovery challenge.
[INFO] [stdout]      |                            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unclosed HTML tag `JWT`
[INFO] [stdout]     --> src/web/routes.rs:4130:28
[INFO] [stdout]      |
[INFO] [stdout] 4130 | /// GET /auth/accept?token=<JWT> — validate invitation and show registration form.
[INFO] [stdout]      |                            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 10.56s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: proc-macro-error2 v2.0.1
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 5`
[INFO] [stderr]    Generated /opt/rustwide/target/doc/zetl/index.html
[INFO] running `Command { std: "docker" "inspect" "823afec91412c94cb8dbc268a158ef37d6f6981ba125b6c988e4123d224b94fe", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "823afec91412c94cb8dbc268a158ef37d6f6981ba125b6c988e4123d224b94fe", kill_on_drop: false }`
[INFO] [stdout] 823afec91412c94cb8dbc268a158ef37d6f6981ba125b6c988e4123d224b94fe
