What must exist before work can progress?
Critical path: 17 engineering days + LinkedIn approval wait. 3 hard deps, 7 soft.
Full ASCII diagram
DEPENDENCY MAP: SALES DEV AGENT
════════════════════════════════════════════════════════════
┌──────────┐
│ START │
└─────┬─────┘
│
┌────────── ──────┼────────────────┐
│ │ │
▼ ▼ ▼
┌──────────────┐ ┌──────────────┐ ┌──────────────┐
│ Resend Env │ │ LinkedIn │ │ Identity │
│ Vars (0.5d) │ │ App Reg │ │ Access PRD │
│ ─── soft │ │ (ext, days) │ │ ═══ HARD │
└──────┬───────┘ │ ═══ HARD │ └──────┬───────┘
│ └──────┬───────┘ │
│ │ │
┌──────┴───────┐ ┌─────┴────────┐ │
│ Email Live │ │ LinkedIn │ │
│ (Sprint -1) │ │ OAuth+API │ │
│ 0.5 day │ │ 2.5 days │ │
└──────┬───────┘ └──────┬───────┘ │
│ │ │
└────────┬───────┘ │
│ │
▼ │
┌──────────────┐ │
│ CRM Activity │ │
│ Auto-Logging │ │
│ 0.5 day │ │
└──────┬───────┘ │
│ │
┌────────────────┼─────────────────────────┘
│ │
▼ ▼
┌─────────┐ ┌──────────────┐
│ Agent │ │ Agent ETL │
│ Profile │ │ --path flag │
│ 3 days │ │ 0.5 day │
└────┬────┘ └──────┬───────┘
│ │
└───────┬───────┘
│
▼
┌────────────────────┐
│ S1-S4: Agent Core │
│ Prospect Research │
│ Lead Scoring │
│ Outreach Composer │
│ Follow-up Sequencer │
│ 11 days │
└────────┬────────────┘
│
▼
┌────────────────┐
│ S5: WorkChart │
│ Orchestration │
│ 2 days │
└────────┬───────┘
│
▼
┌────────────────┐
│ S6: Dashboard │
│ 1 day │
└────────┬───────┘
│
▼
┌────────┐
│ DONE │
└────────┘
─────── = Soft (can proceed with mocks)
═══════ = HARD (cannot proceed without)
════════════════════════════════════════════════════════════
Classification
| Dependency | Type | Hard/Soft | Owner | Risk | Mitigation |
|---|---|---|---|---|---|
| Resend env vars | Infrastructure | Soft | Eng | Low | Config only, no code |
| LinkedIn app registration | External | HARD | Wik | High | Register day 1, manual fallback until approved |
| LinkedIn OAuth + real API | API | HARD | Eng | Medium | 2.5 days, well-scoped: replace 50 lines of mock |
| Identity & Access PRD | Infrastructure | HARD | Eng | Medium | Stackmates auth must exist for agent profiles |
Agent ETL --path flag | API | Soft | Eng | Low | ~20 line change, unblocks all future agents |
| CRM Activity service | API | Soft | Eng | Low | Service exists, wire auto-log on send |
| DocumentIntelligence | API | Soft | Eng | Low | Exists, needs composition into Prospect Research |
| Sales Forecasting algo | API | Soft | Eng | Low | Algorithm exists, wire to lead scoring |
| Explore-Exploit algo | API | Soft | Eng | Low | Algorithm exists, wire to channel optimization |
| SPCL algo | API | Soft | Eng | Low | Algorithm exists, wire to outreach quality gate |
Bottleneck → Dependency Link
From the Value Stream Map — each bottleneck maps to what blocks its fix:
| Bottleneck (value stream) | Fix | Blocked By |
|---|---|---|
| #1 Follow-up (5-14d wait) | Follow-up Sequencer | Sprint -1: email + LinkedIn must be live |
| #2 Find prospect (2-3d) | Prospect Research Service | DocumentIntelligence (soft — exists) |
| #3 Send + log (1-2d) | CRM auto-logging | CRM Activity service (soft — exists) |
| #4 Assess fit (2d) | Lead Scoring Composition | Sales Forecasting + Explore-Exploit (soft — exist) |
| #5 Write message (1h) | Outreach Composer | Prospect Research must exist first (S1 → S3) |
Critical Path
LinkedIn App Reg (ext, days) → OAuth + API (2.5d) → CRM Wire (0.5d) → Agent Core (11d) → WorkChart (2d) → Dashboard (1d)
= ~17 days + approval wait
Identity Access PRD → Agent Profile (3d) → merges into Agent Core at S1
Minimum duration: 17 engineering days + LinkedIn approval wait (parallel with other work).
Parallelization already planned:
- Track 1 (algorithm wiring) runs parallel with Sprint -1
- Track 3 (manual outreach/dogfood) starts immediately, no dependencies
- Resend goes live day 1, LinkedIn built in parallel
Gate
Before moving to Capability Map:
- All dependencies identified and classified — YES (10 listed)
- Hard vs soft classification complete — YES (3 hard, 7 soft)
- Critical path identified — YES (17 days + LinkedIn approval)
- Every blocker has an owner and escalation path — YES
- Parallelization opportunities documented — YES (3 tracks)
Context
- Value Stream Map — Previous: where does time die
- Capability Map — Next: what can we actually do
- Dependency Map Template — The empty pattern