* docs: migrate from mkdocs to mdbook - Rename old mkdocs docs/ to old-docs/ for reference - Set up new docs/ with mdbook (book.toml + src/ tree) - Mirror full nav structure from mkdocs.yml into SUMMARY.md - Add Justfile-docs with docs-serve, docs-build, docs-check, docs-install recipes - Import Justfile-docs from root Justfile - Rewrite .github/workflows/docs.yml: build step uses taiki-e/install-action to install mdbook, split into separate build + deploy jobs, PR builds run the check step too * ci(docs): pin actions to SHAs, install mdbook via release binary * ci(docs): install mdbook from apt instead of curling a release binary * dev: replace mkdocs python stack with mdbook in dev image * ci(docs): apt only works on Debian; restore release binary install for Ubuntu CI * docs: fix duplicate file entries in SUMMARY.md * docs: remove docs-install recipe * docs: remove site-url from book.toml to fix asset loading * dev: install mdbook from upstream release binary, not Debian apt The Debian package (0.4.x+ds) strips bundled font assets, leaving the built site without fonts/fonts.css. Use the upstream tarball (same as CI) so the theme is complete. Handles x86_64 and aarch64. * docs: vendor mdbook tarballs in dev/mdbook/, install from there Dockerfile.dev uses COPY + tar to install the right arch at build time. CI extracts the x86_64 tarball directly from the checkout. No network access required for either — and no stripped-fonts Debian package. * fix: unwritten
964 B
Import Documents and Import Timings
The final step of the process is to coalesce all the returns of the various steps above into one analysable document and return it.
Logging
If the import had over 500 scores, we log the import at Info level. This is because those are generally rare, and we want to know how our performance is doing at a glance.
If the import has over 1 score, it is logged as verbose.
Else, the import is logged as debug.
Timings
An internal document - Import Timings - is created by storing the time each step of the import process took in milliseconds.
This is analysed regularly to check for performance degradation and look for potential optimisations.
This is also stored in the database.
Returns
The Import Document is the return from ScoreImportMain.
This document contains all the relevant information about the import and what it has resulted in, and is also stored in the database under a random ID.