ProductOSDocs

Workflows

Feedback triage

Keep the Inbox moving: tag, cluster, theme, and promote to features without losing context.

Feedback triage is the daily loop. Every other surface in ProductOS feeds off it. This guide is the opinionated default: the loop we recommend, the AI shortcuts that make it fast, and the failure modes we've seen.

The loop

Inbox → Triage → Cluster → Theme → Feature
StepDefault cadenceTime per item
Skim InboxDaily~10s
Triage a rowDaily~30s
Cluster into themesWeekly~5 min / batch
Promote a themeWeekly~2 min
File a featureWeekly~5 min

Daily: skim and tag

Open Feedback. The default list shows the active rows (new, under-review, planned, in-progress) newest first; click a pipeline chip to narrow to one status, and use the toolbar filters (created date, status, urgency, source, segment, account, product, module, persona) to narrow to what you actually need to triage.

For each row:

  1. Click the row to open the detail dialog.
  2. Tag: pick one or more from the picker. For rows with no tags, ProductSense's Suggest tags check (ProductSense cleanup) proposes 2–4 functional tags; the same model runs per row behind POST /api/ai/auto-tag (in-app session only, not API tokens).
  3. Source: if the row came from Intercom, the widget or the Feedback API, the source is set already. For manual / API entries, pick something specific (not Manual).
  4. Urgency: set the customer's urgency (low/medium/high/critical). Distinct from feature priority, see Feedback reference.
  5. Inside the dialog, ⌘↵ saves, ⌫ or Delete moves to trash, g AI-generates the description.

That's it for triage. Don't link to themes/features yet, batch that for the weekly cluster step.

The list shortcuts are c (new feedback) and p (open ProductSense over the visible page), the same as on every list page. See Keyboard shortcuts for the full list.

Weekly: cluster

Once a week, group the un-themed rows. On Feedback, open the ProductSense menu and run Suggest missing links (p runs every applicable check at once, which also works but takes longer). For each row without a theme you get a suggestion that either:

  • links it to an existing theme (with up to three candidates, switch between them with 1 / 2 / 3), or
  • creates a new theme, with a draft title and description you can edit (e) before applying.

Workflow:

  1. Read each draft. If the title is weak, edit it before applying; the title is what shows up on the roadmap.
  2. a applies the focused suggestion, x dismisses it, ⌘↵ / Ctrl+Enter applies everything visible.
  3. Each applied link writes the theme link immediately; a "create new" suggestion creates the theme and links the row in one step.

There is also an embedding-based clusterer behind POST /api/ai/cluster-themes: greedy single-link clustering on cosine similarity, default threshold 0.62, minimum cluster size 3, both tunable in the request body. It needs feedback embeddings (POST /api/ai/embed) and returns named clusters with their feedback IDs. It isn't wired into the Themes page; the route takes the in-app session, not API tokens.

Weekly: theme review

After clustering, open Themes and review the new ones. For each:

  • Is the title sharp? Edit if not.
  • What's the trend? The trend column (up | stable | down | growing | declining) gives a directional signal.
  • Does it map to an existing feature? If yes, link it from the theme's detail dialog. If no and it's clearly worth building, use the entity-context N F shortcut (New feature linked to entity) to spawn a new feature linked to this theme.

Per-cycle: feature filing

When you create a feature from a theme, the new feature is pre-linked to the theme. Add:

  • A spec body (description + acceptance criteria)
  • An owner / team allocation
  • Linked feedback for the customer voice

ProductSense's Polish descriptions and Align statuses checks help spot features that need tightening (Flag broad themes runs on themes and initiatives, not features).

Common pitfalls

  • Linking before describing: the link suggestions work from titles and descriptions; a row that's only a title gets weak matches. Run Polish descriptions first, or press g in the dialog to draft one.
  • Promoting every theme to a feature: some themes are signals, not work items. A theme that says "people use us at 9pm" is information for marketing, not a feature to file.
  • Hoarding the Inbox: feedback rows older than 30 days that are still untagged should be sent to trash. They're cognitive load, not data.
  • Skipping urgency: ProductSense's Triage urgency check will fill it in, weighing the linked account's ARR, segment and churn risk against the wording, but a row linked to no account or persona only gets a guess from the text.

Next

Last reviewed 2026-09-22