Skip to content

[Epic] Manuscript Venue Routing + Multi-Template Pipeline (会议路由 + 多模板论文管线) #11

@hitome0123

Description

@hitome0123

目标 (Goal)

把当前硬编码 ICLR2026 单一模板的论文生成路径,升级为:

  1. 自动选会议:根据论文内容(claim 类型 / 数据集 / 实验规模 / 领域)自动路由到合适的 AI 顶会
  2. 多模板插件化:支持 6 个 AI 顶会模板(NeurIPS / ICML / ICLR / ACL-ARR / CVPR / arXiv),未来加新会议只需写 Adapter
  3. 排版质量自动卡关:5 类格式 lint(字号/段落/引用/bib/float),不达标挡 manuscript bundle
  4. 决策可视化:Dashboard 显示路由决策 + 拒绝理由 + lint 报告,评审者无需翻文件系统

背景

会议结论:当前 AI 生成论文格式不规范(字体大小不一、布局紧凑),需要建立路由机制让 AI 根据内容选会议/期刊并套用对应官方模板。

本 epic 覆盖会议待办「论文排版规范化」全部范围(不含 AI 绘图、云端 GPU 两条线)。

#9 的关系

#9 是 agenda-driven autonomous research loop 的主干:选题、实验、证据、论文包、审稿、修订计划。
本 epic 是 #9 论文出口层的增强:让 #9 产出的 manuscript bundle 能按 venue 自动路由、套用合适模板,并通过格式质量门。

因此本 epic 不替代 #9,而是依赖 #9/PR #10 的闭环基础。若 #9 对应代码尚未合并,开发者必须在 PR 中明确说明当前基于 main 还是基于 #10 分支开发和验证。

子 issue 拆分(4 个,每个约 1 天)

  • D1: Foundation — TemplateAdapter base + VenueRouter + venues.yaml
  • D2: Top-venue adapters — NeurIPS / ICML / ACL-ARR / CVPR
  • D3: FormatLinter (5 checks) + evidence gate + LLM tiebreaker
  • D4: Routing API + dashboard card + demo + tests + docs

PR 交付计划

  • PR1 = D1(基础设施 + 路由骨架)
  • PR2 = D2(4 顶会模板)
  • PR3 = D3 + D4(质量门 + UI + 端到端验收)

总验收

  • 6 个 AI 顶会全可路由
  • 同一 selection 出 3 个 venue-specific bundle(demo 证明)
  • FormatLinter 在 issue 超阈值时挡住 manuscript bundle
  • Dashboard 显示 chosen venue + rationale + 3 个 rejected + lint count
  • 现有测试全绿;如果存在已知 baseline fail,必须列出具体测试名、失败原因和与本 epic 无关的证据
  • docs/top_venue_manuscript_chain.md 更新(去掉 ICLR2026 硬约束描述)

AI 可验收证据包(必须)

PR 必须新增或更新一个机器可读证据文件,例如:

artifacts/manuscript_venue_routing_acceptance.json

该 JSON 至少包含:

{
  "base_ref": "origin/main or PR branch",
  "commit": "...",
  "depends_on": ["#9 or PR #10 if applicable"],
  "venues": ["iclr2026", "neurips2024", "icml2024", "acl_arr", "cvpr2024", "arxiv_plain"],
  "demo_selection_id": 123,
  "generated_bundles": [
    {"venue": "iclr2026", "bundle_path": "...", "main_tex_sha256": "...", "compile_status": "pass|skipped|fail"},
    {"venue": "neurips2024", "bundle_path": "...", "main_tex_sha256": "...", "compile_status": "pass|skipped|fail"},
    {"venue": "arxiv_plain", "bundle_path": "...", "main_tex_sha256": "...", "compile_status": "pass|skipped|fail"}
  ],
  "format_lint": {
    "clean_fixture_status": "pass",
    "dirty_fixture_status": "block",
    "checks_triggered": ["font_size_consistency", "section_spacing", "float_density", "citation_density", "bib_style_match"]
  },
  "api_evidence": {
    "route_endpoint_status": 200,
    "venue_endpoint_status": 200,
    "format_lint_endpoint_status": 200
  },
  "test_command": "...",
  "test_summary": "..."
}

AI 验收会优先读取该文件,并交叉检查文件路径、sha256、API 输出和测试结果。

防伪 / 防硬编码要求

  • 不允许只针对一个固定 run_id、selection_id 或 insight title 写死 venue 选择。
  • 必须至少提供 3 个不同 fixture state,分别命中不同 venue。
  • 必须至少提供 1 个 negative fixture,证明 router 会拒绝不适合的 venue,并给出 rejected reason。
  • venues_v1.yaml 增加一个测试 venue 后,router 应能通过配置识别,不需要改 Python 代码。
  • 如果 LaTeX 编译被跳过,必须在证据包里写明跳过原因、检测到的 LaTeX binary 状态和替代验证方式。

复现前置要求

任何开发者开始本 epic 前,必须先在 PR 描述中写明 clean checkout 基线:

git clone -> install -> init_db -> tests -> minimal demo

如果基线无法复现,必须先说明是环境问题、依赖问题、main 分支问题,还是 #9/#10 尚未合并导致的集成问题。

范围之外 (Out of scope)

  • AI 绘图优化(何柯负责)
  • 云端 GPU 调用(何柯负责)
  • 多轮 revision loop 自动执行
  • 投稿系统对接

参考

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions