{"headline":{"description":"We predict which pump.fun mints will graduate, in their first 60 seconds.","high_confidence_band":"≥70% grad_prob","high_confidence_hit_rate_7d":{"age_30s_predictions":"54% graduated (n=1,215) — earliest actionable entry","age_60s_predictions":"62% graduated (n=2,120) — refined call, slightly worse entry","comparison_baseline":"~3% base rate of any random pump.fun mint = ~18× lift at age 30s"},"alert_threshold_fixed":0.7,"verify_endpoint":"/api/ledger/commits","disclaimer":"NFA. DYOR. graduate-oracle outputs calibrated probability scores from a model. Alerts describe model output, not financial advice. Pump.fun is high-risk; positions can go to zero. You are responsible for your trades."},"predictions":{"graduation_prob":{"description":"Calibrated probability that the mint reaches the bonding-curve graduation threshold (vSOL ≥ 115). Live base rate ~5% on in-lane mints. Display layer surfaces this as HIGH/MED/LOW ranking buckets (grad_prob_bucket field); absolute probability available for sizing decisions. The bare 'X% to graduate' framing was retired at the Gate 5 calibrated-GBM cutover (2026-05-06): the deployed k-NN's score scale was a model-scale artifact, not a probability claim. Calibrated GBM is anchored to the live base rate via an isotonic regression layer trained on dual-write resolved outcomes.","valid_window_s":60,"calibrated":true,"calibration_layer":"isotonic_v1","label_source":"vsol_threshold_115","live_base_rate":"~5% on in-lane mints","display_recommendation":"Use grad_prob_bucket (HIGH/MED/LOW) as the headline; show calibrated probability + base rate as supporting context. Avoid bare 'X%' framing — the number means '~X% likely to graduate' only AFTER the isotonic layer; raw GBM scores (grad_prob_gbm_shadow) are model-scale artifacts.","bucket_method":"Bimodal-aware: when the calibrated distribution has a hard ceiling (single calibrated value with ≥1% mass — currently the case due to limited isotonic training-data resolution at the upper tail), HIGH = above-ceiling outliers, MED = at-ceiling AND raw_GBM ≥ 97th percentile of raw scores, LOW = otherwise. When training data accumulates enough to smooth the upper tail (no value clears 1% mass), the daemon automatically falls back to standard percentile cutoffs (HIGH = top-1%, MED = top-5%). Live mode + values visible in /api/status under bucket_cutoffs.bucket_logic_mode. See docs/research/bucket_cutoffs_bimodal_finding.md."},"rug_prob":{"description":"Probability of a single trade ≥40% drop within first 5 minutes (devil candle).","valid_window_s":60,"calibrated":true,"label_source":"trade_timeline_in_first_5min"},"runner_prob_2x_5x_10x_from_now":{"description":"Probability the mint peaks at N× from current price.","valid_window_s":300,"calibrated":"directional only — magnitude is non-stationary","label_source":"max_mult_observed","caveat":"Lane 13 audit (2026-05-05, rolling 24h windows): magnitude calibration shows non-stationary behavior across recent rolling windows. The 2x_from_now tier swung from -35pp over to +5pp under in 18 hours on the best-populated days, with ~5-35pp drift on most days and near-zero on others. The bias direction has historically flipped (Lane 7 full sample was OVERCONFIDENT; recent slices were UNDER-confident). Treat the field as a RANKING signal, not a literal probability. Recalibration tuning in progress (slowing rebuild cadence 15min → 90min per Lane 13's mechanism-2 fix); re-validation in 1 week. Consumers making sizing decisions on absolute magnitude should use ranking buckets (high / medium / low) rather than the raw value. See docs/research/lane13_calibration_stability.md."},"post_grad_survival_prob":{"description":"PERMANENTLY SUNSET 2026-05-08. Field returns {prob: null, status: 'sunset_lane_60s_structural_limit'}. The aggregate post_graduation.sustain_rate_30m on /api/accuracy continues — that's the independent Jupiter measurement, unaffected.","valid_window_s":null,"calibrated":"permanently sunset (2026-05-08); structural boundary documented after three model-class attempts","label_source":"jupiter_price_polling","caveat":"FINDING 7 chain complete (sunset 2026-05-08): three model-class attempts all failed pre-registered acceptance criteria. (Path C, max-scaling z-score on 5 dims) FAILED — 1e-6 floor on sparse dimensions exploded distances to 10^14. (Path D2, log-z-score on 2 continuous + binary post-filter) FAILED at small corpus then re-FAILED at n=901 by density collapse on dense (0,0,0)-signature corpus. (Path 7h, calibrated logistic regression with 15-feature interaction-term vector) FAILED CRIT 2 — model 1.22pp WORSE than per-signature baseline on the only minority signature with n>=30. Per pre-registered iteration-limit at the model-class level (frozen 2026-05-07), the feature is permanently retired. Structural finding: lane-60s sustain prediction is not viable from the available features given the signature distribution of resolved graduates. The aggregate post_graduation.sustain_rate_30m on /api/accuracy continues unchanged — that's the independent Jupiter measurement. Full receipts trail at github.com/Dspro-fart/graduate-oracle docs/research/post_grad_metric_broken_since_launch.md (Finding 7a-7i complete)."},"graduation_progress_pct":{"description":"Curve position — fraction of the bonding curve filled. Observed mechanical state, NOT a prediction. Pairs with grad_prob (which IS a prediction) for the 'where is it / where might it go' framing — do not sum or substitute.","valid_window_s":null,"calibrated":false,"label_source":"derived_from_current_vsol_sol","shape":"{pct: 0-100 | null, status: live | near | graduated | unknown}","formula":"max(0, min(100, (current_vsol_sol - 30) / 85 * 100))","caveat":"Naive vsol/115 would give 26% at fresh launches. The (vsol-30)/85 form anchors 0% at launch, 100% at graduation."},"creator_score":{"description":"Creator's track record across all observed launches.","valid_window_s":null,"calibrated":true,"label_source":"on_chain_backfill"}},"corpus":{"n_indexed_mints":164988,"n_resolved_outcomes":164556,"pct_on_chain_truth":0.8325},"out_of_scope":["lifetime trade-by-trade tracking of mature mints","slow-cook rug detection over hour-plus windows","post-graduation DEX price action beyond 30 minutes","real-time charting / OHLC aggregation"],"trade_capture_sla":{"window":"first_60s","target":"≥95%","verifier":"/api/observer_health  (samples 50 fresh mints every 15 min)"}}