Commit Graph

4 Commits

Author SHA1 Message Date
Leopere 4f900f1ea4
Release: 674ca5f9d765089eacb0b61bfc546ba1146e3e8a0f5380ba4f66ad6ac2bd5ed8
Harden SHA normalization in AutoUpdater and install.command.
Add redeploy-local.sh convenience script and update README.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-08 16:53:40 -05:00
Leopere 65114fc265
Fix update logic: SHA+timestamp from git over HTTPS, persist after swap
- Fetch SHA and Last-Modified from repo over HTTPS (no login); use timestamp
  so 'update' only when server is newer, not just different.
- Local state: two-line file (SHA + Unix timestamp); script writes state
  after successful swap so it stays correct.
- install.command: fetch remote via HTTPS, stamp SHA+timestamp (or 0 if
  install not matching remote).
- build-test: verify first line of state file matches release SHA.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-08 16:04:56 -05:00
Leopere 129e839f8d
Add SHA256-based auto-update mechanism
- New `make release` target generates Pommedoro.dmg.sha256 alongside the DMG
- AutoUpdater.swift checks the remote SHA256 against the local stamp on launch
  and prompts the user to update when a mismatch is detected
- install.command stamps the SHA256 of the source DMG at install time
- "Check for Updates…" menu item (Cmd+U) for manual checks
- Fix break screen close buttons to resume instead of showing work log
- Migrate worklog.log storage to ~/Library/Application Support/Pommedoro/

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-08 15:42:48 -05:00
Leopere 0d2ef2eedc
Add work log, pause/resume UX, countdown schedule, timer persistence, suggestion improvements, and ad-hoc code signing
- Work log with CSV persistence and SwiftUI history view
- Pause/resume support with timer state persistence across app restarts
- Countdown pulse schedule: 5→3min at 1/min, 3→1min every 30s
- Intent pre-fill from suggestions with improved suggestion matching
- Overlay window and break screen refinements
- Ad-hoc code signing with runtime hardening and entitlements
- DMG includes Install.command that strips quarantine on install
- README install instructions for non-technical users with Gatekeeper workaround
- build-test.sh simulates download quarantine to verify fix
- CHANGELOG and README updates

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-07 18:06:10 -05:00