Leigen — Q3 Alignment & Ratification Session

Vash ✕ Bob · July 19, 2026 · artifacts: PR #182 (Evaluation Spec), PR #177 (Q3 OKR)
Download PDF
Rev 2 — July 19, evening. Async ratification is running: Bob's first eval-spec responses are in and folded into the tracker below. The meeting is now optional — this page is the working record. Orange chips = an answer is still owed.

The Goal (one paragraph)

Q3 = the AI Agent Prop Fund. Get at least one Intelligent Trading System (ITS) live by September 30 — starting with Marcus V2. Every Tradovate slot is a trader's seat that must be earned: each ITS gets a virtual capital pool and must grow it without blowing up, while passing a daily decision-quality review (DDQ). Mechanical strategies (ORB etc.) move to a simulation engine — they can power an ITS, but only agentic traders hold seats, because judgment is what makes live automation trustworthy.

Where Things Stand (as of Rev 2)

WorkstreamStatus
Safety plumbing 1/3 — name tag (trader_id, PR #183)IN REVIEW Built, 864 tests green — awaiting Bob's-agent review
Safety plumbing 2/3 — receipts (no duplicate/orphaned orders, crash recovery)IN REVIEW Built today — 66 new tests, 2000 total green — adversarial review running now
Safety plumbing 3/3 — on-switch (arm/disarm authority)NEXT Starts when receipts clears review
Books proof (#147 fill-persistence fix)DEPLOYED Monday's first ORB trade is the acceptance test
Packaging — one tested unit (Bob)NOT STARTED The current long pole
Evaluation spec (PR #182)RATIFYING v1 + frozen mandate drafted; Bob's first notes folded in below
Q3 OKR (PR #177)QUEUED Merges right after the spec ratifies
#164/#165 — VPS rich GEX + delivery (autonomy gates)BLOCKED Needs Bob's two answers (GEXstream sessions, capture source) to start next week

The Path — 5 Steps to "Marcus Is Deployed" (plain terms)

1. Safety plumbing (Vash — 2 of 3 built) — Three pieces: the name tag (every order records which trader placed it — built, in review), the receipt system (a restart or network hiccup can never cause a duplicate or orphaned order — built, in review), and the on-switch (trading authority is an explicit, expiring authorization that verifies it actually took effect — next).
2. One box (Bob — the current long pole) — Marcus's brain, broker connector, and commands currently live across different branches that can't import each other. Package them into one tested unit, so what we rehearse is exactly what runs.
3. Prove the books (Monday — automatic) — The bookkeeping bug (#147: real trades happened, zero fills recorded) is fixed and deployed. Monday's first ORB trade must land correctly in the books. No trusted books → no rehearsal.
4. The dress rehearsal (together, ~1 day) — Seven checks like a pre-flight: read-only checks → place & cancel a far-away order → one real supervised fill → move the stop & verify the broker moved it → restart mid-trade & recover → close out with records matching the broker exactly → switch off & prove no orders possible.
5. Deployed = evaluation begins (~Jul 28–Aug 1) — Marcus trades daily on his demo seat: virtual pool tracked, DDQ graded, Slack ping to Bob before each entry (logged, never controlling). Live money is a separate authorization after he passes — September.

Agenda (if the sit-down happens — otherwise the tracker above is the record)

ItemWhat we decide / doTime
A. Ratify the Evaluation Spec (PR #182) Walk the proposed numbers (below). Change anything in the room; merge after. This becomes the canonical rulebook the whole funnel runs on. 20 min
B. Merge the Q3 OKR (PR #177) Fill the two KR targets by reference to the spec; add one doctrine sentence (slots = ITS seats; MTS in sim; Mini = decision host, VPS = execution + data). Supersedes the stale Q2 framing. 10 min
C. Bob's two owed items Packaging decision (Step 2 shape: canonical checkout vs installed package — pick the fastest). ② Data-capture audit — which QA fields exist, where artifacts live, how Adam accesses them (or do it live in 15 min).
+ two quick #164 inputs: does GEXstream allow Mac + VPS logged in simultaneously, or do we need a second subscription? And point Vash at the rich-capture source code.
10 min
D. Week schedule + ORB succession Confirm the timeline (below) — and say the ORB sentence aloud: after Monday's proof, ORB holds slot 1 only as rail canary; it moves to the sim engine once Marcus is stable; ORB-ITS is the planned successor. 5 min
E. Small settles (if time) Slack channel/webhook for trade alerts + DDQ delivery · Monday-morning watch plan · whether to draft the ORB-ITS trader card this week. 5 min

Ratification Tracker (Rev 2 — Bob's responses folded in)

AGREED settled   NEEDS ANSWER owner owes a call   DEFAULT STANDS no objection raised — silence ratifies at merge

RuleCurrent proposalBob's responseStatus
Risk framingWas: fixed R=$100, gates in R. Now proposed: gates in plain dollars; per-trade risk floats and is logged as telemetry only"Risk varies $50–150 per trade, depends on the charts" — don't fix R; gates are dollarsNEEDS VASH bless dollars-first (reverses the R design)
Pass+$1,500 net, broker-confirmed"A pass is just profit $1,500" ✔AGREED (unit settled)
Fail−$1,000 net — fixed from start, or trailing from peak?Confirmed the dollar amount; did not pick fixed vs trailingNEEDS BOB the one true fork
Daily lockout2 consecutive full-stop losses OR −$400 on the day → stand down (was −3R)"2 losing trades in a row, or down ~2R (~$350–400) → locked out." Exact dollar not finalNEEDS BOB pin the number: $350 or $400?
Minimum evidence≥20 trades AND ≥20 trading days"Slightly high but not opposed — discuss more"DISCUSS not blocking; stands until revisited
Concentration capNo single trade > $750 (50% of required profit)DEFAULT STANDS
Blow-up line−$800 drawdown from peak → eval failed earlyDEFAULT STANDS (converted to dollars)
Seat shot-clock40 trading days → mandatory reviewDEFAULT STANDS
DDQ requirementWas "avg ≥ B−" — replacing letter grades: each day graded CLEAN / MINOR / MATERIAL / DISQUALIFYING; eval needs zero disqualifying days + no material pattern"Not sure I'm following… what is B minus?" — fair; the letter scale confused its first readerNEEDS ADAM scale is his lane; new wording pending his format
Live promotionPass + DDQ record → Bob+Vash co-sign → $1,000–1,500 real; live drawdown line pauses the traderDEFAULT STANDS
Frozen mandateWho the trader is (prompt, model, risk policy, input set) freezes at handoff; the desk (plumbing, data routes, monitoring) stays fluid — logged, never silent. Ambiguous → mandateAdded after Bob's read — he hasn't seen it yetNEEDS BOB one nod on the boundary table

Clarifications (answering Bob's notes directly)

"What is B minus?" — what DDQ actually is. DDQ is Adam's daily grade of the trader's process, built from evidence (trade records, order lifecycles, decision logs) — never from P&L and never from the trader's self-report. Each day he checks five things: was the data healthy when the trader decided · did the trader stay inside its mandate · were risk rules respected · were the decisions defensible (including correctly doing nothing) · are the logs clean. "Avg ≥ B−" was shorthand for "consistently clean" — it confused its first reader, so the letter grades are dead. New proposal: each day is graded CLEAN / MINOR / MATERIAL / DISQUALIFYING; passing requires zero DISQUALIFYING days and no pattern of MATERIAL ones. A losing day can grade CLEAN; a winning day that broke rules cannot. The pool answers whether to trust a trader — DDQ answers why. Exact format is Adam's to ratify.
Where R goes (it doesn't fully die). Per Bob: the gates become plain dollars — pass +$1,500, fail −$1,000, daily lockout in dollars. But every trade still declares its planned risk at entry in its decision log: Adam needs it to check risk compliance anyway, and it quietly builds the dataset for comparing traders of different sizes when there's more than one seat filled. Logged, never gating.
Frozen mandate, in one breath (new since Bob's read) — The mandate is who the trader is: prompt, model, risk policy, input set. It freezes when the trader leaves the Foundry; changing any of it mid-eval voids the eval and sends the trader back for a fresh start. Everything around the trader — plumbing, data delivery routes, monitoring — stays freely changeable, logged. Rule of thumb: fix the desk, never the trader.

Still Owed — One Answer Each

WhoThe question
VashBless dollars-first gates (accept Bob's edit, drop R-computed gates, keep per-trade risk as logged telemetry)?
BobFixed or trailing fail line? (Fixed = lose $1,000 from start → out. Trailing = $1,000 below your best point → out; stricter — fails a trader who builds a lead and gives it back.) ② Daily lockout dollar: $350 or $400? ③ One nod on the frozen-mandate boundary. ④ The two GEX answers — defined precisely below.
AdamDDQ day-grade format: adopt CLEAN / MINOR / MATERIAL / DISQUALIFYING (or propose your own minimal scale) + confirm the eval requirement wording
Bob + VashEvidence floor (20 trades / 20 days) — quick discussion, Bob thinks slightly high; stands until changed

The Two GEX Answers (#164) — Defined

GEX Answer #1 — Can our GEXstream login run in two places at once? Bob's Mac holds a logged-in GEXstream session that captures the rich options data (vGEX) Marcus decides on. For the VPS to capture that same feed on its own — the autonomy requirement — it needs its own logged-in session. The question: does GEXstream allow one account logged in from the Mac and the VPS simultaneously, or does the second login kick the first (or breach the terms), meaning we buy a second seat? A complete answer is one of: "simultaneous works, confirmed" · "second seat needed — it costs $X/mo" · "unclear from the ToS, here's what support said." Checking account settings, the ToS, or just testing a dual login for ten minutes settles it.
GEX Answer #2 — Where does the rich-capture code live? Bob built the Mac-local capture that logs the rich GEX snapshots Marcus uses. Vash has to port that exact capture to the VPS so both machines record the same thing — then prove they match with a two-session parity check. The question: where is the source — which repo, branch, and folder? If it only exists on the Mac, push it anywhere reachable. A complete answer: a repo/branch/path, plus one line on how it runs — dependencies, the login flow, and when/how often it captures.
Why these two, and how urgent — Neither blocks the evaluation: Marcus runs on Bob's Mac-local data through every supervised phase, per the ratified data ruling (#170). But both block Vash's #164 build starting next week — and #164/#165 (VPS captures its own rich GEX + delivers it verifiably) are the hard gates for autonomy and live capital. Every week these answers wait, the September live milestone gets tighter. Ten minutes of Bob's time now protects the quarter's endgame.

Timeline

NOW ————————— late July ————————— August ——————————— September ——→
Mon: books proof   Rehearsal G1–G3    EVALUATION RUNS DAILY      pass → LIVE ($1–1.5k)
(#147 acceptance)  G4 supervised fill (Bob's Mac data, Bob        |
                   ~Jul 24–28        supervising, VPS executes)  |
                                     —— in parallel ——           |
                                     #164/#165: VPS rich GEX     └─ then Mac Mini =
                                     + delivery (autonomy gate)     autonomous host
                                     Mini purchased + set up        (brains only)

Who Owns What

PersonNowNext
Vash Rule on dollars-first · land receipts through review · Monday acceptance watch On-switch + deploy skill (/preflight → /arm → /disarm, works for every trader) · #164/#165 · Slack surface · pool ledger · pre-entry decision log (Bob's yes/no/unsure vs trader calls vs outcomes)
Bob Packaging (Step 2) · review trader-id PR #183 · the four answers above (①–④) Data-capture audit → rehearsal → operate Marcus daily during eval
Adam DDQ day-grade format (answer above) DDQ minimal scorecard, Slack-delivered, grading from day one of the eval
Sources: PR #182 (Evaluation Spec v1 + frozen mandate), PR #177 (Q3 OKR), issue #170 (Marcus cutover master, incl. the data ruling), PR #183 (trader_id), savegame 2026-07-19, Bob's async eval-spec notes (7/19 evening). Rev 2 — updated July 19, 2026, evening.