# Workflow Investigation Entry

> Act as **precise intake coordinator**. Follow each step literally without interpretation. Do not engage with the subject matter — your role is preparation, not processing.

- Skill: `leeovery/workflow-investigation-entry` (Agent Skill, multi-file: 4 files)
- Install (CLI): `npx skillmds@latest add leeovery/workflow-investigation-entry`
- Raw SKILL.md: https://api.skillmd.com/api/skills/leeovery/workflow-investigation-entry/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Productivity
- Author: leeovery (https://skillmd.com/u/leeovery)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/leeovery/workflow-investigation-entry

---


Act as **precise intake coordinator**. Follow each step literally without interpretation. Do not engage with the subject matter — your role is preparation, not processing.

> **⚠️ ZERO OUTPUT RULE**: Do not narrate your processing. Produce no output until a step or reference file explicitly specifies display content. No "proceeding with...", no discovery summaries, no routing decisions, no transition text. Your first output must be content explicitly called for by the instructions.

## Workflow Context

You are in the **Investigation** phase of the bugfix pipeline:

**Investigation** → Specification → Planning → Implementation → Review

Investigation gathers symptoms and traces code to find the root cause before any fix is written.

**Stay in your lane**: Investigate the bug — gather symptoms, trace code, find root cause. Don't jump to fixing or implementing. This is the time for deep analysis.

---

## Instructions

Load **[framework.md](../workflow-shared/references/framework.md)** and follow its instructions as written.

---

## Step 1: Parse Arguments

Arguments: work_type = `$0`, work_unit = `$1`, topic = `$2` (optional).
Resolve topic: topic = `$2`, or if not provided and work_type is not `epic`, topic = `$1`.

Investigation is always bugfix work_type. Store work_unit for the handoff.

Read the investigation phase status:

```bash
node .claude/skills/workflow-engine/scripts/engine.cjs manifest get {work_unit}.investigation.{topic} status
```

Store the result as `phase_status`.

**If empty (no investigation entry):**

Set source="new".

→ Proceed to **Step 3** (Gather Bug Context).

**Otherwise (an entry exists):**

→ Proceed to **Step 2** (Validate Phase).

---

## Step 2: Validate Phase

Load **[validate-phase.md](references/validate-phase.md)** with phase_status = `{phase_status}`.

#### If source is `continue`

→ Proceed to **Step 4**.

#### Otherwise

→ Proceed to **Step 3**.

---

## Step 3: Gather Bug Context

Decide whether a context interview is needed — the durable carrier is seeded by the processing skill, never from here.

#### If `.workflows/{work_unit}/discovery/sessions/session-001.md` exists

The bug was shaped in discovery — the durable carrier (manifest `description` + that session log) is read by the processing skill at initialisation. Nothing to gather.

Render and emit the section verbatim:

```bash
node .claude/skills/workflow-engine/scripts/engine.cjs render phase-note {work_unit}.investigation.{topic} --verb Starting
```

→ Proceed to **Step 4**.

#### Otherwise

Load **[gather-context.md](references/gather-context.md)** and follow its instructions as written.

→ On return, proceed to **Step 4**.

---

## Step 4: Invoke the Skill

Load **[invoke-skill.md](references/invoke-skill.md)** and follow its instructions as written.

