reconnaissance · git:20260428.7880d2d · 2026-04-28 · sha256 56c6fe0545281179

reconnaissance git:20260428.7880d2dA

Immutable. This exact content is served forever at /api/v1/blob/56c6fe0545281179.

---
name: reconnaissance
description: Use when beginning a new heist — deploys associates to survey the target codebase, existing tests, dependencies, documentation, and the ledger to produce a reconnaissance dossier for the don's review
---

# Reconnaissance: Intel and Environment Mapping

## Overview

Every Heist begins with gathering intel. The Underboss deploys Associates to perform a detailed survey of the target codebase and infrastructure. The output is a Reconnaissance Dossier that informs all subsequent phases.

## Trigger

Invoked when the Don expresses building or creative intent.

## Process

### Step 1: Analyze Intent

The Underboss parses the Don's request to identify:
- **Objective:** What is being built or changed?
- **Scope:** Which parts of the system are affected?
- **Constraints:** Any explicit requirements or limitations?

### Step 2: Deploy Associates

Dispatch Associate subagents in parallel to gather intel.

**Subagent type:** Use `subagent_type: "associate"` for all Associate dispatches. Do NOT use `"general"` or `"general-purpose"` — these are not valid in a Gangsta installation.

| Associate Task | What to Survey |
|---------------|---------------|
| Codebase Structure | File tree, key directories, framework detection, entry points |
| Existing Tests | Test files, coverage areas, test framework, passing/failing status |
| Dependencies | package.json / requirements.txt / go.mod etc., versions, known issues |
| Documentation | README, existing specs, API docs, inline documentation |
| Ledger Search | Search `docs/gangsta/insights/` and `docs/gangsta/fails/` for entries with tags matching the objective |
| Constitution | Read `docs/gangsta/constitution.md` for applicable Commandments and Negative Constraints |

### Step 3: Synthesize Dossier

Compile Associate reports into a structured Reconnaissance Dossier.

## Dossier Format

Save to: `docs/gangsta/<heist-name>/recon/YYYY-MM-DD-recon-dossier.md`

```markdown
---
heist: <heist-name>
date: YYYY-MM-DD
status: pending-review
---

# Reconnaissance Dossier: <Heist Name>

## Objective
<What the Don wants to build/change>

## Codebase Overview
<Key files, directories, frameworks, patterns discovered>

## Existing Test Coverage
<What's tested, what's not, test framework and run command>

## Dependencies
<Key dependencies, versions, any concerns>

## Relevant Ledger Entries

### Applicable Insights
- <insight reference + summary>

### Applicable Negative Constraints
- NEVER <constraint> — Source: fails/YYYY-MM-DD-<topic>.md

## Risks and Unknowns
<Anything that couldn't be determined, areas of concern>

## Recommended Scope
<Suggested boundaries for the Heist based on the intel>
```

### Step 4: Present to Don

**Autonomous Mode:** Do NOT present the proceed menu below and do NOT wait for human input. Invoke `gangsta:don-proxy` to review the Dossier. On APPROVE: auto-advance directly to the-Grilling (The Grilling is mandatory in autonomous mode — there is no skip-Grilling path). On REJECT: abort; write the verdict to `autonomous-log.md` and leave the heist directory in place. The proceed menu is for the default (gated) Heist only.

Otherwise (default Heist):

Save the Dossier file (Step 3), then present its contents to the Don in chat.

**DO NOT include the proceed menu in the dossier file.** The menu is a chat message only — output it as plain text after presenting the dossier summary.

**MANDATORY GATE — THE SIT-DOWN IS NON-NEGOTIABLE:**

The Sit-Down (spec drafting and Contract signing) is a mandatory phase. It CANNOT be skipped under any circumstances. The Don may only choose whether The Grilling runs before it — never whether The Sit-Down runs at all.

**NEVER offer, suggest, or accept a path that goes directly to The Hit or Resource Development without The Sit-Down first.** If the Don requests to skip The Sit-Down, explain that the Contract is required before any implementation work begins and re-present the menu below.

The proceed menu MUST use exactly this format — do not paraphrase, abbreviate, or add options:

```
How do you want to proceed?

  1. Approve the dossier + run The Grilling → Multi-agent debate on architecture, then The Sit-Down
  2. Approve the dossier + skip The Grilling → Proceed directly to The Sit-Down (spec drafting)
  3. Adjust scope — Add/remove anything from the phases before we commit
  4. Request more intel — Deploy Associates to dig deeper into a specific area
```

Wait for the Don's explicit choice before taking any action.

- Choice 1 → Invoke `gangsta:the-grilling`, then `gangsta:the-sit-down`
- Choice 2 → Invoke `gangsta:the-sit-down`
- Choice 3 → Clarify scope changes, update the dossier, re-present
- Choice 4 → Deploy targeted Associates, update the dossier, re-present

There are no other valid choices. Any path not listed above is a violation of Omerta Law 5 (Spec is Law).

## Checkpoint

Write checkpoint after the Don approves (choices 1 or 2):
```yaml
---
heist: <heist-name>
phase: reconnaissance
status: completed
timestamp: <ISO 8601>
next-action: <"Proceed to The Sit-Down" | "Proceed to The Grilling">
artifacts:
  - docs/gangsta/<heist-name>/recon/YYYY-MM-DD-recon-dossier.md
---
```

## Omerta Compliance
- [ ] Introduction Rule: Associates dispatched by Underboss, reports collected by Underboss
- [ ] Rule of Availability: Dossier and checkpoint saved to files
- [ ] Rule of Truth: All dossier claims cite specific files, line numbers, or Ledger entries
- [ ] Spec is Law: Proceed menu presented exactly as specified — no options added, removed, or paraphrased
- [ ] Mandatory Gate: The Sit-Down is never skipped — no path leads directly to The Hit or Resource Development