Changelog
The canonical changelog lives in the simdrive repo:
simdrive/CHANGELOG.md.
This page mirrors the most recent entries; sync is currently manual.
[1.0.0b5] — 2026-05-22
Section titled “[1.0.0b5] — 2026-05-22”18-finding fix wave from b4 dogfood report. See CompanyState/research/simdrive-dogfood/b4/REPORT.md.
Highlights
Section titled “Highlights”- MCP server now self-restarts on disk-version drift (F#1)
- session_start detects launch-crash and returns crash report path (F#2)
- Ambiguous text-targets and stale text refs now surface alternates + fuzzy suggestions (F#5, F#6)
- SSIM compute auto-masks iOS status bar; recordings auto-include device-class masks (F#14, F#15)
verify_change: trueon tap returns screen_changed + ssim_delta (F#8)- apps() populates version from CFBundleShortVersionString (F#3)
- migrate-recording gains —all and —missing-contract flags (F#17)
- Plus 10 polish items: logs() raw mode, perf windowed sampling, list_replays filter, lint categorization, OCR alternates, confidence-band relabel, recording text dedup, type_text tap_first persistence, observe(annotate=False) marks
Full upstream entry: https://github.com/SyncTek-LLC/simdrive/releases/tag/simdrive-v1.0.0b5
1.0.0b1 — 2026-05-18
Section titled “1.0.0b1 — 2026-05-18”First beta release. Trial+paywall model live; bug-reproduction positioning. Six months of alpha development consolidated into a publishable, monetizable beta.
Added — Business model
Section titled “Added — Business model”- 14-day free trial —
simdrive trial start --email you@example.comissues an Ed25519-signed local license valid for 14 days, full Pro feature access. Email+machine SHA-256 de-dupe prevents infinite re-trials. - License authentication —
simdrive auth <license-key>redeems a Polar-issued production license. Writes to~/.simdrive/license.json, validates against the embedded public key. - Paywall enforcement on every MCP tool — all 32 MCP tools now gate on
check_entitlement(). After trial expiry,LicenseErroris raised with a structuredlicense_requiredenvelope (pricing_url,auth_command_hint,trial_command_hint) so the MCP client surfaces a copy-pasteable recovery path.
Added — Positioning
Section titled “Added — Positioning”- README, PyPI description, and
llms.txtrewritten around the bug-reproduction use case: “Reproduce and validate iOS bugs in 60 seconds with Claude.” Supporting capabilities (record/replay, journey runner, real device, perf baselines) get co-equal real estate.
Added — Release engineering
Section titled “Added — Release engineering”- New publish workflow: triggers on
simdrive-v*tag pattern, gates on version-match + CHANGELOG-head + non-live pytest + fresh-venv install smoke, publishes via PyPI Trusted Publisher (OIDC, no static token). - Production license-signing keypair rotated; private key bound to the
simdrive-license-apiCloudflare Worker for license issuance on Polar webhook events.
Changed
Section titled “Changed”- Test suite: autouse dev-trial fixture in CI; 949 tests passing, 74.77% coverage on hot-path modules.
- Security baseline: pinned
requirements.lock,pip-audit --strict, CodeQL Python, gitleaks all on every PR.
Removed
Section titled “Removed”- “no API key required” framing (contradicted the trial+paywall model).
1.0.0a13 — 2026-05-14
Section titled “1.0.0a13 — 2026-05-14”Record/replay parity on real device. The deferred a12 item ships: full
record/replay parity on target=device, plus a per-target state contract
that refuses to replay against the wrong device or OS major.
record_start/record_stop/replay/validate_replay/list_replaysflipped from(sim only)→(sim + device).- Device SSIM threshold: 0.80 (sim stays at 0.85). Halts loudly on drift — the dogfood “23 blind taps at SSIM 0.014” failure mode fails by 57× margin.
- State contract enforcement:
requires.target,requires.device.udid,requires.device.os_major,requires.app.bundle_idhalt on mismatch; os_version minor diff and device_name rename warn only. - New error codes:
replay_drift_detected,replay_state_contract_failed,marks_count_drift. - 20 new regression tests; 851 pass on merged suite.
Earlier versions
Section titled “Earlier versions”See simdrive/CHANGELOG.md
for full history (1.0.0a1 through current).