feat: proposal intake pipeline with AI-powered generation on /proposals/new

Add full proposal system: DB schema (proposals + proposal_gaps tables),
CLI `ietf intake` command, and web UI with Quick Generate on /proposals/new.
The new page merges AI intake (paste URL/text → Haiku generates multiple
proposals auto-linked to gaps) with manual form entry. Generated proposals
are clickable cards that fill the editor below for refinement.

Uses claude_model_cheap (Haiku) for cost-efficient web intake. Includes
CaML-inspired draft proposals from arXiv:2503.18813 analysis.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-03-09 03:15:11 +01:00
parent ae5e5f8cbf
commit 5ec7410b89
20 changed files with 3316 additions and 2 deletions

17
scripts/proposal-intake.sh Executable file
View File

@@ -0,0 +1,17 @@
#!/usr/bin/env bash
# Proposal Intake — generate IETF draft proposals from text/URLs.
#
# Usage:
# ./scripts/proposal-intake.sh "https://arxiv.org/abs/2503.18813"
# ./scripts/proposal-intake.sh -f notes.txt
# echo "article text" | ./scripts/proposal-intake.sh -
# ./scripts/proposal-intake.sh --dry-run "some interesting paper text"
#
# This passes input to Claude along with all current gaps,
# and stores generated proposals in the database.
# View results at http://localhost:5000/proposals (--dev mode)
set -euo pipefail
cd "$(dirname "$0")/.."
python -m ietf_analyzer.cli intake "$@"