peregrine/app
pyr0ball 63ae008ec2 refactor(ui-switcher): narrow exception handling, remove duplicate profile loads, fix test isolation
- Add explanatory comments to all 5 bare except Exception blocks clarifying that UI components must not crash the app
- Refactor sync_ui_cookie() to load UserProfile once instead of up to 3 times in normal path
- Store profile reference and reuse it in tier downgrade protection block
- Replace importlib.reload() pattern in tests with unittest.mock.patch for _DEMO_MODE
- Improves test isolation and eliminates module state contamination across test runs
- All 5 tests pass (100%)
2026-03-22 16:05:53 -07:00
..
.streamlit chore: seed Peregrine from personal job-seeker (pre-generalization) 2026-02-24 18:25:39 -08:00
components refactor(ui-switcher): narrow exception handling, remove duplicate profile loads, fix test isolation 2026-03-22 16:05:53 -07:00
pages feat(e2e): add smoke + interaction tests; fix two demo mode errors 2026-03-17 07:00:54 -07:00
wizard refactor(tiers): replace importlib.reload with mock.patch in demo_tier tests 2026-03-22 15:52:03 -07:00
__init__.py fix: add app/__init__.py so wizard submodule is importable inside Docker 2026-02-25 21:41:09 -08:00
app.py feat(app): use reset_running_tasks() on startup to preserve queued tasks 2026-03-15 04:57:49 -07:00
cloud_session.py fix(e2e): cloud auth via cookie, local port, Playwright WebSocket gotcha 2026-03-17 20:01:42 -07:00
feedback.py fix: save form data to non-widget state on Next, fix disabled timing, pass page title 2026-03-03 15:17:45 -08:00
Home.py fix: keyword suggestions visibility, wizard identity autofill, dynamic sync label 2026-03-16 21:47:37 -07:00
telemetry.py feat(cloud): Privacy & Telemetry tab in Settings + update_consent() 2026-03-09 22:14:22 -07:00