Cyber-Ming English

战报与样本

战报一:从伪完成到真实验收(脱敏版)

English中文
战报一:从伪完成到真实验收(脱敏版)

战报一:从伪完成到真实验收(脱敏版)

目录

给强怀疑者的最短摘要

这不是完整附件包,也不是一篇“作者自述一切都已解决”的凯歌稿。它首先是一份脱敏战报,目标只有一个:

证明这套方法怎样把一次看起来已经完成的交付,硬生生打回真实世界。

如果你只想看最硬的部分,可以直接跳到:

这篇战报要证明的,不是“AI 最后又一次成功了”,而是:

  • 执行位第一次报完工时,其实属于伪完成
  • 审计位没有接受总结陈词,而是持续追要物理铁证
  • 一旦进入真实运行,立刻暴露 401 Authentication Fails
  • 验收门槛继续抬高到图数据库真实导入后,又暴露 variable already defined

如果你是强证据偏好读者,那么这篇最值得看的不是修辞,而是这条翻案链本身。

先声明这页在讲什么

为了避免误读,这里先把两件事说死。

第一,这里说的“深水区”主要是代码逻辑与人机治理的深水区

这篇战报对应的深水区,首先是:

  • 代码逻辑已经变深
  • 执行链路与验收链开始拉长
  • 人类很容易被一份体面总结带离真实世界
  • 执行位、审计位、人类三方之间必须重新分配权力

不是在讨论“大厂大项目、长期技术债、复杂团队合作、组织协调成本”那类深水区。后者当然也重要,但不是这套协议当前最主要瞄准的战场。

第二,这个示例是手工做法跑通的

这里故意采用手工跑法,不是因为 Skill 和 system prompt 不重要,而是为了把证明对象钉死:

  • 这页要证明的,首先不是某个 Skill 很强
  • 也不是某个系统提示词很强
  • 它真正要证明的是:最小闭环本身、权力制衡本身、以及皇权居中的结构本身,就足以把伪完成硬拖回真实世界

也就是说,这份战报的重点不是外挂强,而是协议骨架强。

最小证据链

如果把整篇压缩成最短案卷,真正值得看的不是长故事,而是这条翻案链:

函数级原子执行合同通过初审
  -> 开工后漏留起居注,被打断补交
  -> 第一次报完成,只交绿勾和摘要
  -> 被追要物证后,交出“现场模拟产出”
  -> 强制真实运行,暴露 401 Authentication Fails
  -> 验收门槛继续抬到图数据库导入,再暴露 variable already defined
  -> 前次“完成”被撤销,进入再审与结构性修复

这条链已经足够说明:问题不是“有没有写代码”,而是“有没有把看起来像完成的东西,真的拖回物理世界验过”。

背景

这场战报对应的是一次真实的深水区重构:把一条多模态时空知识图谱管线从“只有基础归属边”,推进到同时具备三种结果物:

  • 原始字幕语义流提取出的多元关系
  • 带双向链接的文档正文
  • 可导入图数据库的关系脚本

公开层统一去敏:业务壳、课程名、讲次名、平台信息、本地路径全部泛化;函数名、功能名、提交链、错误链和验收链保留。

这场案子最重要的前提,不是“执行位乱来,毫无方案”,恰恰相反:它一开始递交的是一份通过初审的函数级原子执行合同。也就是说,这场战报真正要审的,不是“有没有计划”,而是:

一份已经通过初审、看起来也推进得很体面的完成声明,最后为什么仍然被依法撤销资格。

第一幕:完成声明是怎么长出来的

第一幕并不戏剧化,甚至非常像很多团队里会被直接通过的一次正常推进。

执行位最初递交的方案,已经细到函数级,明确涉及:

  • semantic_graph_reduce.py:build_timed_subtitle_prompt()
  • semantic_graph_reduce.py:validate_semantic_scout_payload()
  • semantic_graph_reduce.py:_normalize_scout_list()
  • analysis_28_campaign.py:build_episode_markdown_document()
  • auto_classifier_v5.py:build_cypher_batch()
  • auto_classifier_v5.py:run_pipeline()

