docs: 完成 PJ2026-02 终态规格审查

This commit is contained in:
AgentRun Codex
2026-07-13 07:29:32 +00:00
parent 64ae855e68
commit 154d09a115
8 changed files with 189 additions and 31 deletions
@@ -262,7 +262,12 @@ flowchart TD
Runtime --> PublicEntry
```
数据流中的每个正式步骤必须读取已登记上游工件并输出新工件。上游缺失或不合法时应明确失败,不得使用隐藏默认值、旧期次文件或伪造输入补成成功。
数据流中的每个正式步骤必须
- 读取已登记上游工件;
- 输出新工件;
- 在上游缺失或不合法时明确失败;
- 不得使用隐藏默认值、旧期次文件或伪造输入补成成功。
图中的自动交付、发布包和持久化人工复核都属于终态必需能力。
@@ -300,7 +305,12 @@ sequenceDiagram
R-->>E: 发布候选或明确阻塞项
```
长任务必须异步执行。CLI 和 Web 提交后立即获得作业标识,编辑者通过状态、日志和工件观察进展;重试创建新作业并保留旧证据,不能覆盖失败历史。
长任务必须异步执行
- CLI 和 Web 提交后立即获得作业标识;
- 编辑者通过状态、日志和工件观察进展;
- 重试创建新作业并保留旧证据;
- 重试不能覆盖失败历史。
自动交付、内置终端和批准记录都属于终态关键时序,不得以部分时序成功宣称整期或整个平台达成。
@@ -337,7 +347,16 @@ sequenceDiagram
- 对技术受众有实际价值;
- 保持开场与大纲、逐条故事和参考来源的稳定结构。
编辑策划负责选题、事实边界、术语补充、媒体归因、状态限定和叙事节奏。下游模块只能消费结构化内容,不能以画面或配音修饰掩盖证据不足和文稿空泛。
编辑策划负责
- 选题;
- 事实边界;
- 术语补充;
- 媒体归因;
- 状态限定;
- 叙事节奏。
下游模块只能消费结构化内容,不能以画面或配音修饰掩盖证据不足和文稿空泛。
完成标准如下:
@@ -379,7 +398,11 @@ sequenceDiagram
- 字幕切分、场景时间线、编码和媒体检查;
- 在改变语速或声音参数时只重跑受影响步骤,不要求重新采集和写稿。
完成标准是:音频、字幕、场景和视频时间线在允许误差内一致,媒体流、分辨率、响度、峰值和可解码性通过技术检查,人工仍能识别并退回读音或表达问题。
完成标准如下:
- 音频、字幕、场景和视频时间线在允许误差内一致;
- 媒体流、分辨率、响度、峰值和可解码性通过技术检查;
- 人工仍能识别并退回读音或表达问题。
### 6.5 SMF-L0-REQ-005 可调试生产平台
@@ -421,9 +444,15 @@ Web 工厂和控制台应采用工业风、紧凑高信息密度、直角或极
| 编号 | 短名 | 主责模块 | 关联模块 |
| --- | --- | --- | --- |
| SMF-L0-REQ-007 | 隔离自动交付 | [PJ2026-0207 平台交付](PJ2026-0207-platform-delivery.md) | [流水线平台](PJ2026-0205-pipeline-platform.md)、[发布运营](PJ2026-0206-publishing-operations.md) |
| SMF-L0-REQ-007 | 隔离自动交付 | [平台交付](PJ2026-0207-platform-delivery.md) | [流水线](PJ2026-0205-pipeline-platform.md)、[发布](PJ2026-0206-publishing-operations.md) |
智媒工厂应提供可复现、最小权限和可自动验收的平台交付,使编辑者能通过公网 IP 的 Web 内置 Codex 终端进入与后端版本一致的源码、CLI 和受限 Agent 工具环境
智媒工厂应提供可复现、最小权限和可自动验收的平台交付。
编辑者应能通过公网 IP 的 Web 内置 Codex 终端进入以下环境:
- 与后端版本一致的源码;
- CLI
- 受限 Agent 工具。
平台交付负责:
@@ -225,7 +225,12 @@ sequenceDiagram
- Hacker News 只作为发现来源;
- 不得把提交者或讨论内容改写为项目官方事实。
原始 Feed、Atom、API 响应应按期次存档并带哈希或等价完整性线索。人工来源必须保留登记者可复核的原始链接、日期和短证据,不得只写无法追溯的总结。
原始 Feed、Atom、API 响应应
- 按期次存档;
- 带哈希或等价完整性线索。
人工来源必须保留登记者可复核的原始链接、日期和短证据,不得只写无法追溯的总结。
### 6.3 SOURCE-L1-REQ-003 稳定证据模型
@@ -206,7 +206,14 @@ sequenceDiagram
- 避免同一期内容都属于同一厂商、同一产品或同一种发布形式;
- 优惠和供应链变化只有与技术受众实际决策相关时才可入选。
选题完成标准包括来源足够、日期和状态明确、受众价值可以用一句话说明、节目组合有层次。候选证据不足时应减少条目或明确失败,不能用空泛评论补齐数量。
选题完成标准包括
- 来源足够;
- 日期和状态明确;
- 受众价值可以用一句话说明;
- 节目组合有层次。
候选证据不足时应减少条目或明确失败,不能用空泛评论补齐数量。
### 6.2 EDIT-L1-REQ-002 事实与状态核验
@@ -228,7 +235,12 @@ sequenceDiagram
- 不在每条故事末尾机械添加局限、约束、限制或风险;
- 不使用“仍需验证”类固定收尾句。
媒体报道必须说“媒体报道”或点明媒体;大学论文只有在来源明确单位时才说“来自某大学团队”,否则使用“作者团队”;预印本不得暗示已经同行评审。
媒体和论文归因应满足:
- 媒体报道必须说“媒体报道”或点明媒体;
- 大学论文只有在来源明确单位时才说“来自某大学团队”;
- 来源未明确单位时使用“作者团队”;
- 预印本不得暗示已经同行评审。
### 6.3 EDIT-L1-REQ-003 固定栏目结构
@@ -281,7 +293,12 @@ sequenceDiagram
| --- | --- | --- | --- |
| EDIT-L1-REQ-005 | 文稿质量 | PJ2026-020205 文稿质量 | [流水线平台](PJ2026-0205-pipeline-platform.md)、[音频成片](PJ2026-0204-audio-video-production.md) |
系统应同时提供授权 LLM 和模板模式,并把两者输出为同一结构化文稿契约。LLM 只接收任务所需的来源证据和栏目规则,凭据不能进入提示词、工件或日志。
系统应同时提供授权 LLM 和模板模式,并把两者输出为同一结构化文稿契约。
LLM 输入边界如下:
- 只接收任务所需的来源证据和栏目规则;
- 凭据不能进入提示词、工件或日志。
质量门至少检查:
@@ -299,7 +316,9 @@ sequenceDiagram
| 编号 | 短名 | 主责模块 | 关联模块 |
| --- | --- | --- | --- |
| EDIT-L1-REQ-006 | 引用闭环 | PJ2026-020206 引用闭环 | [资讯源](PJ2026-0201-information-sources.md)、[视觉制作](PJ2026-0203-visual-production.md)、[发布运营](PJ2026-0206-publishing-operations.md) |
| EDIT-L1-REQ-006 | 引用闭环 | PJ2026-020206 引用闭环 | 资讯、视觉、发布 |
关联模块为[资讯](PJ2026-0201-information-sources.md)、[视觉](PJ2026-0203-visual-production.md)和[发布](PJ2026-0206-publishing-operations.md)。
系统应为每条故事保留:
@@ -307,7 +326,13 @@ sequenceDiagram
- 中文短释、镜头意图和配音单元;
- 可关联文稿、来源画面、字幕、章节时间轴和评论区引用的故事身份。
引用目录应只列实际采用的来源,不把候选池全部条目混入。发现来源与一手来源并存时必须保持各自角色,不能在引用阶段丢失发现关系或重复计算同一事实。
引用目录应只列实际采用的来源,不把候选池全部条目混入。
发现来源与一手来源并存时必须:
- 保持各自角色;
- 不在引用阶段丢失发现关系;
- 不重复计算同一事实。
结构化文稿是下游内容真相源。纯文本配音稿、引用 Markdown 和评论区文本应由它和最终场景时间线生成,不应由人工复制粘贴形成互相漂移的版本。
@@ -201,7 +201,13 @@ sequenceDiagram
| --- | --- | --- | --- |
| VISUAL-L1-REQ-001 | 来源画面 | PJ2026-020301 来源画面 | [资讯源](PJ2026-0201-information-sources.md)、[编辑策划](PJ2026-0202-editorial-planning.md) |
系统应为每条入选资讯按来源视觉策略采集本地画面,并在视觉清单中保留故事、来源、链接、页面标题、采集状态、画面路径、滚动位置、页面高度和失败原因
系统应为每条入选资讯按来源视觉策略采集本地画面。
视觉清单应保留:
- 故事、来源、链接和页面标题;
- 采集状态和失败原因;
- 画面路径、滚动位置和页面高度。
候选画面必须经过本地开源 OCR,至少登记:
@@ -341,7 +347,12 @@ LLM 输出应包含:
进场、强调、进度和卡片动效应服务信息理解,不能造成文字晃动、阅读时间不足或字幕冲突。
浏览器渲染必须在禁用后台网络依赖的生产环境中运行。指定画布、捕获帧率和时间点应产生稳定尺寸与场景身份;中断重跑不得因上次浏览器状态改变结果。
浏览器渲染必须在禁用后台网络依赖的生产环境中运行。
渲染应满足:
- 指定画布、捕获帧率和时间点产生稳定尺寸与场景身份;
- 中断重跑不得因上次浏览器状态改变结果。
### 6.6 VISUAL-L1-REQ-006 多工件视觉交付
@@ -358,7 +369,15 @@ LLM 输出应包含:
- PNG 应支持人工快速抽检和无浏览器场景预览;
- 封面候选应由栏目视觉生成,不复制来源站点封面。
视觉交付完成标准包括关键文字不越界、字幕安全区无关键信息、来源标识清楚、长标题可读、参考来源页可辨识、无意外网络依赖和无未登记第三方资产。
视觉交付完成标准包括
- 关键文字不越界;
- 字幕安全区无关键信息;
- 来源标识清楚;
- 长标题可读;
- 参考来源页可辨识;
- 无意外网络依赖;
- 无未登记第三方资产。
## 7. 过程控制
@@ -235,9 +235,20 @@ sequenceDiagram
系统应从句级时间线和实际配音文本生成 SRT 与 ASS,使两种字幕的文本、顺序和场景关系一致,并在格式量化允许误差内保持时间同步。
字幕切分应由最大字符数、最小字符数和最大行数约束,优先按中文标点和语义边界断句。长技术标识不应被拆到难以理解的位置,短词不能孤立闪现。
字幕切分应
字幕样式应与视觉主题协调并位于安全区,具备足够字号、描边和背景对比。最后一条字幕应在音频结尾前保留配置的尾部停顿,不覆盖片尾自然结束。
- 由最大字符数、最小字符数和最大行数约束;
- 优先按中文标点和语义边界断句;
- 不把长技术标识拆到难以理解的位置;
- 不让短词孤立闪现。
字幕样式应:
- 与视觉主题协调;
- 位于安全区;
- 具备足够字号、描边和背景对比。
最后一条字幕应在音频结尾前保留配置的尾部停顿,不覆盖片尾自然结束。
### 6.4 MEDIA-L1-REQ-004 确定性视频合成
@@ -269,7 +280,14 @@ sequenceDiagram
- 声明工件存在和来源引用可解析;
- 响度、真峰值和字幕尾部停顿。
检查应使用实际 MP4、WAV、字幕、场景时间线、工件清单、结构化文稿和来源清单,不能只验证作业返回成功。必要时应完整解码候选视频以发现尾部损坏或编码中断。
检查应使用
- 实际 MP4 和 WAV
- 字幕和场景时间线;
- 工件清单;
- 结构化文稿和来源清单。
检查不能只验证作业返回成功。必要时应完整解码候选视频,以发现尾部损坏或编码中断。
所有必要检查为真只表示候选满足技术门槛。检查报告必须保留人工复核提示,明确读音、字幕观感、视觉版权、事实和平台合规仍需发布者判断。
@@ -281,7 +299,14 @@ sequenceDiagram
系统应支持配音、字幕、渲染和检查分别单步重跑,并依据参数影响范围复用安全缓存。
原始语音缓存键必须包含文本、模型、声音和缓存版本。只改后处理语速、停顿或响度时可复用原始 TTS;改变文本、模型、声音或规范化语义时必须失效相关缓存。
原始语音缓存键必须包含
- 文本;
- 模型;
- 声音;
- 缓存版本。
只改后处理语速、停顿或响度时可复用原始 TTS。改变文本、模型、声音或规范化语义时必须失效相关缓存。
每次重跑应生成新的作业记录和结果摘要。正式工件可以更新为最新候选,但历史作业、成本和失败证据不得被改写为同一次成功。
@@ -183,7 +183,14 @@ sequenceDiagram
系统应以一个配置入口通过显式 `configRefs` 引用各职责 owning YAML,并在运行前校验版本、类型、必填字段、枚举、数值范围、路径和引用摘要。
可调业务事实只能由 owning YAML 定义。代码可以提供模式和渲染逻辑,但不得在字段缺失时静默选择另一套模型、来源、端口、语速、视觉主题、质量门或价格。
可调业务事实只能由 owning YAML 定义。
代码可以提供模式和渲染逻辑,但不得在字段缺失时静默选择另一套:
- 模型或来源;
- 端口或语速;
- 视觉主题或质量门;
- 价格。
配置计划和依赖计划必须:
@@ -223,7 +230,12 @@ Secret 只允许通过受控引用在运行时读取,计划输出不得显示
| --- | --- | --- | --- |
| PLATFORM-L1-REQ-003 | 作业运行 | PJ2026-020503 作业运行 | 全部 L1 |
所有耗时生产命令应采用 Fire-and-Forget提交后立即返回作业标识,后台执行,用户通过状态、日志和结果观察,不在 CLI 前台等待网络、LLM、TTS、浏览器或编码完成。
所有耗时生产命令应采用 Fire-and-Forget
- 提交后立即返回作业标识;
- 在后台执行;
- 用户通过状态、日志和结果观察;
- 不在 CLI 前台等待网络、LLM、TTS、浏览器或编码完成。
作业事实至少包含:
@@ -241,7 +253,14 @@ Secret 只允许通过受控引用在运行时读取,计划输出不得显示
| --- | --- | --- | --- |
| PLATFORM-L1-REQ-004 | 工件事实 | PJ2026-020504 工件事实 | [发布运营](PJ2026-0206-publishing-operations.md)、全部生产 L1 |
系统应以安全期次标识隔离每一期输入和输出,并保存标题、期数、报道日期和创建时间。正式工件路径应固定、可枚举、可校验,禁止路径穿越和跨期次隐式读取。
系统应以安全期次标识隔离每一期输入和输出,并保存
- 标题;
- 期数;
- 报道日期;
- 创建时间。
正式工件路径应固定、可枚举、可校验,禁止路径穿越和跨期次隐式读取。
步骤完成时应登记:
@@ -258,7 +277,13 @@ Secret 只允许通过受控引用在运行时读取,计划输出不得显示
| --- | --- | --- | --- |
| PLATFORM-L1-REQ-005 | 用量成本 | PJ2026-020505 用量成本 | [编辑策划](PJ2026-0202-editorial-planning.md)、[发布运营](PJ2026-0206-publishing-operations.md) |
系统应为每次 LLM 请求记录期次、作业、尝试、请求标识、请求模型、响应模型、服务层、时间、HTTP 状态、用量状态、Token 明细、质量门结果和费用估算。
系统应为每次 LLM 请求记录
- 期次、作业、尝试和请求标识;
- 请求模型、响应模型和服务层;
- 时间和 HTTP 状态;
- 用量状态和 Token 明细;
- 质量门结果和费用估算。
Token 明细至少区分:
@@ -281,7 +306,13 @@ Token 明细至少区分:
| --- | --- | --- | --- |
| PLATFORM-L1-REQ-006 | 可视控制 | PJ2026-020506 可视控制 | [发布运营](PJ2026-0206-publishing-operations.md)、全部生产 L1 |
系统应在 CLI 完整流程可用后提供前后端可视控制面,通过同源 API 展示期次、步骤 DAG、作业、进度、日志、错误、用量和全部工件,并支持与 CLI 等价的受控动作
系统应在 CLI 完整流程可用后提供前后端可视控制面。
可视控制面应通过同源 API
- 展示期次、步骤 DAG、作业和进度;
- 展示日志、错误、用量和全部工件;
- 支持与 CLI 等价的受控动作。
Web 工厂和控制台应采用工业风视觉:
@@ -214,11 +214,18 @@ sequenceDiagram
| 编号 | 短名 | 主责模块 | 关联模块 |
| --- | --- | --- | --- |
| PUBLISH-L1-REQ-003 | 来源披露 | PJ2026-020603 来源披露 | [资讯源](PJ2026-0201-information-sources.md)、[编辑策划](PJ2026-0202-editorial-planning.md)、[流水线平台](PJ2026-0205-pipeline-platform.md) |
| PUBLISH-L1-REQ-003 | 来源披露 | PJ2026-020603 来源披露 | 资讯、编辑、流水线 |
关联模块为[资讯](PJ2026-0201-information-sources.md)、[编辑](PJ2026-0202-editorial-planning.md)和[流水线](PJ2026-0205-pipeline-platform.md)。
系统应在评论区时间轴之后空一行,输出“本期参考来源:”,再按故事顺序列出编号、来源名称、标题和完整链接。
来源披露只包含实际采用的来源,并保留媒体、社区、预印本和一手来源角色。引用顺序应与成片故事一致,链接不得被短链、返利链接或无法复核的聚合页替代。
来源披露应满足:
- 只包含实际采用的来源;
- 保留媒体、社区、预印本和一手来源角色;
- 引用顺序与成片故事一致;
- 链接不被短链、返利链接或无法复核的聚合页替代。
发布包披露要求如下:
@@ -108,7 +108,7 @@
| --- | --- | --- | --- | --- | --- |
| PJ2026-020701 | 内置终端 | 本规格 6.1 | Web 终端、Codex 进程、会话连接、重连和用户状态 | Web、后端容器、会话 PVC | 编辑调试 |
| PJ2026-020702 | Agent 工具 | 本规格 6.2 | 版本化源码、TypeScript CLI、受限 Skill/API 和工件访问 | 构建产物、流水线平台 | Codex Agent |
| PJ2026-020703 | 隔离凭据 | 本规格 6.3 | 后端 Token、Codex 模型配置的独立 `sourceRef`、文件权限、脱敏和负面边界 | owning YAML、外部 Secret | 内置终端、Agent 工具 |
| PJ2026-020703 | 隔离凭据 | 本规格 6.3 | 两类凭据的独立投影、权限、脱敏和负面边界 | owning YAML、外部 Secret | 内置终端、Agent 工具 |
| PJ2026-020704 | 受控部署 | 本规格 6.4 | YAML-first K8s 工作负载、资源、健康和公网 IP | 镜像摘要、配置与 Secret 引用 | 自动交付、运行验收 |
| PJ2026-020705 | 自动交付 | 本规格 6.5 | GitHub、mirror、PaC、Tekton、GitOps 和 Argo 链 | 源码与 owning YAML | 受控部署 |
| PJ2026-020706 | 运行验收 | 本规格 6.6 | 公网原入口、版本、终端、恢复、隔离和自动链证据 | 全部平台交付模块 | 发布运营、平台维护者 |
@@ -274,7 +274,13 @@ sequenceDiagram
- `~/.codex/sessions`
- supervisor 恢复元数据。
会话 PVC 不承担源码工作区持久化。需要跨重启保存的源码变更必须进入受控变更流;未来如需持久化源码工作区,应另行定义数据生命周期、版本冲突和回收要求。
会话 PVC 不承担源码工作区持久化。
需要跨重启保存的源码变更必须进入受控变更流。未来如需持久化源码工作区,应另行定义:
- 数据生命周期;
- 版本冲突处理;
- 回收要求。
后端容器或 Pod 重启后,平台应自动发现并续接可恢复会话。恢复失败时输出明确原因,不以新会话冒充恢复成功。
@@ -356,9 +362,20 @@ owning YAML 应定义:
代码或手工命令中不得保留第二套部署事实。
Kubernetes 工作负载应使用非 root 用户、只读根文件系统或等价最小写面、明确 CPU/内存/临时存储限制,并把可写内容限制在声明的会话 PVC 和必要临时目录。
Kubernetes 工作负载应
公网入口应通过 YAML 声明的 IPv4 和端口暴露 Web、同源 API 与终端代理。验收使用该公网 IP 原入口,不以 Pod IP、端口转发、SSH、临时 NodePort 或集群内部地址替代。
- 使用非 root 用户;
- 使用只读根文件系统或等价最小写面;
- 明确 CPU、内存和临时存储限制;
- 把可写内容限制在声明的会话 PVC 和必要临时目录。
公网入口应通过 YAML 声明的 IPv4 和端口暴露:
- Web
- 同源 API
- 终端代理。
验收使用该公网 IP 原入口,不以 Pod IP、端口转发、SSH、临时 NodePort 或集群内部地址替代。
### 6.5 DELIVERY-L1-REQ-005 GitOps 自动交付链
@@ -396,7 +413,7 @@ Kubernetes 工作负载应使用非 root 用户、只读根文件系统或等价
| 编号 | 短名 | 主责模块 | 关联模块 |
| --- | --- | --- | --- |
| DELIVERY-L1-REQ-006 | 运行验收 | PJ2026-020706 运行验收 | PJ2026-020701 内置终端、PJ2026-020702 Agent 工具、PJ2026-020703 隔离凭据、PJ2026-020704 受控部署、PJ2026-020705 自动交付 |
| DELIVERY-L1-REQ-006 | 运行验收 | PJ2026-020706 运行验收 | 本规格 6.1 至 6.5 |
每次自动交付完成后,平台应从 YAML 选中的公网 IPv4 原入口验证健康、Web、同源 API、内置终端、Codex 启动、正式 CLI、工件读取和版本可见性。