feat(app): add a tasks page - #142
Open
GuzmanPintos wants to merge 2 commits into
Open
Conversation
The dashboard's only task surface filtered on `dueAt < now`, so a task saved without a due date — the default in the composer — was invisible everywhere but its own record timeline. Adds a paginated tasks list on the same DataTable stack as the other record pages, replacing the unused `activities.myTasks` procedure, and lets a task's text and due date be edited after it is saved. Task due dates are stored as UTC-midnight calendar days so a window filter means the same thing regardless of the viewer's timezone.
|
@GuzmanPintos is attempting to deploy a commit to the Comp AI - PoC Team on Vercel. A member of the Team first needs to authorize it. |
Contributor
There was a problem hiding this comment.
All reported issues were addressed across 35 files
Tip: instead of fixing issues one by one fix them all with cubic
Re-trigger cubic
GuzmanPintos
force-pushed
the
gp/tasks-page-upstream
branch
from
August 14, 2026 20:20
c764426 to
d34ff00
Compare
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.
Tasks have a page now: Open tasks on the dashboard, or Tasks in the sidebar. It's a normal table, same as Deals. Filter by when something's due or who added it, switch between Open and Done, tick one off without leaving the row, click a row to open whatever it hangs off. You can also edit a task after saving it from the record's timeline, both the text and the due date, and a due date can be cleared now rather than only replaced.
Why: a task you add on a contact with no due date just vanishes. The dashboard only ever showed tasks already past due, and an undated one never is, so the only place it existed was that contact's timeline. Undated is the normal case, too. The date picker doesn't appear until you switch the composer over to Task, and nothing makes you use it. The dashboard card stays as it is. The page is where the rest of them live, undated included, under the No due date filter.
Creating a task still happens on a timeline rather than on this page, since it has to hang off a company, contact or deal.
Screenshots

Dashboard - "Open tasks" button following "Open deals" next to it
Tasks page

Edit a task

Summary by cubic
Adds a paginated Tasks page with search, facets, sorting, and inline complete/edit; switches task due dates to calendar-day strings so due windows are consistent by viewer “today”. Previously, undated tasks were invisible outside timelines; the page now surfaces them and timeline tasks can be edited in place.
activities.myTaskswithactivities.tasksreturning{ rows, total, facetCounts }, supportingq, pagination, sorting, and facets:status(open/done),due(overdue/today/week/later/none), andcreatedBy; requirestodayto compute windows.activities.updateto edit a task’ssubjectanddueAtwith validation;dueAtis a calendar day (YYYY-MM-DD) or null, not an instant.dueAtasYYYY-MM-DD.dashboard.summarynow requirestodayand returns overdue taskdueAtas a day string./tasksroute and rail item; table with tabs (Open/Done), facets (Due, Added by), search, sorting, pagination; inline complete; row click opens the linked record; timeline task editor with day picker; viewer‑day context and relative day labels; dashboard “Open tasks” button.Required migration actions
activities.myTaskscalls withactivities.tasks.today(YYYY-MM-DD) toactivities.tasksanddashboard.summary.dueAtas a day string (YYYY-MM-DD) or null.activities.updateto edit existing tasks.Written for commit 47ba82a. Summary will update on new commits.