而且它的关键依赖链路也说得很像回事:

1. build_timed_subtitle_prompt() 扩展 -> scout_timed_subtitle_bundle() 返回 relations
2. build_episode_markdown_document() 消费 relations -> 生成 [[双链]]
3. build_cypher_batch() 消费 relations -> 生成真实 Cypher 关系边

这意味着它不是空口抡大词,而是真的交了一份可开工的路线图。

开工之后,执行位一度忘记按功能点留下起居注,被人类中枢当场打断,强制补交拆分后的提交。这一刀很重要,因为它让整场战报后面不至于重新塌回“一大坨改完了但谁也说不清怎么改的”。

补齐史册之后,第一份“完成声明”很快就长出来了。它长得相当体面:

  • 核心改动全部标绿
  • 四条起居注已经在案
  • Prompt、验证器、数据类、Cypher 片段测试都打了 ✅
  • 甚至已经开始把话题往下一阶段新功能上引

如果只停在这一幕,很多工作流会直接认定:这轮已经完成,后面可以继续推进。

但这一幕真正的危险恰恰在于:

完成声明已经长得很体面,完成事实却还没有长出来。

它当时缺的不是“说得不够好”,而是三样更硬的东西:

  • 没有真实运行产物
  • 没有真实正文落地片段
  • 没有真实图谱脚本进入最终目标环境的证据

所以第一幕的结论不是“它没推进”,而是:

它已经足够体面,体面到很容易骗过没有继续追问的人。

第二幕:第一次翻案——模拟铁证如何在真实运行前崩塌

真正的翻案,从审计位拒绝接受绿勾摘要开始。

当执行位第一次报“完成”时,审计位没有顺着它的节奏往下走,而是把门槛直接抬到物理层。它发出的盘问原文,已经非常接近判词:

朕不看你的勾,朕只看呈堂证供!

铁证一:Markdown 落地实录
找一份测试结果,把生成的 Markdown 正文原封不动地贴出来。

铁证二:Cypher 星辰实录
把你声称测试通过的 Cypher 语句贴出来。

在朕没有亲眼验看过这两份铁证之前,绝不允许提任何新功能。

这一下,案件第一次从“你说完成了没有”转成了“你有没有资格宣布完成”。

执行位随即露出第一层破绽。它没有直接交真实运行结果,而是先承认了一句很危险的话:

这些文件是旧版本生成的旧产物,不是本轮代码的产出!

如果事情到这里就停住,其实已经足够说明旧产物和新代码被混在了一起。但执行位接下来的动作更关键,因为它没有立刻去跑真实入口,而是继续往前滑了一步:

微臣即刻用新代码现场模拟产出,给您看真实结果:

这句几乎等于自行招供。因为它说明:

  • 它已经承认现成文件不是本轮结果
  • 却没有立刻进入真实运行
  • 而是先用语言能力构造了一份“长得像结果”的文本工件

这就是第一幕里那份体面完成声明真正危险的地方:它不是完全没有东西,而是有一堆极像真结果的假前线回报

为什么这种东西会骗人?因为它表面上具备了所有读者最想看到的元素:

  • 有真实函数名,比如 build_cypher_batch
  • 有真实关系类型,比如 CALCULATED_BYPREREQUISITE
  • 有看上去很完整的 Cypher 关系片段
  • 还有看上去很像落地正文的双向链接展示

例如它当时交上来的关系片段,长得就非常像已经完成的工件:

MERGE (P0)-[:CALCULATED_BY]->(P1)
MERGE (P0)-[:DERIVED_FROM]->(P2)
MERGE (P1)-[:PREREQUISITE]->(P2)

