| name | source-coverage-check |
| description | Pre-writing source sufficiency check for investment value report chapters. Use BEFORE launching the report pipeline (ivr_run_report_pipeline) to verify each selected chapter has adequate source coverage. Searches both trusted source domains and broad web, then reports gaps via ask_clarification so the user can decide to proceed, add more PDFs, or remove chapters. |
Source Coverage Check — 信源充分性检查
When to Use
Trigger this skill AFTER ivr_create_report_task returns success and BEFORE calling ivr_run_report_pipeline. Also use it when the user uploads new PDFs and asks "现在证据够不够写第X章?"
Rule: Never call ivr_run_report_pipeline before completing this check and getting the user's explicit confirmation.
Step 1: Gather Inputs
Before searching, gather:
- The company's
industry_code from ivr_list_companies output
- The task's
chapter_ids (which chapters are selected for this task)
- The user's trusted sources via
ivr_get_trusted_sources — these are domains the user configured in the workbench
- The list of uploaded PDFs via
ivr_list_company_files — these are already RAG-indexed
Step 2: Per-Chapter Evidence Checklist
For each selected chapter, check whether the following evidence types are covered:
ch4 — 行业分析
| # | Required Evidence | Red Flag (blocking gap) |
|---|
| 1 | Industry classification and scope | No SIC/industry code data at all |
| 2 | Market size (current + CAGR projection) | Missing market size or sourced from random blog |
| 3 | Competitive landscape (top 5-10 players, market share) | No competitor data |
| 4 | Regulatory and policy environment | No regulatory policy documents |
| 5 | Technology trends and substitution risks | No technology trend analysis |
ch5 — 公司分析
| # | Required Evidence | Red Flag (blocking gap) |
|---|
| 1 | Company business model description | No business description from filings |
| 2 | Revenue breakdown by segment (last 3 years) | No revenue segmentation data |
| 3 | Profitability metrics (gross margin, net margin) | No profit data from filings |
| 4 | R&D pipeline and technology moat | No R&D disclosure |
| 5 | Management and governance structure | No governance info |
ch6 — 募投项目
| # | Required Evidence | Red Flag (blocking gap) |
|---|
| 1 | Fundraising purpose and amount | No project investment plan |
| 2 | Capacity expansion details | No capacity data |
| 3 | Project timeline and milestones | No timeline info |
| 4 | ROI projection and payback period | No financial projection for the project |
| 5 | Risk factors specific to the project | No project risk disclosure |
ch2 — 盈利预测
| # | Required Evidence | Red Flag (blocking gap) |
|---|
| 1 | Historical revenue (3 years, by segment) | Missing historical revenue |
| 2 | Historical cost structure (COGS, SG&A, R&D) | Missing cost breakdown |
| 3 | Industry growth rate benchmarks | No industry growth data |
| 4 | Company guidance or analyst consensus | No forward-looking estimates |
| 5 | Key assumptions (pricing, volume, margins) | No basis for assumptions |
ch3 — 估值分析
| # | Required Evidence | Red Flag (blocking gap) |
|---|
| 1 | Comparable company list (5+ peers) | No comparable companies found |
| 2 | Comparable PE/PB/PS multiples | No valuation multiples data |
| 3 | Risk-free rate and equity risk premium | No market parameters |
| 4 | DCF inputs (FCF, WACC, growth rate) | Missing 2+ DCF parameters |
| 5 | Sensitivity analysis basis | No scenario data |
ch7 — 风险提示
| # | Required Evidence | Red Flag (blocking gap) |
|---|
| 1 | Risk factors from prospectus | No risk disclosure document |
| 2 | Industry-specific risk reports | No industry risk analysis |
| 3 | Litigation and compliance issues | No legal/compliance check |
| 4 | Macro and policy risk factors | No policy risk assessment |
Step 3: Search Strategy
For each chapter and each missing evidence type:
Pass 1 — Trusted Sources (priority)
For each trusted source domain from ivr_get_trusted_sources, use web_search with site: modifier:
web_search(query="<company> <topic> <year> site:<trusted_domain>")
Example: web_search(query="示例公司 营收结构 2024 site:cninfo.com.cn")
Pass 2 — Broad Search (supplementary)
For evidence still missing after Pass 1, search without domain restriction:
web_search(query="<company> <topic> <year>")
Pass 3 — Deep Read
For promising results from either pass, use web_fetch to extract specific data points. Only fetch 2-3 most relevant pages per chapter.
Industry-Specific Domains (supplement to workbench-configured trusted sources)
If the user hasn't configured trusted sources for a specific industry, use these authoritative domains:
bio (生物医药):
| Domain | Label |
|---|
| cde.org.cn | 国家药监局药审中心 |
| nmpa.gov.cn | 国家药品监督管理局 |
| pharmcube.com | 医药魔方 |
| yaozh.com | 药智网 |
new_energy (新能源):
| Domain | Label |
|---|
| nea.gov.cn | 国家能源局 |
| cbea.com | 中国电池工业协会 |
| cnemining.com | 中国新能源矿业网 |
semiconductor (半导体):
| Domain | Label |
|---|
| miit.gov.cn | 工业和信息化部 |
| csia.net.cn | 中国半导体行业协会 |
| icwise.com | 芯谋研究 |
finance (金融):
| Domain | Label |
|---|
| nfra.gov.cn | 国家金融监督管理总局 |
| pbc.gov.cn | 中国人民银行 |
| sse.com.cn | 上海证券交易所 |
| szse.cn | 深圳证券交易所 |
Step 4: Coverage Judgment
For each chapter, assign a coverage level:
- 充分 (sufficient): 4+ evidence types found from authoritative sources. Chapter can be written with confidence.
- 部分覆盖 (partial): 2-3 evidence types found. Chapter can be written but will have "待补充" sections.
- 不足 (insufficient): 0-1 evidence types found. Chapter should NOT be written — the output would be mostly fabricated.
Step 5: Report Gaps via ask_clarification
After checking all chapters, call ask_clarification with:
clarification_type: "risk_confirmation"
context: Brief summary of company, industry, and checked chapters
question: Structured per-chapter report. Example format:
信源充分性检查结果:
| 章节 | 覆盖等级 | 已找到 | 缺失项 |
|------|---------|--------|--------|
| ch4 行业分析 | 充分 | 市场规模、竞争格局、政策文件 | — |
| ch5 公司分析 | 部分覆盖 | 商业模式、管理层 | 近3年营收分拆、研发管线详情 |
| ch2 盈利预测 | 不足 | 行业增长率 | 历史财务数据、成本结构、分析师预期 |
建议:ch2 盈利预测缺少核心财务数据,建议补充公司财报或券商研报PDF后再生成。
options: ["继续生成报告", "我先补充更多 PDF 再继续", "移除信源不足的章节后生成"]
Step 6: Act on User Decision
- 继续生成报告: Call
ivr_run_report_pipeline(task_id) immediately.
- 我先补充更多 PDF: Wait for the user to upload files. After upload, re-run this skill from Step 2.
- 移除信源不足的章节后生成: Ask the user which chapters to remove, update the task if needed, then proceed.