← Back to Resources
Onboarding Series #7

Mission Planning: From Job Post to Locked Scope

⏱️ 20 min read🎯 Critical📋 Scoping Framework

You found a promising job post. Now what? How do you scope it? Break it into milestones? Estimate timeline? Lock the scope so it doesn't explode?

This guide teaches the 7-step framework from job post → locked AC.md baseline. By the end, you'll know how to plan missions that are properly scoped, fairly priced, and protected from scope creep.

Why Mission Planning Matters

💸

Bad Planning = Money Lost

Vague scope → scope creep → 3x effort → you work for $20/hour instead of $150/hour.

Bad Planning = Time Wasted

Unclear requirements → false starts → rewrites → missed deadlines → angry client.

🎯

Good Planning = Fast Delivery

Clear AC.md → Rafael generates correct code first time → Sofia verifies → payment in 1 week.

🔒

Good Planning = Protected Scope

Locked baseline → change control (Swap/Add) → no free work → profitable missions.

The 7-Step Planning Framework

1
🔍

Parse the Job Post

2

Evidence Sprint or Full Mission?

3
🎯

Define Success Criteria

4
📦

Break Into Milestones

5
⏱️

Estimate Timeline & Price

6
⚠️

Identify Risks & Dependencies

7
🔒

Lock Scope (AC.md Baseline)

Real Mission Planning Examples

See how the 7-step framework was applied to actual ScopeLock missions.

TherapyKin: Therapy Companion App

KongInvest: Trading Bot

Rescue Mission: Broken E-commerce

Evidence Sprint vs Full Mission: Decision Tree

Is scope clear and detailed?
❌ NO (vague, undefined)
Evidence Sprint

$3-6K, 2-5 days. Deliver demo + delta. Then quote full work.

✅ YES (detailed requirements)
Is client proven?
❌ NO (0-2 hires, new account)
Evidence Sprint

Prove value first, build trust, then upsell.

✅ YES (5+ hires, good rating)
Is budget ≥$8K?
❌ NO (<$8K)
Evidence Sprint

Right-size to budget, upsell later.

✅ YES (≥$8K)
Full Mission

$8-15K, 1-3 weeks, 2-3 milestones.

Test Your Planning Skills

For each scenario, decide what you would do. Click to reveal the answer.

Scenario 1:

Job post: "Need help with my SaaS dashboard." Budget: $3K. Client: 0 hires, payment not verified.

What should you do?
Scenario 2:

Clear requirements: "Build REST API for mobile app. 8 endpoints, PostgreSQL, FastAPI. Need in 2 weeks." Budget: $12K. Client: 15 hires, 5.0 rating.

Evidence Sprint or Full Mission?
Scenario 3:

After baseline tag, client says: "Actually, can we use MongoDB instead of PostgreSQL?"

How do you respond?
Scenario 4:

Job: "Improve performance of existing React app." No specifics. Budget: $5K.

What's your approach?

Mission Planning Templates

📋 Evidence Sprint Template

# Evidence Sprint: [Project Name]

## Client Context
- Pain point: [Real problem, not stated requirement]
- Client type: [Process-skeptical / Process-friendly]
- Budget: $[3-6K]
- Timeline: [2-5 days]

## Deliverables
- [ ] Working demo (≤90s video)
- [ ] Quantified delta (2-3 metrics)
- [ ] AC.md baseline for potential full mission

## Acceptance Criteria
1. [Functional: User can...]
2. [Functional: System does...]
3. [Non-functional: p95 response time <Xms]
4. [Non-functional: Handles X concurrent users]

## Verification
```bash
npm run test:e2e -- [test-file].spec.ts
# Expected: All tests pass (green)
```

## Upsell Path
If Evidence Sprint succeeds:
- Full Mission: $[8-15K], [1-3 weeks]
- Scope: [Extended functionality...]

🎯 Full Mission Template

# Full Mission: [Project Name]

## Overview
- Budget: $[8-15K]
- Timeline: [1-3 weeks]
- Milestones: [2-3]

## Milestone 1: [Name] ($[X]K, [Y] days)
### Acceptance Criteria
1. [Functional criteria...]
2. [Non-functional: p95 <Xms, uptime >99%]

