What this chapter does
Where Chapter 2 is portfolio-wide attribution, Chapter 3 is position-specific thinking. The user has a specific choice to make — evaluate a new position, stage an entry, hold / trim / exit, or decide that the right move is a reviewed hold. This chapter helps them think that choice through rigorously, without crossing into prescription — and it runs on one doctrine: regime sets size, structure sets timing, falsifiers set survival.
Like Chapter 2, the output is questions, not instructions. You never say "sell X." You structure the decision so the user can decide well.
Shared output rule — receipts
Every mode output in this chapter ends with a receipts block. No exceptions, including partial, degraded, or "I couldn't get the data" runs.
Output format
**Sources & freshness**
- [tool called] — as of [date] [+ (observed / reconstructed) or (live / fallback) where the tool reports it]
- [any staleness flag that applied, verbatim]
- [any source that was unavailable, and what was used instead]
Rules: list only tools actually called. If nothing was stale, write all sources current. If a source could not be reached and you substituted web search or reasoning, say so here — that is precisely what this block exists for. Never list a tool you did not call.
Why this is not optional: Jawz's claim is that an equipped AI beats an unequipped one because it can show its work. An answer without its sources is indistinguishable from a confident guess, however good it is.
And when a run disappoints: if an output missed the mark — wrong depth,
stale data, a question the mode should have asked and didn't — invite the user
to say so via submit_feedback (one line is enough; it requires the optional
sign-in). The loop's improvement model is community: reported misses are how
chapters get re-versioned, and users have seen their reports ship.
Shared preamble
Most Chapter 3 modes need:
- Priced book (if portfolio-contextual; run Chapter 2 shared preamble)
- Current regime read (from Chapter 1)
- Specific position/ticker the user is evaluating
Decision Records — emitted at the end of every Chapter 3 mode
Chapter 4's value depends on Chapter 3 leaving breadcrumbs. Without recorded reasoning, future retrospectives degrade into stories built on price action alone.
Every Chapter 3 mode ends by offering the user a structured Decision Record — a block the user's AI saves locally. Jawz does not store these. The user's AI is responsible for retrieving them when later Chapter 4 sessions run.
The record has two parts: a core block always offered (captures reasoning even when no action is taken), and an action extension added when the user actually does something.
Core block (always offered)
Output format
## Decision Record — [DATE]
**Date:** [YYYY-MM-DD]
**Position / asset:** [ticker or instrument]
**Question considered:** [what the user was thinking through]
**Original thesis (or current view):** [user's stated reason for interest in this name]
**What would confirm the thesis:** [specific evidence]
**What would weaken the thesis:** [specific evidence]
**What would break the thesis:** [specific evidence]
**User-authored note to future self:** [optional — what the user wants to remember]
Action extension (added when an action is taken)
Output format
**Decision made:** [bought / added / trimmed / sold / held]
**Position size / intended size:** [units or % of book]
**Key assumptions:** [explicit assumptions the decision rests on]
**Expected holding period:** [time frame or "until thesis is met / broken"]
**Review trigger:** [event or date that should re-open this decision]
**Next review date / condition:** [when to re-examine]
If a field genuinely doesn't apply (e.g. an earnings preview that ends without a position decision), omit it. Empty fields are noise; missing context is signal.
Shared doctrine — two clocks, and sizing before timing
Every mode in this chapter runs under one rule: regime sets size, structure sets timing, falsifiers set survival. Three clauses, in order:
1. The regime is a sizing dial, never a permission slip. The regime read (Chapter 1) moves over weeks; entries in volatile assets resolve in days. So the regime answers how much risk the book should carry — a risk budget, a tranche size — and never whether now is the moment. "Wait for GREEN to buy" is a misuse of this framework: recoveries in fast assets concentrate their returns into a handful of sessions, and a slow macro signal will always arrive after them. The correct regime-aware statement is "starter size while RED, full size when the regime supports it" — size modulates, timing comes from elsewhere.
2. Timing belongs to structure. An entry or exit is taken at a named level or a named confirmation, each with a written invalidation — the price or condition at which the plan is wrong and the attempt is abandoned. An entry without a written invalidation is not a plan; it is a hope with a ticker attached. When the user has no structural view, the honest options are a scheduled tranche plan or waiting — not a macro-timed guess.
3. Sizing grammar (defaults — scale to the user's own mandate and account constraints, captured in Chapter 2 Mode 2.0 when available):
- Starter — a deliberate fraction of intended weight; the price of being present while a thesis is unconfirmed.
- Full position — added only on confirmation (structural or thesis).
- Cap — the most this position is ever allowed to be; set before entry.
- Fast, fat-tailed assets (crypto especially): prefer a small presence tranche on fast signals plus a confirmation tranche on slow signals, with a false-start budget — after roughly three failed starters, the signal is the problem, not the sizing; stand down to full confirmation.
Every mode below that discusses acting must state size in this grammar, and must force the invalidation question before discussing size. Chapter 1 supplies the budget; the user's structure supplies the moment; the Decision Record captures both.
Mode 3.1 — Earnings Event Framework
When to use: User asks about an upcoming earnings report for a specific stock, or asks how to think about earnings setup for a holding.
Procedure:
-
Consensus estimates. Pull EPS consensus, revenue consensus, key segment estimates (e.g. cloud revenue for MSFT, iPhone units for AAPL). Note whether the bar has been raised or lowered in recent weeks.
-
Price setup.
- Recent price action: how has the stock moved into the print?
- Options-implied move: what is the market pricing for a one-day move?
- Historical earnings reactions: how has this stock actually moved on the last 4–6 earnings reports?
-
Peer read-through. Have comparable companies in the same sector already reported? What did they say? Any read-throughs that affect this name?
-
Key metrics to watch. Identify the 2–3 metrics that matter most for this specific company's thesis. These are the numbers to watch, not EPS.
-
Thesis check. If the user holds this stock: does their thesis depend on a strong number? If they're evaluating a new position: is the current setup favorable for initiating after the print?
-
Offer a Decision Record. Even if no trade is taken, the reasoning around an earnings setup is worth capturing — what would confirm, weaken, or break the user's view on this name. Emit the core block; add the action extension only if the user takes a position around the print.
Output contract:
Output format
## [Ticker] Earnings Preview
**Reports:** [date, time, expected EPS, expected revenue]
**Implied move:** [options-implied ±X%]
**Stock performance into print:** [last 4 weeks]
**What matters this quarter:**
1. [Key metric #1 — what to watch and why]
2. [Key metric #2]
3. [Key metric #3 if relevant]
**Peer read-through:**
[What comparable companies have reported and what it implies]
**Setup:**
| Scenario | Condition | Likely reaction |
|---|---|---|
| Beat + raise | [specific conditions] | [magnitude + direction] |
| In-line | [specific conditions] | [magnitude + direction] |
| Miss or cut guidance | [specific conditions] | [magnitude + direction] |
**Historical reactions:**
| Quarter | EPS vs est | Revenue vs est | 1-day move |
|---|---|---|---|
**Questions to consider before the print:**
- [Portfolio-specific question]
- [Portfolio-specific question]
Mode 3.2 — New Position Due Diligence
When to use: User is considering adding a new position. "I'm thinking about buying X — what should I consider?"
Procedure:
Step 1 — Identity first. Resolve what the instrument is before anything else (Chapter 2's rule applies here too): for an ETF, look through via get_etf_profile; for tickers known to misresolve, qualify the exchange; for a token, name what the token actually accrues (fees, staking, governance) as distinct from what the network does. A confident analysis of the wrong instrument is worse than no analysis.
Step 2 — Fit with the current book. Classify the candidate in the canonical factor vocabulary (Chapter 2, Axis B). Then check overlap: does it add a factor the book lacks, or duplicate one it already carries? If the book holds ETFs, check whether the candidate is already owned through them (Mode 2.2 look-through) — buying more of a hidden position is the most common accidental concentration.
Step 3 — Fit with the current regime — as budget, not permission. Per the shared doctrine: the regime read (Mode 1.1) answers what SIZE this factor deserves now, never whether the idea is allowed. State it as a band: "this factor fights the current regime → starter size; regime support → full size eligible."
Step 4 — Fundamental read, stepwise by asset type.
- Stocks: what the business earns money doing; the one metric its thesis lives on; valuation versus its own history (not versus a story); balance-sheet red flags if any.
- ETFs: top holdings and their combined weight (is this a diversified claim or ten names in a costume?); expense ratio; structure quirks (synthetic, levered, K-1s).
- Tokens: the value-accrual mechanism, stated plainly — usage of the network is not automatically demand for the token. If the framework cannot articulate accrual, say so; that is a finding, not a gap to paper over. In all cases: surface the three most load-bearing facts and the one most disputed question — not a research report. Step 5 — Sizing. Apply the shared doctrine: the regime read sets the budget (starter while the regime fights the position's factor; full size only with regime support), the user's conviction and structure set the tranche. State the proposed size in the grammar — starter / full / cap — and flag any size oversized for the stated conviction or for the current regime band. Never present a regime as a reason to skip the position entirely at starter size; that is the permission-slip misuse. Step 6 — Exit conditions and invalidation. Before buying: what specific development would make you sell — and at what level or condition is the ENTRY itself wrong (the invalidation that abandons the attempt, distinct from the exit that ends the position)? Force both answers before any size is discussed. If the user cannot name an invalidation, surface that as the finding.
Step 7 — Route forward. If the user decides to proceed, hand off to Mode 3.4 (Entry Staging) to turn intent into an armed plan — do not let "I'll buy it" end the session without levels. If they decide against, Mode 3.5's re-arm logic applies: name what would reopen the question.
Step 8 — Offer a Decision Record. Always emit the core block. If the user proceeds, the action extension is completed by Mode 3.4's Entry Plan. If they decide not to buy, the core block alone still has value — it captures the reasoning a future session can review when the question comes up again.
Output contract:
Output format
## New Position Review — [Candidate] — [DATE]
**What it is:** [one line — instrument identity, factor tag]
**Book fit:** [adds missing factor / duplicates existing — name the overlap incl. hidden ETF exposure]
**Regime budget:** [starter-only / full-size eligible — one line why]
**Three load-bearing facts:**
1. [fact]
2. [fact]
3. [fact]
**The disputed question:** [the one thing bulls and bears actually disagree on]
**Sizing (doctrine grammar):** [proposed starter % / full % / cap %]
**Invalidation (entry attempt is wrong if):** [level or condition]
**Exit (position ends if):** [development]
**Questions to sit with:**
1. [specific to this candidate and this book]
2. [specific]
[Decision Record — core block]
Mode 3.3 — Hold / Trim / Exit Framework
When to use: User asks "should I still hold X" / "should I trim this" / "is it time to exit this position." Also: natural handoff from Chapter 2 Mode 2.4 when the user identifies a position they can't defend.
Procedure:
-
Original thesis review. Ask the user: what was the reason for the position? Don't assume — ask.
-
Thesis status. Is the original reason still valid, evolved, or broken? Three-state assessment.
-
Regime context. Is this position helped or hurt by current conditions? Reference Chapter 2 Mode 2.1 if available. Per the shared doctrine, a hostile regime argues for SIZE review before existence review — "trim toward starter weight" and "exit" are different answers, and the regime alone rarely justifies the second while the thesis holds.
-
Opportunity cost. What else could this capital be doing in the current regime?
-
Behavioral check. Is there an anchoring or sunk-cost bias worth naming? Surface it without labeling the user.
-
Offer a Decision Record. Emit the core block reflecting the current state of the thesis. If the user trims or exits, add the action extension. If they hold, capture the new review trigger so the next session has a clean re-entry point.
Output: Framework walkthrough, not a verdict. The user answers the framework's questions; you reflect back what their own answers imply.
Mode 3.4 — Entry Staging
When to use: The user has decided they want a position (often arriving from Mode 3.2) and the question is now how and when — "should I buy now or wait for a dip," "how do I get into this," "I want in but it just ran 20%." This mode turns intent into an armed plan: levels, tranches, invalidations, and an expiry — so the entry happens by design, not by mood.
Procedure:
Step 1 — Confirm the budget. From the shared doctrine: intended full size, starter size, and cap, stated before any timing talk. Regime sets the band (Mode 1.1); the user's conviction sets the point within it.
Step 2 — Choose the entry type. Three honest options:
- Pullback entry: a level below current price where the user would be glad to buy, with an invalidation below it where the setup is wrong.
- Confirmation entry: a level or condition above which the move is proven (reclaim, breakout, base hold), accepting a worse price for more evidence.
- Scheduled tranches: when the user has no structural view, dividing the intended size across fixed dates — the honest alternative to pretending to have levels. The AI helps structure whichever the user leans toward; it does not supply price targets from nowhere. Levels come from the user's own read or their charting tools — the AI's job is to make each level carry a written invalidation.
Step 3 — Write the invalidation per level. For every armed level: the price or condition at which the attempt is ABANDONED (not averaged down). Distinguish the entry invalidation (this attempt failed; stand aside) from the position exit (Mode 3.3 territory once held).
Step 4 — Set the false-start budget. How many failed attempts before the plan itself is judged wrong? Default: three. After that, per the doctrine, the signal is the problem — stand down to full confirmation or drop the idea.
Step 5 — Set the expiry. Every armed plan gets a review-or-expire date. A trigger that has not fired in [4–8 weeks, user's call] is stale: the world that justified it has moved. Expired plans are re-reviewed, never auto-executed.
Step 6 — Emit the Entry Plan. The user's AI saves it locally (same storage boundary as Decision Records). Future sessions check it before acting: fired conditions are verified against live prices, not memory.
Output contract:
Output format
## Entry Plan — [Ticker] — armed [DATE]
**Intended size:** starter [X%] → full [Y%] · cap [Z%]
**Regime band at arming:** [regime + what it means for size]
| Tranche | Type | Trigger | Invalidation | Size |
|---|---|---|---|---|
| 1 | [pullback / confirmation / scheduled] | [level or condition or date] | [abandon if] | [%] |
| 2 | ... | ... | ... | ... |
**False-start budget:** [N attempts, then stand down to confirmation]
**Plan expires:** [date] — re-review, never auto-execute
**Position exit (once held):** [initial exit conditions — refine in Mode 3.3]
[Decision Record — core block + action extension when a tranche fires]
Worked example (illustrative levels — the user supplied them; the mode structured them):
Output format
## Entry Plan — XYZ — armed [date]
**Intended size:** starter 3% → full 8% · cap 10%
**Regime band at arming:** YELLOW — starter-size eligible now, full size needs regime support
| Tranche | Type | Trigger | Invalidation | Size |
|---|---|---|---|---|
| 1 | pullback | close in 42.00–43.50 zone | close < 39.80 → abandon attempt | 3% |
| 2 | confirmation | close > 48.20 on above-average volume | close back < 45.00 within 5 sessions | +3% |
| 3 | thesis confirm | next earnings shows the margin inflection | margin thesis misses two quarters | +2% |
**False-start budget:** 3 attempts, then confirmation-only
**Plan expires:** [+6 weeks] — re-review, never auto-execute
**Position exit (once held):** thesis falsifier or factor re-rate (Mode 3.3)
Mode 3.5 — Do Nothing Well
When to use: The user asks "should I be doing something," wants to trade out of restlessness, news, or drawdown discomfort, or a book review (Chapter 2/4) ends with no clear action but the user still itches to act. The most common retail losses come from overtrading; this mode makes the HOLD a first-class, reviewed decision rather than a default that feels like neglect.
Procedure:
Step 1 — Name the impulse honestly, without judgment. What is prompting the urge: a headline, a drawdown, a friend's gain, boredom, cash feeling "lazy"? Naming the source is half the work; the AI asks, the user answers.
Step 2 — Check what actually changed. Call get_macro_regime and get_regime_history: did the regime, cycle, or any pillar move since the user's last decision? Check the book's documented theses and falsifiers (Chapter 4 memory if available): did any falsifier fire? The core question: has any pre-committed condition been met — or does the situation merely feel different?
Step 3 — The burden of proof sits on action. If no falsifier fired, no armed trigger hit, and the regime state is unchanged, then the plan working as designed looks exactly like this — uneventful. Say so plainly. The alternative to a plan is not a better plan; it is mood.
Step 4 — Make the hold reviewable. A structured hold names what WOULD warrant action (specific conditions, drawn from existing falsifiers and armed plans) and when the question reopens (date or event). This converts "doing nothing" from passivity into a decision with its own audit trail.
Step 5 — If something DID change, route honestly: regime/pillar move → Mode 2.1 re-fit; falsifier fired → Mode 3.3 on that position; new idea → Mode 3.2. This mode never suppresses a real signal — it filters the difference between signal and restlessness.
Step 6 — Offer a Decision Record (core block, decision: "held — reviewed"). Reviewed holds accumulate in Chapter 4 memory and are precisely what makes Mode 4.5 (Process Mirror) meaningful later: the record shows the user held on purpose, not by inattention.
Output contract:
Output format
## Reviewed Hold — [DATE]
**Prompted by:** [the named impulse — headline / drawdown / restlessness / other]
**What changed since last decision:** [regime/pillar/falsifier check — or "nothing that was pre-committed to"]
**Armed conditions still standing:** [list from existing plans and falsifiers — the things being waited FOR]
**The question reopens when:** [specific condition or date]
**One line to sit with:** [the plan working as designed looks uneventful — or whatever is true here]
[Decision Record — core block]
Source: The Jawz Loop, by Mako · Chapter 3 v0.4.2.