## Layr-Labs/d-inference — v0.9.17…v0.9.18

_49 commits._

### Features
- **feat(provider): default sampled MTP acceptance to typical (#1376)** (25a4e5f)
- **Add per-model typical MTP draft acceptance for sampled requests (#1204)** (fa4cf3e)
- **Add GDPR account erasure: plan, soft delete, grace, scrub (#1332)** (1dfe22f)
- **Add soft-delete columns and erase-path indexes (#1331)** (829730b)
- **feat(devnet): bind dev-installed providers to their coordinator and add seed data (#1330)** (2763aca)
- **feat: add Resend provider update campaigns (#1111)** (f3bd7a1)
- **Add Open Sales Program with 5% consumer referral rewards (#859)** (8fb501d)
- **feat(coordinator): report connected Autopilot model inventory (#1342)** (3242ae3)

### Fixes
- **fix(routing): consolidate idle recovery, exploration pricing and backoff (#1371)** (b5c12ab)
- **fix(api): omit caller identifiers from provider inference requests (#1211)** (16823b5)
- **fix(provider): honor TMPDIR for anonymous metallib snapshots (#1322)** (b81b2bd)
- **fix(coordinator): keep personal data out of process logs (#1327)** (470a86d)
- **fix(store): refund rejected Stripe withdrawals when the coordinator clock is ahead (#1352)** (cc13623)
- **fix(cache): report allowlist entries a model revision left stale (#1348)** (bf3dc67)
- **fix(console): reject oversized composed chat requests before send (#1313)** (38f81ef)
- **fix(coordinator): bound non-streaming provider response retention (#1297)** (3f20f33)
- **fix(scripts): stage test metallib into every xctest bundle (#1346)** (9d67309)
- **fix(memory): add free-only admission for shared hosts (#1264)** (4b41daf)
- **fix(provider): wait for launchd service removal before replacement (#1315)** (ae642f6)
- **fix(console): persist authenticated small-model interest (#1316)** (f9f2b41)
- **perf(registry): reduce scan allocation and duplicate evidence work (#1345)** (5b7a675)
- **fix(store): keep timed-out debit statements uncommitted (#1336)** (34f0e6d)
- **perf(registry): cut avoidable per-candidate cost in the provider scan (#1340)** (c5552d3)
- **fix(coordinator): keep canceled waiters out of the dispatch queue (#1314)** (48d2be4)
- **Fix empty leaderboards caused by timed-out earnings queries (#1320)** (1794b57)

### Backend
- **Prepare 14-day operational retention and asynchronous history queries (#1197)** (f57a671)
- **Prepare 0.9.18 release and safeguard coordinator upgrades (#1372)** (cd16716)
- **Deliver the account erasure outbox to Stripe and Datadog (#1333)** (5f63c8f)
- **Generate the api_keys store queries with sqlc (#1329)** (7a0d4c1)
- **Apply the coordinator schema as goose migrations (#1328)** (dccc9ee)
- **Package nightly Linear workflow and teammate setup (#1355)** (e097b94)
- **Freeze legacy MDM eligibility and require App Attest for base rewards (#1344)** (3ca05b0)

### Tests
- **test(api): add offline OpenRouter conformance and scenario gates (#1210)** (2258cd5)
- **test(routing): add closed-loop starvation simulation for idle evidence (#1262)** (4a106f5)
- **test(provider): consolidate Swift coverage and lifecycle suites (#1253)** (55b5ad5)
- **test(routing): add evidence boundary and invariant tests (#1260)** (ec03360)
- **test(registry): respect scan and commit snapshot ages (#1343)** (bc1ee16)
- **test: make drain settlement assertion deterministic (#1312)** (c56b98e)

### Docs
- **docs: acknowledge third-party libraries (#1363)** (c6d343b)
- **docs(design): relink first-content dispatch code map after #1324 (#1351)** (6dde0be)
- **docs: require clean code and a subagent refactor before PRs (#1338)** (d3de4b4)

### Chore
- **build: pin MLX to the gather_mm and gather_qmm row-tile backport (ml-explore/mlx #4567, #4572) (#1237)** (8296802)
- **chore(deps): bump the go_modules group across 1 directory with 2 updates (#1362)** (0ef31a1)
- **ci: report coordinator e2e statement coverage and raise unit test coverage (#1274)** (35ab6fc)
- **ci: reduce wasted Mac runner time without dropping tests (#1347)** (8714e56)
- **ci: scope the coordinator and sidecar coverage summaries (#1252)** (b52b393)
- **ci: run expensive PR checks only for relevant component changes (#1339)** (a70fcdb)
- **refactor(coordinator): reorganize domain ownership and storage backends (#1324)** (59080eb)
- **ci: budget advisory threat reviews and retain incremental feedback (#1300)** (9233f9a)

_Recap by [Repo Wrapped](https://repowrapped.com/gh/Layr-Labs/d-inference?utm_source=github-action)._