Files
yovision/docs/current-state.md
T
QiuSW 9567838045
Harness governance / validate (push) Has been cancelled
Harness governance / validate (pull_request) Has been cancelled
feat(sense): complete T-006 five-stream integration
2026-08-07 16:33:35 +08:00

5.4 KiB
Raw Blame History

当前实现状态

快照日期:2026-08-07。只记录仓库现实与 blocker;任务实时状态到 Gitea Issue 查看。

当前阶段

  • 阶段:M0 指定摄像头型号准入已完成;M1 的“一实机 + 四合成源”实验室软件闭环已通过,但五条独立真实上游和生产 SLA 尚未验收。
  • 生产代码:Sense 已包含可构建进程、SQLite 台账、标准 ONVIF SOAP/WS-Security adapter、凭据引用、MediaMTX 生成客户端、对账、探活和 MediaMTX 重启重建;公共设备管理 API 与生产部署能力仍未实现。
  • 默认容量:16 路;单站点本阶段上限 128 路,必须横向分片。

仓库现实

  • Sense/ 已有 Go module 与 cmd/sense-api;Brain/、Bell/ 仍只有目录占位。
  • Sense 设备模型使用 modality + capabilities,SQLite 执行 v1 migration;视频配额默认 16、允许 1~128,17/128/129、新增/启用和“降低配额不关闭已有流”均有测试。
  • MediaMTX 固定为独立二进制 v1.19.3,官方 OpenAPI 已按 SHA-256 vendoring,并由固定 oapi-codegen v2.8.0 生成客户端;手写薄封装有 create/read/delete、幂等 ensure 与探活假 HTTP 测试。
  • T-003 对账进度与指数退避持久化,覆盖取消和 SQLite 重启恢复;T-006 增加真实 ONVIF adapter、RTSP router、实验室播种/状态工具、故障代理和五路自动验收。当前仍不枚举/删除孤儿。
  • T-006 正式使用 1 台准入实机和 4 个独立合成 publisher 连续观察 1806.6 s / 180 次采样,四类恢复均通过,最大与最终 unconverged 均为 0;详细证据见 docs/research/sense-5-stream-integration.md。
  • docs/raw/01~08 已记录需求、分析、方案、客户场景、事件比对和三系统职责。
  • docs/raw/contracts/event-v0.1.schema.json 已冻结,并有多份示例与语义说明。
  • harness coding 文档、上下文清单、Gitea Issue/PR 模板和治理脚本已接入。
  • Gitea 已初始化 12 个协作标签;status/waiting 用于依赖或外部条件未满足的未领取任务,实时可领取状态必须从 Gitea 查询,不在本文复制。
  • T-002 已关闭架构影响型问题:首期 S2 民办寄宿学校、客户侧私有部署、ONVIF/RTSP、NVIDIA 主路径、自研 Bell、Web/H5 与客户侧证据存储等边界已批准。
  • T-004 的 Sense/Bell 单文件交互原型已获产品确认;T-005 已归档 Claude 原稿并补录缺失评审文档,当前定稿与原始依据分开保存。
  • _reference/mibeenvr 为本地只读参考仓库,已被忽略;只允许 M0 实验与白名单借鉴。

当前可运行命令

Windows:

./init.ps1

该入口会下载锁定 Go module,运行三条治理验证、MediaMTX 客户端生成漂移检查、go test、go vet 和 go build。只启动 Sense:

go -C Sense run ./cmd/sense-api

跨平台直接验证:

python scripts/validate_agent_context.py
python -m unittest discover -s tests -p "test_*.py"
python scripts/validate_harness_governance.py

Sense 默认监听 127.0.0.1:8080,提供 /healthz 与 /readyz 运维探针;它们不代表摄像头或 M1 里程碑健康。MediaMTX 获取、校验和独立启动方法见 Sense/README.md。

当前 blocker / 待确认

  • T-001 已完成一台 HIKVISION DS-2CD3321FD-IW1-T、硬件 0x0、固件 V5.5.61 build 180929 的 ONVIF/RTSP 指定基线准入;主/子码流、错误鉴权、三个 ONVIF 核心操作和时间漂移均有脱敏证据。项目负责人豁免了无法现场执行的三次真实断网恢复,该项没有原始时间线,单样机结论也不代表批次或多品牌兼容。
  • 后续本地开发统一使用现有一台 Hikvision IP Camera;T-006 已用该实机 + 4 条独立 FFmpeg 8.1.2 合成 RTSP 源完成五路软件闭环,不要求当前购买更多摄像头。
  • T-007 保留至少 5 条独立真实上游的客户现场门禁,可使用客户授权、借用或租赁设备;它不阻塞本地开发/M1 实验室出口,但继续阻塞生产试点和真实多路 SLA。
  • S2 真实生产试点的未成年人影像、公共安全视频法规适用性和最终留存政策仍需客户/法务确认,阻塞 M3 上线但不阻塞 M1 实验室骨架。
  • 人脸方向已延后至 M5 的 S4 成人园区候选试点;必要性/PIP 影响评估、单独同意与替代方式、合法底库来源和删除流程未完成,阻塞人脸能力上线。
  • 短信/语音具体供应商未选;生产前必须选定两条独立投递路径并验证故障切换。
  • Python/PostgreSQL/Savant 的精确版本、目标硬件和 Bell 前端栈尚未冻结;Sense M1 的 Go、SQLite driver、MediaMTX、生成器及生成运行时版本已在 T-003 冻结。
  • 代码知识图谱在无业务代码阶段可能为空;工具不可用时使用 rg 处理文档与配置。

下一步

下一步按 Gitea 依赖关系选择后续 M1 任务;客户授权、借用或租赁条件具备后执行 T-007 五条独立真实上游现场门禁。T-006 的合成结果不解除 T-007,也不形成容量或生产 SLA 承诺。实时领取状态仍以 Gitea 为准。

已知风险

  • M0 临时 NVR 容易被误当生产基线,必须持续隔离。
  • 16 路默认值容易被写死,任务评审需专项搜索和测试边界值 17/128/129。
  • 未经真实硬件压测不能给出 GPU 路数承诺。
  • Gitea 使用 HTTP;token 传输风险只在本机私有配置中接受,不把 token 或实例配置写入仓库。