Shipped
- Recency-weighted tier calculation -- events count
0.5xtoward tier for the first 7 days after MIR receives them; full weight thereafter. This closes a path where a batch of backdated events could instantly satisfy tier thresholds. Steady-state event flow is unaffected -- in normal operation, almost all events count at full weight. The policy/evaluate debug response now includeseffectiveEventCountandeffectivePartnerEventCountalongside the raw counts, so the recency weighting is directly inspectable. - EU compliance documentation pack -- new pages at
/dpa(Data Processing Addendum, GDPR Article 28 with SCC Module 2/3 incorporated by reference),/sub-processors(current sub-processor list with change-notification commitment), and/incident-response(severity classification, 24h/72h/30d notification timelines, GDPR/DORA/NIS2 cooperation framework). Linked from the LEGAL footer block on both .com and .org.
Improved
- Integration-guide actor-vocabulary clarifier -- the integration guide now spells out the difference between event-level
actorType(HUMAN|AGENT|UNKNOWN, uppercase) and policy-levelactor.type(human|service, lowercase). The enterprise API doc now shows a copy-pasteable request body for/policy/evaluate, with the canonical actor shape inline. Fewer first-call 400s for new integrators. - AI-citation discoverability --
robots.txtnow serves dynamically per domain with the correct sitemap URL, and explicitly permits ClaudeBot, GPTBot, PerplexityBot, Google-Extended, and Applebot-Extended on public pages. Disallow rules for auth and API endpoints unchanged. - Social-share preview alignment --
og:imagemeta tags now match the request's host on both .com and .org, so previews on LinkedIn / X / Slack load images from the same domain as the URL being shared. Completes the pair with the earlierog:urlalignment.