Commit graph

  • f6ddaca14f feat(settings): credential store + fix Task 6 blocking review issues pyr0ball 2026-03-22 15:31:45 -0700
  • 06e9a9d1be docs: add UI switcher implementation plan; fix switch-back mechanism in spec pyr0ball 2026-03-22 14:30:43 -0700
  • 9488613957 docs: add UI switcher design spec (v0.7.0) pyr0ball 2026-03-22 14:07:58 -0700
  • e63473360e feat(settings): System tab — services, email, integrations, paths, deployment pyr0ball 2026-03-22 13:25:38 -0700
  • bce997e596 feat(settings): System tab — services, email, integrations, paths, deployment pyr0ball 2026-03-22 13:25:38 -0700
  • acda1e8f5a fix(settings): system tab review fixes pyr0ball 2026-03-22 12:01:55 -0700
  • 5afb752be6 fix(settings): system tab review fixes pyr0ball 2026-03-22 12:01:55 -0700
  • 0d17b20831 feat(settings): System tab — LLM backends, BYOK gate, store + view pyr0ball 2026-03-22 07:26:07 -0700
  • 7af0366330 feat(settings): System tab — LLM backends, BYOK gate, store + view pyr0ball 2026-03-22 07:26:07 -0700
  • 91874a176c fix(settings): search prefs review fixes pyr0ball 2026-03-22 07:21:10 -0700
  • a38d9e5663 fix(settings): search prefs review fixes pyr0ball 2026-03-22 07:21:10 -0700
  • c358d8c470 feat(settings): Search Prefs tab — store, view, API endpoints, remote preference filter pyr0ball 2026-03-21 03:09:51 -0700
  • 2200d05b5c feat(settings): Search Prefs tab — store, view, API endpoints, remote preference filter pyr0ball 2026-03-21 03:09:51 -0700
  • 837881fbe8 fix(settings): address resume tab review issues pyr0ball 2026-03-21 03:04:29 -0700
  • 92bd82b4c9 fix(settings): address resume tab review issues pyr0ball 2026-03-21 03:04:29 -0700
  • 4b0db182b8 feat(settings): Resume Profile tab — store, view, API endpoints, identity sync pyr0ball 2026-03-21 02:57:49 -0700
  • 56857dc989 feat(settings): Resume Profile tab — store, view, API endpoints, identity sync pyr0ball 2026-03-21 02:57:49 -0700
  • c4a58c7e27 fix(settings): final code quality fixes for My Profile tab pyr0ball 2026-03-21 02:53:29 -0700
  • 6093275549 fix(settings): final code quality fixes for My Profile tab pyr0ball 2026-03-21 02:53:29 -0700
  • 2937c1b0fa fix(settings): spec compliance gaps in My Profile tab pyr0ball 2026-03-21 02:40:17 -0700
  • 3bcc08c080 fix(settings): spec compliance gaps in My Profile tab pyr0ball 2026-03-21 02:40:17 -0700
  • 86454a97be fix(settings): address profile tab code quality issues pyr0ball 2026-03-21 02:37:53 -0700
  • d3b4ed74bb fix(settings): address profile tab code quality issues pyr0ball 2026-03-21 02:37:53 -0700
  • a8b16d616c fix(settings): profile tests assert sync-identity; add load/save_user_profile helpers pyr0ball 2026-03-21 02:31:39 -0700
  • da7d305588 fix(settings): profile tests assert sync-identity; add load/save_user_profile helpers pyr0ball 2026-03-21 02:31:39 -0700
  • b8eb2a3890 feat(settings): My Profile tab — store, view, API endpoints pyr0ball 2026-03-21 02:28:14 -0700
  • 1ef418ba00 feat(settings): My Profile tab — store, view, API endpoints pyr0ball 2026-03-21 02:28:14 -0700
  • 81b87a750c fix(settings): async guard awaits config load, reactive devTierOverride, validate APP_TIER pyr0ball 2026-03-21 02:23:10 -0700
  • 32a83d6ff4 fix(settings): async guard awaits config load, reactive devTierOverride, validate APP_TIER pyr0ball 2026-03-21 02:23:10 -0700
  • e7d6dfef90 feat(settings): foundation — appConfig store, settings shell, nested router pyr0ball 2026-03-21 02:19:43 -0700
  • 05a737572e feat(settings): foundation — appConfig store, settings shell, nested router pyr0ball 2026-03-21 02:19:43 -0700
  • 5e22067ab5 chore: ignore .superpowers/, docs/superpowers/, pytest-output.txt; untrack plan/spec files pyr0ball 2026-03-21 00:55:17 -0700
  • 4ac9cea5a6 chore: ignore .superpowers/, docs/superpowers/, pytest-output.txt; untrack plan/spec files pyr0ball 2026-03-21 00:55:17 -0700
  • a7303c1dff feat(survey): show job picker when navigating to /survey with no id pyr0ball 2026-03-21 00:49:55 -0700
  • 3bfce5e6ef feat(survey): show job picker when navigating to /survey with no id pyr0ball 2026-03-21 00:49:55 -0700
  • e94c66dce1 fix: SurveyView history reactivity, timer cleanup, accessibility pyr0ball 2026-03-21 00:31:31 -0700
  • 80999b9e7b fix: SurveyView history reactivity, timer cleanup, accessibility pyr0ball 2026-03-21 00:31:31 -0700
  • ff45f4f6a8 feat(survey): implement SurveyView with navigation wiring pyr0ball 2026-03-21 00:27:57 -0700
  • 4bea0899db feat(survey): implement SurveyView with navigation wiring pyr0ball 2026-03-21 00:27:57 -0700
  • 7b634cb46a fix: survey store quality issues — loading in fetchFor, source guard, saveResponse failure test pyr0ball 2026-03-21 00:21:21 -0700
  • ea23845c23 fix: survey store quality issues — loading in fetchFor, source guard, saveResponse failure test pyr0ball 2026-03-21 00:21:21 -0700
  • ac8f949a19 feat(survey): add survey Pinia store with tests pyr0ball 2026-03-21 00:17:13 -0700
  • 80ed7a470a feat(survey): add survey Pinia store with tests pyr0ball 2026-03-21 00:17:13 -0700
  • afa462b7f5 fix(survey): validate mode input and handle malformed base64 in save endpoint pyr0ball 2026-03-21 00:14:39 -0700
  • 595035e02d fix(survey): validate mode input and handle malformed base64 in save endpoint pyr0ball 2026-03-21 00:14:39 -0700
  • 0f21733e41 feat(survey): add 4 backend survey endpoints with tests pyr0ball 2026-03-21 00:09:02 -0700
  • 75163b8e48 feat(survey): add 4 backend survey endpoints with tests pyr0ball 2026-03-21 00:09:02 -0700
  • a8ff406955 docs: add survey Vue SPA implementation plan pyr0ball 2026-03-20 22:57:59 -0700
  • 437a9c3f55 docs: add Survey Assistant Vue SPA design spec pyr0ball 2026-03-20 22:43:57 -0700
  • b1a32ab207 fix: contacts fetch error degrades partially, not full panel blank pyr0ball 2026-03-20 19:16:03 -0700
  • e4f4b0c67f fix: contacts fetch error degrades partially, not full panel blank pyr0ball 2026-03-20 19:16:03 -0700
  • 8479f79701 fix: aria-label binding, dead import, guardAndLoad network error handling pyr0ball 2026-03-20 18:57:41 -0700
  • fc645d276f fix: aria-label binding, dead import, guardAndLoad network error handling pyr0ball 2026-03-20 18:57:41 -0700
  • 1cee73e233 fix: hide Prep button on hired stage cards pyr0ball 2026-03-20 18:51:18 -0700
  • 048edb6cb4 fix: hide Prep button on hired stage cards pyr0ball 2026-03-20 18:51:18 -0700
  • e6385b4c7e feat: implement interview prep view with two-column layout pyr0ball 2026-03-20 18:48:38 -0700
  • e89fe51041 feat: implement interview prep view with two-column layout pyr0ball 2026-03-20 18:48:38 -0700
  • 7693abf79d fix: guard generateResearch against POST failure, surface partial fetch errors pyr0ball 2026-03-20 18:44:11 -0700
  • 3aed304434 fix: guard generateResearch against POST failure, surface partial fetch errors pyr0ball 2026-03-20 18:44:11 -0700
  • ff0dd8b3cd refactor: use existing useApi composable in prep store, remove duplicate pyr0ball 2026-03-20 18:40:33 -0700
  • dc21e730d9 refactor: use existing useApi composable in prep store, remove duplicate pyr0ball 2026-03-20 18:40:33 -0700
  • de69140386 feat: add prep store with research polling pyr0ball 2026-03-20 18:36:19 -0700
  • 44adfd6691 feat: add prep store with research polling pyr0ball 2026-03-20 18:36:19 -0700
  • 71480d630a refactor: use _get_db() pattern in get_research_brief, fix HTTPException style pyr0ball 2026-03-20 18:32:02 -0700
  • 0ef8547c99 refactor: use _get_db() pattern in get_research_brief, fix HTTPException style pyr0ball 2026-03-20 18:32:02 -0700
  • a29cc7b7d3 feat: add research and contacts endpoints for interview prep pyr0ball 2026-03-20 18:18:39 -0700
  • dc158ba802 feat: add research and contacts endpoints for interview prep pyr0ball 2026-03-20 18:18:39 -0700
  • 26484f111c docs: add interview prep Vue implementation plan pyr0ball 2026-03-20 18:00:07 -0700
  • 0e1dd29938 docs: add interview prep Vue SPA design spec pyr0ball 2026-03-20 17:46:05 -0700
  • 347c171e26 fix: prefer HTML body in imap_sync, strip head/style/script, remove 4000-char truncation pyr0ball 2026-03-20 13:35:30 -0700
  • b9ef1f631e fix: prefer HTML body in imap_sync, strip head/style/script, remove 4000-char truncation pyr0ball 2026-03-20 13:35:30 -0700
  • 51f5b3f0a0 fix: bootstrap digest store on app mount for correct badge count on load pyr0ball 2026-03-20 10:27:13 -0700
  • 8c3c0340ff fix: bootstrap digest store on app mount for correct badge count on load pyr0ball 2026-03-20 10:27:13 -0700
  • 5621140a72 fix: add error feedback and keyboard accessibility to DigestView pyr0ball 2026-03-20 10:16:24 -0700
  • dd790615e0 fix: add error feedback and keyboard accessibility to DigestView pyr0ball 2026-03-20 10:16:24 -0700
  • 8302b58b20 feat: add DigestView with expand/extract/queue UI pyr0ball 2026-03-20 10:12:45 -0700
  • d624bc5d77 feat: add DigestView with expand/extract/queue UI pyr0ball 2026-03-20 10:12:45 -0700
  • 247f807e02 fix: bind aria-label on nav badge span (was static string, not template expression) pyr0ball 2026-03-20 10:10:10 -0700
  • 394261cde1 fix: bind aria-label on nav badge span (was static string, not template expression) pyr0ball 2026-03-20 10:10:10 -0700
  • 165811c420 feat: add Digest tab to nav and router pyr0ball 2026-03-20 10:07:12 -0700
  • 16b0e51654 feat: add Digest tab to nav and router pyr0ball 2026-03-20 10:07:12 -0700
  • 154f691334 style: use void instead of .catch on fire-and-forget digest-queue call pyr0ball 2026-03-20 10:06:04 -0700
  • d76e74c200 style: use void instead of .catch on fire-and-forget digest-queue call pyr0ball 2026-03-20 10:06:04 -0700
  • 4246e71061 feat: fire digest-queue add call from digest chip handler pyr0ball 2026-03-20 09:58:16 -0700
  • 4cf1e53901 feat: fire digest-queue add call from digest chip handler pyr0ball 2026-03-20 09:58:16 -0700
  • 9bf14fbc75 fix: add error rollback and error state hygiene in digest store pyr0ball 2026-03-20 09:56:22 -0700
  • 30d668f692 fix: add error rollback and error state hygiene in digest store pyr0ball 2026-03-20 09:56:22 -0700
  • 4c2a08057c feat: add digest Pinia store pyr0ball 2026-03-20 09:52:52 -0700
  • bc4d6df8f0 feat: add digest Pinia store pyr0ball 2026-03-20 09:52:52 -0700
  • f3e7f89e2e style: pass Path(DB_PATH) to insert_job for type consistency pyr0ball 2026-03-20 09:51:35 -0700
  • dcd41d74fc style: pass Path(DB_PATH) to insert_job for type consistency pyr0ball 2026-03-20 09:51:35 -0700
  • 1b2643675d feat: add queue-jobs and delete digest endpoints pyr0ball 2026-03-20 07:44:19 -0700
  • 12ff809bd5 feat: add queue-jobs and delete digest endpoints pyr0ball 2026-03-20 07:44:19 -0700
  • 5bb3674fea fix: guard extract_digest_links db.close(), remove domain-in-path false positive, add hint assertion pyr0ball 2026-03-20 07:04:24 -0700
  • 4873201242 fix: guard extract_digest_links db.close(), remove domain-in-path false positive, add hint assertion pyr0ball 2026-03-20 07:04:24 -0700
  • 182ab789df feat: add /extract-links endpoint with URL scoring pyr0ball 2026-03-20 06:59:26 -0700
  • aee8038be9 feat: add /extract-links endpoint with URL scoring pyr0ball 2026-03-20 06:59:26 -0700
  • 7993984af9 fix: guard db.close() in add_to_digest_queue with try/finally pyr0ball 2026-03-20 06:54:50 -0700
  • b718439c54 fix: guard db.close() in add_to_digest_queue with try/finally pyr0ball 2026-03-20 06:54:50 -0700
  • a503ecde3b feat: add GET/POST /api/digest-queue endpoints pyr0ball 2026-03-20 02:51:17 -0700