Quest: Continuous Proposal Generation (eb6ff576-9d5).
Pairs with already-seeded experiment_proposal generator (8b9c17e8) and funding_proposal artifact (fcf09f0d). This adds the missing two kinds.
Acceptance:
- artifact_type='analysis_proposal' schema: {analysis_question, datasets[], methods, expected_outputs, est_compute_hours, target_notebook_template}. Conversion: approved analysis_proposal → Jupyter notebook stub artifact (notebook_artifact_id linked).
- artifact_type='code_proposal' schema: {feature_summary, rationale, target_files[], proposed_changes_summary, est_loc, related_artifact_ids[]}. Conversion: approved code_proposal → Orchestra task with provenance link to the proposal artifact.
- Generators: from-hypothesis, from-gap, from-discussion, from-collider-session — each a function in scidex/proposals/generators.py.
- Ranking: same Elo machinery as hypotheses, scoped per kind. composite_score per kind with weighted dimensions.
- Spec: docs/planning/specs/proposal_kinds_analysis_code.md.
Why now: the user's mission is 'generate actionable items' — 4 proposal kinds (experiment, funding, analysis, code) cover the action surface. Two are seeded; need the other two.
Completion Notes
Auto-release: non-recurring task produced no commits this iteration; requeuing for next cycle