Fetch Framework — Live Use Cases
Quick Reference
The Formula
Fetch = Chirp × |DRIFT| × Confidence
Where:
Chirp = Signal strength (0-100)
DRIFT = Methodology − Performance (the gap)
Confidence = min(Perch, Wake) / 100Decision Thresholds
| Fetch Score | Action | Meaning |
|---|---|---|
| > 1000 | Execute | High confidence, clear signal, real gap |
| 500 - 1000 | Confirm | Ask before proceeding |
| 100 - 500 | Queue | Log for later review |
| < 100 | Wait | Insufficient conditions |
The Three Questions
| Dimension | Question | Low Score Means |
|---|---|---|
| Chirp | "Should I act?" | No urgency |
| DRIFT | "How much?" | No gap to close |
| Confidence | "Can I?" | Not ready |
Use Case 1: Browser Automation Agent
Scenario
User command: "Click the Submit button on this form"
Dimension Scores
| Dimension | Score | Reasoning |
|---|---|---|
| Chirp | 90 | Clear, direct command. Action verb "Click" detected. |
| Perch | 75 | Found button with id="submit-btn". 75% selector confidence (other similar buttons exist). |
| Wake | 85 | Context from previous steps: user filled form fields. |
| DRIFT | 60 | Gap between current state (form filled) and goal (form submitted). |
Calculation
Confidence = min(75, 85) / 100 = 0.75
Fetch = 90 × 60 × 0.75
Fetch = 4,050Decision
| Fetch | Threshold | Action |
|---|---|---|
| 4,050 | > 1000 | ✅ Execute — Click the button |
Post-Action
After execution:
- New DRIFT = 5 (form submitted, near goal)
- Re-run Fetch for next action or complete
Use Case 2: Content Publishing Decision
Scenario
You have a video ready. Should you publish now or wait?
Dimension Scores
| Dimension | Score | Reasoning |
|---|---|---|
| Chirp | 45 | Moderate trending signal. Topic relevant but not urgent. |
| Perch | 80 | Strong structure. Good thumbnail, title, description ready. |
| Wake | 70 | Fits channel history. Audience expects this content type. |
| DRIFT | 35 | Small gap. Content is close to target methodology. |
Calculation
Confidence = min(80, 70) / 100 = 0.70
Fetch = 45 × 35 × 0.70
Fetch = 1,102Decision
| Fetch | Threshold | Action |
|---|---|---|
| 1,102 | > 1000 | ✅ Execute — Publish now |
Alternative Scenario: Low Signal
Same content, but Chirp = 20 (no trending relevance):
Fetch = 20 × 35 × 0.70
Fetch = 490| Fetch | Threshold | Action |
|---|---|---|
| 490 | 500 - 1000 | ⚠️ Confirm — Consider waiting for better timing |
Use Case 3: Sales Call Prioritization (CVA/PSSR)
Scenario
AI assistant preparing for customer call. Should it generate talking points?
Dimension Scores
| Dimension | Score | Reasoning |
|---|---|---|
| Chirp | 95 | Meeting in 5 minutes. High urgency. |
| Perch | 60 | Customer data available but scattered across 7 systems. |
| Wake | 40 | Limited call history. New rep, unfamiliar with customer. |
| DRIFT | 80 | Large gap between current prep (nothing) and goal (ready). |
Calculation
Confidence = min(60, 40) / 100 = 0.40
Fetch = 95 × 80 × 0.40
Fetch = 3,040Decision
| Fetch | Threshold | Action |
|---|---|---|
| 3,040 | > 1000 | ✅ Execute — Generate summary now |
Insight
High urgency (Chirp = 95) and large gap (DRIFT = 80) overcome low confidence (0.40). The system acts because not acting has higher cost.
Low Urgency Variant
Same scenario, but meeting is tomorrow (Chirp = 30):
Fetch = 30 × 80 × 0.40
Fetch = 960| Fetch | Threshold | Action |
|---|---|---|
| 960 | 500 - 1000 | ⚠️ Confirm — Suggest gathering more context first |
Use Case 4: Trading Decision
Scenario
Signal detected for potential trade entry.
Dimension Scores
| Dimension | Score | Reasoning |
|---|---|---|
| Chirp | 70 | Breakout signal. Above average but not extreme. |
| Perch | 85 | Clear support/resistance levels. Good R:R structure. |
| Wake | 90 | Pattern matches historical setups. Strong backtest. |
| DRIFT | 25 | Small gap. Price near entry zone already. |
Calculation
Confidence = min(85, 90) / 100 = 0.85
Fetch = 70 × 25 × 0.85
Fetch = 1,487Decision
| Fetch | Threshold | Action |
|---|---|---|
| 1,487 | > 1000 | ✅ Execute — Enter trade |
Failed Setup
Same signal, but no historical pattern match (Wake = 15):
Confidence = min(85, 15) / 100 = 0.15
Fetch = 70 × 25 × 0.15
Fetch = 262| Fetch | Threshold | Action |
|---|---|---|
| 262 | 100 - 500 | 📋 Queue — Log for review, don't trade |
Insight
High Chirp and Perch aren't enough. Without Wake (memory/pattern), confidence collapses. The system won't act on signals without historical validation.
Use Case 5: Engineer Hours Estimation
Scenario
New project came in. Should AI generate an estimate or defer to domain expert?
Dimension Scores
| Dimension | Score | Reasoning |
|---|---|---|
| Chirp | 50 | Moderate urgency. Quote needed this week. |
| Perch | 45 | Partial data. Model type known, scope unclear. |
| Wake | 30 | Few similar projects in history. Sparse training data. |
| DRIFT | 70 | Large gap between current (no estimate) and goal (accurate hours). |
Calculation
Confidence = min(45, 30) / 100 = 0.30
Fetch = 50 × 70 × 0.30
Fetch = 1,050Decision
| Fetch | Threshold | Action |
|---|---|---|
| 1,050 | > 1000 | ✅ Execute — But... |
The Nuance
Fetch score crosses threshold, but confidence is only 0.30. System should:
- Generate estimate (Fetch > 1000)
- Flag low confidence visibly
- Recommend domain expert review
Enhanced Threshold Logic
if (Fetch > 1000 && Confidence > 0.60) {
execute() // Full automation
} else if (Fetch > 1000 && Confidence <= 0.60) {
executeWithFlag() // Automate but flag for review
} else if (Fetch > 500) {
confirm() // Human decides
} else {
wait() // Don't act
}Use Case 6: Document Generation
Scenario
User asks: "Create a presentation for the CVA meeting"
Dimension Scores
| Dimension | Score | Reasoning |
|---|---|---|
| Chirp | 85 | Direct request. Clear intent. |
| Perch | 70 | Template available. Structure known. |
| Wake | 75 | Previous presentations in history. Style established. |
| DRIFT | 90 | Large gap. No presentation exists yet. |
Calculation
Confidence = min(70, 75) / 100 = 0.70
Fetch = 85 × 90 × 0.70
Fetch = 5,355Decision
| Fetch | Threshold | Action |
|---|---|---|
| 5,355 | > 1000 | ✅ Execute — Generate presentation |
Use Case 7: Email Response
Scenario
AI assistant monitoring inbox. New email arrives. Should it draft a response?
Dimension Scores (Important Email)
| Dimension | Score | Reasoning |
|---|---|---|
| Chirp | 80 | From VP. Marked urgent. |
| Perch | 65 | Clear question asked. Response structure obvious. |
| Wake | 85 | Long thread history. Context rich. |
| DRIFT | 50 | Moderate gap. Some info needed for complete response. |
Calculation
Confidence = min(65, 85) / 100 = 0.65
Fetch = 80 × 50 × 0.65
Fetch = 2,600Decision: Execute — Draft response
Dimension Scores (Newsletter)
| Dimension | Score | Reasoning |
|---|---|---|
| Chirp | 5 | Marketing email. No urgency. |
| Perch | 20 | No clear action required. |
| Wake | 10 | No prior engagement with sender. |
| DRIFT | 15 | Tiny gap. Archive is fine. |
Calculation
Confidence = min(20, 10) / 100 = 0.10
Fetch = 5 × 15 × 0.10
Fetch = 7.5Decision: Wait — No action needed
Use Case 8: Code Refactoring
Scenario
AI suggests refactoring a function. Should it auto-apply?
Dimension Scores (Safe Refactor)
| Dimension | Score | Reasoning |
|---|---|---|
| Chirp | 40 | Suggestion, not urgent request. |
| Perch | 90 | Clear function boundaries. Well-structured code. |
| Wake | 95 | Strong test coverage. Safe to change. |
| DRIFT | 30 | Small improvement. Code works but could be cleaner. |
Calculation
Confidence = min(90, 95) / 100 = 0.90
Fetch = 40 × 30 × 0.90
Fetch = 1,080Decision
| Fetch | Threshold | Action |
|---|---|---|
| 1,080 | > 1000 | ✅ Execute — Apply refactor |
Dimension Scores (Risky Refactor)
| Dimension | Score | Reasoning |
|---|---|---|
| Chirp | 40 | Same suggestion. |
| Perch | 50 | Tangled dependencies. |
| Wake | 25 | No tests. Unknown side effects. |
| DRIFT | 30 | Same improvement potential. |
Calculation
Confidence = min(50, 25) / 100 = 0.25
Fetch = 40 × 30 × 0.25
Fetch = 300Decision
| Fetch | Threshold | Action |
|---|---|---|
| 300 | 100 - 500 | 📋 Queue — Log suggestion, don't auto-apply |
Pattern Summary
What Drives High Fetch?
| Factor | Effect |
|---|---|
| High Chirp | Urgency pushes action |
| High DRIFT | Large gap demands closing |
| High Confidence | Perch + Wake alignment enables action |
What Blocks Fetch?
| Factor | Effect |
|---|---|
| Chirp = 0 | No signal → No action |
| DRIFT = 0 | No gap → No need to act |
| Confidence → 0 | Either Perch or Wake near zero → Can't act safely |
The Multiplication Effect
Because Fetch is multiplicative, one weak dimension kills the score:
| Chirp | DRIFT | Confidence | Fetch |
|---|---|---|---|
| 90 | 80 | 0.85 | 6,120 ✅ |
| 90 | 80 | 0.10 | 720 ⚠️ |
| 90 | 5 | 0.85 | 382 📋 |
| 10 | 80 | 0.85 | 680 ⚠️ |
Implementation Template
function calculateFetch(chirp, perch, wake, methodology, performance) {
const drift = Math.abs(methodology - performance);
const confidence = Math.min(perch, wake) / 100;
const fetch = chirp * drift * confidence;
return {
fetch,
drift,
confidence,
action: getAction(fetch, confidence)
};
}
function getAction(fetch, confidence) {
if (fetch > 1000 && confidence > 0.60) {
return 'execute';
} else if (fetch > 1000 && confidence <= 0.60) {
return 'execute_with_review';
} else if (fetch > 500) {
return 'confirm';
} else if (fetch > 100) {
return 'queue';
} else {
return 'wait';
}
}Quick Decision Matrix
| Urgency (Chirp) | Gap (DRIFT) | Ready (Confidence) | Action |
|---|---|---|---|
| High | Large | High | Execute |
| High | Large | Low | Execute + Review |
| High | Small | Any | Confirm |
| Low | Large | High | Confirm |
| Low | Large | Low | Queue |
| Low | Small | Any | Wait |
| Any | Zero | Any | Wait (no gap) |
The Feedback Loop
┌─────────────────────────────────────┐
│ 1. Measure dimensions │
│ Chirp, Perch, Wake │
│ ↓ │
│ 2. Calculate DRIFT │
│ Methodology − Performance │
│ ↓ │
│ 3. Calculate Fetch │
│ Chirp × |DRIFT| × Confidence │
│ ↓ │
│ 4. Decide action │
│ Execute / Confirm / Queue / Wait│
│ ↓ │
│ 5. Execute (if threshold met) │
│ ↓ │
│ 6. Re-measure │
│ DRIFT should decrease │
│ ↓ │
│ 7. Loop until DRIFT ≈ 0 │
└─────────────────────────────────────┘Framework Integration
| Framework | Role in Fetch |
|---|---|
| ChirpIQX | Provides urgency signal |
| PerchIQX | Provides structural confidence |
| WakeIQX | Provides historical confidence |
| DRIFT | Provides gap measurement |
| Fetch | Synthesizes all into action decision |
"DRIFT sees the distance. Fetch closes it."