← ClaudeAtlas

crucible-research-foundationslisted

Validate findings, design shuffled nulls, check label leakage, review causal features. TRIGGERS - shuffled null, label leakage
terrylica/cc-skills · ★ 49 · AI & Automation · score 79
Install: claude install-skill terrylica/cc-skills
# Research Foundations — 6 epistemic disciplines > **Self-Evolving Skill**: This skill improves through use. If a discipline's guidance fails in practice or a new trap emerges, update the relevant section AND append to `references/evolution-log.md`. Don't defer. Read these in order. The first three (causal, labels, nulls) are the hardest prerequisites — violating any of them silently invalidates every downstream result. --- ## 1. Causal-feature invariant (bars[:i]) Every feature `f[i]` used at trigger/decision bar `i` must be computable using only `bars[0:i]` — never `bars[i]`, never `bars[i+1:]`. Violation produces look-ahead bias; findings silently become worthless. **Canonical pattern**: ```python for i in range(n): lo = max(0, i - window) wind = values[lo:i] # EXCLUSIVE upper bound — no peeking f[i] = compute(wind) ``` Note `lo:i` (exclusive), not `lo:i+1`. This discipline "feels off by one" but is correct. **Verification test** (add to every new feature function): ```python def test_causality(fn, n=1000): bars = generate_test_bars(n) f_orig = fn(bars) bars_mod = bars.copy() bars_mod[500:] *= 2 # perturb the FUTURE f_mod = fn(bars_mod) assert np.array_equal(f_orig[:500], f_mod[:500]), "look-ahead detected" ``` **Silent-bug signature**: impossibly clean results (tw > 10 bps on FX, win rate > 70%, OOS matches IS perfectly). Full reference: `findings/methodology/10-causal-feature-invariant.md`. --- ## 2. Label-leakage (bar-