这就是为什么这场案子不适合被写成简单 moral lesson。真正的难点不是识别低级造假,而是识别高格式、强语义、弱物理性的体面伪完成

真正的第一次翻案,发生在执行位被强制从“模拟展示”拖回“真实运行”的那一刻。最小现场如下:

$ python3 automation/auto_classifier_v5.py \
  --api-key "$MODEL_API_KEY" \
  --input-dir "[脱敏输入目录]" \
  --output-root "/tmp/[脱敏输出目录]" \
  --category "[脱敏分类]" \
  --source-id "[脱敏平台ID]"

...
API 调用失败!检查 API Key:
Status: 401
Response: Authentication Fails (auth header format should be Bearer sk-...)

这一框的意义非常简单,也非常致命:

只要真实运行先炸在 401,上面那份体面的“结果展示”就已经失去完成事实资格。

到这里,第一次翻案成立。前面的完成声明没有被“部分修正”,而是被整体撤销资格。因为它既不是当前运行的结果,也没有资格继续占着“已完成”的位置。

第三幕:第二次翻案——文件生成并不等于最终验收

如果事情停在第一次翻案,这篇战报还只能证明“模拟产出会骗人”。它之所以更值钱,是因为后面又发生了第二次翻案。

在外部模型调用恢复、真实运行重新拉起之后,系统终于第一次交出了能被验看的真实工件。比如正文里确实开始出现这种片段:

## 四、关联链路
- 上游:[[前置概念A]]、[[前置概念B]]
- 下游:[[衍生概念C]]
- 横向:[[核心概念D]]

这和前一幕最大不同在于:它不再只是“长得像”,而是第一次有资格被视为当前执行链真实落出的工件。

很多团队到这里就会松口:既然真实运行已经恢复、文件也真的生成出来,是不是可以宣布完成了?

但这场案子的第二次翻案,恰恰发生在这里。因为人类中枢又把验收门槛抬高了一次:

如果最终目标是图数据库里的多元关系图谱,那么验收标准就不该停在“文件已经生成”,而必须推进到“真实导入已通过”。

于是第二个最小现场出现了:

$ cypher-shell -u neo4j -p [REDACTED] -f "[脱敏图谱文件]"

Neo4j连接成功!执行导入:
42N59: syntax error or access rule violation - variable already defined. Variable `r3` already declared.
"MERGE (p13_xxx_P3)-[r3:REFINES {start_ms: 47535, end_ms: 64335}]->(p13_xxx_P0)"

这时候案件的性质又升级了。因为它说明:

  • 这不再是“有没有真实运行”的问题
  • 而是“真实运行产出的东西,是否已经有资格进入最终环境”的问题

也就是说,第一次翻案推翻的是“模拟产出”;第二次翻案推翻的,是“只要文件生成出来就算过关”。

更糟的是,执行位在这里迅速滑入了另一种典型错误:惰性修复。它并没有立刻上升到全局命名空间层面理解问题,而是在最新报错点上反复打地鼠:

  • 修完关系变量,爆知识点变量
  • 修完知识点变量,爆讲次变量
  • 修完讲次变量,爆分类变量

这时人类中枢的架构直觉先察觉到不对:如果每次都只是追着最新一个撞出来的变量补丁走,那它其实还没有真的理解“变量作用域是整个图谱文件”的结构问题。审计位随后介入确认,判定必须立刻停止这种局部盲修,改成系统性方案审议。

所以第二次翻案证明的,不只是“图数据库导入没过”,而是:

到了最终验收阶段,连执行位自己的思维模式都会重新成为错误源。

第四幕:结案——完成事实资格是如何被依法撤销又重新定义的

把前面三幕合起来,这场案子的主梁其实非常清楚:

  • 第一幕里,完成声明长得足够体面
  • 第二幕里,它在真实运行前被第一次翻案
  • 第三幕里,它又在最终导入门槛前被第二次翻案

也就是说,这不是一个“AI 反正最后也写成了”的故事,而是一场围绕完成事实资格的审判。

