Add 6 new analysis pages and 5 CLI reports

New web UI pages with Plotly charts:
- /sources: cross-source comparison (ratings, categories by standards body)
- /false-positives: profiling of 73 false positives (box plots, terms)
- /trends: temporal evolution (submissions, ratings, safety ratio over time)
- /complexity: draft complexity matrix (correlations, scatter plots)
- /idea-analysis: idea novelty deep dive (sunburst, distribution, shared ideas)
- /citations: enhanced with influence analysis and BCP dependency tabs

New CLI reports (ietf report <name>):
- sources, false-positives, citations, complexity, idea-analysis

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-03-08 20:35:32 +01:00
parent 8515e46d5d
commit dec8667193
8 changed files with 1517 additions and 63 deletions

View File

@@ -735,6 +735,21 @@ def api_bcp_analysis():
return jsonify(get_bcp_analysis(db()))
# ── Idea Analysis ────────────────────────────────────────────────────────
@app.route("/idea-analysis")
def idea_analysis():
data = get_idea_analysis(db())
return render_template("idea_analysis.html", data=data)
@app.route("/api/idea-analysis")
def api_idea_analysis():
data = get_idea_analysis(db())
return jsonify(data)
# ── Trends & Complexity ──────────────────────────────────────────────────
@@ -752,29 +767,12 @@ def complexity():
@app.route("/api/trends")
def api_trends():
data = get_trends_data(db())
return jsonify(data)
return jsonify(get_trends_data(db()))
@app.route("/api/complexity")
def api_complexity():
data = get_complexity_data(db())
return jsonify(data)
# ── Idea Analysis ────────────────────────────────────────────────────────
@app.route("/idea-analysis")
def idea_analysis():
data = get_idea_analysis(db())
return render_template("idea_analysis.html", data=data)
@app.route("/api/idea-analysis")
def api_idea_analysis():
data = get_idea_analysis(db())
return jsonify(data)
return jsonify(get_complexity_data(db()))
if __name__ == "__main__":