MIS — 10-Day Email Review + Forward-Thinking Redesign

What it tells you · what it doesn't · right vs wrong · rear-view vs forward · the overnight layer to make it think ahead
Generated: Tuesday, May 26 2026 · 4:34 PM EDT (NY)
Corpus: 24 MIS emails, sam@hookstreetcapital.com (self-sent), May 17–26 · full bodies read for Tue 5/26 (all 3) + Sun 5/24 week-ahead + Wed 5/20 anomaly
Lens: your ask — "not my normal quarterback, future-thinking like me" · ties to memories feedback_no_monday_morning_qb, project_mis_cashflow_thesis, MIS_FSE_ARCHITECTURE

What it's doing well: the engine fires reliably 3×/day, the FSE classification (ADD/STARTER/WATCH/REJECTED), the SACS scores, the pre-computed Stop/Target/R:R brackets, and the 7-day follow-up tracker that grades its own past calls are genuinely valuable and genuinely yours.

The core problem you're sensing is real: it's a rear-view mirror. ~80% of every email is "what already happened today" on 15-minute-delayed Google Finance, and the morning brief fires at 9:47 AM — 17 minutes after the open. By the time you read it, the overnight gap and the open already happened. There is zero overnight / pre-market / futures / macro-calendar input. That's exactly the quarterback-vs-forward gap.

And it has correctness bugs that erode trust: ORCL is marked "OK" while down −24% (and flagged EXIT two lines later), the macro calendar says "no major events in 21 days" while the same email flags NVDA earnings, Bitcoin's change is frozen at +0.00%, holdings are labeled "live" over 6–12-day-stale broker data, and the 2:05/3:00 emails are ~85–90% identical re-renders with no "what changed."

