AX: Discovery DAG Q&A Interviews

Passing an unclear request into an agent runtime forces the model to predict unverified constraints across multiple turns of corrective steering. When a prompt contains ambiguity that requires clarification, running a Discovery Directed Acyclic Graph (DAG) Q&A interview with ax-discovery-dag resolves open questions upfront and compiles a clear specification before execution begins.

When to use this Skill

When a user submits an unclear request that contains ambiguity and requires clarification, the user or agent triggers ax-discovery-dag dynamically before executing downstream work. Starting from that single unclear request, the agent interviews the user across dependency-ordered rounds until zero open questions remain and compiles a standalone Goal, Decisions & Scope Boundaries, Acceptance Criteria, and Task Table.

Design Philosophy

Most agentic issues happen because of ambiguity in the initial prompt - unstated branching assumptions that only emerge halfway through execution, while dumping twenty upfront questions forces a human to answer paths that never end up mattering. By pairing an investigative journalist persona with a live mutable DAG, the agent can plan pointed branching questions ahead of time to improve the quality of the interview it conducts by following ax-discovery-dag. The agent asks only unblocked questions each round, prunes irrelevant branches and lets settled topics exit early, and tunes the the user's chat UX (1. numbering resets, independent % confidence scores, and a zero-handshake spec handoff) so you lock down the plan before spending execution effort.

Inside the Round-Grouped Discovery DAG

Rather than forcing every topic through a rigid sequence, ax-discovery-dag models Discovery DAG Q&A interviews as a true Directed Acyclic Graph grouped by round: a resolved question with no remaining dependencies jumps straight to the final specification (like Round 1.1 below), while a complex dimension branches into multiple follow-up sub-questions (like Round 1.3). After each reply, the interviewer locks in finished answers, removes pruned paths and old states, and runs a Convergence Self-Examination until zero ambiguity remains.

Investigative Mechanics & Questioning Rules

In Operating Charters, we saw that assigning a specialized professional role anchors token predictions in expert domain distributions. To clarify ambiguous requests across any domain, ax-discovery-dag casts the runtime as a Senior Investigative Journalist specializing in the exact field the user is discussing:

