Files
vyndr/specs/edge-pct-display-retirement.md
T
builtbykev 0997334f8b Order B: retire edge_pct display. Promotion gate NOT passed — no flip.
THE PROMOTION WAS NOT PERFORMED. Champion grade path byte-identical (diff empty
across intelligence/, gradeSlateService, snapshotService). Projection, p_win and
the CLV instrument untouched.

REVIEW ZERO IS A GATE AND THREE OF FOUR PREREQUISITES FAIL:
  0.1 scores are ESTIMATED priors from the founding spec, not measured. The
      premise's cited values are not in the code either — the module holds
      nba:points .80 and mlb:total_bases .55; there is no NBA 0.72 and no WNBA
      score at all.
  0.2 VERSION-BOUNDARY TAG DID NOT LAND — config/modelEras.js has zero shading
      references. It was deliberately not applied twice (nothing had been
      promoted) and reported both times. The order's own rule says STOP.
  0.3 NO ROLLBACK FLAG EXISTS — zero occurrences of SHADING_ENABLED /
      EDGE_SHADING / shadingEnabled anywhere in src/.
  0.4 takeable tags DID land (migration 034, 1246/1254 rows). PASS.

AND THE APPROVED DELTA DOES NOT MATCH THE MEASURED ONE. Approved: 43.6% of
grades re-letter, efficient markets tighten and soft hold. Measured on all 1250
live rows: 97.4% change (1217), 79.8% move UP, 17.6% down, resulting in 79.0%
A-family (MLB 93.4%) against the champion's 0.2%. And rows_actually_shaded = 0
of 1250 — 96.5% of markets are unscored (f=1) and the one scored market present
is the anchor (f=1.0 by construction). The entire re-letter comes from switching
to edge-vs-fixed-bar grading, NOT from efficiency shading, which is inert on
this board. That is an unapproved grading-basis change riding along, which the
order's own "no new scaling changes riding along" guardrail forbids.

Flipping would re-letter 97.4% of an append-only public record, move 79.8% of
grades UP and mint A's on 79% of the board, on a letter whose measured
correlation with outcomes is r ~ 0.005 — the exact scenario the permanent
founder ruling forbids.

SHIPPED — ORDER B (independent of the promotion, and a live falsehood):
edge_pct display retired from GradeResultCard (confidence strip, EDGE stat cell
now honest-absent, alt-ladder rung) and SoccerGradeResult. DeskShowcase kept
(already honest). Computation and the board's signed-edge sort fallback SURVIVE
— deleting them would re-break the sort fixed on 2026-07-29; a test asserts all
three survive and the sort still orders agrees -> disagrees -> absent.

Fixed two build-breakers the retirement caused (orphaned edgeColor import,
orphaned edge_pct destructure; edge_pct stays on the props contract). Two
pre-existing tests superseded rather than deleted: they asserted the edge figure
is sign-coloured, and now assert the stronger property that no edge percentage
renders at all.

Floor: 314 suites / 3908 tests green (9 new), web build exit 0.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01QJs13VsyiSKYQP6rj3NNmc
2026-07-31 00:57:57 -04:00