The fix (§5): a pre-open overnight pass (futures + pre-market movers + today's macro calendar + overnight news) that runs before the brief and folds a "what to watch today" thesis into it — turning the 9:47 AM rear-view into a 7 AM forward view.

1The corpus — what fires, when

EmailFiresRoleReality
Morning Brief~9:47 AM wkdyThe day-ahead read17 min AFTER open on 15-min-delayed data → ~9:32 prices. Not a pre-open brief.
Trade Action / Playbook2:05 PM wkdyMid-day actionables~85% dupe of 3 PM
Power Hour3:00 PM wkdyClose recapfull re-render, no diff
Sunday Week-AheadSun 6 PMThe forward oneBest forward intent, but runs on Fri-close prices + same stale calendar.

Regime printed NORMAL / Factor 1.00 on all 10 days (VIX drifted 18.4→16.7). The regime layer hasn't differentiated anything in 10 sessions — either the market genuinely stayed calm, or the regime bands are too wide to ever leave NORMAL. Worth a sanity check against the project_mis_cashflow_thesis −20 hard-stop / bucket logic.

2What it tells you — correctly + usefully

✓ Keep these — they're the real value

3What it's telling you WRONG (the trust-killers)

These are bugs, contradictions, or stale/placeholder values pulled verbatim from the emails. Fixing them is the MIS "move-forward" punch list (§6).

#IssueEvidence (verbatim)
1"OK" on a −24% position — OPEN RISK rubber-stamps OK while FSE says EXIT, in the same email. The "OK" looks hardcoded (every holding shows OK).ORCL ... P&L -24.22% | OK  vs  ORCL 🚨 EXIT (deep loss; close / tax-loss harvest)
2Macro calendar is stale/empty — says no events while its own earnings module flags NVDA + 4 same-day reporters.CALENDAR OVERLAY: No major events in next 21 days (all 24 emails) vs NVDA [MAG7] 2026-05-27 — size down ahead
3"live" holdings over stale broker data--- 💼 YOUR HOLDINGS (live) --- while Schwab: 12d stale · Fidelity: no sync timestamp
4Bitcoin change frozen at null — price moves, delta never does.Bitcoin $75,871 (+0.00 / +0.00%) every email
5Tape Breadth frozen all day — byte-identical 9:47 AM / 2:19 PM / 3:08 PM despite the ADD list churning and Semis running +2.8%→+4.5%.🚀 123 | 🐢 58 | 🔥 59 → "Add on pullbacks." (unchanged x3)
6Universe count disagrees with itself within one email.universe 182 vs 181 tickers across 14 sectors vs 4/189 · 5/189 (DATA HEALTH)
7Intraday classification flip-flops — DUOL REJECTED→ADD same day; JNJ ADD (SACS 76.7) → "Momentum Trim, sell into strength" (SACS 58.6) within hours.DUOL ... now ADD | slipping: check why signal failed
8"learning:" is tautological — a hardcoded restatement of the price drop, not an insight.now REJECTED | learning: downgraded after weakness
9Morning brief misfired at 2:28 PM on Wed 5/20 — mislabeled MORNING in header + subject, delivered 2:29 PM.=== MIS ARCHITECT — MORNING · Wed May 20 · 2:28 PM === (this is part of why "nothing's coming in" feels unreliable)
10STYLE_MISMATCH fires every day, never resolved — became noise; Power Hour silently drops it with no reason.Semiconductors leads X% but ADD list has 0 names in that sector

4Rear-view vs forward — the quarterback problem, measured

You said it should be "future-thinking like me, not my normal quarterback." Here's the honest split of an MIS email by volume:

ModeShareWhich sections
Backward (rear-view)~80%Holdings, Open Risk, MAG 7, Macro Pulse, Outliers, Sector Pressure, Bottom Line ("SPY up 0.70%"), Yesterday's Earnings. All "what already happened."
Templated-forward~15%Earnings-this-week ("NVDA 5/27 — size down ahead"), compression "candidates," the Stop/Tgt brackets, position verdicts (RIDE/REDUCE/EXIT).
Genuinely predictive thesis~0%None. No "here's what overnight set up," no scenario framing, no "if SPY holds the open then X." The one section meant to carry forward macro (CALENDAR OVERLAY) is emitting a stale default.
The signal hiding in the follow-up tracker

The 7-day tracker is quietly screaming: across the sample, most prior ADD calls went DOWN (5/26 Playbook: "26 working | 16 slipping | 26 now blocked/rejected"; 5/20: "10 working | 20 slipping | 45 blocked/rejected"). USO, MU, XOM, CVX, UNG, SLV — ADD'd, then −6 to −13%. The system flags the misses but never adjusts the gates that produced them. That's the difference between quarterbacking (noting the loss) and forward-thinking (changing the next call). This is the single most important thing the engine already knows and isn't acting on.

5The forward-thinking redesign — the overnight layer

Your exact ask: "somewhere in between overnight and the information they can get and before the briefing, we can pick it up and incorporate it so it's future-thinking." Here's the mechanism. Today the brief is a snapshot of a sheet at 9:47 AM. The redesign adds a pre-open pass that runs before you wake and writes a forward thesis the brief then leads with.

A. Move the brief earlier + add the overnight gap

B. The data the engine isn't pulling (and where to get it)

Missing forward inputWhy it mattersSource path
Today's macro calendar (FOMC, CPI, PCE, jobs, Fed speakers)Fixes the broken "no events in 21 days." This is the #1 forward gap.An econ-calendar feed / scrape into a CALENDAR tab; the brief reads it instead of emitting a default.
Pre-market movers in your universe + holdingsThe gappers ARE the day's setups; you currently see them 17 min late.Pre-market quote pull (the same GF/feed, just run at 7 AM) for the 182-ticker universe.
Overnight / after-close news (post-close earnings reactions, overseas)What broke after yesterday's 4 PM that changes today's thesis.GNews/overnight scan windowed to "since yesterday close."
Earnings AMC/BMO reactionse.g. a name that reported after close — how's it trading pre-market.Already have the earnings tab; add the pre-market reaction read.

C. Who does the "pick it up before the briefing" work

This is a job for a scheduled Claude Code pass — not more Apps Script

The capability scan already flagged the schedule skill as under-used. The clean architecture: a scheduled overnight/pre-open Claude Code routine (~6:30 AM) that pulls futures + pre-market + today's macro calendar + overnight news, synthesizes a forward "what to watch today" thesis ("like me"), and writes it into a FORWARD_NOTE cell/tab. The 7 AM MIS brief (or the command-center morning brief) then leads with that note instead of opening on "SPY up 0.70%." Claude does the judgment layer the Apps Script can't; the sheet stays the system of record. This also finally connects MIS to the morning spine instead of leaving it a silo.

D. Reframe the sections backward→forward

6MIS move-forward punch list (prioritized)

PriFixWhy
P0Kill the "OK" contradiction — OPEN RISK must use the same FSE verdict as POSITION REVIEWS (or delete the duplicate section).A −24% "OK" destroys trust in every other "OK."
P0Fix CALENDAR OVERLAY — real macro calendar, or remove the false "no events" line.It's lying about the one forward thing it claims to cover.
P1Collapse 2:05 + 3:00 into one, and add a real "what changed since AM" diff (ADD adds/drops, SPY/VIX since open).~85–90% redundancy → the delta is the only signal.
P1The pre-open overnight pass (§5) + move brief earlier.This is the actual "forward-thinking" build.
P1Find the 2:28 PM morning misfire trigger — ties into your trigger cleanup.Reliability; part of "nothing coming in."
P2Fix BTC null-delta, frozen Tape Breadth, 182/181/189 count, "live" label, tautological "learning:" string.Data hygiene; each one is a small credibility leak.
P2Act on the follow-up tracker — if ADD hit-rate < X%, auto-tighten the gate / flag the sector.Turn self-grading into self-correction (the cash-flow-thesis discipline).

Sequencing note: this aligns with MIS_FSE_ARCHITECTURE.md (FSE = single source of decision truth — the "OK vs EXIT" contradiction is exactly the "no surface independently classifies" rule being violated) and the mis-daily-report skill's pre-send checklist. The honest-assessment trim ("holdings+macro in the morning only; afternoons show only what changed") is the same P1.