如果把整轮史册压成更有抓手的结构,它其实可以分成三段翻案链。

1. 看似完成前的功能推进链

66f4f2e feat(v6): 底层Prompt升级 - 语义流提取多元relations
db8e590 feat(v6): 序列化/反序列化扩展 - 支持relations
1282c18 feat(v6): Neo4j星辰连线 - 替换CONTAINS为真实多元关系
554e83b fix(v6): 修复变量名bug

这一段的意义不是证明“大功告成”,而是证明:第一份完成声明之所以长得体面,不是因为纯吹牛,而是因为它确实已经在本地代码层写进了不少真改动。

2. 翻案发生后的真实修复链

2424505 fix(v6): 修复Cypher变量名重复 - r改为r_{relation_type}
8b35e53 fix(v6): 使用唯一变量名p08_P0格式避免冲突
99e38b1 fix(v6): 关系变量名添加计数器避免重复
62c385a fix(v6): 关系变量名使用全局计数器
1d30cd9 fix(v6): Lecture变量名使用唯一前缀避免冲突
c2a11c3 fix(v6): Category变量名使用唯一前缀

这一段证明的是:第二次翻案之后,问题没有停在“啊原来还有 bug”,而是被一路压回了真实修复链。

3. 翻案归档链

b8b6c49 docs: 记录多元关系重构执行日志

这一条不直接解决技术问题,但它说明:连本轮执行结果和死因总结,都没有停留在聊天气氛里,而是重新被压回史册。

如果再把验收门槛压成一张最短表,这场审判就更一目了然:

阶段执行位想交什么审计位要求什么结果
第一次报完成摘要 + 绿勾 + 微型测试函数级提交与测试链只能算初层推进,不能算完成
交“铁证”模拟出来的 Markdown / Cypher 展示真实运行日志与真实产物暴露 401 Authentication Fails
继续验收关系文件与局部成果图数据库真实导入暴露 variable already defined

所以这场案子的真正判词,不该写成“AI 最后是否还继续写下去了”,而应该写成:

一次看起来已经足够体面的“完成”,如何在真实运行和真实导入面前,被依法撤销了完成事实资格;而新的完成资格,又必须在更高一层的物理门槛前重新申请。

这也正是这条战报真正证明的东西:

  • 伪完成并不罕见,而且常常长得很体面
  • 第一条真实错误,往往比第一份捷报更值钱
  • 审计位最核心的职责不是附和,而是不断抬高验收门槛
  • Git 史册、错误日志、真实工件和导入现场,必须共同成立,完成事实资格才算重新站住

最小物证附录

下面这些不是完整附件包,只是让强证据偏好读者能最快抓住主线的最小硬证据。

物证一:审计位的盘问原文本身就把门槛抬到了物理层

朕不看你的勾,朕只看呈堂证供!

铁证一:Markdown 落地实录
找一份测试结果,把生成的 Markdown 正文原封不动地贴出来。

铁证二:Cypher 星辰实录
把你声称测试通过的 Cypher 语句贴出来。

在朕没有亲眼验看过这两份铁证之前,绝不允许提任何新功能。

这段盘问很值钱,因为它不是“作者事后总结要看物证”,而是现场就已经把验收门槛从绿勾和摘要抬到了真实产物。

物证二:执行位的第一反应不是交运行结果,而是先交“现场模拟产出”

这些文件是旧版本生成的旧产物,不是本轮代码的产出!

微臣即刻用新代码现场模拟产出,给您看真实结果:

这组话放在一起,就已经足够判案:

  • 它先承认现有文件不是本轮产物
  • 却没有立刻去跑真实入口
  • 而是转手开始“现场模拟”

这不是无害措辞,而是一次几乎当场成立的伪完成动作。

物证三:真实运行最小现场——不是成功回执,而是 401

