Skip to content

docs: registration-prep documentation fixes (api_overview, agent-guide page, CITATION.cff) - #48

Merged
kalidke merged 3 commits into
mainfrom
docs/registration-prep
Sep 8, 2026
Merged

kalidke merged 3 commits into
mainfrom
docs/registration-prep

Conversation

@kalidke

@kalidke kalidke commented Sep 5, 2026

Copy link
Copy Markdown
Member

Documentation, README, api_overview, and citation fixes from the 2026-09-05 registration-readiness review (dev/output/registration_readiness_20260905.md, items C1–C4, D6). Companion to #47 (code + CI); independent of it.

api_overview.md (root AI-parseable reference) — every item verified against the live module

  • FitInfoGaussMLEFitInfo (the former does not exist); elapsed_ns::UInt64elapsed_s::Float64 on all 7 info structs; stale field lists of BoxesInfo/FrameConnectInfo/DriftInfo/RenderInfo completed (n_rois, n_filtered + calibration, roi_indices + residual_correlation, scalebar_length_um); a native-info-types list added.
  • Defaults corrected: DriftConfig(maxn=100), BaGoLConfig(n_iterations=4000, posterior_pixel_size=0.001) (+ se_adjust), FilterConfig criteria all default to nothing (+ z, sigma_z), IntensityFilterConfig full field list (p2_method=:mixture …), DetectFitConfig (+ datasets, pixel_size, qe, movie_fps), AnalysisConfig.checkpoint, MultiTargetConfig.verbose, MultiTargetResult.step_infos/outdir.
  • Step-info table was steps-Dict residue (:filter → nothing, :detectfit → tuple); now the real types.
  • save_pipeline_state(...; step_records)step_infos (the old kwarg throws).
  • data, info = load_smart_h5(path) → that function returns ONE array, so the old line silently bound two pixel values; now documents the single return and points to smart_h5_to_array for the pair.

Docs (docs/src)

  • New page workflows/agent_guide.mdinstall_agent_guide / uninstall_agent_guide / agent_guide_status were exported and advertised in the README but on no page of the manual. get_images added to the I/O @docs.
  • install.md: the "verify the install" snippet now actually runs (it referenced undefined cam/images); the docs-build recipe no longer runs Pkg.develop(path="."), which rewrote the tracked docs/Project.toml with an absolute path; registration note reworded (all deps are registered).
  • composite_render.md: clip_percentile default is :auto, not 0.99.
  • crosscorr.md: zero-distance pairs are kept (bin 1), not skipped; channel-B density uses B's own FOV with a mismatch warning.
  • intensityfilter.md: p₂ section described only the legacy :tail estimator; the default is the threshold-free :mixture fit — concept text + table row.
  • guide.md ("unregistered dependencies"), extending.md (dangling CONTRIBUTING reference), references.md (promised CITATION.bib), tutorial.md (two wording nits).

README / repo

  • Requirements paragraph (Julia version, GPU, threads); ecosystem tree now lists SMLMBaGoL and SMLMClustering.
  • CITATION.cff added (GitHub "Cite this repository"). Please check the author entry (name/affiliation; add an ORCID if wanted) — it is my best guess from Project.toml.

Guard

New fast test: every symbol defined in SMLMAnalysis (not re-exported) must appear in a @docs block under docs/src — the scoped check that checkdocs=:none cannot provide. It is what would have caught the four missing pages.

Local: fast tests green; full Documenter build (warnonly=false) green — see PR comment for the run outputs.

🤖 Generated with Claude Code

…e page, CITATION.cff)

api_overview.md: FitInfo -> GaussMLEFitInfo; elapsed_ns -> elapsed_s on every
info struct; stale upstream field lists completed; native info types listed;
corrected defaults (DriftConfig maxn=100, BaGoLConfig n_iterations=4000 /
posterior_pixel_size=0.001 / se_adjust, FilterConfig all-nothing + z/sigma_z,
IntensityFilterConfig full field list, DetectFitConfig datasets/pixel_size/qe/
movie_fps, AnalysisConfig.checkpoint, MultiTargetConfig.verbose,
MultiTargetResult.step_infos/outdir); step-info table de-Dict'ed;
save_pipeline_state step_records -> step_infos; load_smart_h5 documented as a
single-array return (the old destructuring line silently bound pixel values).

docs: new workflows/agent_guide.md (install/uninstall/agent_guide_status were
on no page); get_images in api/io.md; install.md verify snippet now runnable and
docs-build recipe no longer runs Pkg.develop(path=".") (rewrote the tracked
docs/Project.toml); composite_render clip_percentile default :auto; crosscorr
zero-distance pairs kept + per-channel FOV; intensityfilter p2 :mixture default;
guide/extending/references/tutorial stale statements.

README: Requirements paragraph; ecosystem tree lists SMLMBaGoL + SMLMClustering.
CITATION.cff added. New fast test: every SMLMAnalysis-owned export must appear
in a @docs block under docs/src.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
@kalidke

kalidke commented Sep 5, 2026

Copy link
Copy Markdown
Member Author

Local verification (kitt, Julia 1.12.6):

  • Pkg.test() fast tier on this branch: 439/439 (437 + the 2 assertions of the new docs-coverage test, which passes — every symbol defined in SMLMAnalysis now appears in a @docs block).
  • Full julia --project=docs docs/make.jl with warnonly=false: exit 0, no new warnings (only the pre-existing upstream MicroscopePSFs.ScalarPSF docstring-replacement notice and Documenter's "skipping deployment" outside CI). The new workflows/agent_guide page renders; docs/Project.toml stayed untouched by the build.
  • Every corrected default / field in api_overview.md was read from the live module (fieldnames, constructor defaults, Base.kwarg_decl, methods), not from prose.

kalidke and others added 2 commits September 8, 2026 13:56
The package's declared floor is julia = "1.10", and since SMLMFrameConnection
0.3.4 (registered 2026-09-06) the whole stack actually resolves and passes CI
on Julia 1.10. The two pages that stated 1.12 were describing the old,
unsatisfiable state.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
@kalidke
kalidke merged commit 23a6a52 into main Sep 8, 2026
5 checks passed
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.

1 participant