v0.3.0
Install
Download the .zip, unzip, and drag mill.app to Applications — no build needed. The app is not Apple-notarized, so the first launch is blocked with "Apple could not verify…" — click Done (not Move to Trash), then System Settings → Privacy & Security → scroll to the mill message → Open Anyway (one time only; on pre-Sequoia macOS, right-click → Open works instead). Terminal alternative: xattr -d com.apple.quarantine /Applications/mill.app. Verify the download came from this repo's CI: gh attestation verify <the .zip> -R alicoding/mill. Prefer building from source? git clone + the README's few commands work on any Mac.
What's Changed
- docs: close goal 0045 — v0.2.0 live, cadence rule locked by @alicoding in #89
- fix: install notes match current-macOS Gatekeeper flow by @alicoding in #90
- docs: goal 0046 queued — schema evolution without breaking history by @alicoding in #91
- docs: goal 0047 queued — node audience/complexity facet by @alicoding in #92
- docs: goal 0043 pickup — mechanism already built; registry entry added by @alicoding in #93
- feat: cmd+shift+bracket aliases for tab cycling by @alicoding in #94
- feat: unsaved-changes close guard for canvas tabs (goal 0048) by @alicoding in #95
- docs: queue goals 0049-0051 (docs anti-rot, structure audit, analytics v2) by @alicoding in #96
- docs: goal 0044 — far-side bridge requirements captured by @alicoding in #97
- docs: queue goal 0052 — contract maturity (generated schema + versioned envelope) by @alicoding in #98
- docs: goal 0052 — import/export symmetry, schema per envelope by @alicoding in #99
- docs: goal 0052 — root contract document + filterable node discovery by @alicoding in #100
- docs: queue goal 0053 — step vocabulary, sequenced before 0052 by @alicoding in #101
- docs: queue goal 0054 — step designer + declare-vs-code boundary by @alicoding in #102
- docs: goal 0044 — JIT scratch-capture dry-run scenario by @alicoding in #103
- docs: goal 0044 — diagram round-trip verdict by @alicoding in #105
- docs: goal 0044 — boundary guard on scratch-capture gaps by @alicoding in #106
- fix: updater matches macos-named release assets; version drift gated by @alicoding in #104
- docs: queue goals 0055-0056 — canvas notes, workbench boundary by @alicoding in #107
- feat: apply-file-write node -- scratch-capture apply step (goal 0044) by @alicoding in #108
- docs: goal 0044 scenario-1 dry run -- six named gaps recorded by @alicoding in #109
- feat: user-facing vocabulary says step, not node (goal 0053) by @alicoding in #110
- docs: goal 0057 queued -- live-sync audit (no reload, ever) by @alicoding in #112
- fix: runs panel updates live -- run start/completion emit mill-data-changed by @alicoding in #111
- fix: live-sync completeness -- run lifecycle emits + hotkey/keybinding vocabulary (goal 0057) by @alicoding in #113
- docs: goal 0057 delivered -- live-sync audit archived by @alicoding in #114
- chore: regenerate dataevent bindings doc comment by @alicoding in #115
- release: v0.3.0 -- close guard signed off, goal 0048 archived by @alicoding in #116
Full Changelog: v0.2.0...v0.3.0