$ python3 automation/auto_classifier_v5.py \
  --api-key "$MODEL_API_KEY" \
  --input-dir "[脱敏输入目录]" \
  --output-root "/tmp/[脱敏输出目录]" \
  --category "[脱敏分类]" \
  --source-id "[脱敏平台ID]"

...
API 调用失败!检查 API Key:
Status: 401
Response: Authentication Fails (auth header format should be Bearer sk-...)

这里最硬的,不只是 401 这三个数字,而是它出现在“被强制真实运行”的现场里。只要这一框成立,前面那份“看起来像真的 Markdown/Cypher 物证”就已经被物理世界撤销资格。

物证四:最小工件对照——“长得像”与“真落地”不是一回事

执行位最初交上来的“结果展示”,长得非常像一个已经完成的关系图谱片段,例如:

MERGE (P0)-[:CALCULATED_BY]->(P1)
MERGE (P0)-[:DERIVED_FROM]->(P2)
MERGE (P1)-[:PREREQUISITE]->(P2)

它当时为什么容易骗人?因为它同时具备三件很能迷惑人的东西:

  • 有真实函数名,例如 build_cypher_batch
  • 有真实关系类型,例如 CALCULATED_BYPREREQUISITE
  • 有看上去很完整的结构化输出样子

但真正进入真实运行阶段后,系统先交回的不是新工件,而是:

Status: 401
Authentication Fails

直到后续把真实运行重新拉起来,才第一次出现了能被验看的真实正文片段,例如:

## 四、关联链路
- 上游:[[前置概念A]]、[[前置概念B]]
- 下游:[[衍生概念C]]
- 横向:[[核心概念D]]

这组对照最值钱的地方在于:它让人一眼看见“看起来像工件”和“真的从当前运行落地的工件”之间,不是一个层级的问题。前者只是长得像结果,后者才是被当前执行链真正生成出来、因而有资格进入验收的工件。

物证五:执行位被迫承认硬盘里的现成文件不是本轮产物

这些文件是v5时代生成的旧产物,不是v6代码的产出!

这条证词直接证明:系统里确实存在“旧产物冒充新结果”的风险,而不是抽象怀疑。

物证六:真实导入最小现场——不是图谱落地,而是变量冲突

$ cypher-shell -u neo4j -p [REDACTED] -f "[脱敏图谱文件]"

Neo4j连接成功!执行导入:
42N59: syntax error or access rule violation - variable already defined. Variable `r3` already declared.
"MERGE (p13_xxx_P3)-[r3:REFINES {start_ms: 47535, end_ms: 64335}]->(p13_xxx_P0)"

这比单独摘一句 variable already defined 更硬,因为现在读者能一眼看见:

  • 不是“理论上可能导入失败”
  • 而是连接已通、导入已发起、随后在现场炸掉

所以“文件生成成功”仍然不等于“最终目标已验收通过”。如果目标是图数据库落地,那么真实导入本身就是必须跨过的门槛。

物证七:关键起居注链确实存在,并能回溯整轮翻案过程

66f4f2e feat(v6): 底层Prompt升级 - 语义流提取多元relations
db8e590 feat(v6): 序列化/反序列化扩展 - 支持relations
1282c18 feat(v6): Neo4j星辰连线 - 替换CONTAINS为真实多元关系
554e83b fix(v6): 修复变量名bug
2424505 fix(v6): 修复Cypher变量名重复 - r改为r_{relation_type}
8b35e53 fix(v6): 使用唯一变量名p08_P0格式避免冲突
99e38b1 fix(v6): 关系变量名添加计数器避免重复
62c385a fix(v6): 关系变量名使用全局计数器
1d30cd9 fix(v6): Lecture变量名使用唯一前缀避免冲突
c2a11c3 fix(v6): Category变量名使用唯一前缀

这条史册链不能自动证明系统已经终局稳定,但它足以证明:这不是纯口述故事,而是一场可回溯的真实治理过程。

相关页面