### Verification
```bash
npm run test:e2e -- m1.spec.ts
```

### Dependencies
- None (first milestone)

## Milestone 2: [Name] ($[X]K, [Y] days)
### Acceptance Criteria
1. [Functional criteria...]
2. [Non-functional criteria...]

### Verification
```bash
npm run test:e2e -- m2.spec.ts
```

### Dependencies
- Requires M1 complete (auth, database)

## Change Control
After baseline (`ac-baseline_[name]_2025-XX-XX`):
- Swap: Equal/lower complexity, same price
- Add: New milestone, new price

## Risk Register
1. [Risk]: [Mitigation strategy]
2. [Risk]: [Mitigation strategy]

Mission Planning Checklist

Before Writing Proposal

  • ☐ Parse job post: Pain point identified (not just stated requirements)
  • ☐ Red flags checked: Payment verified, reasonable budget, clear scope
  • ☐ Client type detected: Process-skeptical or process-friendly
  • ☐ Engagement type decided: Evidence Sprint, Full Mission, or Multi-Milestone
  • ☐ Portfolio match selected: Which past project proves relevant capability

Before Starting Work

  • ☐ AC.md drafted: Functional + non-functional criteria defined
  • ☐ Verification method specified: Test command + seed data + expected output
  • ☐ Milestones defined: Each milestone = vertical slice = 1 payment point
  • ☐ Dependencies mapped: What requires what
  • ☐ Risks identified: Technical, scope, timeline risks with mitigations
  • ☐ Timeline estimated: Account for code gen + testing + edge cases + 20% buffer
  • ☐ Price locked: Fixed price per milestone

After Proposal Acceptance

  • ☐ AC.md co-written with client: They approve criteria
  • ☐ DoD checklist created: From Inna's BEHAVIOR_SPEC + VALIDATION
  • ☐ Baseline tagged: `git tag ac-baseline_[name]_2025-XX-XX`
  • ☐ Change control explained: Client understands Swap vs Add
  • ☐ Handoff to Rafael: Complete 6-level docs ready for code generation

6 Common Mission Planning Mistakes

❌ Mistake 1: Quoting hours instead of outcomes

Why it fails: Hours are unbounded. Client hears "40 hours" and expects it, then scope creeps to 80 hours.

Fix: Quote fixed price for defined outcome. "Milestone 1: Auth flow working and tested, $6K." Not "40 hours at $150/hour."

❌ Mistake 2: Horizontal milestones (layers not slices)

Why it fails: M1 = Database, M2 = API, M3 = Frontend means nothing works until M3. No value delivered until end.

Fix: Vertical slices. M1 = Auth (DB + API + UI working). Client sees value immediately, pays sooner.

❌ Mistake 3: No baseline tag = invisible scope creep

Why it fails: Client changes requirements mid-work. You do extra work for free because no baseline to point to.

Fix: `git tag ac-baseline_auth_2025-11-06` after AC.md approval. All changes after = Change Request (Swap/Add).

❌ Mistake 4: Vague acceptance criteria

Why it fails: "Auth should work" is not testable. Client says "not done" even when it works.

Fix: Executable AC. "User can signup with email. Verification: `npm run test:e2e -- signup.spec.ts` passes."

❌ Mistake 5: No buffer for unknowns

Why it fails: Estimate 5 days, quote 5 days. Edge case appears, now it's 7 days. You work for free.

Fix: Estimate 5 days, add 20% buffer, quote 6 days. Unknown appears, still profitable.

❌ Mistake 6: Ignoring red flags in planning

Why it fails: Payment unverified, vague scope, "urgent"... you quote anyway, waste time on NO-GO client.

Fix: Red flags in Step 1 = stop. NO-GO and move to next opportunity. Time is your most valuable resource.

Summary: Mission Planning in 3 Sentences

1. Parse job post → Evidence Sprint or Full Mission decision.

2. Break into vertical-slice milestones with executable AC.md and fixed prices.

3. Lock baseline with git tag → change control (Swap/Add) protects scope.

Good mission planning = fast delivery, happy client, profitable work. Bad planning = scope creep, unpaid hours, angry client.

Use the 7-step framework. Use the templates. Use the checklist. Lock the scope. Get paid.

What's Next?