<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>功能规格（FSD） on QMTV 产品文档</title><link>https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/</link><description>Recent content in 功能规格（FSD） on QMTV 产品文档</description><generator>Hugo</generator><language>zh-CN</language><lastBuildDate>Mon, 01 Jan 0001 00:00:00 +0000</lastBuildDate><atom:link href="https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/index.xml" rel="self" type="application/rss+xml"/><item><title>FSD M1 · 认证与用户</title><link>https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/m01-%E8%AE%A4%E8%AF%81%E4%B8%8E%E7%94%A8%E6%88%B7/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/m01-%E8%AE%A4%E8%AF%81%E4%B8%8E%E7%94%A8%E6%88%B7/</guid><description>&lt;blockquote&gt;&#10;&lt;p&gt;&lt;a href="https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/00-%E6%80%BB%E5%88%99/"&gt;← 总则&lt;/a&gt; ｜ &lt;a href="https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/99-%E9%99%84%E5%BD%95/"&gt;附录 →&lt;/a&gt; ｜ 上游：&lt;a href="https://qmtv-docs.appland.com.cn/qmtv/product/prd-qmtv-v1/"&gt;PRD §4 M1&lt;/a&gt;&#10;实现落点：&lt;code&gt;backend/internal/domain/auth/&lt;/code&gt;（service.go/model.go/repo.go）+ &lt;code&gt;cmd/server/auth_handlers.go&lt;/code&gt;（handlers）+ &lt;code&gt;cmd/server/routes.go:34-51&lt;/code&gt;（挂载）。事实基准=Go 代码；冻结版 &lt;code&gt;qmtv/server/index.js:73-230&lt;/code&gt; 仅差异对拍参照。&lt;/p&gt;</description></item><item><title>FSD M10 · 导演与融合</title><link>https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/m10-%E5%AF%BC%E6%BC%94%E4%B8%8E%E8%9E%8D%E5%90%88/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/m10-%E5%AF%BC%E6%BC%94%E4%B8%8E%E8%9E%8D%E5%90%88/</guid><description>&lt;blockquote&gt;&#10;&lt;p&gt;&lt;a href="https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/00-%E6%80%BB%E5%88%99/"&gt;← 总则&lt;/a&gt; ｜ &lt;a href="https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/99-%E9%99%84%E5%BD%95/"&gt;附录 →&lt;/a&gt; ｜ 上游：&lt;a href="https://qmtv-docs.appland.com.cn/qmtv/product/prd-qmtv-v1/"&gt;PRD §4 M10&lt;/a&gt;&#10;实现落点：&lt;code&gt;backend/internal/domain/director/&lt;/code&gt;（model/split/repo/service/service_assets/export 单包多文件）+ &lt;code&gt;cmd/server/director_handlers.go&lt;/code&gt;（28 handler）+ &lt;strong&gt;generation 侧双表通路三锚点&lt;/strong&gt;（model.go:56-69 ShotView.Tbl / service_video.go:191-229 DirectorShotVideo / repo.go:261-283 LinkShotVideo）+ &lt;code&gt;cmd/server/routes.go:203-238&lt;/code&gt;（挂载）。事实基准=Go 代码；冻结版 &lt;code&gt;qmtv/server/director.js&lt;/code&gt;（11）/&lt;code&gt;fusion.js&lt;/code&gt;（17）仅差异对拍参照。&#10;域内要点：&lt;strong&gt;双表通路&lt;/strong&gt;——本域写 &lt;code&gt;director_shots&lt;/code&gt;（M2 拆解台是 &lt;code&gt;shots&lt;/code&gt; 表勿混），生成链经 &lt;code&gt;ShotView.Tbl&lt;/code&gt; 显式表名打回；扣费面六处（三处硬编码照抄）；ZIP 导入导出；wire 全蛇形+派生视图尾插键；对账口径：routes.go:209/:223 注释「11+17」系&lt;strong&gt;冻结源文件口径&lt;/strong&gt;（#1/#2 冻结在 fusion.js:221/:227 却排导演注释块），物理分组=导演 13+融合 15；PRD §4 M10 已登记差异 ①~⑮（prd-qmtv-v1.md:208）+v1.12 变更行三件（二十续 A1 form-tag/A2 空数组/A3 episodes 404 文案）引用不重立。ID 前缀 dpr_/dep_/dir_（tasks 侧 task_id=&amp;lsquo;dir_&amp;rsquo;+project_id 约定=PRD ⑩）。&lt;/p&gt;</description></item><item><title>FSD M11 · 评估与工具</title><link>https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/m11-%E8%AF%84%E4%BC%B0%E4%B8%8E%E5%B7%A5%E5%85%B7/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/m11-%E8%AF%84%E4%BC%B0%E4%B8%8E%E5%B7%A5%E5%85%B7/</guid><description>&lt;blockquote&gt;&#10;&lt;p&gt;&lt;a href="https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/00-%E6%80%BB%E5%88%99/"&gt;← 总则&lt;/a&gt; ｜ &lt;a href="https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/99-%E9%99%84%E5%BD%95/"&gt;附录 →&lt;/a&gt; ｜ 上游：&lt;a href="https://qmtv-docs.appland.com.cn/qmtv/product/prd-qmtv-v1/"&gt;PRD §4 M11&lt;/a&gt;&#10;实现落点：&lt;code&gt;backend/internal/domain/evaluation/&lt;/code&gt;（model/service〔workbench+watchVideo〕/service_eval〔评估流水线〕/service_review〔审片双入口〕/service_viral/repo）+ &lt;code&gt;cmd/server/workbench_handlers.go&lt;/code&gt; + &lt;code&gt;cmd/server/evaluation_handlers.go&lt;/code&gt; + &lt;code&gt;cmd/server/routes.go:239-267&lt;/code&gt;（挂载，审片 4 条 :264-267 物理居中）。事实基准=Go 代码；冻结版 &lt;code&gt;qmtv/server/workbench.js&lt;/code&gt;/&lt;code&gt;evaluation.js&lt;/code&gt;/&lt;code&gt;index.js:490-513&lt;/code&gt;（viral）仅差异对拍参照。&#10;域内要点：&lt;strong&gt;评估冻结-结算&lt;/strong&gt;是全站唯一 TypeReserve 台账面（总则 §1 词条的展开落点）；审片双入口 404 文案分叉（classic &amp;rsquo;task not found&amp;rsquo; vs director &amp;rsquo;not found&amp;rsquo;）；审片面&lt;strong&gt;零 SSE 零通知&lt;/strong&gt;；watchVideo 状态丢失不 emit；wire 全蛇形；PRD §4 M11 已登记差异 ①~⑭（prd-qmtv-v1.md:216）引用不重立。上传档位 up80（工作台）/up10（评估）。&lt;/p&gt;</description></item><item><title>FSD M12 · 管理后台</title><link>https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/m12-%E7%AE%A1%E7%90%86%E5%90%8E%E5%8F%B0/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/m12-%E7%AE%A1%E7%90%86%E5%90%8E%E5%8F%B0/</guid><description>&lt;blockquote&gt;&#10;&lt;p&gt;&lt;a href="https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/00-%E6%80%BB%E5%88%99/"&gt;← 总则&lt;/a&gt; ｜ &lt;a href="https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/99-%E9%99%84%E5%BD%95/"&gt;附录 →&lt;/a&gt; ｜ 上游：&lt;a href="https://qmtv-docs.appland.com.cn/qmtv/product/prd-qmtv-v1/"&gt;PRD §4 M12&lt;/a&gt;&#10;实现落点：&lt;code&gt;backend/internal/domain/admin/&lt;/code&gt;（model 276/repo 476/service 332/service_billing 416/service_prompts 250 单包多文件+三测试件）+ &lt;code&gt;cmd/server/admin_handlers.go&lt;/code&gt;（562 行 39 handler）+ &lt;code&gt;cmd/server/routes.go:268-318&lt;/code&gt;（挂载）。事实基准=Go 代码；冻结版 &lt;code&gt;qmtv/server/index.js&lt;/code&gt;（admin 段 &lt;strong&gt;app.* 直挂非 router&lt;/strong&gt;，19−withdrawals 2=17）+&lt;code&gt;llmroutes.js&lt;/code&gt;（18）+&lt;code&gt;routes2.js&lt;/code&gt;（admin 4）仅差异对拍参照。&#10;域内要点：&lt;strong&gt;39 条全部 amw+adminMw 双挂&lt;/strong&gt;（403 &lt;code&gt;forbidden&lt;/code&gt;，gateway/auth.go:133-141=冻结 adminRequired 逐字）；&lt;strong&gt;前端消费面≠端点族&lt;/strong&gt;——AdminView 14 tab（AdminView.vue:667-682）中 submissions/withdrawals/scripts 三 tab 消费 &lt;strong&gt;M9/M7 域&lt;/strong&gt;端点，本册 39 条按后端功能族 A&lt;del&gt;H 组聚合；&lt;strong&gt;404 八态八哨兵刻意不同源&lt;/strong&gt;（model.go:16-36：用户调整英文 &amp;ldquo;not found&amp;rdquo;/密码重置中文「用户不存在」/org approve 英文/指令 DELETE 英文/提示词删「版本不存在」/接入「接入不存在」/release「任务不存在或不是失败态」/重拆「任务不存在」）；bind 失败统一 400「请求体格式错误」（与 m08 裸传 return err 两域不同制）；&lt;code&gt;api_key&lt;/code&gt; &lt;code&gt;json:&amp;quot;-&amp;quot;&lt;/code&gt; masked-only（二十一期②收敛，PRD ④）；&lt;strong&gt;GetActivePrompt（整行+split 三级）↔activePromptContent（content-only 单级）两份同语义并存&lt;/strong&gt;（二十二期 C1 裁决 a，task_assembly.go:188-189 注释「两处改动须同步对拍」）。PRD §4 M12 已登记差异 ①&lt;/del&gt;⑨（prd-qmtv-v1.md:222）引用不重立。&lt;/p&gt;</description></item><item><title>FSD M13 · 火花计划</title><link>https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/m13-%E7%81%AB%E8%8A%B1%E8%AE%A1%E5%88%92/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/m13-%E7%81%AB%E8%8A%B1%E8%AE%A1%E5%88%92/</guid><description>&lt;blockquote&gt;&#10;&lt;p&gt;&lt;a href="https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/00-%E6%80%BB%E5%88%99/"&gt;← 总则&lt;/a&gt; ｜ &lt;a href="https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/99-%E9%99%84%E5%BD%95/"&gt;附录 →&lt;/a&gt; ｜ 上游：&lt;a href="https://qmtv-docs.appland.com.cn/qmtv/product/prd-qmtv-v1/"&gt;PRD §4 M13&lt;/a&gt;&#10;实现落点：&lt;code&gt;backend/internal/domain/spark/&lt;/code&gt;（model/service/repo_gorp 三件）+ &lt;code&gt;cmd/server/spark_handlers.go&lt;/code&gt;（34 行）+ &lt;code&gt;cmd/server/routes.go:259-262&lt;/code&gt;（挂载——物理嵌在 M11 段 :258 与 :263 之间）。事实基准=Go 代码；冻结版 &lt;code&gt;qmtv/server/index.js:739-766&lt;/code&gt; 仅差异对拍参照。&#10;域内要点：二十六期补登域（P0 统计残留第八例——冻结 index.js:739-766 两条端点从未入任何模块行）；三阶梯 tier 表单数据源（per 系）；&lt;strong&gt;PRD §4 M13「逐字对齐无差异」&lt;/strong&gt;——三十期新立 DIF-30（见 m09 册/99-附录 B）。E2E-SPK-01 已实现（spark.spec.ts，清单 :15）。&lt;/p&gt;</description></item><item><title>FSD M2 · 任务与拆解</title><link>https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/m02-%E4%BB%BB%E5%8A%A1%E4%B8%8E%E6%8B%86%E8%A7%A3/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/m02-%E4%BB%BB%E5%8A%A1%E4%B8%8E%E6%8B%86%E8%A7%A3/</guid><description>&lt;blockquote&gt;&#10;&lt;p&gt;&lt;a href="https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/00-%E6%80%BB%E5%88%99/"&gt;← 总则&lt;/a&gt; ｜ &lt;a href="https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/99-%E9%99%84%E5%BD%95/"&gt;附录 →&lt;/a&gt; ｜ 上游：&lt;a href="https://qmtv-docs.appland.com.cn/qmtv/product/prd-qmtv-v1/"&gt;PRD §4 M2&lt;/a&gt;&#10;实现落点：&lt;code&gt;backend/internal/domain/task/&lt;/code&gt;（model/repo/service/service_gen）+ &lt;code&gt;cmd/server/task_handlers.go&lt;/code&gt;（38 handlers 全集）+ &lt;code&gt;cmd/server/task_assembly.go&lt;/code&gt;（LLM/模板装配）+ &lt;code&gt;cmd/server/routes.go:324-361&lt;/code&gt;（挂载）。事实基准=Go 代码；冻结版 &lt;code&gt;qmtv/server/index.js:228-366&lt;/code&gt;/&lt;code&gt;routes2.js&lt;/code&gt;/&lt;code&gt;routes3.js&lt;/code&gt; 仅差异对拍参照。&lt;/p&gt;</description></item><item><title>FSD M3 · 生成与素材</title><link>https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/m03-%E7%94%9F%E6%88%90%E4%B8%8E%E7%B4%A0%E6%9D%90/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/m03-%E7%94%9F%E6%88%90%E4%B8%8E%E7%B4%A0%E6%9D%90/</guid><description>&lt;blockquote&gt;&#10;&lt;p&gt;&lt;a href="https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/00-%E6%80%BB%E5%88%99/"&gt;← 总则&lt;/a&gt; ｜ &lt;a href="https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/99-%E9%99%84%E5%BD%95/"&gt;附录 →&lt;/a&gt; ｜ 上游：&lt;a href="https://qmtv-docs.appland.com.cn/qmtv/product/prd-qmtv-v1/"&gt;PRD §4 M3&lt;/a&gt;&#10;实现落点：&lt;code&gt;backend/internal/domain/generation/&lt;/code&gt;（model/service/service_video/service_media/provider/repo）+ &lt;code&gt;cmd/server/generation_handlers.go&lt;/code&gt; + &lt;code&gt;cmd/server/generation_assembly.go&lt;/code&gt; + &lt;code&gt;cmd/server/routes.go:53-77&lt;/code&gt;（挂载）。事实基准=Go 代码；冻结版 &lt;code&gt;qmtv/server/index.js:369-451&lt;/code&gt;/&lt;code&gt;providers.js&lt;/code&gt;/&lt;code&gt;assets.js&lt;/code&gt;/&lt;code&gt;routes2.js:40-67,408-429&lt;/code&gt;/&lt;code&gt;routes3.js:33-55,379-428&lt;/code&gt; 仅差异对拍参照。&lt;/p&gt;</description></item><item><title>FSD M4 · 导出交付</title><link>https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/m04-%E5%AF%BC%E5%87%BA%E4%BA%A4%E4%BB%98/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/m04-%E5%AF%BC%E5%87%BA%E4%BA%A4%E4%BB%98/</guid><description>&lt;blockquote&gt;&#10;&lt;p&gt;&lt;a href="https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/00-%E6%80%BB%E5%88%99/"&gt;← 总则&lt;/a&gt; ｜ &lt;a href="https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/99-%E9%99%84%E5%BD%95/"&gt;附录 →&lt;/a&gt; ｜ 上游：&lt;a href="https://qmtv-docs.appland.com.cn/qmtv/product/prd-qmtv-v1/"&gt;PRD §4 M4&lt;/a&gt;&#10;实现落点：&lt;code&gt;backend/internal/domain/export/&lt;/code&gt;（model/repo/service）+ &lt;code&gt;cmd/server/export_handlers.go&lt;/code&gt; + &lt;code&gt;cmd/server/routes.go:82-92&lt;/code&gt;（挂载）。事实基准=Go 代码；冻结版 &lt;code&gt;qmtv/server/index.js:434-471&lt;/code&gt;/&lt;code&gt;routes2.js:318-439&lt;/code&gt;/&lt;code&gt;routes3.js:347-376&lt;/code&gt; 仅差异对拍参照。前端消费：ExportView.vue（编排）+ VideoView.vue（批量/下载面）。&lt;/p&gt;</description></item><item><title>FSD M5 · 通知公告</title><link>https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/m05-%E9%80%9A%E7%9F%A5%E5%85%AC%E5%91%8A/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/m05-%E9%80%9A%E7%9F%A5%E5%85%AC%E5%91%8A/</guid><description>&lt;blockquote&gt;&#10;&lt;p&gt;&lt;a href="https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/00-%E6%80%BB%E5%88%99/"&gt;← 总则&lt;/a&gt; ｜ &lt;a href="https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/99-%E9%99%84%E5%BD%95/"&gt;附录 →&lt;/a&gt; ｜ 上游：&lt;a href="https://qmtv-docs.appland.com.cn/qmtv/product/prd-qmtv-v1/"&gt;PRD §4 M5&lt;/a&gt;&#10;实现落点：&lt;code&gt;backend/internal/domain/notification/&lt;/code&gt;（service.go 读侧 89 行+hub.go SSE 基座）+ &lt;code&gt;cmd/server/notify_handlers.go&lt;/code&gt; + &lt;code&gt;cmd/server/routes.go:96-102&lt;/code&gt;（挂载）。事实基准=Go 代码；冻结版 &lt;code&gt;qmtv/server/index.js:474-485&lt;/code&gt; 仅差异对拍参照。&#10;域内要点：&lt;strong&gt;通知零 SSE&lt;/strong&gt;（hub.go 属本包但通知读面不走事件——写入方五源自持 INSERT）；** announcements 公开面无 amw**；&lt;code&gt;read&lt;/code&gt; 是 MySQL 保留字全 SQL 反引号（PRD ①）；对账勿混：routes.go:288-290 &lt;code&gt;/admin/announcements*&lt;/code&gt; 3 条属 &lt;strong&gt;M12&lt;/strong&gt; 管理后台组。&lt;/p&gt;</description></item><item><title>FSD M6 · 组织协同</title><link>https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/m06-%E7%BB%84%E7%BB%87%E5%8D%8F%E5%90%8C/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/m06-%E7%BB%84%E7%BB%87%E5%8D%8F%E5%90%8C/</guid><description>&lt;blockquote&gt;&#10;&lt;p&gt;&lt;a href="https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/00-%E6%80%BB%E5%88%99/"&gt;← 总则&lt;/a&gt; ｜ &lt;a href="https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/99-%E9%99%84%E5%BD%95/"&gt;附录 →&lt;/a&gt; ｜ 上游：&lt;a href="https://qmtv-docs.appland.com.cn/qmtv/product/prd-qmtv-v1/"&gt;PRD §4 M6&lt;/a&gt;&#10;实现落点：&lt;code&gt;backend/internal/domain/org/&lt;/code&gt;（model 308/service 775/repo 209/repo_read 389/repo_groups 55/perms 53/code 24 单包多文件）+ &lt;code&gt;cmd/server/org_handlers.go&lt;/code&gt;（460 行 29 handler）+ &lt;code&gt;cmd/server/routes.go:103-136&lt;/code&gt;（挂载）。事实基准=Go 代码；冻结版 &lt;code&gt;qmtv/server/index.js:513-597&lt;/code&gt;（组织段 9）+&lt;code&gt;enterprise.js&lt;/code&gt;（20）仅差异对拍参照。&#10;域内要点：&lt;strong&gt;四零域&lt;/strong&gt;（零上传/零扣费/零 SSE/零通知，无 BodyLimit——routes.go:105-106）；&lt;strong&gt;无组织分流四态谱&lt;/strong&gt;：me·dashboard &lt;code&gt;ok(null)&lt;/code&gt;｜folders·groups·perm-groups·material-perms·shared-projects &lt;code&gt;ok([])&lt;/code&gt;｜folder create·assign·folder delete 400「您尚未加入企业」｜allocation-mode 404「未加入组织」——逐端点归属各异勿统一；owner-严格谱系（invites/remove/role/groups/perm-groups/assign 六面 ownerOnly vs material-perms 唯一 adminOrOwner 面）；「管理员」文案 vs owner 严格判定（PRD ⑩）；&lt;code&gt;projectRank&lt;/code&gt;/&lt;code&gt;memberRank&lt;/code&gt; &lt;strong&gt;驼峰 wire 双键&lt;/strong&gt;（同 M2 shotCount 族勿修正）；permGroups/materialPerms 响应经 map 重出（&lt;code&gt;perms&lt;/code&gt; &lt;code&gt;json:&amp;quot;-&amp;quot;&lt;/code&gt; 串解析为数组）。PRD §4 M6 已登记差异 ①~⑪+十九续勘正批注（prd-qmtv-v1.md:172-178）引用不重立。&lt;/p&gt;</description></item><item><title>FSD M7 · 分销提现</title><link>https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/m07-%E5%88%86%E9%94%80%E6%8F%90%E7%8E%B0/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/m07-%E5%88%86%E9%94%80%E6%8F%90%E7%8E%B0/</guid><description>&lt;blockquote&gt;&#10;&lt;p&gt;&lt;a href="https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/00-%E6%80%BB%E5%88%99/"&gt;← 总则&lt;/a&gt; ｜ &lt;a href="https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/99-%E9%99%84%E5%BD%95/"&gt;附录 →&lt;/a&gt; ｜ 上游：&lt;a href="https://qmtv-docs.appland.com.cn/qmtv/product/prd-qmtv-v1/"&gt;PRD §4 M7&lt;/a&gt;&#10;实现落点：&lt;code&gt;backend/internal/domain/distribution/&lt;/code&gt;（model 181/service 233/repo 214）+ &lt;code&gt;cmd/server/distribution_handlers.go&lt;/code&gt;（184 行 11 handler）+ &lt;code&gt;cmd/server/routes.go:137-151&lt;/code&gt;（挂载）。事实基准=Go 代码；冻结版 &lt;code&gt;qmtv/server/index.js:598-638&lt;/code&gt;（用户面 7）+&lt;code&gt;:708-737&lt;/code&gt;（状态机 4）&lt;strong&gt;两段不连续&lt;/strong&gt;（中间隔 admin 段 :640-:703）仅差异对拍参照。&#10;域内要点：&lt;strong&gt;零域铁律&lt;/strong&gt;——withdrawals/exchanges 全域不触 users.credits/credit_records/通知/SSE（「返佣写入方在 M8 approve 链」model.go:4-8，唯一写入方 M8 F8.03）；&lt;strong&gt;available 分母无 status 过滤&lt;/strong&gt;（cancelled/rejected 永不释放额度——:715 note「收益已解锁」冻结谎言照抄）；settings 回退&lt;strong&gt;双 shape 不可合并&lt;/strong&gt;（overview 三键 vs 提现面一键）；affiliate_threshold 980 硬编码与 M8 &lt;strong&gt;不同源勿统一&lt;/strong&gt;；W_FLOW 严格邻接状态机（终态无键恒 400）；admin PUT 不限属主 vs cancel/confirm 属主强制。bind 形态：POST/PUT 三处&lt;strong&gt;裸传 return err&lt;/strong&gt;（echo 默认 400 无统一信封——与 m12「请求体格式错误」两域不同制）。PRD §4 M7 已登记差异 ①~⑩（prd-qmtv-v1.md:180-184）引用不重立。&lt;/p&gt;</description></item><item><title>FSD M8 · 充值</title><link>https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/m08-%E5%85%85%E5%80%BC/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/m08-%E5%85%85%E5%80%BC/</guid><description>&lt;blockquote&gt;&#10;&lt;p&gt;&lt;a href="https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/00-%E6%80%BB%E5%88%99/"&gt;← 总则&lt;/a&gt; ｜ &lt;a href="https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/99-%E9%99%84%E5%BD%95/"&gt;附录 →&lt;/a&gt; ｜ 上游：&lt;a href="https://qmtv-docs.appland.com.cn/qmtv/product/prd-qmtv-v1/"&gt;PRD §4 M8&lt;/a&gt;&#10;实现落点：&lt;code&gt;backend/internal/domain/recharge/&lt;/code&gt;（model 118/repo 209/service 381）+ &lt;code&gt;cmd/server/recharge_handlers.go&lt;/code&gt;（161 行 8 handler）+ &lt;code&gt;cmd/server/routes.go:152-166&lt;/code&gt;（挂载，&lt;code&gt;up8 := BodyLimit(&amp;quot;8mb&amp;quot;)&lt;/code&gt; :158 proof/pay-qrcode 共用）。事实基准=Go 代码；冻结版 &lt;code&gt;qmtv/server/recharge.js&lt;/code&gt;（8 条 :28-:120，admin 4 条 router 内写死 /admin/ 前缀）仅差异对拍参照。&#10;域内要点：&lt;strong&gt;M8 是 M7 的返佣写入方&lt;/strong&gt;（commission_records 唯一写入方在 approve 链——M7 零域的另一面）；&lt;strong&gt;404 文案三态分叉&lt;/strong&gt;（「订单不存在或已处理」vs proof 面「订单不存在」vs 400「已处理不可重复提交凭证」——model.go:21-32 三哨兵）；&lt;strong&gt;approve 零事务补偿序七步&lt;/strong&gt;（MarkPaid→到账→两级返佣→资格联动→通知→SSE——禁事务铁律顺合冻结补偿式一致性）；reject &lt;strong&gt;双截断不同源&lt;/strong&gt;（落库 200/通知 100）；orderNo=&amp;lsquo;RCH&amp;rsquo;+毫秒+3 位随机&lt;strong&gt;非 uid 勿用 ids 包&lt;/strong&gt;；&lt;code&gt;recharge_orders.credits&lt;/code&gt; 刻意不 DECIMAL（0004 七列外——到账恒整数）；SSE recharge 仅发本人（M12 无 SSE 的对照面）。bind 形态：&lt;strong&gt;裸传 return err&lt;/strong&gt;（与 m12「请求体格式错误」两域不同制）。PRD §4 M8 已登记差异 ①~⑧（prd-qmtv-v1.md:188）引用不重立。&lt;/p&gt;</description></item><item><title>FSD M9 · 剧本库与投稿</title><link>https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/m09-%E5%89%A7%E6%9C%AC%E5%BA%93%E4%B8%8E%E6%8A%95%E7%A8%BF/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/m09-%E5%89%A7%E6%9C%AC%E5%BA%93%E4%B8%8E%E6%8A%95%E7%A8%BF/</guid><description>&lt;blockquote&gt;&#10;&lt;p&gt;&lt;a href="https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/00-%E6%80%BB%E5%88%99/"&gt;← 总则&lt;/a&gt; ｜ &lt;a href="https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/99-%E9%99%84%E5%BD%95/"&gt;附录 →&lt;/a&gt; ｜ 上游：&lt;a href="https://qmtv-docs.appland.com.cn/qmtv/product/prd-qmtv-v1/"&gt;PRD §4 M9&lt;/a&gt;&#10;实现落点：&lt;code&gt;backend/internal/domain/scriptlib/&lt;/code&gt;（model/repo/service〔scriptlib.js 9+ensureSeed〕/service_studio〔studio.js 16〕/seeds）+ &lt;code&gt;cmd/server/scriptlib_handlers.go&lt;/code&gt; + &lt;code&gt;cmd/server/routes.go:167-202&lt;/code&gt;（挂载）。事实基准=Go 代码；冻结版 &lt;code&gt;qmtv/server/scriptlib.js&lt;/code&gt;/&lt;code&gt;studio.js&lt;/code&gt; 仅差异对拍参照。&#10;域内要点：admin 9 端点叠 &lt;code&gt;AdminMiddleware&lt;/code&gt;（403 forbidden）；&lt;strong&gt;wire 全蛇形&lt;/strong&gt;（model.go json tag 亲证零驼峰）；两套正则刻意勿合并（seedEpisodeRe 带 &lt;code&gt;\s*&lt;/code&gt; service.go:78 vs catalogRe 无 &lt;code&gt;:196&lt;/code&gt;）；两套Genres 清单（scriptlib.js 11 项 service.go:25 vs studio.js studioGenres 11 项 service_studio.go:21——冻结死导出未消费，Go 不移植）；ID 前缀 sl_/su_/sub_/wp_/up_/na_（ids.go:29-50）。&lt;/p&gt;</description></item><item><title>FSD 附录 · PRD 对照 / 代码域索引 / 差异台账</title><link>https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/99-%E9%99%84%E5%BD%95/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/99-%E9%99%84%E5%BD%95/</guid><description>&lt;blockquote&gt;&#10;&lt;p&gt;&lt;a href="https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/00-%E6%80%BB%E5%88%99/"&gt;← 总则&lt;/a&gt; ｜ 上游：&lt;a href="https://qmtv-docs.appland.com.cn/qmtv/product/prd-qmtv-v1/"&gt;PRD&lt;/a&gt;（§3 模块清单 / §4 差异登记）&lt;/p&gt;&#10;&lt;/blockquote&gt;&#10;&lt;h2 id="附录-a1prd-模块--fsd-分册对照权威"&gt;附录 A1：PRD 模块 → FSD 分册对照（权威）&#10;&lt;/h2&gt;&#10;&lt;div class="td-table-scroll td-table-scroll--static"&gt;&#10;&lt;table&gt;&#10; &lt;thead&gt;&#10; &lt;tr&gt;&#10; &lt;th scope="col"&gt;PRD 模块&lt;/th&gt;&#10; &lt;th scope="col"&gt;分册&lt;/th&gt;&#10; &lt;th scope="col"&gt;F-ID 段&lt;/th&gt;&#10; &lt;th scope="col"&gt;端点数&lt;/th&gt;&#10; &lt;th scope="col"&gt;覆盖期&lt;/th&gt;&#10; &lt;/tr&gt;&#10; &lt;/thead&gt;&#10; &lt;tbody&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;基础（SSE/health/release-mode）&lt;/td&gt;&#10; &lt;td&gt;总则 §2.2/§2.5 覆盖，无独立分册&lt;/td&gt;&#10; &lt;td&gt;—&lt;/td&gt;&#10; &lt;td&gt;3&lt;/td&gt;&#10; &lt;td&gt;骨架期&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;M1 认证与用户&lt;/td&gt;&#10; &lt;td&gt;&lt;a href="https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/m01-%E8%AE%A4%E8%AF%81%E4%B8%8E%E7%94%A8%E6%88%B7/"&gt;m01-认证与用户&lt;/a&gt;&lt;/td&gt;&#10; &lt;td&gt;F1.01~&lt;/td&gt;&#10; &lt;td&gt;9&lt;/td&gt;&#10; &lt;td&gt;二十八期&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;M2 任务与拆解&lt;/td&gt;&#10; &lt;td&gt;&lt;a href="https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/m02-%E4%BB%BB%E5%8A%A1%E4%B8%8E%E6%8B%86%E8%A7%A3/"&gt;m02-任务与拆解&lt;/a&gt;&lt;/td&gt;&#10; &lt;td&gt;F2.01~&lt;/td&gt;&#10; &lt;td&gt;38&lt;/td&gt;&#10; &lt;td&gt;&lt;strong&gt;二十九期&lt;/strong&gt;&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;M3 生成与素材&lt;/td&gt;&#10; &lt;td&gt;&lt;a href="https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/m03-%E7%94%9F%E6%88%90%E4%B8%8E%E7%B4%A0%E6%9D%90/"&gt;m03-生成与素材&lt;/a&gt;&lt;/td&gt;&#10; &lt;td&gt;F3.01~&lt;/td&gt;&#10; &lt;td&gt;19&lt;/td&gt;&#10; &lt;td&gt;&lt;strong&gt;二十九期&lt;/strong&gt;&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;M4 导出交付&lt;/td&gt;&#10; &lt;td&gt;&lt;a href="https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/m04-%E5%AF%BC%E5%87%BA%E4%BA%A4%E4%BB%98/"&gt;m04-导出交付&lt;/a&gt;&lt;/td&gt;&#10; &lt;td&gt;F4.01~&lt;/td&gt;&#10; &lt;td&gt;10&lt;/td&gt;&#10; &lt;td&gt;&lt;strong&gt;二十九期&lt;/strong&gt;&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;M5 通知公告&lt;/td&gt;&#10; &lt;td&gt;&lt;a href="https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/m05-%E9%80%9A%E7%9F%A5%E5%85%AC%E5%91%8A/"&gt;m05-通知公告&lt;/a&gt;&lt;/td&gt;&#10; &lt;td&gt;F5.01~&lt;/td&gt;&#10; &lt;td&gt;4&lt;/td&gt;&#10; &lt;td&gt;&lt;strong&gt;三十期&lt;/strong&gt;&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;M6 组织协同&lt;/td&gt;&#10; &lt;td&gt;&lt;a href="https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/m06-%E7%BB%84%E7%BB%87%E5%8D%8F%E5%90%8C/"&gt;m06-组织协同&lt;/a&gt;&lt;/td&gt;&#10; &lt;td&gt;F6.01~&lt;/td&gt;&#10; &lt;td&gt;29&lt;/td&gt;&#10; &lt;td&gt;&lt;strong&gt;三十一期&lt;/strong&gt;&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;M7 分销提现&lt;/td&gt;&#10; &lt;td&gt;&lt;a href="https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/m07-%E5%88%86%E9%94%80%E6%8F%90%E7%8E%B0/"&gt;m07-分销提现&lt;/a&gt;&lt;/td&gt;&#10; &lt;td&gt;F7.01~&lt;/td&gt;&#10; &lt;td&gt;11&lt;/td&gt;&#10; &lt;td&gt;&lt;strong&gt;三十一期&lt;/strong&gt;&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;M8 充值&lt;/td&gt;&#10; &lt;td&gt;&lt;a href="https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/m08-%E5%85%85%E5%80%BC/"&gt;m08-充值&lt;/a&gt;&lt;/td&gt;&#10; &lt;td&gt;F8.01~&lt;/td&gt;&#10; &lt;td&gt;8&lt;/td&gt;&#10; &lt;td&gt;&lt;strong&gt;三十一期&lt;/strong&gt;&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;M9 剧本库与投稿&lt;/td&gt;&#10; &lt;td&gt;&lt;a href="https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/m09-%E5%89%A7%E6%9C%AC%E5%BA%93%E4%B8%8E%E6%8A%95%E7%A8%BF/"&gt;m09-剧本库与投稿&lt;/a&gt;&lt;/td&gt;&#10; &lt;td&gt;F9.01~&lt;/td&gt;&#10; &lt;td&gt;25&lt;/td&gt;&#10; &lt;td&gt;&lt;strong&gt;三十期&lt;/strong&gt;&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;M10 导演与融合&lt;/td&gt;&#10; &lt;td&gt;&lt;a href="https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/m10-%E5%AF%BC%E6%BC%94%E4%B8%8E%E8%9E%8D%E5%90%88/"&gt;m10-导演与融合&lt;/a&gt;&lt;/td&gt;&#10; &lt;td&gt;F10.01~&lt;/td&gt;&#10; &lt;td&gt;28&lt;/td&gt;&#10; &lt;td&gt;&lt;strong&gt;三十期&lt;/strong&gt;&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;M11 评估与工具&lt;/td&gt;&#10; &lt;td&gt;&lt;a href="https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/m11-%E8%AF%84%E4%BC%B0%E4%B8%8E%E5%B7%A5%E5%85%B7/"&gt;m11-评估与工具&lt;/a&gt;&lt;/td&gt;&#10; &lt;td&gt;F11.01~&lt;/td&gt;&#10; &lt;td&gt;14&lt;/td&gt;&#10; &lt;td&gt;&lt;strong&gt;三十期&lt;/strong&gt;&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;M12 管理后台&lt;/td&gt;&#10; &lt;td&gt;&lt;a href="https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/m12-%E7%AE%A1%E7%90%86%E5%90%8E%E5%8F%B0/"&gt;m12-管理后台&lt;/a&gt;&lt;/td&gt;&#10; &lt;td&gt;F12.01~&lt;/td&gt;&#10; &lt;td&gt;39&lt;/td&gt;&#10; &lt;td&gt;&lt;strong&gt;三十一期&lt;/strong&gt;&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;M13 火花计划&lt;/td&gt;&#10; &lt;td&gt;&lt;a href="https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/m13-%E7%81%AB%E8%8A%B1%E8%AE%A1%E5%88%92/"&gt;m13-火花计划&lt;/a&gt;&lt;/td&gt;&#10; &lt;td&gt;F13.01~&lt;/td&gt;&#10; &lt;td&gt;2&lt;/td&gt;&#10; &lt;td&gt;&lt;strong&gt;三十期&lt;/strong&gt;&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;/tbody&gt;&#10;&lt;/table&gt;&#10;&lt;/div&gt;&#10;&#10;&lt;h2 id="附录-a2代码域--分册反向索引"&gt;附录 A2：代码域 → 分册反向索引&#10;&lt;/h2&gt;&#10;&lt;div class="td-table-scroll td-table-scroll--static"&gt;&#10;&lt;table&gt;&#10; &lt;thead&gt;&#10; &lt;tr&gt;&#10; &lt;th scope="col"&gt;backend 域包&lt;/th&gt;&#10; &lt;th scope="col"&gt;分册&lt;/th&gt;&#10; &lt;/tr&gt;&#10; &lt;/thead&gt;&#10; &lt;tbody&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;&lt;code&gt;internal/domain/auth&lt;/code&gt;&lt;/td&gt;&#10; &lt;td&gt;m01&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;&lt;code&gt;internal/domain/task&lt;/code&gt;&lt;/td&gt;&#10; &lt;td&gt;m02&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;&lt;code&gt;internal/domain/generation&lt;/code&gt;&lt;/td&gt;&#10; &lt;td&gt;m03&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;&lt;code&gt;internal/domain/export&lt;/code&gt;&lt;/td&gt;&#10; &lt;td&gt;m04&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;&lt;code&gt;internal/domain/notification&lt;/code&gt;&lt;/td&gt;&#10; &lt;td&gt;m05&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;&lt;code&gt;internal/domain/org&lt;/code&gt;&lt;/td&gt;&#10; &lt;td&gt;m06&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;&lt;code&gt;internal/domain/distribution&lt;/code&gt;&lt;/td&gt;&#10; &lt;td&gt;m07&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;&lt;code&gt;internal/domain/recharge&lt;/code&gt;&lt;/td&gt;&#10; &lt;td&gt;m08&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;&lt;code&gt;internal/domain/scriptlib&lt;/code&gt;&lt;/td&gt;&#10; &lt;td&gt;m09&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;&lt;code&gt;internal/domain/director&lt;/code&gt;&lt;/td&gt;&#10; &lt;td&gt;m10&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;&lt;code&gt;internal/domain/evaluation&lt;/code&gt;&lt;/td&gt;&#10; &lt;td&gt;m11&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;&lt;code&gt;internal/domain/admin&lt;/code&gt; + &lt;code&gt;internal/domain/llm&lt;/code&gt;&lt;/td&gt;&#10; &lt;td&gt;m12&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;&lt;code&gt;internal/domain/spark&lt;/code&gt;&lt;/td&gt;&#10; &lt;td&gt;m13&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;&lt;code&gt;internal/domain/credits&lt;/code&gt;（计费横切）&lt;/td&gt;&#10; &lt;td&gt;总则 §2.3 + 各分册扣费节&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;&lt;code&gt;internal/infra/{hub,ids,storage}&lt;/code&gt; + &lt;code&gt;internal/gateway&lt;/code&gt;&lt;/td&gt;&#10; &lt;td&gt;总则 §2.2/§2.5/§2.7&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;&lt;code&gt;cmd/server/routes.go&lt;/code&gt;（基础 3 条：/api/events、/api/health、release-mode）&lt;/td&gt;&#10; &lt;td&gt;总则 §2.2/§2.5&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;tr&gt;&#10; &lt;td&gt;&lt;code&gt;internal/recovery&lt;/code&gt;（启动恢复四扫描）&lt;/td&gt;&#10; &lt;td&gt;跨域，见总则 §2.3 退款唯一口 + m02/m03&lt;/td&gt;&#10; &lt;/tr&gt;&#10; &lt;/tbody&gt;&#10;&lt;/table&gt;&#10;&lt;/div&gt;&#10;&#10;&lt;h2 id="附录-b实现差异台账dif"&gt;附录 B：实现差异台账（DIF）&#10;&lt;/h2&gt;&#10;&lt;blockquote&gt;&#10;&lt;p&gt;格式 &lt;code&gt;DIF-&amp;lt;期&amp;gt;-&amp;lt;序号&amp;gt;&lt;/code&gt;；FSD 撰写期新发现逐条登记。&lt;strong&gt;PRD §4 已登记的移植差异不重复立目&lt;/strong&gt;，功能节内直接引用（如「差异⑤族」）。处置列：&lt;code&gt;登记&lt;/code&gt;（有意保真）/&lt;code&gt;待裁决&lt;/code&gt;/&lt;code&gt;已修&lt;/code&gt;。&lt;/p&gt;</description></item><item><title>QMTV 功能规格说明书（FSD）v1.0 · 总则</title><link>https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/00-%E6%80%BB%E5%88%99/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/00-%E6%80%BB%E5%88%99/</guid><description>&lt;blockquote&gt;&#10;&lt;p&gt;上游文档：&lt;a href="https://qmtv-docs.appland.com.cn/qmtv/product/prd-qmtv-v1/"&gt;prd-qmtv-v1.md&lt;/a&gt;（需求与契约）。本文档以 &lt;strong&gt;Go 实现代码&lt;/strong&gt;为事实基准（&lt;code&gt;backend/&lt;/code&gt;，239/239 收官），按模块还原系统真实运转规则；与 PRD 的差异以 &lt;code&gt;&amp;gt; ⚠️ 差异 DIF-&amp;lt;批次&amp;gt;-&amp;lt;序号&amp;gt;&lt;/code&gt; 注记并登记 &lt;a href="https://qmtv-docs.appland.com.cn/qmtv/fsd-qmtv/99-%E9%99%84%E5%BD%95/"&gt;99-附录 B&lt;/a&gt;。冻结版 Express（&lt;code&gt;qmtv/server/&lt;/code&gt;）仅作差异对拍参照，不再单独展开。&#10;功能 ID 规则：&lt;code&gt;F&amp;lt;m&amp;gt;.&amp;lt;两位序号&amp;gt;&lt;/code&gt;（m = PRD 模块号 M1~M13）。ID 全局唯一、只增不改号；分册文件 &lt;code&gt;m&amp;lt;m&amp;gt;-&amp;lt;中文名&amp;gt;.md&lt;/code&gt;。&lt;/p&gt;</description></item></channel></rss>