docs(book): walkthroughs for 30 aprender-core public modules (BOOK-CLOSEOUT-001 follow-up) - #1905
Merged
Merged
Conversation
noahgift
enabled auto-merge (squash)
May 23, 2026 16:40
noahgift
force-pushed
the
feat/book-lib-walkthroughs-batch1
branch
from
May 23, 2026 16:46
cdb14d2 to
6fb8061
Compare
…cation, ::cluster, ::ensemble, ::traits, ::primitives, ::format, ::nn, ::optim, ::loss, ::metrics (Refs #1902) Replace 20-line lib-module stubs with 60-150 line walkthroughs covering: - Module summary (purpose, what lives here, when to reach for it) - Key types table (3-5 most important public structs/traits/enums) - Two realistic usage patterns per chapter - See-also cross-links to related lib modules All rust fenced blocks use real, compiling types from aprender-core 0.35. No placeholder text. PCU headers and ``aprender::<mod>`` mentions preserved for the FALSIFY-BOOK-LIB gates. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
…composition, ::time_series, ::text, ::audio, ::graph, ::gnn, ::bayesian, ::tree, ::glm, ::regularization, ::model_selection, ::data, ::calibration, ::preprocessing, ::serialization, ::interpret, ::online (Refs #1902) Second batch of 19 lib-module walkthroughs. Same shape as commit 1: module summary, key types table, two runnable usage patterns, see-also cross-links. Fixed broken default examples in stubs to reference real public types (e.g. ChatTemplateEngine not ChatTemplate; GCNConv not GraphConvNetwork; GLM/Family/Link not PoissonGLM/GammaGLM; DataFrame not DataLoader). PCU headers and ``aprender::<mod>`` mentions preserved. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Replace literal ``[0, 1]`` range notation with prose ("between 0
and 1") to suppress the spurious "Did you forget to define a URL"
warning from mdbook-linkcheck. Hard gate
FALSIFY-BOOK-LINKCHECK-001 already passes (only counts File not
found errors), but cleaning the warning keeps the linkcheck output
clean.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
noahgift
force-pushed
the
feat/book-lib-walkthroughs-batch1
branch
from
May 23, 2026 17:15
6fb8061 to
c875afe
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Replace 20-line lib-module stubs with full walkthroughs for 30
high-value aprender-core public modules. Each chapter now has a
module summary, key types table, two runnable usage patterns, and
see-also cross-links to related modules.
Modules covered (30):
linear_model, classification, cluster, ensemble, traits,
primitives, format, nn, optim, loss, metrics, models, autograd,
decomposition, time_series, text, audio, graph, gnn, bayesian,
tree, glm, regularization, model_selection, data, calibration,
preprocessing, serialization, interpret, online.
Where the user task referenced names that aren't top-level
modules in the actual crate (
svm,naive_bayes,neighbors,quantize,linear_regression), thewalkthrough was authored on the closest real module —
svm/naive_bayes/neighborsare documented insideclassification.md,linear_regressioninsidelinear_model.md, andquantizecontent folded intopreprocessing.md(with format-level quantization referencedin
format.md). Substitute additional modules(
preprocessing,serialization,interpret,online)were authored so the batch lands a full 30 walkthroughs.
LOC added: ~2,068 across 30 files (averaging ~70 net new
lines per chapter, from ~20 to ~85).
Fixed default stub examples that referenced non-existent
symbols:
aprender::traits::{Estimator, Predictor}→Estimator, Transformer, UnsupervisedEstimatoraprender::ensemble::RandomForest→MixtureOfExperts, SoftmaxGating, MoeConfigaprender::loss::{MeanSquaredError, CrossEntropy}→MSELoss, MAELoss, HuberLoss, Lossaprender::metrics::{accuracy, f1_score}→ split between top-levelr_squared/mse/mae/rmseandmetrics::classification::{accuracy, f1_score, Average}aprender::format::{Reader, Writer}→ModelCard, AprConverter, ConvertOptionsaprender::autograd::{Variable, backward}→Tensor, no_gradaprender::decomposition::PCA→ICA(PCA actually lives inpreprocessing)aprender::text::ChatTemplate→ChatTemplateEngine, ChatMessageaprender::audio::{load_wav, MelSpectrogram}→MelConfig, MelFilterbank, validate_audioaprender::graph::{dijkstra, pagerank}→Graph, GraphCentrality(these are trait methods, not free functions)aprender::gnn::GraphConvNetwork→GCNConv, GATConv, GINConvaprender::glm::{PoissonGLM, GammaGLM}→GLM, Family, Linkaprender::regularization::{L1, L2, Dropout}→Mixup, LabelSmoothing, CutMix, StochasticDepthaprender::data::DataLoader→DataFrame, ColumnStatsTest plan
bash scripts/check_book_lib_example_block.sh— PASS (all 69 lib chapters have a rust fenced block)bash scripts/check_book_lib_parity.sh— PASS (69/69 modules have chapters)bash scripts/check_book_linkcheck.sh— PASS (0 broken file links)mdbook build— clean (only pre-existing search-index-size warning)crates/aprender-core/src/<mod>/🤖 Generated with Claude Code