Panel Ruling: NBA Player Props Research & Intelligence Pipeline

Date: 2026-03-31 Panel: Opus 4.6, Sonnet 4.6, Gemini 3.1 Pro, Grok 3, GPT-4.1 (via OpenRouter) Topic: How should research/intel work for the NBA Player Props desk Winner: Opus (Advisor B) — scored 1st by multiple reviewers


Consensus Decisions (all 5 advisors agree)

1. Separate Pipeline

Build a separate player props research pipeline, not an extension of the team module. Player props research has different timing, different queries, and different output format than team-level research.

2. Multi-Pass Timing

Run multiple passes, not a single pre-game sweep:

Pass Time Purpose
Early scan ~2PM ET Injury report drops, initial lineup intel
Main pass ~5PM ET Beat reporter updates, rotation news, referee assignments
Late sweep ~6:15PM ET Final injury decisions, late scratches
Event-driven On trigger Fires immediately when team module confirms a player OUT

3. Hybrid Auto-Adjust with Confidence Gating

4. Minutes-Based Scaling (sqrt rule)

When a player's projected minutes change:

5. Usage Cascade Model

When a teammate is confirmed OUT:

6. Key Data Sources

Source Type Cost
NBA official injury report Mandatory Free
Beat reporter X/Twitter feeds High value Free (scrape)
Referee assignment databases High value Free
Coach pre-game media availability Medium value Free (transcripts)
DFS ownership projections Contrarian signal Free/cheap
Practice reports SKIP — too noisy N/A

7. Output Format

Structured JSON extraction from LLM (not free-text parsing):

interface IntelAdjustment {
  player_name: string;
  stat_type: string;
  adjustment_type: 'mean_shift' | 'variance_shift' | 'minutes_cap';
  magnitude: number;
  confidence: 'HIGH' | 'MEDIUM' | 'LOW';
  source: string;
  timestamp: string;
}

Key Unique Insights

Opus (winner):

Sonnet:

Gemini:

Grok:

GPT-4.1:

Blind Spots (all 5 missed)


Raw council files: /home/ubuntu/edgeclaw/data/councils/2026-03-31/player-props-research/

Source: ~/edgeclaw/results/panel-results/player-props-research-ruling.md