Protocol RuleInterface Design MechanicUX & AX Benefit
Dynamic Field Journalist PersonaAdopts the funnel interview method while matching the exact domain vocabulary of the user's request.Keeps the skill domain-agnostic while maintaining high-density analytical precision.
Non-Linear Round-Grouped DAGsBranches parent questions into multiple sub-questions when needed, routes settled branches straight to the Specification, and drops pruned nodes.Keeps interviews focused on open ambiguity without forcing settled topics through filler rounds.
Per-Round 1. Numbering ResetRestarts numbering at 1. every round and cites *Follow-up to Round X, Question Y* beneath each dependent heading.Lets the user reply with auto-incrementing Markdown lists (1., 2., 3.) instead of typing alphanumeric IDs.
Adaptive Parallel PacingAsks all unblocked questions for the active round in parallel, keeping normal rounds to 4 or fewer and expanding only when needed.Prevents serial round bloat while accommodating unclear requests that branch across many dimensions.
Independent [##% Recommendation] ScoresFormats options as * **A. {Title} - `[##% Recommendation]`** {Description} with independent 0% - 100% scores and an Other escape hatch.Surfaces the interviewer's confidence on each path (e.g., 90% and 80% for two strong options) while allowing full override.
Direct Specification HandoffRuns a Convergence Self-Examination, omits a redundant final DAG and status prefixes in Decisions & Scope Boundaries, allows None in Non-Goals, and ends after the Task Table.Delivers a clean, execution-ready PRD without forcing an extra confirmation turn.

The ax-discovery-dag Skill (SKILL.md)

Drop this SKILL.md file into your workspace to resolve unclear requests through Discovery DAG Q&A interviews:

markdown
---
name: ax-discovery-dag
description: Process document for resolving an unclear user request through a round-grouped Directed Acyclic Graph (DAG) of clarifying questions. Mount this skill exclusively when a user asks to be interviewed, or gives an unclear request that contains ambiguity and requires clarification before execution
---

# Skill: Discovery DAG Q&A Interview (`ax-discovery-dag`)

## Role & Investigative Framing

Act as a Senior Investigative Journalist specializing in the exact field the user is discussing. Treat the user's unclear request as a lead containing ambiguity and unstated dependencies, and conduct a structured, multi-round discovery interview using a Directed Acyclic Graph (DAG) of clarifying questions until the specification is unambiguous and execution-ready.

## Operational Sequence

Execute this three-stage sequence:

1. **Stage 1: Initial Discovery DAG & Round 1 Questions**
   * Analyze the unclear request alongside available workspace context to isolate every point of ambiguity, then map the root clarifying questions (`Round 1`) and their dependent follow-up questions (`Round 2`, `Round 3`, and so on).
   * Render a Mermaid `flowchart TD` diagram organized into distinct subgraph groupings by round (`Round 1`, `Round 2`, `Round 3`, and so on), branching parent questions into multiple sub-questions where needed and routing settled branches directly to the final Specification node.
   * Present the **Round 1 Questions** using the **DAG & Questioning Guardrails** below.
2. **Stage 2: Lock-and-Mutate Loop (Subsequent Rounds)**
   * When the user replies, first run a **Convergence Self-Examination** to determine whether any existing downstream questions remain unblocked or whether the user's answers exposed new ambiguity that opens follow-up branches.
   * When questions remain, lock in the completed round's answers, mutate downstream questions to reflect the user's choices or custom `Other` pivots (branching into multiple sub-questions or routing settled branches directly to the final Specification node), and strip all pruned questions and superseded pre-mutation states from the graph.
   * Render the updated round-grouped Mermaid DAG (containing only **Locked-In Decisions** from prior rounds and **Active / Upcoming Questions** for current and future rounds), then ask the next round of questions starting at `1.`.
3. **Stage 3: Convergence & Inline Specification Handoff**
   * When the Convergence Self-Examination confirms zero unblocked questions and zero remaining ambiguity, skip rendering a final DAG.
   * Output a brief **Convergence Self-Examination** summary confirming all branches resolved, emit the standalone **Specification** inline using the template below, and end the turn immediately after the Task Table to await further instructions.

## DAG & Questioning Guardrails

* **Round-Grouped Graph Hygiene:** Group nodes into separate round subgraphs (`Round 1`, `Round 2`, `Round 3`, and so on). Branch a parent question into multiple downstream sub-questions whenever an answer surfaces independent dimensions, and route any fully resolved question straight to the final Specification node instead of adding filler follow-ups. Show only locked-in decisions and active/upcoming questions - remove pruned branches and old question states completely.
* **Per-Round Numbering Reset (`1.`, `2.`, `3.`):** In every round, restart question numbering at `1.` so the user's markdown list replies auto-increment cleanly in their input box.
* **Explicit Follow-Up Citations:** For every question after Round 1, include an italic subtitle beneath the numbered heading linking it to its parent node: `*Follow-up to Round X, Question Y ([Brief summary of prior question/answer])*`.
* **Adaptive Pacing:** Ask all currently unblocked questions for the active round in parallel. Under normal conditions, keep each round to 4 questions or fewer. When an unclear request contains ambiguity across many independent dimensions, expand beyond 4 questions.
* **Option Formatting & Independent Confidence Scores:**
  * Format every multiple-choice option as: ``* **A. {Title} - `[##% Recommendation]`** {Description}``
  * Score each option independently (`0% - 100%`) based on investigative confidence in that path (multiple strong options may simultaneously carry high scores such as `90%` and `80%`).
  * Always provide ``* **[Last Letter]. Other - `[Custom Input]`** Type in your own unique answer.`` as the final choice on every question.
* **Proactive Reference Gathering:** When workspace files, docs, or user replies establish relevant source paths or URLs during clarification, cite them in the final Task Table's `References` column.

## Stage 3 Output Specification Template

Emit the final compiled document as a clean, authoritative specification. Write every entry in **Decisions & Scope Boundaries** as a direct requirement without status prefixes, keep **Non-Goals** lightweight (write `None` when zero ambiguity remains), and end the turn immediately after the Task Table to await further instructions:

```markdown
# Specification: [Title]

## Goal
[Cohesive executive goal statement with the upgraded, zero-steering execution prompt woven directly into the narrative so any human reader or agent runtime can execute the objective on the first pass.]

## Decisions & Scope Boundaries
* **[Decision Domain]:** [Clear specification requirement established during discovery.]
* **Non-Goals:** [Optional out-of-scope boundaries, or `None` when zero ambiguity remains.]

## Acceptance Criteria
* [Concrete, testable condition verifying the specification is satisfied.]

## Task Table
| Name | Detailed Description | References |
| :--- | :--- | :--- |
| **1. [Task Name]** | [Detailed breakdown of the work required for this step.] | `[File paths, URLs, or doc references]` |
| **2. [Task Name]** | [Detailed breakdown of the work required for this step.] | `[File paths, URLs, or doc references]` |
```

Want to audit how your workspace performed after executing a specification? Pair this Discovery DAG Q&A interview with Context Interviews (ax-context-interview) to triage post-task friction, or explore the complete AX Engineering Series Hub.