Description
Public Feature Request Intake turns a published roadmap Dotabase into a controlled submission channel. A visitor can preview similar published requests using bounded free text, then submit a title and optional body after proving identity through a Dots session or verified email. The preview creates nothing and searches only rows already visible through the publication.
When no duplicate exists, the API creates one row in the resolved Roadmap Dotabase’s hidden Under Review lane. Company, target Dotabase, and creator coordinates come from the publication rather than the request body. The new request stays invisible to published views until an operator deliberately moves it into a visible lane.
Selling Points
- Captures customer demand directly into the team’s working roadmap instead of creating a disconnected feedback inbox.
- Shows similar published requests before submission, reducing duplicate backlog and directing attention to existing ideas.
- Keeps unreviewed submissions hidden by default, preserving editorial control over the public roadmap.
- Reuses verified public identity for abuse resistance without forcing every contributor into a full account.
- Can include public reaction tallies with duplicate matches, helping visitors support an existing request instead.
User Story
A visitor begins typing a request on a published roadmap. Dots previews similar visible items and their vote counts. If one matches, the visitor can support it instead. If none does, they verify their email and submit. The team receives one new row in the private Under Review lane and can edit, reject, or publish it through normal Dotabase workflow.
Extension Surface
This feature is configurable. A compatible publication determines the target Roadmap Dotabase and visible rows, while packages/api/src/routes/roadmap-requests.ts exposes preview and submit endpoints. Operators configure the publication and review workflow. The destination property key and under_review option are fixed to the shipped roadmap contract; clients cannot choose arbitrary tenant or lane coordinates.
Capabilities & Limits
- Searches visible published rows for similar requests without writing.
- Creates one bounded request after session or verified-email admission.
- Injects tenant/creator server-side and lands submissions in a hidden review lane.
- Optionally attaches reaction tallies to duplicate previews when reactions are enabled.
- Limit: this is specialized to the Roadmap publication shape and its
under_reviewlane.
Implementation Map
packages/api/src/routes/roadmap-requests.tspackages/api/src/routes/public.tspackages/api/src/public/identity.tspackages/api/src/routes/reactions.ts