Skip to content

Research Flow

TL;DR

Use Research Flow when you need grounded project research before making a technical decision. The workflow does four things in order. It loads project context, writes a focused research prompt, waits for you to approve that prompt, then runs the approved prompt and finalizes the research document. The prompt approval gate matters because it defines what the research will answer, what evidence it will seek, and what is out of scope.

When To Use This Workflow

When Not To Use This Workflow

Before You Start

How To Start

Research OAuth 2.0 implementation options for our stack and compare the tradeoffs.
Investigate whether our order service should use event sourcing or stay CRUD based.
Research authentication patterns for microservices in this project and recommend what fits our current architecture.

How Rosetta Shapes This Workflow

Workflow At A Glance

Phase What you provide What agents do What you get Review gate
1. Context load Research request Read CONTEXT.md, ARCHITECTURE.md, IMPLEMENTATION.md; load project context; update state Loaded project context; updated research-flow-state.md No
2. Prompt craft Research request plus project context Write the optimized research prompt; save it to the feature plan folder; update state research-prompt.md Yes. You must approve the prompt before research runs
3. Execute research Approved research-prompt.md Run the approved research pass in a dedicated researcher subagent; update state docs/feature-research.md No additional gate defined in the workflow
4. Finalize Completed research document Finalize the research document; mark state complete Finalized docs/feature-research.md; completed research-flow-state.md No additional gate defined in the workflow

Workflow Overview

flowchart TD
  A["User asks for project research"] --> B["Phase 1<br/>Load CONTEXT.md, ARCHITECTURE.md, IMPLEMENTATION.md"]
  B --> C["Update research-flow-state.md"]
  C --> D["Phase 2<br/>Write research-prompt.md"]
  D --> E{"User approves<br/>research prompt?"}
  E -- "No, revise" --> D
  E -- "Yes" --> F["Phase 3<br/>Run approved research prompt"]
  F --> G["Create docs/feature-research.md"]
  G --> H["Phase 4<br/>Finalize research document"]
  H --> I["Mark research-flow-state.md complete"]

  style A fill:#dbeafe,stroke:#1d4ed8,color:#0f172a
  style B fill:#dcfce7,stroke:#16a34a,color:#14532d
  style C fill:#dcfce7,stroke:#16a34a,color:#14532d
  style D fill:#fef3c7,stroke:#d97706,color:#78350f
  style E fill:#fee2e2,stroke:#dc2626,color:#7f1d1d
  style F fill:#dbeafe,stroke:#1d4ed8,color:#0f172a
  style G fill:#dcfce7,stroke:#16a34a,color:#14532d
  style H fill:#fef3c7,stroke:#d97706,color:#78350f
  style I fill:#dcfce7,stroke:#16a34a,color:#14532d

Interaction Flow

sequenceDiagram
  participant U as User
  participant R as Rosetta instructions
  participant A as Coding agent
  participant S as Researcher subagent
  participant F as Artifacts

  U->>A: Ask for project research
  R->>A: Enforce prep, context load, HITL, and workflow routing
  A->>S: Phase 1 context load
  S->>F: Update research-flow-state.md
  S->>F: Write research-prompt.md
  A->>U: Present research prompt for approval
  U-->>A: Approve or request changes
  alt Prompt approved
    A->>S: Execute approved research prompt
    S->>F: Create docs/feature-research.md
    S->>F: Finalize document and mark state complete
    A->>U: Deliver finalized research document
  else Prompt not approved
    A->>S: Revise research-prompt.md
    S->>F: Update prompt and state
    A->>U: Present revised prompt
  end

Phases

Phase 1. Context load

Goal

Load the project context that should constrain the research.

What you provide

What the agent does

What you get

Phase 2. Prompt craft

Goal

Turn the research request into an optimized prompt that is specific enough to drive useful research.

What you provide

What the agent does

What you get

What to watch for

Phase 3. Execute research

Goal

Run the approved prompt as the basis for the research pass.

What you provide

What the agent does

What you get

Phase 4. Finalize

Goal

Finish the research document and close the workflow state.

What you provide

What the agent does

What you get

How To Review Results

Review the research prompt before you approve it. That is the main control point in this workflow.

For research-prompt.md, verify:

For docs/feature-research.md, verify:

If either artifact is wrong, respond with precise comments. Do not approve vague or misframed research prompts, because the rest of the workflow depends on that approved prompt.

Workflow-Specific Customization

Research Flow improves sharply when you provide the evidence Rosetta needs to narrow the question.

Shared Rosetta customization, IDE rules, and MCP guidance already live in Usage Guide - Customization. This page only covers what changes research quality for this workflow.

Artifacts You Will Get

Common Mistakes

Source Files