Skip to content

docs(ad): polish Lux example comments + retrigger Doc CI#444

Closed
ChrisRackauckas-Claude wants to merge 1 commit into
SciML:masterfrom
ChrisRackauckas-Claude:retrigger-docs-ci-after-mldatadev-unblock
Closed

docs(ad): polish Lux example comments + retrigger Doc CI#444
ChrisRackauckas-Claude wants to merge 1 commit into
SciML:masterfrom
ChrisRackauckas-Claude:retrigger-docs-ci-after-mldatadev-unblock

Conversation

@ChrisRackauckas-Claude
Copy link
Copy Markdown
Contributor

Note: Please ignore this PR until reviewed by @ChrisRackauckas. Opening as a draft.

Summary

Tiny wording tweak to the Lux/AD example in docs/src/examples/ad.md:

  • Tightened the comment describing the Dense(1 => 2) model.
  • Added a # reproducibility hint next to the Random.seed! call.

Why a follow-up PR

PR #442 (Flux → Lux + Optimisers + Zygote) was merged on 2026-04-30
with a failing Documentation CI run. The failure was a package
resolution error, not anything in the example code:

ERROR: Unsatisfiable requirements detected for package MLDataDevices [7e8f7934]:
  - restricted by compatibility requirements with RecursiveArrayTools [731186ca]
    to versions: uninstalled
  - restricted by compatibility requirements with Lux [b2108857]
    to versions: 1.5.0 - 1.17.8 — no versions left

Lux 1.x required MLDataDevices ≤ 1.17.8, but RecursiveArrayTools v4
(pinned by DiffEqGPU) needed a newer MLDataDevices. As of this week
that's been unblocked upstream — MLDataDevices 1.17.10 resolves
cleanly with RecursiveArrayTools 4.3.0 and Lux 1.31.4.

This PR exists primarily to retrigger the Doc CI on a current
registry snapshot now that the resolver conflict is gone.

Test plan

  • Pkg.instantiate on docs/Project.toml resolves locally with
    the post-unblock registry — 81 deps precompile cleanly.
  • Lux training loop in the example runs end-to-end on CPU
    (EnsembleSerial):
    loss(ps) = 42.0898
    loss(ps) = 9.875094
    loss(ps) = 5.4691095
    ...
    
  • Doc CI passes on this branch.
  • Runic format-check passes.

Slight wording tweaks in `docs/src/examples/ad.md`:
- Tightened the comment describing the tiny Lux model so it reads
  more clearly as "trainable parameters become the two ODE
  parameters (a Dense(1=>2) over a constant input)".
- Annotated the `Random.seed!` call with a `# reproducibility` hint
  so readers don't have to guess why the seed is set.

Doubles as a minimal-diff trigger for a fresh Doc CI run on
`master` now that the Lux ↔ MLDataDevices ↔ RecursiveArrayTools v4
resolution conflict is unblocked upstream — the previous
"CUDA Tests & Docs" run on master HEAD is still red from the
2026-04-30 build, before that fix landed in the registry.

Verified locally that the docs environment now resolves cleanly
(MLDataDevices 1.17.10, RecursiveArrayTools 4.3.0, Lux 1.31.4,
Optimisers 0.4.7, Zygote 0.7.10) and the training loop in the
example trains end-to-end on CPU via EnsembleSerial.

Co-Authored-By: Chris Rackauckas <accounts@chrisrackauckas.com>
@ChrisRackauckas ChrisRackauckas marked this pull request as ready for review May 5, 2026 14:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants