The default humanizer now actively substitutes AI-tell phrases (cutting-edge, paradigm shift, robust frameworks) instead of merely avoiding them. Detector endpoints became tier-aware to protect the Haiku + GPTZero budget.
·Live-tested: an AI sample drops from HIGH (0.73) to LOW (0.26) on the in-house detector.
·Abstract noun chains rewritten as verb + concrete noun.
·Rate limits per minute: anon 30 / free 60 / pro 120 on /api/detect and /api/detectors/check.
Surrogate-first detector scoring router
/api/detectors/check is now a single scoreText() call that walks a cost ladder: normalize → cache → classify → engine → surrogate → router → (rarely) a budget-gated live vendor call.
·Live vendor calls only fire when the in-house signal is uncertain AND near the pass-line AND the user is on Pro AND the daily vendor budget allows.
·Calibrated GPTZero surrogate (Pearson 0.87 on a 38-sample corpus) replaces the per-request live call by default.