Skip to content

Harden TimePrism project showcase - #2

Merged
Air000000 merged 117 commits into
mainfrom
chore/harden-project-showcase
Sep 20, 2026
Merged

Air000000 merged 117 commits into
mainfrom
chore/harden-project-showcase

Conversation

@Air000000

@Air000000 Air000000 commented Sep 8, 2026 •

Copy link
Copy Markdown
Owner

Scope

Hardens the public TimePrism desktop app for a release candidate, covering database/tracking lifecycle, Idle attribution, Windows DPI behavior, Home goal editing, packaging validation, and the final Yin Yue desktop-pet presentation.

Implemented

  • cleaned Tauri starter metadata and strengthened SQLite lifecycle / legacy migration coverage;
  • corrected fresh category seeds while narrowly repairing only known mojibake values in existing databases;
  • added persisted first-run tracking consent and persisted Pause/Resume semantics;
  • removed the DB/WebView startup race and kept startup fail-closed;
  • improved Idle correction and explicit usage provenance (FOREGROUND / IDLE_CONFIRMED);
  • added safer analytics / privacy / reminder / tracking regression coverage;
  • fixed the Windows high-DPI pet prompt clipping;
  • added monitor-adaptive pet sizing/zoom for mixed-resolution and mixed-DPI displays;
  • restored editable Home “今日目标” duration with immediate reactive progress updates and debounced persistence;
  • changed goal reads to read-only semantics so periodic refresh no longer schedules unnecessary writes;
  • replaced the previous pet presentation with the Yin Yue spritesheet;
  • added Yin Yue drag animation and left/right docking/resting presentation;
  • retained the existing pet reminder / Idle correction / tracking interactions;
  • upgraded Windows CI and NSIS + MSI validation packaging.

Final candidate

Final PR candidate HEAD:

511b9800dcef34326a664636d81edb9e30aca18b

The final Yin Yue work is four commits ahead of the previously validated hardening head 758b4d0 and contains that hardening history in full.

Local validation

Validated on Windows with Node 24 and pnpm 9.15.9:

  • pnpm run typecheck ✅
  • pnpm run build:check ✅
  • Vite production build ✅
  • Rust unit tests: 55 passed / 0 failed ✅
  • Home goal contract tests: 2 passed / 0 failed ✅
  • Pet DPI contract tests: 2 passed / 0 failed ✅
  • doc tests ✅

Known non-blocking warnings remain for unused imports (Manager, ForegroundSnapshot).

Manual Windows smoke

Manual smoke on the final Yin Yue branch completed successfully:

  • TimePrism launches correctly;
  • Yin Yue pet is rendered instead of the previous character;
  • Home goal editor is visible and usable;
  • final desktop UI was visually checked on Windows;
  • user reported no blocking issue in the release-candidate smoke.

Release gate

This PR should merge only after GitHub CI and Windows installer packaging are green for the final HEAD above.

After merge to main:

  1. verify the merged main commit;
  2. create and push tag v0.1.0;
  3. the existing Windows Release workflow will validate synchronized versions, run tests, build NSIS/MSI installers, and create a Draft GitHub Release;
  4. inspect the generated draft/assets before publishing.

The app is currently unsigned, so Windows SmartScreen may report an unknown publisher.

Fold the approved compact Idle attribution behavior and explicit usage provenance into the hardening branch after Windows CI #137 passed with 52 Rust tests.
@Air000000
Air000000 marked this pull request as ready for review September 20, 2026 04:38
@Air000000
Air000000 merged commit dab6695 into main Sep 20, 2026
2 checks passed
@Air000000
Air000000 deleted the chore/harden-project-showcase branch September 20, 2026 06:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant