2026-08-08-preseason-board29 calls
EVERY directional verdict the board produced at boardComputedAt — all 15 BUY and 14 FADE from a scored pool of 615 players, 160 of whom carried a market price. No filtering by conviction, position or confidence, so the record cannot be flattered by selection.
- Registered at
- 2026-08-08 06:38 UTC
- Board computed at
- 2026-08-08 06:33 UTC
- Model version at registration
- fft-projection-1.0.0-beta
- Edge engine version at registration
- fft-edges-1.0.0
- Scored pool
- 615 players
- Players with a market price
- 160
- Chain link
- none — registered before the chain existed
Which model made these calls. Registered under fft-projection-1.0.0-beta (shipped 2026-08-07, superseded 2026-08-08). The model now shipping — the one behind /api/edges and the figures on /methodology — is fft-projection-2.3.0-beta. That difference is deliberate and it is not going to be tidied away: a call stays attributed to the model that actually made it. Restamping these rows with the current version would let a newer model inherit an older model's record, which is exactly the manoeuvre this page exists to make impossible. Grading uses the price and the outcome, not the model, so a superseded model does not make a call ungradable. What that version was: First market-independent opportunity model. Per-game volume shrunk toward a single flat positional mean; rookies from players.csv draft capital only. The edge engine carries its own version, independent of the model's: fft-edges-1.0.0 assembled this board. /api/edges reports the assembly version serving it right now, which is the one to compare this against — the two identifiers move on separate clocks, so a difference between them is expected rather than an inconsistency.
Consensus of the Yahoo, Sleeper and RTSports ADP columns in the static dataset snapshot bundled with the app at registration time — a snapshot, not a live feed. The ADP recorded on each call is the price the market was charging when the call was made.