Build a capability that converts a SciDEX hypothesis into a structured experimental protocol, and apply it to the top 7 hypotheses (composite_score > 0.9). Each proposal should be specific enough that a trained neuroscientist could submit it as a grant aim.
WHY: SciDEX's highest-scored hypotheses exist as DB rows. A research brief explains what the hypothesis is; an experiment proposal specifies HOW TO TEST IT — model system, controls, statistical approach, sample size, timeline, cost. This closes SciDEX's "time-to-first-experiment" gap.
WHAT TO DO:
1. Create scidex/forge/experiment_proposal.py with generate_experiment_proposal(hypothesis_id) returning: {null_hypothesis, model_system, intervention, primary_readout, secondary_readouts, expected_effect_size, statistical_approach, sample_size_rationale, timeline_weeks, estimated_cost_usd, falsification_criterion, key_controls, citations (PMIDs)}.
2. Use llm.py for the LLM call with structured JSON output.
3. Load hypothesis record from PostgreSQL + associated debate sessions + evidence.
4. Verify all PMIDs in citations via paper_cache.get_paper().
5. Apply to these hypothesis IDs (re-query at start for current top 7 by composite_score): h-var-b7e4505525, h-var-e2b5a7e7db, h-var-e95d2d1d86, h-bdbd2120, h-var-a4975bdd96, h-var-08a4d5c07a, h-alsmnd-870c6115d68c.
6. Commit each proposal as JSON artifact to data/scidex-artifacts/experiment-proposals/ via commit_artifact().
READ FIRST: docs/planning/specs/forge_experiment_proposal_generator_spec.md (merged after 2026-04-28)
DO NOT: Fabricate sample sizes without power calculation basis. Propose phase III trials. Duplicate work from research brief task (33dca458) — that task generates explanatory docs; this generates lab protocols.
SUCCESS: scidex/forge/experiment_proposal.py created, 7 JSON proposals committed as artifacts with verified PMIDs.
Completion Notes
Auto-release: non-recurring task produced no commits this iteration; requeuing for next cycle