The engine trades on its own and grades itself nightly. Here's the whole week in one look, then the thing that worked, the thing that didn't, and the lesson it's carrying forward.
Eight losses, all closed by the same machinery: a −50% premium stop, which sells automatically once an option has lost half of what was paid for it. What the sleeve had never done is close a trade on the other rail. On Aug 18 at 10:07 ET it fired both. The Chevron call, bought Aug 12 at $6.85, hit +60.6% and sold at $11.00 — +$415, +0.61R. The Exxon call, bought Aug 14 at $3.40, hit +51.5% and sold at $5.15 — +$175, +0.51R. Two things are worth separating here. First, why these two and not the other eight: they are the only positions the sleeve has ever bought under the entry filter described in last week's log — no earnings report scheduled inside the option's life, 37 and 35 days to expiry instead of the ten the Nvidia call had, and tickets of $685 and $340 instead of the $1,125 it paid for the Microsoft call. Room to be wrong, no scheduled night where the price gaps and the option's inflated volatility premium collapses, and a small enough bet that being wrong is survivable. Second, why the exit worked: it sold into strength on a number, at ten past ten in the morning, while both names were still rising. A +0.6R and a +0.5R are not home runs — that is precisely the point. The rule took what was on the table rather than waiting to find out whether the energy bid held. Every previous exit in this sleeve was a stop admitting a mistake. These two were a rule collecting.
No trade closed at a loss between Aug 17 and Aug 21, so the honest "loss" is a position still open and the decision that opened it. On Aug 20 at 10:07 ET the engine bought a Salesforce Sep-18 $200 put at $8.95 — an $895 ticket, its second-largest ever — on a live bearish options-flow read (a $203K sweep hitting the ask). By Friday's close Salesforce was $208.95, the option marked $7.075, and the position was −$187.50 (−20.9%) — above the −50% stop, and the stock still under the $210 line where the engine has written that the read is wrong. So the mark is survivable. The entry is not. The position file states the problem in its own fields: days_to_earnings: 6, earnings_when: 2026-08-26, exit_before_print: false, binary_event: false, and — the load-bearing line — "iv_rank unavailable so the crush guard did not evaluate." Salesforce reports after the close on Aug 26, twenty-three days before this option expires. The trade is now a bet on a binary event the engine did not intend to take, and it is the wrong way round twice: a good print gaps the stock up against a put, and the post-print collapse in volatility premium drains the option even if the direction eventually comes good. This is the exact structure last week's log named as the reason for six of the eight prior losses, and the engine walked back into it four days after writing the rule against it. The Intel put bought Aug 21 at $4.60 is the control case: no earnings inside its life, confirming bearish flow, the stock at $89.995 and well under its $92.13 invalidation line, marked −1.6%. Same week, same engine, same signal class — one obeyed the filter, one didn't.
Start with why the rule didn't hold, because it isn't carelessness. This system has two safety guards and they have opposite defaults. The trading breaker — the file that says whether it is safe to open anything at all — fails closed: if the file is stale or unreadable, no entries, full stop. That default is why the stock sleeve sat out five straight sessions earlier this month on nothing worse than an expired timestamp. The volatility-crush guard, the one that is supposed to stop the engine buying an option across an earnings date, fails open: its trigger reads a volatility-rank field, the field came back empty, so the check simply did not run and the order went through. Missing data blocks the cheap decision and waves through the expensive one. Second cause, and it compounds the first: the entry filter was never code. Last week's plan wrote it as a standing rule — no earnings report inside the option's life, minimum 30 days to expiry — and it stayed where it was written, in a log. The two winners obeyed it because the positions predated the sentence; the first entry after it broke it. A rule that lives in prose is a habit, and habits don't survive a missing field. The fix is one gate, stated the other way round: a pre-trade check that compares the earnings date against the expiry before pricing anything, and that blocks on MISSING as loudly as it blocks on VIOLATION — unknown earnings date, no trade; unavailable volatility rank, no trade. Fail closed, like the breaker. That is a smaller change than the two-leg spread the last two logs have promised, and it addresses the cause of six of the ten trades on the book. Third, the capital, which is now a live cost. The $590 settled on Aug 19; by Friday $1,355 of a $1,457 account sat in options premium, $45 free on the options side and $304.17 of settled cash on the stock side. On Aug 20 a Vertiv setup fired 3 of 3 signals, cleared the scalp gate outright, sized cleanly at 4 shares with an $8.40 risk — and was blocked solely because the notional was $1,050 against $764 of settled cash. The promised cash floor did not get built, so the sleeves are still competing for the same dollars. What that has cost so far: nothing measurable. The engine shadow-grades what it blocks, and the settled-cash gate is 0 wins, 2 losses, 1 unresolved over 3 signals, avg −1.0R; the broader blocked-entries bucket is 3W–7L–2 scratches over 12, would-have-won 0.30, avg −0.01R. Across 94 graded shadows on 49 days the trades it skipped are close to a wash. That is the argument for building the floor as a budgeting fix rather than loosening anything: the gates are earning their keep, they just shouldn't be firing on an accounting artefact. And the promotion ladder stayed shut. Friday's digest promoted nothing: the overnight-flatten rule has 16 signals at avg −0.55R, the dip-buy rule 14 at −0.06R, and the whole system has 15 completed equity trades against a ~30-trade floor, none since Aug 5. Nothing is close, and the shadow record currently argues the gates are protecting the account rather than costing it edge.
Four lessons it logged. One — a rule in a log is not a rule. The same week produced both the sleeve's first two wins and its first entry to break the filter that made them. Nothing about the engine's judgment changed in four days; what changed is that the winners were bought before the sentence was written and the loser was bought after it, under a check that never existed in code. Two — the confidence score is still separating nothing, and the filter is separating everything. Both winners were tagged high conviction. So were four of the eight losers. What actually distinguished the green trades was mechanical and boring: no earnings inside the option's life, 35+ days of room, a ticket under $700. The engine has now been told twice by its own ledger that the thing it grades itself on is not the thing that pays. Three — it docked itself where the record is thin, again, automatically. A point off swing setups (hit 0.231, avg −0.723R over 14), off the cyber group (0.200 / −0.227 over 6), off its favourite gap-plus-relative-strength-plus-VWAP combination (0.333 / −0.375 over 7), and off trading into a falling tape (0.286 / −0.665 over 15). More interesting: it stored its one A-graded recipe — a Palo Alto trade on Aug 5 that returned +1.96R — and then suppressed the live nudge, because the same setup key is net-losing across four trades (avg −0.023R). It refused to learn a lesson from one good outcome. That is the behaviour worth having. Four — new exit machinery shipped on Aug 20 and is deliberately switched off. A trailing stop, a stop-deferral rule and a take-profit extension all now run in shadow — recording what they would have done without doing it — and the take-profit extension is force-shadowed because the trail it depends on isn't live. Peak-mark tracking began writing this week ($7.975 on the Salesforce put). None of it touched a trade. That is the correct order: build it, watch it, then let it near the money.
One — port the entry filter into the pre-trade gate, fail-closed. Compare the earnings date against the expiry before anything is priced; block on a violation, and block equally when the earnings date or the volatility rank is missing. This is the single highest-value change on the board because it is small, it is testable, and it addresses the cause of most of the book. Two — build the cash floor. A reserved figure in the capital policy that the options sleeve cannot spend, so a qualified stock setup is never blocked by an accounting artefact rather than a risk judgment. The Vertiv block on Aug 20 is the test case: same conditions, next time, it should either fund or be refused for a stated risk reason. Three — the two-leg spread, honestly. It has been in the plan for three consecutive weeks and has not been built; the live tick can still only place single-leg orders, and it has now traded ten single-leg positions while the defined-risk structure sits in the observe-only engine. Either the order primitive gets built this week or the line comes out of the plan, because a fix that has been scheduled three times and started zero is not a plan the record can be graded against. Four — grade the Salesforce put in public. It holds through the Aug 26 print by construction now. Whatever happens, the earnings-inside-the-option trade will produce its own evidence, and it gets written up next Sunday with the direction and the volatility effect separated — the read and the trade graded apart, the way the event engine already does it. Five — promote nothing. Fifteen completed equity trades against a ~30 floor; no component is within reach, and the shadow record says the gates are working. How we'll know it worked next Sunday: (a) at least one options entry rejected in the log with a structured reason that names an earnings date — proof the gate is code and not prose; (b) equity settled cash sitting above a stated floor at Friday's close instead of $304.17; (c) the Salesforce put closed or graded with the print's effect isolated from the direction call; and (d) a two-leg order filled somewhere, paper included — or that line deleted.
Two daily jobs moved off the scheduler and onto a second model — and the more interesting build is the thing made to prove they're still running.
The two heaviest daily jobs in the research cascade — the semiconductor evidence sweep and the demand-evidence sweep that feeds the memory read — now run through ChatGPT instead of the scheduler that runs everything else. The reasoning is division of labour, not capability: those two steps are wide and shallow. They visit many sources, extract many small facts, and exercise almost no judgment — and they were competing for the same daily budget as the layers that actually have to think. Handing them to a second model frees the expensive one for the reading. On the evidence so far it worked: their outputs are the freshest artifacts in the whole cascade, newest file dated Aug 22, one day old, across 53 and 51 files respectively.
Splitting a pipeline across two runners creates two ways to break that make no noise. If a step is handed to ChatGPT while its old scheduled task is left switched on, it runs twice and both copies write over the same evidence files. If a step is handed off and nobody actually picks it up, it stops producing — and every gate downstream keeps politely reporting waiting on upstream, which looks identical to a quiet news day. Neither failure announces itself, and no amount of care in the handoff prevents them. So the fix isn't care; it's a contract. This week the operation got a read-only wiring auditor: a declared file that states, for every step in the cascade, who runs it now (chatgpt / cowork / manual / none), what it writes, what it reads, and how stale its newest output is allowed to be — and a checker that compares that contract against the actual files on disk and the live scheduler state. It never edits a pipeline file. It reports, and the report is either a real defect or a stale contract, never a third thing. The first real run, on Aug 23, found things. The handoff itself is clean — both ChatGPT-owned steps have their old scheduled tasks correctly disabled, so nothing is double-writing. What it caught instead was rot nobody had been looking at: one daily step declared live and silent since — 58 days against a three-day freshness budget; three files where a Discord webhook placeholder is assigned to a variable and then used as a URL, which means those posts cannot be delivered at all; two embedded Python blocks that do not parse, sitting in files that instruct the model to run them verbatim; and three duplicate front-matter blocks where an automated edit landed above a file's header instead of below it, so the next automated edit would land in the wrong place too. Eighteen failures and twenty-one warnings on the first pass — none of it dramatic, all of it the sort of thing that turns into a missing week later. The honest read: moving a job to a second model is the easy part. Knowing whether it is still being done is the hard part, and until Sunday nothing here could answer that question.
The earnings vertical had its heaviest day yet: six deep dives published Aug 20 — Macronix, Puya, Biwin, Longsys, Nanya and Corsair — the memory and storage names that report on the far side of the cycle from the ones everybody covers. A fact-check pass the same week corrected figures in two of them after publication (Corsair and Longsys, with the carousel slides rebuilt to match), and a further pass reconciled Macronix's top line to its monthly sales disclosures. Six write-ups in a day is a throughput number; two corrections is the cost of that throughput, and the correction is the receipt. On Aug 23 every deep-dive page moved behind a teaser, with a small tool written to re-gate them automatically after each publish so the gating is not a manual step somebody forgets. And one from the video side, a small change against an obvious problem: the talking-head renderer that produces the on-camera segments learned hand gestures this week. It had been delivering every line with a still body, and a motionless body is the clearest tell that a face was generated rather than filmed — people move their hands when they explain something, and the absence reads as wrong long before a viewer can say why. Hands turned out to matter more to whether a clip lands as real than any further work on the face.
The newsletter's demand-and-credit read on semiconductors, cyber, and construction — this week's headline, and the dated checkpoint that would confirm it or crack it.
Last week this column said the tell was whether Q3 contract settlements landed at the low end of a 13–18% band. That band is now the published forecast for both halves of the market: TrendForce has server DRAM contract prices rising 13–18% quarter on quarter in Q3 2026, and conventional PC DRAM gains narrowing to the same 13–18% range on weaker retail demand and a much higher base. Set that against last quarter: SK hynix took DRAM up about 30% sequentially and Samsung more than 40%, with NAND up mid-50s and high-60s. The mechanism behind the narrowing is now explicit rather than inferred — several US cloud providers hold multi-year long-term agreements that bar suppliers from raising prices to them at all, so from Q3 the increases have to come from customers without those contracts. That is a smaller and less willing pool. The supply side, meanwhile, hardened in the other direction: DRAM and high-bandwidth memory are reported sold out through 2027, and SK hynix's chief executive called 2027 likely the worst year in the industry's history from a supply perspective.
A correction first, because this column got it wrong: last week it said Palo Alto reports Aug 18. It does not. Palo Alto's Q4 FY26, covering the period ended , lands after the close on Sept 1. What actually hit the group came from Zscaler, which guided fiscal Q4 softly, cut its full-year free-cash-flow margin to 22.8–23.3% from 26.5–27% on a capex surge, and — the part that did the damage — pre-guided FY27 revenue and recurring-revenue growth of just 16–17% against the 20%-plus trajectory investors had assumed, blaming sales-leadership turnover. The stock fell about 30% and took the sector with it: CrowdStrike −7% and Palo Alto −5% on Aug 19 with no news of their own. Both had run hard into it — CrowdStrike +82% and Palo Alto +103% year to date through that Tuesday close.
The Dodge Momentum Index, which tracks nonresidential projects entering planning, rose 7.5% in August to 301.4 from a July reading revised down to 279.9 (this column cited that July figure as 291.7 last week — the revision is worth naming). Commercial planning was up 8.7% and institutional 5.4%, with data centers, warehouses and hotels leading, and the index up roughly 30% year to date. Against that, the permitting fight widened rather than resolved. Texas's audit of the ERCOT interconnection queue now functions as a statewide pause on new grid connections; El Paso County — which sits outside ERCOT and was therefore not covered — passed its own resolution asking the governor for the same protection and calling for a local pause; Greensboro, North Carolina enacted a 120-day moratorium with residents pressing for it to run 32 months; and Spartanburg County, South Carolina delayed a vote on a proposed 12-month moratorium to Sept 21. The two facts are not in conflict: the planning index leads actual construction spending by 12 to 18 months, so a strong August planning number and a hostile August permitting docket are statements about different years.
And the newsletter, on itself: three dated calls, three still marked open, and the page itself still reads last updated Jun 26 — two months. The call, that the Q2 DRAM settlement would land below the published guidance band, was due and is now 39 days overdue: the third consecutive log to carry the same debt, each one a week worse than the last. It also gets harder to defer, not easier, because the terrain it was drawn on has since moved — Q3 contract prices are now published at a decelerating 13–18%, which is the evidence that call was reaching for. The construction working-capital call comes due Aug 31, eight days out and genuinely resolvable on the Q2 filings; the Dell gross-margin call is due Sept 15. By the house rule — if you only ever see the wins, that's a highlight reel — the trading sleeve booked its first two wins this week and wrote them up, and the scorecard still owes a resolution it has owed since July. Publishing the win while the overdue grade sits is exactly the asymmetry this column exists to refuse.