Signal Detection Pipeline
Detect buying signals from multiple sources, qualify leads, and generate outreach context. This runbook monitors multiple buying-signal sources, combines the evidence into a prioriti
8 steps · start to finish.
- 1Step 1
Environment Setup
▶Create the output directory and capture the resolved run inputs before collecting signals.
mkdir -p /app/results /app/results/work cat > /app/results/work/run_inputs.json <<'JSON' { "results_dir": "/app/results", "client_solution": "<resolved client_solution>", "icp_criteria": "<resolved icp_criteria>", "signal_sources": "job postings,funding,conference attendance,reddit,linkedin", "time_window": "last 90 days", "max_leads": 50 } JSONIf
client_solutionoricp_criteriais not resolved, stop and writevalidation_report.jsonwith setup marked as failed. - 2Step 2
Select Signal Sources
▶Run the sources relevant to the client ICP. Each source is independent and can be collected in parallel when tooling is available.
- 3Step 3
Collect Source Evidence
▶For every selected source, capture enough evidence to explain why each lead is in market. Prefer structured records with these fields: `company`, `person`, `source`, `signal_date`, `signal_summary`, `source_url`, `confidence_notes`, and `outreach_angle`.
- 4Step 4
Combine Signals
▶Deduplicate companies across all selected sources and preserve every signal attached to each company. Multi-signal companies should be retained as the strongest leads.
- 5Step 5
Enrich Top Leads
▶Use web search to enrich the highest-scoring companies with current company details, relevant contacts, buying trigger context, and a concise outreach angle. Keep citations or source URLs in the working notes so a reviewer can audit the evidence.
- 6Step 6
Human Checkpoint
▶After combining signals, review the consolidated list before outreach. Remove companies that do not match the ICP, downgrade weak or stale evidence, and confirm that the outreach context follows from the collected signals.
- 7Step 7
Write Final Outputs
▶Create `/app/results/leads.csv` with this header:
- 8Step 8
Iterate on Errors (max 3 rounds)
▶If validation fails or the lead table is incomplete, run up to max 3 rounds of targeted fixes: fill missing required files, normalize malformed CSV rows, add missing source URLs, or re-score leads with ambiguous evidence. Stop after 3 rounds and record any residual issue in `summ