图表规格(设计权威)
定位:把一张表拆成两件事——能交给宿主画的图规格(图型、轴、序列,人来选)与读表要点(每条一个数,逐字回那一格)。 不是:不给投资建议、不判评级与目标价、不替你算表里没有的数,也不会自己上传或发布任何东西。
0. 是什么 / 不是什么
| 是 | 不是 |
|---|---|
| 图规格四件(图型/横轴/纵轴/序列)齐在,且每件都是人选过的 | 不是代你选图:选哪种取决于你想看清的关系,机器按列形状猜会把「能画」说成「该这么画」 |
| 读表要点:一条一句,数括在「」里并配列头,逐字对到所报那一格 | 不是重算:同比、环比、占比、平均一律交回宿主或电子表格,本件不代人算也不代验算得对不对 |
| 四类限度逐类点名(缺格与空值/合并格与跨列表头/单位与口径/表外推与未读到) | 不是「常见坑十条」清单:表里没有的写未见到,不补常识性推断 |
判断位 [待人工],三条硬边界写在三面 |
不是投资结论:图说到哪儿为止、给谁看、支撑什么判断,是人的事 |
| 一次一张表 | 不是跨表拼接:不把两张表的数拼进同一张图 |
1. 输入
- 一张表的正文:本地文件,或经解析通道取回的 PDF/扫描件/照片里的表(
parsed-doc)。 - 可选:页标形状(本件认
第 N 页);表行认 markdown 管道行(| a | b |),分隔行上一行按语义当列头——列头不当数据、也不当要点搬进第二节。 - 列头与该行格数对不上(合并格/跨列表头)时,按列头定位不到那一格——首格也不放行:把并列的列头默认对到第一格就是猜,本件不猜。机检发红,那一行要么整行照序写、要么落第三节点名。
- 出数版本与手头这份是否同一版,由你指定;本件不猜,两条路都不判。
2. 工作流(四步,每步都可停)
- 取正文:远端走解析通道,本地直读;第四节登记一行来源(定位+解析日)。
- 排骨架:
python3 -B scripts/collect_chart.py --source 那份表.md --out 图与要点.md——它把表里的数值按「列头」=「数」配对逐字搬进第二节并自带两枚定位(列头与该行格数对不上的那一行走整行照序那一形),第一节的规格四件与第三节的四类限度都留待核位。 - 人选与判:第一节四件规格逐件填(图型要回答「我想看清什么关系」);第二节每条要点写成一句人话,数括在「」里并配列头(
「2025Q3」=「12.4」),或整行照序把那一行的数按列次序括全;第三节四类逐类填位置或写未见到。 - 过机检:
python3 -B scripts/check_chart.py 图与要点.md --table 那份表.md,按详行E-*码逐条改。机检过完它仍只是一份能画的中间件:图要不要画、给谁看、支撑什么判断,是人的事。
3. 输出契约(四节,机检按此判)
## 1、图的规格:四件都在——图型/横轴/纵轴/序列,每件写成- 图型:…一行;待核位不算填过(本件不代选)。## 2、读表要点:3–10 条;每条写成一行列表项,行首必须是-或*(机检按列表符计条数,普通行不算要点);每条一个数(用「」括出)、行末一枚[S#]、带页码或文件:行号;两个定位同时给时各自都要成立。括出的数要落在所报那一行的那一格,两条形制之一——「列头」=「数」配对,或整行照序(把那一行的非空格按列次序括全);只说「数在这一行」不配列头,机检按道三发E-QUOTE。配对形的前提是列头格数等于该行数据格数:表头被并(跨列表头/合并格)时按列名对到哪一格都是猜,这一行只认整行照序那一形。## 3、图的限度与未取到:四类逐类在位(缺格与空值/合并格与跨列表头/单位与口径/表外推与未读到),每类要么给位置要么写「未见到/未取到」;没读到的部分也列在这一节。## 4、来源与解析日:一行一源,- [S#] 名称(文件:行号 或 URL |解析日 YYYY-MM-DD)。 书名号「」在产物全篇只有一个用途=逐字引表里的原文,条目行内外都一样(非条目行括一句表里没有的话,道三当场发E-QUOTE)。但道五不设引用豁免:表里那句若含投资倾向表述,括在这儿照样发红——要处理它就写进第三节点名、不括原话、带定位。要强调别的词就别括。 首行必须是# 标题;头部另有四件自标:AI 整理初稿/请回表核对/不据图给投资建议/判断位 [待人工],逐字在位。
4. 通道与降级(两条路各自缺什么,写在同一句里)
- 主路=解析通道:表在远端(云盘 PDF、扫描件、披露照片)时,正文走解析通道取回——逐字带页码或行号是这一腿的价值。连上判据按路分写:宿主列工具走 MCP 的
tools/list握手——连上之后那份返回里应当能看到这些名字:remote-only 那一面是parse、get_parse_status、cancel_parse三枚,带 Bridge 的那一面再加read_result、read_outline、discard_result、save_result共七枚;两路枚数不同,拿一个固定数判两路必错一边。名字在场只证它们被暴露,不证解析跑得通——URL 那一腿要拿一枚真实 URL 跑一次 parse 才证该路,本地文件那一腿要拿一枚真实本地文件跑一次 parse 才证该路(remote-only 不读本地件);本件不自证也不代跑。三层各自能证到什么,互不等价:装好 skill ≠ 已配凭据 ≠ 通道已连。配置指路:解析腿官方配置页 https://cuecue.cn/hub/omni-reader(本件只依赖这一条腿,数据腿那页不在本面上引)。命令与三层自查见README.md的「装上机 → 连通道 → 出结果」那一节。 - 降级=只读本地:本件仍能跑
scripts/collect_chart.py,把手上那份排成骨架;代价同句写清——扫描与照片那一侧的表读不进来,缺的是那一格的逐字正文,不是排版;「手里这份是不是出数那一版」这一格两条路都不判,由你指定基准版并对齐。 - 骨架不是产物:采集器留的规格四件与四类限度都是待核位,机检按设计在道一发
E-FORMAT、在道四发E-COVERAGE——没人选过图型、没判过限度的材料不该被当成能交付的图规格。
5. 三条硬边界(机检守,不由人守)
- 不据图给投资建议:建议买入/卖出/加减仓、可投/不宜投资、目标价、评级动作一类在作者句子里单靠词就发红,不要求情态词在场;要写就同一语义段里挂
[待人工]。 - 不承诺数值精度外的结论:换了说法的判断同样拦——最高级/比较级形态(最强/优于/更差…)与投资结论对象词(估值/基本面/前景/配置…)落在同一语义段即发红。语义段只按结构切:标题/列表项/表格/引用块才另起一段,其余行含仅有缩进的普通续行并入上一段——写完「增速放缓」换行再写「建议减仓」算同一句,「结论:」顶格、下一行两格缩进接引文也算同一句,换行与缩进都不算躲开。道五不设引用豁免(0.1.4 起):书名号里的内容同样参与判定——表里真有这句只证它出现过,不为它背书;把出处写明(表注原文:「…」)、写成第三方声音(有人主张「…」)或裸括着都不再是出口。合法出口只有一个:第三节点名、不括原话、带定位(例:表内含投资倾向的表述,本件不引用、不采信〔第 3 页〕,文件:行号)。代价同批写进三面:表里有投资倾向字样时引用它就红,红的是引用行为不是造数,这是选定的保守面,不是缺陷。语义段仍只按结构切:标题/列表项/表格/引用块另起段,仅有缩进的普通续行并入上一段,换行与缩进都不算躲开。要留判断就同一语义段里挂
[待人工]。 - 评级与目标价一律
[待人工]:本件不代人算数,也不把算出来的数说成结论;表里没有的数不能进要点(道三发E-QUOTE),数在表里但没配列头、配错了那一格、或表头被并还想按列名定位,也照样不能进要点(同发E-QUOTE,详行点名是「逐字回表(全篇)/整行照序或配列头/数没配列头/列头配对不成立/列头对不齐只认整行照序」哪一支),没读到的部分必须点名(道四发E-COVERAGE)。 - 本件不发请求、不上传、不落盘到本包之外;披露表常带未公开口径,存放与转发由用户负责。
6. 最小可复跑链(零网络、零计费、不执行表里提到的任何程序)
python3 -B scripts/collect_chart.py --source scripts/fixtures/target-table.md --out 我的图与要点.md
python3 -B scripts/check_chart.py 我的图与要点.md --table scripts/fixtures/target-table.md # 期望发红:规格四件与四类限度都是待核位
python3 -B scripts/check_chart.py scripts/fixtures/good-chart.md --table scripts/fixtures/target-table.md # 期望 PASS
python3 -B scripts/check_chart.py --selftest # 好样五枚须过、十八枚坏样须各发它该发的那一道
bash scripts/fixtures/run_fixtures.sh # 离线三档一次跑完,末行自报档数与不合枚数
7. 边界(含与自家四枚的分工)
- 本件只对「这张表里哪一格是多少、能不能画、我有没有把它指回那一格」负责,且只对形制负责:图用不用、给谁看、支撑什么结论,是人的判断。
- 与
cue-omni-ontology的分工:那一枚产出的是跨期变化与被核过的数值包(知识层),不产图规格;本件产的图规格交回宿主去画,不建知识包。 - 与
cn-earnings-note的分工:那一枚是财报点评初稿(八节文稿,产物是文章);本件产物是规格与要点,不写点评也不给观点。 - 与
cn-contract-clauses的分工:那一枚单文档条款级拆解(一条一句一位置+七类点名);本件是同一文档内表→形状的拆解,判的是数在不在那一格、图能不能立得住。 - 与
omni2docx的分工:那一枚做格式转换(解析结果变 docx/html/pptx),不改内容形状;本件不改格式、不排版,只出规格。 - 一次一张表,且只在拿到正文之后才做:不接「凭文件名猜数」,不接跨表拼接,不接「帮我把这张图画出来」——画那一步在宿主。
