[SEN] 在 GoAdmin 基线上重建 MediaMTX 配置、生命周期与状态对账 #67
Closed
opened 2026-08-14 10:26:39 +08:00 by ila
·
3 comments
No Branch/Tag Specified
dev
feat/183-bell-contact-schedule
docs/171-coordination-e2e-wiki
feature/155-coordination-e2e
docs/168-sync-coordination-wiki
feature/154-coordination-deployment
docs/152-153-connectors
feature/153-event-evidence-connector
feature/152-brain-control
docs/151-machine-identity-acceptance
task/151-machine-identity
docs/150-contract-acceptance
docs/148-149-contract-acceptance
feature/149-runtime-status-contract
feature/150-event-evidence-contract
feature/148-source-config-contract
docs/8-mvp-acceptance
feature/145-sense-e2e-isolation-cleanup
feature/134-bell-independent-e2e
feature/142-bell-ui-shell-startup
feature/140-bell-minimal-admin-menu
feature/138-bell-production-captcha
feature/133-bell-alert-lifecycle
feature/132-bell-rule-alert
feature/131-bell-event-receipt
feature/16-brain-local-events
feature/15-brain-rules
feature/14-brain-vision
feature/13-brain-decode
feature/11-brain-input
main
feat/sense-79-ops-alerts
feat/sense-78-outbox
feat/77-sense-media-shards
feat/76-sense-edge-node-status
feat/75-sense-quota-capacity
feature/74-sense-operations
feature/73-sense-local-events
feature/72-sense-bulk-provisioning
feature/113-record-parallel-acceptance
feature/113-sync-parallel-implementation-docs
feature/71-sense-e2e-regression
feature/62-bell-goadmin-skeleton
feature/10-brain-python-cuda-skeleton
feature/108-sync-devharness
feature/90-sense-root-launcher
feature/106-supervisor-sense
fix/101-sense-layout-shell
feature/104-sense-login-30-days
docs/99-acceptance
feature/99-sense-app-config
feature/70-sense-windows-delivery
fix/95-sense-media-path-constraint
feature/97-sense-password-login
docs/92-acceptance
fix/92-sense-capabilities-jsonb
docs/69-acceptance
feature/69-sense-area
feature/68-sense-liveview
feature/67-sense-mediamtx-reconcile
feature/66-sense-onvif-admission
feature/65-sense-device-credential
feature/64-sense-auth-rbac-audit
feature/61-sense-goadmin-source-baseline
docs/acceptance-batch-20260814
coordination/58-finalize-branch-governance
explore
agent/codex/56-sense-device-edit-payload
agent/codex/54-sense-liveview-on-demand
agent/codex/51-sense-auto-liveview
agent/codex/50-sense-split-camera-credentials
agent/codex/48-sense-onvif-digest
agent/codex/46-sense-env-loader
agent/codex/44-sense-empty-navigation
agent/codex/42-sense-password-length-only
agent/codex/40-sense-password-min-6
agent/codex/37-sense-windows-package
agent/codex/36-bell-docs
agent/codex/9-bell-mvp
agent/codex/21-sense-mvp
agent/codex/28-current-prototypes
agent/codex/5-goadmin-baseline
agent/codex/3-go-admin-ui-reuse
agent/codex/1-collaboration-rules
No results found.
Milestone
No items
No Milestone
Projects
Clear projects
No projects
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: ila/yovision#67
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
状态
已完成
基本信息
原始需求与追溯
explore只用于业务、测试和故障证据,不复制自研基础框架。目标
保持 MediaMTX 为独立二进制,由 Sense 管理安全配置、进程生命周期、按需拉流路径、reader/上游实际态和幂等对账。
做什么
实现路径期望态、增改删除、启动就绪等待、冷启动恢复、退避重试、孤儿安全闸、状态采集和脱敏诊断;接入成功后幂等建立媒体路由。
不做什么
不把媒体内核嵌入 GoAdmin handler 或 GORM model;不实现浏览器播放页面;不修改根级部署;不把凭据写入日志或公开配置。
GoAdmin 复用与文档门禁
cmd/server.md、advanced/config.md、service.md、db.md、router.md。写路径
Sense/server/app/sense/media/**Sense/server/app/sense/reconcile/**Sense/server/config/mediamtx/**Sense/server/cmd/migrate/migration/version/*media*Sense/ui/src/views/sense/media/**Sense/ui/src/api/sense/media*Sense/server/tests/media/**Sense/server/app/admin/router/sense_media.goSense/server/cmd/api/server.goSense/server/app/sense/admission/apis.goSense/ui/tests/unit/sense/media*.spec.jsSense/README.md禁止写入:
Brain/**、Bell/**、contracts/**、根级部署配置。任务归档阶段仅允许按 Wiki 主源流程同步docs/**与wiki-docs.json。如实现发现必须修改这些路径,停止并转协同工单。文档影响
更新 MediaMTX 二进制位置、配置生成、生命周期、Control API、冷启动恢复、状态与排错。
长期文档先更新 Gitea Wiki;本地
docs/镜像由单一协调工单同步,避免共享路径冲突。验收标准
验证方式
风险与回退
进程管理和错误对账可能产生僵尸进程或错误路径。使用受控测试目录与端口,限制重试;回退配置和任务迁移,不删除摄像机数据。
协同需求摘要
本工单不建立跨项目契约。发现 Sense→Brain 源/区域配置或 Sense/Brain→Bell 事件/证据需求时,只记录生产者、消费者、目的与建议验证,不取得共享写路径。
实施结果(2026-08-14)
19f9bfa;长期文档提交:4149cc4;待验收归档镜像提交:263a68c;验收镜像提交:35b9c7b。dev,merge commit:b1bdb91fdb94711d2e974a663687265691f393b1。go test ./...、go vet ./...、go build ./...通过;媒体/对账 race 测试通过。Task-67-Sense视频服务生命周期与状态对账,revision4642924705d7a3406874ef532579fb2d6a25a88b;镜像一致性检查通过。sys_config字段长度问题中止;#67 定向迁移已在 PostgreSQL 17 通过。空库安装链留给 #70/#71 复核,不混入本工单。验收结论(2026-08-14)
用户明确验收通过;工单归档完成并合并到
dev。前置 #66 已验收关闭,开始实施。代码图 MCP 本会话未提供,代码发现按仓库规则回退到
rg与精确文件读取。写路径校正:
cmd/migrate/migration/version/*media*;cmd/api/server.go;app/admin/router/sense_media.go;admission/apis.go调用媒体内部端口;这些校正不改变已确认目标、非目标或跨项目边界。
已完整阅读冻结 go-admin-doc:
docs/intro/cmd/server.md:沿用 Cobra server、指定配置文件和现有启动/关闭生命周期;docs/intro/advanced/config.md:运行参数保持外部环境配置,不提交真实路径或凭据;service.md:业务状态与 GORM 操作留在 service,不塞入 handler;db.md:使用 PostgreSQL/GORM 迁移与时间字段规范;router.md:使用标准注册函数、JWT 与角色鉴权。UI 继续复用 BasicLayout、Element Plus 表格/Tag/按钮和现有请求封装,不新增通用组件。
#67 已完成实现并进入待验收。
feature/67-sense-mediamtx-reconcile→dev,打开且未合并。19f9bfa(实现)、4149cc4(长期文档)、263a68c(归档镜像)。8ce039b45a20e680e378932331d9a8da1cae1654,镜像检查通过。sys_config字段长度问题中止;#67 定向迁移已通过,已提示 #70/#71 复核空库安装链。用户于 2026-08-14 明确验收通过。Wiki 归档已更新为已完成(revision
4642924705d7a3406874ef532579fb2d6a25a88b),镜像提交35b9c7b;PR #85 已合并到dev,merge commitb1bdb91fdb94711d2e974a663687265691f393b1。工单关闭。