Next up
5Committed and queued
Add 4 week window notice to reports
Trade partner reports - excluding the schedule calendar - only show tasks for the next 4 weeks. Without knowing this, trade partners may think that they do not have any upcoming tasks. Update reports that have this time window to have a note at the bottom to call this out. When there are no tasks on the report, add a note if there are no tasks or if there are no tasks within the window.
Print QR Code without opening a new tab
When printing a QR code from the lot details page, I want clicking on the button to go straight to print instead of opening a new tab to print.
attachng schedule templates
I would be convenient if a schedule template could be attached under edit section for an individual lot. Right clicking in the overall schedule does not work on a MacBook pro.
Go to previous page after maintenance mode ends
When TPTM is in maintenance mode, it goes to /maintenance in the URL. Even if maintenance mode ends, refreshing the page still shows the maintenance error. Update the behavior so that when maintenance mode ends, you go back to the page you were looking at before or the home page.
Translate reports into different languages
Give an option to view reports in other languages like Spanish. Once someone has chosen a different language, remember their selection.
In Progress
2Actively being built
Field app: help-center "Mobile App" collection — install, sign-in, working offline, what "applied on sync" means, photos and walks on the phone
Goal Customer documentation ships in the same PRs as the features (Help Center Documentation Gate), but the collection itself needs creating once: a "Mobile App" collection in Featurebase (mcp__featurebase__create_collection), then pnpm docs:sync:pull to materialise docs/help-center/mobile-app/collection.json (IDs never hand-written). Articles (via help-center-writer, IDs reserved with pnpm docs:sync:new): Installing the field app; Signing in and choosing your builder; Working offline and the sync indicator; "Applied when you're back online" (pay points, buyer photos); Lot walks on your phone; Photos on your phone; Troubleshooting sync (retry, discard, full resync). Existing articles that now describe the web only (Field View 1572819, Lot walkthroughs 3699906, Lot details 3797710) get a "On the mobile app…" section. Acceptance criteria [ ] Collection exists and is committed; pnpm docs:sync and pnpm docs:audit pass (Overview → tasks → FAQ shape). [ ] Every in-app "Learn more" link in apps/mobile points at a reserved article id. [ ] Article URLs listed in this issue.
Featurebase messenger + changelog widget dominates client-side pageload cost on the lot detail route
Found while investigating TPTM-3215 (lot detail page perf audit). Not fixed as part of that PR — filing as a follow-up. Evidence (Sentry spans dataset, tptm project, 7d/30d windows, lot detail route): ~6 Featurebase requests fire per pageload: sdk.js — p95 1.17s widget/config — p95 1.46s changelog/widget/config — p95 1.30s conversations/list — p95 1.33s tickets/list 2 CSS files This is the single biggest client-side contributor to pageload time on the route — bigger than any of the route's own data fetching. Suggestion: defer Featurebase SDK boot behind an idle callback or first user interaction instead of loading it eagerly on every app pageload. Related to TPTM-3215.
Completed
14Recently shipped
Reassign Tasks to Trade Partner
🎯 Goal: Re-assign some or all of the existing tasks for that trade to the new trade partner. 🤕 Current Pain: To re-assign tasks for one trade to a new trade partner, you have to edit each task and make the assignment. ✔️ Requirements Tool available at the community level Controls over which tasks are assigned from one trade partner to another Move all Select by lot Select by trade partner Individual selection override
Add file link to communities
Communities should have an optional link to store files like lots.
Make Trade Partner Dropdown Searchable
Update the trade partner dropdown in the start and next apps so that they are searchable. When making them searchable, instead of matching anywhere in the string, just do a case insensitive match from the beginning. Create component tests to validate this expected behavior.
Help center: five orphan placeholder articles sit in Featurebase with no content — write or delete them (one duplicates a live article)
What pnpm docs:sync:pull surfaces five articles that exist in Featurebase but had never been committed. All five are abandoned docs:sync:new reservations, not dashboard-authored content — every one carries the literal placeholder body … — draft. Replace this body before merging. , is state: "draft", and has no icon. They were committed to the repo in PR for TPTM-3407 (commit 7ab044ebd) so the debt is visible and tracked rather than re-surfacing on every pull. Committing them did not resolve them — the repo now carries five articles whose source of truth says "Replace this body before merging". | id | title | collection | | -- | -- | -- | | 2617421 | Connect Claude to TPTM | builder-configuration | | 8347566 | AI Connectors | builder-configuration | | 9982008 | Connect Perplexity to TPTM | builder-configuration | | 6660540 | On-screen Messages | user-guides | | 1505935 | Manager View | tracking-progress | The duplicate 1505935 "Manager View" duplicates a live article. The real one is 3991535-manager-view — 136 lines, a full description, an icon, state: "live", in the same tracking-progress collection. 1505935 is a 12-line placeholder that was reserved with almost the same title and never filled in. It should be deleted, not written. Two of its titles would otherwise compete in help-centre search and in the AI support assistant's corpus the moment anyone flipped it live. Why this needs a human Deleting an article is a Featurebase dashboard action — the sync deliberately cannot do it, and docs/help-center/README.md records that deleting the file only produces an "orphan" report. So each of the five needs a decision: 1505935 — delete in the dashboard, then git rm the file. (Recommended; it duplicates 3991535.) 2617421 / 8347566 / 9982008 — the three AI-connector articles look like genuinely planned work. Either write them or delete them. 6660540 "On-screen Messages" — no description either; decide whether this is still wanted. Acceptance criteria [ ] Each of the five is either written (real body + description, passing pnpm docs:audit --id ) or deleted in the Featurebase dashboard with its file removed from the repo. [ ] 1505935 specifically is resolved against 3991535 rather than written as a second Manager View article. [ ] pnpm docs:sync:pull afterwards produces no untracked placeholder files. Notes Pre-existing, unrelated debt found in the same sweep, NOT part of this ticket: _uncategorized/0218204 and _uncategorized/1311207 are both "Understanding Lot Holds" with real (duplicated) content, and admin-portal/8847914 is titled "This is the title" with Featurebase's own element-reference body. Those are already committed and have their own history.
Lots not marked as walked properly
Users are reporting lots not staying marked as walked. This affects the field, view, lot list on the community page, and daily reports.
Duplicate templates showing old tasks when using to schedule
After duplicating a template and changing the tasks, when going to use that template to schedule a task, the old, deleted tasks are appearing.
Fantom navigation highlight
The field view is partially highlighted in the side navigation menu when another item is actually selected.
Highlight Today in Schedule Timeline by Default
In the Overall Timeline Schedule, highlight today’s column by default even when I refresh the page or come back to the page later after changing the highlight date.
Assign multiple trades to a trade partner
Allow trade partners to be used for multiple trades
Alert for when te projected close changes
Add a configurable alert for when a projected close changes with the reason.