Recipe: train_context_predictor + predict_with_context_predictor + conformalize_interval + conformalize · Theory: context-conditioned posterior (Garnelo et al. 2018 CNP; Kim et al. 2019 ANP) + conformal coverage and its break under graph dependence (Vovk; Angelopoulos & Bates 2021; Barber et al. 2023; Tibshirani et al. 2019; CF-GNN, Huang et al. 2023; NAPS, Clarkson et al. 2023) · Rails: provenance (which rows informed each prediction) + measurement (coverage).
This is the tier Neptune structurally lacks: a graph-conditioned prediction with an honest coverage guarantee. It carries two results, both real and both measured against the committed cache:
- The bidirectional win — a year-regression-conformal workflow that an engine bug once made impossible now runs end-to-end. The headline is the loop: authoring this keystone surfaced the gaussian-collapse bug, and the engine fix made the whole recipe executable.
- The conformal-under-shift lesson — under the dataset’s time-split, both the year-regression interval and the subject-classification set under-cover, and the textbook weighted-conformal remedy is a no-op in both cases, for two complementary reasons (residual magnitude uncorrelated with test-likeness within the calibration set; an orthogonal shift) — each with a diagnostic that explains exactly why.
The keystone ran the heavy work on the GPU server and committed the per-row predictor outputs and class scores. The conformal math below is cheap numpy — it runs on CPU against the cache.
The honest remedy: a governed calibration cohort
If a client-side reweight cannot restore coverage in either crux — the regression interval (residual size uncorrelated with test-likeness within calibration) or the classification set (an orthogonal shift) — what does? A governed, time-aware (or simply larger) calibration cohort: choose the calibration set so it is exchangeable with the deployment era — a Mondrian / time-stratified cohort the consumer owns and registers. The OSS Python surface exposes the marginal conformalize*; the governed cohort choice is the consumer’s, exactly where the doctrine puts it. The point stands: honest coverage on a shifting graph requires someone to own the cohort, and a reweight alone is not that someone.
Bridge note (a signature chapter — deepened in the bridge chapters)
A prediction is a context-conditioned posterior; honest coverage needs the consumer to own the cohort. The context predictor is a Neural Process (Garnelo et al. 2018 CNP; Kim et al. 2019 ANP; the TabPFN/PFN line) — the context set is a search/walk over the citation graph (the propagated embedding is that graph-conditioned context). Conformal gives finite-sample coverage under exchangeability (Vovk; Angelopoulos & Bates 2021); under this dataset’s time-split both the regression interval and the classification set under-cover (Barber et al. 2023). The textbook remedy is weighted / stratified conformal (Tibshirani et al. 2019; NAPS, Clarkson et al. 2023; CF-GNN, Huang et al. 2023) — but it repairs only a shift the nonconformity score can see: it is a no-op for the regression case (residual size is uncorrelated with test-likeness within the calibration set, even though the residuals themselves do shift) and for a shift orthogonal to the score (the classification case). The unifying lesson: weighted conformal repairs a covariate shift only when the shift moves the nonconformity-score distribution; a location/orthogonal shift needs a governed time-aware cohort, not a client-side reweight. This is the tier with no monograph and no Neptune analogue — the moat.