Skip to content

KB/operations

The Tape — the novice-glance cockpit

Last verified

What it is. The Tape (/tape) is the platform’s novice-glance cockpit — SSR, 60s auto-refresh. It carries ONLY the top-tier actionable reads, clean enough for a first-time reader: explanation and context stay, analytics (grading numbers, scorecards, sample sizes) and repeated warning prose live on The Engine, reached by links. The 2026-07-22 card split organises the top of the page into two cards: Market State (every deterministic / validated read) and AI Read (everything the AI itself says), with the Active Signals bubbles and the gamma rail between them.

The read it’s organised around

Market state (risk → move size → backdrop) → active signals → the gamma rail → the AI’s own read (summary → which-way → trade idea), plus a minimal picks layer at the bottom. Every macro read on this page is a state description, never a forecast. The page subtitle carries the single ceiling statement — “how risky, how big a move — never which way.”

1. Market State — the dashboard card

Every deterministic / validated read on one card (GET /api/v1/ai2/verdict + GET /api/v1/signals/alignment; each degrades → an honest “unavailable”, never a 500). Top to bottom:

2. Active Signals

The firing-only list, between the two cards — only firing signals render, each with a plain-English meaning subtitle; honest empty state; no_data named, never silently calm. Also carries the AI Capital Cycle composite chip (see The Engine).

3. The gamma rail (the page’s only map)

Directly under the Active Signals. One horizontal rail plots every committed level on a single price axis: the call and put walls, the zero-gamma line, the 1-day expected-move band, max-pain (a level tick only, never a pin-trade edge), and the AI-flip tick — the verdict’s own what_flips_it level, plotted preferentially off its level_kind === 'spy_price' tag (with a label

When two or more level labels would land on the same spot, the rail de-collides them: levels that round to the same price merge into one stacked label, while near-but-distinct levels alternate across two vertical tiers below the line so they never clobber each other.

The five-day distance-to-flip trend sparkline relocated to The Engine’s positioning section. The textbook explainer of how dealer gamma works lives in the gamma-walls KB article, not duplicated on the page.

4. AI Read — the AI card

Everything the AI itself says, and nothing deterministic. Its summary and direction/trade-idea reads come from the recorded cycle history (GET /api/v1/ai2/history). Top to bottom:

5. Screener picks — the minimal picks card

The ONLY surface on the page that names something to buy or sell: one row per open pick contract (GET /api/v1/screener/company-action-board), each row carrying the ticker (long/short tint), the bettability chip and trust badge (the Screener’s exact vocabulary, rendered verbatim — the Tape never upgrades a pick), an entry→current price read (“— entry pending” when no entry price exists yet, never fabricated), a compressed why-line, and the ⚠ FLIP chip only when a live conflict fires. One “changed” line names the latest lock and the latest exit; one caveat line — “graded, not advice” — links to the badge meanings on the Screener. The full position book (with per-row entry→current + paper MTM), the closed record, and the credibility ladder live at the top of the Screener.

Relocated off /tape (tape-triage rebuild, 2026-07-21)

The gamma rail and the Active Signals card carry a tiny footer: What — one clause naming what the widget measures (static); So-what — a conditional instruction given the current state, computed from the live values (the rail’s so-what differs above versus below the flip). The AI Read card’s footer is its honesty caption; the picks card’s is its changed + caveat lines.

Honesty rails

Carried from the rest of the platform: every macro reading is a state description, never a forecast; server-emitted honesty strings (uncertainty_note, empty_reason, bettability vocabulary, trust labels) render verbatim; vendor anonymity (the options-flow vendor is NEVER named); every surface degrades honestly — a missing feed renders an empty state, never a 500.