# 现有项目首轮技术增量记录

> 当前追加：[代理线路与无落盘转发](dramivio-proxy-relay.md)。以下首轮记录保留其验证范围；最新网站实例关闭服务器视频下载/合并与队列恢复，在线播放和兼容解码改为短期内存。最新代码测试和对抗复审见该追加记录；不将首轮旧行为继续当成目标产品。

2026-10-03 · 标准 API 渠道接入与双端优化

本轮直接修改“短剧库”和“juku-mobile”，完成标准渠道及媒体等底层增量。**这些测试不代表产品已按设计稿完成；当前设计验收未通过。** 代码在本地开发区，真实API服务和App安装包尚未发布。现有Go/RN能力可复用，最终架构与页面以[按设计稿实施路线](dramivio-existing-project-plan.md)为准。

2026-10-03用户明确要求按设计实施。上一轮保留三栏导航、用户频道范围、本地快照分批展示、游客追剧等做法只属过渡实现，必须改造。密码登录、每剧最近进度和本机文件也不能替代邮箱OTP、逐集跨端事实和账号许可。最新播放器布局仍待接入；不以长按测试通过代替播放器设计验收。

## 已验证的技术增量（产品仍待改造）

| 范围 | 本轮改动 |
| --- | --- |
| 后台渠道 | 添加标准JSON API、测试目录连接、修改名称、启停、归档；保留旧输入处理版本冲突 |
| 渠道身份 | 服务端生成唯一ID；接口地址和路径创建后固定，更换来源须新建，避免旧进度串剧 |
| API与任务 | 动态授权清单、目录和详情、聚合联网搜索；某个源失败仍返回其他成功结果；停用关闭相关播放、暂停下载并取消合并 |
| Web | 过渡授权渠道筛选；封面右下角44px独立爱心按钮；去掉列表封面阴影和暗色遮罩；倍速通过菜单操作。最终移除消费者频道筛选 |
| App | 动态渠道及过渡范围设置；两列快照分批呈现10条；爱心追剧；稳定原生媒体source和可调缓冲配置。最终需真实去重分页、登录门槛与四栏导航 |
| App播放 | 接受同源网关的MP4/HLS代理和本地计划；拒绝跨域直连跳转，避免身份请求头流向上游；350ms长按临时2倍速，松手、取消、切集、缓冲、后台或弹层时恢复 |
| 缓存权限 | 身份、授权范围和频道模式参与查询隔离；变化后清理旧查询及封面请求头，播放地址不持久化 |

现有观看进度接口继续保留每剧最后观看的集号、播放位置、时长与递增序列校验。本轮还修正了结束后的退出上报覆盖完成状态，以及重进同一会话时上报序号重置的问题。当前数据不是永久逐集观看事实或额度账本。App使用设备观看身份，本轮不等于邮箱登录后的跨设备同步。App的10条是已有快照的分批呈现，尚未改为服务端每页10条查询。

## 使用入口

管理员登录过渡Web后台，进入“更多 → 渠道管理”。先填写名称、公共HTTPS根地址与两条接口路径，再测试连接；测试成功只代表目录格式可读，随后保存并更新剧库。当前App可刷新来源清单；最终用户端由系统聚合择优，不要求选择频道或管理范围。渠道配置会迁入成熟开源后台。

[标准 API 格式和接入示例](dramivio-channel-guide.md)包含目录、详情、分集和管理端点。首期仅支持符合该格式的公共JSON API；需要API密钥、Cookie、自定义请求头或HTML解析的站点，需后续独立适配。

## 边界与复审

- 当前过渡清单仍受服务端来源权限约束；营销名称不展示在用户页面。最终来源清单与渠道配置只留运营/内部适配层，普通用户无频道范围步骤；知道渠道ID不能增加权限。
- 配置修改使用revision，过期提交返回409；同版本并发编辑只接受一个。文件损坏时保留原文件并拒绝覆盖。
- 停用状态与配置版本在实际媒体请求再次核对，覆盖HLS清单、分片、密钥和MP4；自定义源使用受控代理，公共HTTPS、DNS与重定向均校验。
- 目录分页到预算上限返回“部分目录”，不宣称全量收录；同渠道相同ID去重，跨渠道同名剧保留不同身份。
- JSON配置支持单进程部署，不支持多个进程共同写一个数据目录。最多50个自定义渠道，单次响应2MB，每个目录页50条；搜索最多4路并行，每源10秒、总预算45秒。
- 原生媒体经过Go服务带宽，不支持HLS Content Steering。配套发布顺序：关闭旧客户端的内置直连策略 → 升级Go → 升级App；旧Go不认识新增native字段，会返回400。
- 停用限制后续网络请求，不能抹去已缓冲片段；已下载的手机本地文件仍可离线播放，本轮没有离线许可证撤销或DRM。

子agent交叉复审已推动修正：App错误拒绝代理计划、原生跳转转发身份头、重进会话丢进度、Web默认范围漏掉授权渠道、HLS网关遗漏严格URI校验、范围变化残留旧缓存，以及渠道接口改写造成的历史映射风险。复审结论只覆盖本轮代码及测试，不替代真实供应商和真机验收。

## 验证记录

| 检查 | 结果 |
| --- | --- |
| Go全量回归 | 通过 |
| 13组渠道边界测试与2组原生计划测试及race检查 | 通过；含并发修改、归档/停用、配置恢复、异常上游、实际媒体网关与凭据隔离 |
| Go构建 | 通过 |
| Web Node行为测试 | 47项通过 |
| Web真实浏览器 + 模拟API | 390px与1280px渠道管理通过；冲突保留输入、测试/保存/停用/归档、无横向溢出；普通账号频道切换、搜索、爱心及未授权隐藏通过 |
| App类型与行为测试 | 类型检查及32项测试通过，含倍速取消、旧媒体回调、播放计划、权限范围、完成状态、共享上报序号和同源封面 |
| Android JS/Hermes导出 | 通过，1287个模块；不代表APK或真机通过 |

浏览器校验使用真实项目界面和模拟API，Go测试独立验证服务端；尚未使用真实外部渠道、Android/iOS真机或弱网环境验收。

![手机宽度下的渠道管理，模拟数据](juku-channels-390.png)

![手机宽度下的封面爱心与渠道筛选，模拟数据](juku-web-library-390.png)

## 设计对齐后的执行顺序

先按[实施路线](dramivio-existing-project-plan.md)与[新任务卡](dramivio-model-task-cards.md)执行S00/S01–S04：最新设计基线、四栏导航、首页、统一二级查询、经典播放器操作层。邮箱/后台框架、统一内容及原生能力PoC可并行。指定网站适配器在目标样例明确后独立实施，不阻塞已确认的主产品设计。

邮箱OTP、Web每日10集/App每日50集、邀请奖励、AI情节搜索、跨渠道内容去重、逐集跨端记录和登录App缓存属于必须完成的免费首版，尚未实现闭环。广告投放、收费与推送实际开启后置，但全状态、接口与关闭态必须保留。见[149状态验收矩阵](dramivio-design-acceptance-matrix.md)。

本次追加已固化S00的文档基线、源文件摘要与全状态任务归属；未因此把任何运行页面标成产品验收通过。设计一致性与架构边界两名子agent确认上一轮路线存在偏离，修订路线按设计重新确定。
