fix: surface upcoming tasks and cut ingest volume#17
Merged
Conversation
Capture/brief layer: - normalize: include not-yet-started task defs with a future start_date (plan-ahead brief) and rank/window by target_date instead of the hard due_date, so the strip matches what students see in OnTrack. Ingest volume & data hygiene: - injected.js: sweep only active (non-ended) units instead of every project the student has ever enrolled in. - background.js: dedup identical ingest payloads (SPA re-fetches the same data on every navigation), clearing the hash on a failed push. - ingest: per-username rate-limit key so one session can't starve others behind a shared proxy/gateway IP; skip project_tasks for inactive projects and prune tasks left behind by ended projects. Popup: - snapshot cache is now window-aware: a fresh 7-day cache no longer satisfies a 14-day (2-week) request, so the strip and task list fill the selected window. - TaskList empty-state reflects the actual window length.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Capture/brief layer:
Ingest volume & data hygiene:
Popup:
Summary
Related issue
Type of change
Checklist
mainruff check .passespytestpasses (if backend changes)npm run lintpasses inextension/(if extension changes).envfiles, tokens, or database filesNotes for reviewers