90 lines
5.3 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# SPEC — ORDER B: edge_pct DISPLAY RETIREMENT (shipped) + PROMOTION GATE (**NOT PASSED**)
2026-07-31. The champion grade was **NOT flipped**. Projection, p_win, and the CLV instrument
untouched. Push scoring untouched.
---
## PART 1 — THE PROMOTION GATE: **THREE OF FOUR PREREQUISITES FAIL. NO FLIP.**
The order states Review Zero is a gate ("all must pass before flip") and that 0.2 failing means
**STOP**. Checked honestly, against code, not memory:
| gate | result |
|---|---|
| **0.1** scores measured or estimated? | **ESTIMATED priors, transcribed from the founding spec.** And the premise's cited values **are not in the code**: the module holds `nfl:passing_yards .85 · nba:points .80 · mlb:strikeouts .60 · mlb:total_bases .55 · nba:role_player .55`. There is **no NBA 0.72 and no WNBA 0.68** — no WNBA score exists at all. |
| **0.2** version-boundary tag landed? | ❌ **NO.** `config/modelEras.js` contains **zero** references to shading. It was deliberately not applied (twice), because nothing had been promoted, and that was reported both times. **The order's own rule: STOP.** |
| **0.3** rollback flag exists? | ❌ **NO.** Zero occurrences of `SHADING_ENABLED` / `EDGE_SHADING` / `shadingEnabled` anywhere in `src/`. There is no flag to revert with. |
| **0.4** takeable tags landed? | ✅ **YES** — migration 034, 1,246 of 1,254 rows tagged, floor recorded per row. |
### The approved delta does not match the measured delta
The premise approves "re-letters **43.6%** of grades in the correct direction (efficient markets
tighten, soft hold)." Measured on all 1,250 live ledger rows:
| measure | approved | **actual** |
|---|---|---|
| grades changed | 43.6% | **97.4% (1,217 of 1,250)** |
| direction | efficient tighten / soft hold | **79.8% move UP**, 17.6% down |
| resulting A-family | — | **79.0% A** (MLB **93.4%**) vs champion 0.2% |
| **rows actually shaded by efficiency** | — | **0 of 1,250** |
**The entire re-letter comes from switching to edge-vs-fixed-bar grading — not from efficiency
shading, which touches zero live rows** (96.5% of markets are unscored → f=1, and the one scored
market present, `mlb:total_bases`, is the anchor where f=1.0 by construction). So the mechanism
being promoted is **inert**, while the thing that would actually change the board is an
unapproved grading-basis switch riding along — which the order's own "no new scaling changes
riding along" guardrail forbids.
### Why this is a refusal to flip, not a delay
Promoting would re-letter **97.4%** of an append-only public record, moving **79.8% of grades UP**
and minting A's on **79%** of the board — on a letter whose measured correlation with outcomes is
**r ≈ 0.005**. That is the precise scenario CLAUDE.md's permanent founder ruling forbids: *"Minting
A's without new information is a relabelled B sold as an A and it corrupts an append-only ledger."*
No new information is present here — 0 rows are shaded.
**To unblock:** land the version-boundary tag, add a rollback flag, replace the input (`p_win` vs
`fair_prob` — a real price-aware edge) so the fixed bar is meaningful, and fit scores for markets
we actually grade. Then re-measure and re-approve against the true delta.
---
## PART 2 — ORDER B: edge_pct DISPLAY RETIRED (**SHIPPED**)
Independent of the promotion, and a live falsehood, so it shipped in full.
**Retired (display only):**
- `GradeResultCard` confidence strip — the `+X% edge` figure.
- `GradeResultCard` stat row — `EDGE` is now honest-absent `—`.
- `GradeResultCard` alt-ladder rung — the same price-free number; the rung's **line and grade
(real model output) still render**.
- `SoccerGradeResult` — the `· +X.X% edge` clause.
**Deliberately KEPT:** `DeskShowcase` (already honest — nulls anything past the sane cap).
**Computation and sort survive, by design.** Backend `edgePctFor`, web `computeEdge`, and the
board's **signed-edge sort fallback** (`descNullsLast(a.edge, b.edge)`) are all intact — deleting
them would re-break the grade-board sort fixed on 2026-07-29. A test asserts all three survive and
that the sort still orders `agrees → disagrees → absent`.
**Two build-breakers found and fixed:** retiring the display orphaned the `edgeColor` import in
`GradeResultCard` and the `edge_pct` destructure in `SoccerGradeResult`. `edge_pct` stays on the
props **contract** (callers still pass it, the backend still computes it) — only the destructure
for display was dropped.
**Two pre-existing tests were SUPERSEDED, not deleted** (`ds4Billboards`, `colorContract`): they
asserted the edge figure is coloured by sign, which was correct while a figure was shown. They now
assert the stronger property — **no edge percentage renders at all**. `edgeColor` itself is
untouched and still enforced for its other consumers (`MarketBreadth`).
---
## VERIFY
Champion grade path **byte-identical** (diff empty across `intelligence/`, `gradeSlateService`,
`snapshotService`) — **no flip performed**. Projection, `p_win`, CLV instrument untouched.
**314 suites / 3,908 tests green** (9 new), **web build exit 0**.
## TAGS
VERIFIED: gates 0.10.4; the 97.4%/79.8%-up/0-shaded delta; the display retirement + surviving
computation/sort. CANNOT DETERMINE: none. **BLOCKED: the promotion — 0.2 (version tag) and 0.3
(rollback flag) are unmet, and the measured delta does not match the approved one.**