builtbykev
3e78217678
Step 0 input check: read-only feature-coverage probe
...
Before wiring any layer into the grade, measure whether its inputs are
actually populated on real props. A layer wired onto sparse inputs does not
degrade gracefully by default -- Number(null) === 0 turns a missing
opportunity into 'zero opportunity', a fabricated input rather than an
absent one.
Reports population per feature, SPLIT BY stat_type, because a feature can
be 100% present for batters and 0% for pitchers and a pooled number would
hide exactly that. Also reports whether ab_per_game varies across a
player's own props -- a per-player constant can only move all of a
player's props together, which is a very different thing from a per-prop
opportunity signal.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01QJs13VsyiSKYQP6rj3NNmc
2026-08-01 02:34:33 -04:00
..
2026-07-20 22:30:12 -04:00
2026-07-31 00:39:13 -04:00
2026-06-08 18:35:13 -04:00
2026-06-08 18:35:13 -04:00
2026-06-08 18:35:13 -04:00
2026-07-29 21:13:51 -04:00
2026-06-08 18:35:13 -04:00
2026-07-23 04:05:23 -04:00
2026-07-10 17:00:29 -04:00
2026-06-08 18:35:13 -04:00
2026-06-15 18:21:32 -04:00
2026-03-21 14:21:34 -04:00
2026-08-01 01:24:55 -04:00
2026-07-20 22:38:32 -04:00
2026-07-20 22:38:32 -04:00
2026-07-20 11:31:48 -04:00
2026-06-08 18:35:13 -04:00
2026-03-22 05:11:42 -04:00
2026-07-27 00:45:01 -04:00
2026-07-27 00:45:01 -04:00
2026-03-21 14:21:34 -04:00
2026-07-21 21:38:51 -04:00
2026-06-10 03:37:07 -04:00
2026-07-20 12:27:47 -04:00
2026-07-31 23:47:13 -04:00
2026-07-22 22:42:55 -04:00
2026-06-13 21:30:57 -04:00
2026-06-13 21:30:57 -04:00
2026-03-21 12:45:15 -04:00
2026-06-08 18:35:13 -04:00
2026-06-18 20:15:38 -04:00
2026-07-11 14:31:35 -04:00
2026-07-18 01:42:16 -04:00
2026-07-20 13:17:34 -04:00
2026-07-21 21:38:51 -04:00
2026-07-13 18:12:31 -04:00
2026-06-08 18:35:13 -04:00
2026-08-01 02:34:33 -04:00
2026-07-15 18:07:14 -04:00
2026-07-20 03:25:01 -04:00
2026-07-21 01:43:13 -04:00
2026-07-11 14:31:35 -04:00
2026-08-01 02:06:25 -04:00
2026-07-20 12:05:16 -04:00
2026-07-29 22:05:30 -04:00
2026-06-12 11:16:58 -04:00
2026-07-11 19:38:37 -04:00
2026-08-01 00:50:54 -04:00
2026-03-21 11:41:18 -04:00
2026-07-11 20:08:24 -04:00
2026-07-31 23:52:28 -04:00
2026-06-08 18:35:13 -04:00
2026-03-21 14:21:34 -04:00
2026-06-13 12:37:08 -04:00
2026-07-11 19:38:37 -04:00
2026-07-12 00:45:29 -04:00
2026-07-29 02:47:47 -04:00
2026-07-21 00:30:16 -04:00
2026-07-12 13:42:18 -04:00
2026-06-08 18:35:13 -04:00
2026-06-08 18:35:13 -04:00
2026-06-08 18:35:13 -04:00
2026-03-21 11:41:18 -04:00
2026-07-11 14:29:22 -04:00
2026-07-13 23:33:26 -04:00
2026-03-22 05:11:42 -04:00
2026-07-13 23:33:26 -04:00
2026-07-20 12:27:47 -04:00
2026-07-20 11:31:48 -04:00
2026-07-13 22:30:50 -04:00
2026-07-21 01:20:29 -04:00
2026-07-21 01:06:17 -04:00
2026-03-21 12:45:15 -04:00
2026-07-10 21:34:26 -04:00
2026-06-19 15:45:07 -04:00
2026-03-22 05:11:42 -04:00
2026-03-22 05:11:42 -04:00
2026-07-21 01:57:33 -04:00
2026-07-20 17:05:04 -04:00
2026-06-18 23:56:26 -04:00
2026-07-25 19:09:02 -04:00
2026-08-01 00:50:54 -04:00
2026-07-15 18:07:14 -04:00
2026-06-08 18:35:13 -04:00
2026-07-15 18:07:14 -04:00
2026-06-10 03:37:07 -04:00
2026-08-01 02:02:53 -04:00
2026-07-20 03:25:01 -04:00
2026-06-08 18:35:13 -04:00
2026-06-08 18:35:13 -04:00
2026-06-12 17:58:55 -04:00
2026-07-13 18:12:31 -04:00
2026-06-08 18:35:13 -04:00
2026-07-20 05:41:41 -04:00
2026-06-08 18:35:13 -04:00
2026-07-11 19:32:17 -04:00
2026-08-01 02:12:07 -04:00
2026-07-20 22:30:12 -04:00
2026-07-11 00:39:18 -04:00
2026-07-11 20:08:24 -04:00
2026-07-31 18:42:44 -04:00
2026-07-11 14:34:45 -04:00
2026-06-19 15:45:07 -04:00
2026-07-29 22:05:30 -04:00
2026-06-08 18:35:13 -04:00
2026-07-17 15:26:49 -04:00
2026-07-21 01:43:13 -04:00
2026-06-11 16:21:18 -04:00