Skip to main content

max / goingson

chore: move todo.md to private layer (gitignored)
Author: Max Johnson <me@maxj.phd> · 2026-06-05 00:22 UTC
Commit: 1f67d32f04a976efc31547af360ecb11550c3948
Parent: 4afb22a
2 files changed, +3 insertions, -44 deletions
M .gitignore +3
@@ -25,3 +25,6 @@ src-tauri/gen/apple/assets/_up_/
25 25
26 26 # Claude Code instructions (project-local; not for the public repo)
27 27 CLAUDE.md
28 +
29 + # Private working files — live in _private/, synced via Syncthing
30 + todo.md
D todo.md -44
@@ -1,44 +0,0 @@
1 - # GoingsOn TODO
2 -
3 - ## Launch readiness — IN PROGRESS (target 2026-06-01 slipped; correctness over deadline)
4 -
5 - ### §3.2 distribution — NEXT, blocks launch
6 - - Signed builds + notarization stapled + DMG smoke test on a clean macOS account.
7 - - Build on fw13 (x86_64) and astra (aarch64) natively per the no-cross-compile rule.
8 - - macOS notarization via altool key in `_private/`.
9 - - Smoke test: install DMG on a clean macOS user account, launch, verify Gatekeeper passes, run the welcome flow, exit, relaunch.
10 - - iOS TestFlight: re-check the appiconset alpha-flatten step (required every iOS build per memory).
11 -
12 - ### §3.1 mobile UI mode hardening — DEFERRED
13 - - `index.html:18-57` `?ui=mobile` prod lockdown. Same item as §K Phase 6; blocks on a desktop-mobile distribution channel existing.
14 -
15 - ### §3.4 fuzz pass — DONE 2026-05-31
16 - Four-axis parallel audit (rust-fuzz + use-fuzz + creator-fuzz + ux-audit). Launch-critical fixes committed pre-launch; deferred items closed 2026-06-02 (commits `7421ead`, `9719e28`). One cosmetic item left: `db_watcher.rs:61` shutdown latency = `MIN_EVENT_INTERVAL_MS`, thread unjoinable. Not worth fixing.
17 -
18 - ### §3.3 repo hygiene — DONE 2026-06-02
19 -
20 - ---
21 -
22 - # GoingsOn CSS Dedup — DONE (2026-05-24)
23 -
24 - Charter + primitive vocabulary lives at the top of `src-tauri/frontend/css/styles.css`. Always rebuild after changes:
25 - ```
26 - cd src-tauri/frontend && ./build-css.sh
27 - ```
28 -
29 - All consolidation sweeps closed. Outcomes:
30 -
31 - - **A. Buttons** — 14 bespoke `*-btn` classes migrated to `.btn` family (intents/sizes/variants); 2 deleted as dead code. Remaining bespoke (`.view-toggle-btn`, `.kebab-btn`, `.shortcut-hint-btn`, etc.) are slim markers on top of canonical `.btn` and are correct as-is.
32 - - **B. Form inputs** — `.header-input`/`.header-select` migrated to `.form-input--ghost`/`.form-select--ghost`; `.quick-add-input` was dead code, deleted. `.filter-select` kept (distinctive UX cue).
33 - - **C. Cards** — `.email-list`, `.contact-info-section`, `.review-card`, `.kanban-card` migrated to `.card` + variants (`--shell`/`--muted`/`--static`). `.dashboard-column` and `.contact-summary-stat` kept page-scoped.
34 - - **D. Badges** — 9 task-status bespoke badges replaced with composable `chip(color, text)` helper emitting `.badge.badge--xs.badge--filled[data-color="X"]`. New `--xs`/`--sm`/`--filled` modifiers.
35 - - **E. Avatars** — `.avatar` primitive promoted with `--sm`/`--lg`/`--unknown`; all 5 bespoke contact-avatar rules deleted.
36 - - **F. Status dots** — reviewed, skip. Three variants (`.sync-dot`, `.sync-status-dot`, `.tab-status-dot`) have meaningfully different animation timing; unifying would lose nuance for <10 lines saved.
37 - - **G. Toggles** — clean. `.toggle-switch` is the only on/off primitive; `<summary>`-style disclosures are a different pattern.
38 - - **H. Empty states** — clean. `.empty-state` + variants are the only surface.
39 - - **I. Globals relocation** — `.kbd-hint` moved into §12; `.visually-hidden` already removed.
40 - - **J. Tier 3** — mobile section consolidation superseded by §K; V1/V2 weekly review resolved (§49 trimmed 326→106 lines); print consolidation done (§52 folded into §48).
41 - - **K. UI Mode Separation** — set once at boot via `<html class="ui-mode-mobile|desktop">`. 8 viewport media queries → 0. Phases 1–5 complete; full notes in `ui_mode_separation_plan.md` + `css_state_audit.md`.
42 -
43 - ### §K Phase 6 — open, blocked
44 - - [ ] Inject `__GO_BUILD_MODE__` at build time to gate `?ui=mobile` override branches against production tampering. Defer until a production mobile-only desktop-binary distribution channel exists. (TestFlight iOS is its own binary; no override risk there.)