Skip to content

fix: patch 10 bugs across brief pipeline, extension workers, and token/DB safety#19

Merged
Aarav261 merged 1 commit into
mainfrom
claude/background-workers-token-expiry-4q9rsg
Jul 1, 2026
Merged

fix: patch 10 bugs across brief pipeline, extension workers, and token/DB safety#19
Aarav261 merged 1 commit into
mainfrom
claude/background-workers-token-expiry-4q9rsg

Conversation

@Aarav261

Copy link
Copy Markdown
Owner

Summary

Related issue

Type of change

  • Bug fix
  • New feature
  • Refactor / cleanup
  • Documentation
  • Other:

Checklist

  • My branch is based on the latest main
  • ruff check . passes
  • pytest passes (if backend changes)
  • npm run lint passes in extension/ (if extension changes)
  • I added/updated tests where it makes sense
  • I did not commit secrets, .env files, tokens, or database files

Notes for reviewers

…n/DB safety

Backend:
- crypto.py: return None (not the raw enc:v1: string) on InvalidToken so callers
  know decryption failed instead of forwarding garbage to OnTrack
- db.py: null-guard fetchone()[0] in upsert_user for both PG and SQLite paths
- jobs.py: wrap run_brief() in top-level try/except so APScheduler never swallows
  a silent crash; check and log send_brief_to / send_briefs_enabled_email return values
- renderer.py: set stamp="recently" on ValueError instead of embedding raw DB string in HTML
- builder.py: add logging, use .get("project_id") with null guard, log bad deadlines
- routes/main.py: use r.get() for deadline/project_id in snapshot endpoint to avoid KeyError

Extension:
- background.js: move lastIngestHash.set() into the fetch .then() success handler so a
  failed push is never silently deduped on retry; promisify chrome.storage.local.get
  in the cookie handler for MV3 service-worker safety
- injected.js: remove stale request-header token fallback in XHR load handler (was
  rolling back lastToken to an older value on concurrent requests); add deferred sweep
  so sweepProjectTasks() fires once the first token arrives even if /api/projects
  was intercepted before any auth token was captured

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01F5KBH3tzb533sA4LxLYMUp
Copilot AI review requested due to automatic review settings June 30, 2026 23:39

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

@Aarav261 Aarav261 merged commit 6258b92 into main Jul 1, 2026
2 checks passed
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.

3 participants