[SEN] 实现无 Bell 场景的本地事件候选查看 (#73) #117

Merged
ila merged 1 commits from feature/73-sense-local-events into dev 2026-08-28 10:26:58 +08:00
Owner

关联工单:#73(工单保持待验收,不自动关闭)

实现

  • 增加 Sense 内部匿名事件候选模型、显式合成夹具、列表/详情只读 API
  • 区分 candidate/confirmed 与 pending/success/failed,返回逐条保留期限
  • 增加 JWT/Casbin/数据权限链、只读菜单权限和同步脱敏读取审计
  • 增加 GoAdmin/Element Plus 列表、筛选、分页、详情 Dialog 与 Bell 边界提示
  • 不引入 Brain/Bell schema、送达状态或可变接口

验证

  • go test ./...
  • go test -race ./app/sense/local_event
  • go vet ./...
  • go build ./...
  • 前端 22 suites / 55 tests
  • 前端 lint:0 errors(32 条上游既有 warnings)
  • pnpm build:prod
  • python dev_scripts/harness.py check --strict
  • python -m unittest discover -s tests -v
  • 无 Bell/Brain 的显式合成 fixture smoke

未验证

  • 本机 PostgreSQL 5432 未启动且无测试 DSN;TestLocalEventMigrationOnPostgres 已实现并明确 skip,不能据此声称 PostgreSQL 迁移实测通过。
  • 未使用真实摄像头、真实事件或生产数据。

文档

已更新并在线回读 Product-Requirements、Business-Rules-and-Glossary、Architecture-and-Code-Map、Local-Development-and-Verification。工单禁止写共享 docs/**,因此镜像同步留给协调工单;sync --check 已确认架构镜像 revision/正文落后。

关联工单:#73(工单保持待验收,不自动关闭) ## 实现 - 增加 Sense 内部匿名事件候选模型、显式合成夹具、列表/详情只读 API - 区分 candidate/confirmed 与 pending/success/failed,返回逐条保留期限 - 增加 JWT/Casbin/数据权限链、只读菜单权限和同步脱敏读取审计 - 增加 GoAdmin/Element Plus 列表、筛选、分页、详情 Dialog 与 Bell 边界提示 - 不引入 Brain/Bell schema、送达状态或可变接口 ## 验证 - `go test ./...` - `go test -race ./app/sense/local_event` - `go vet ./...` - `go build ./...` - 前端 22 suites / 55 tests - 前端 lint:0 errors(32 条上游既有 warnings) - `pnpm build:prod` - `python dev_scripts/harness.py check --strict` - `python -m unittest discover -s tests -v` - 无 Bell/Brain 的显式合成 fixture smoke ## 未验证 - 本机 PostgreSQL 5432 未启动且无测试 DSN;`TestLocalEventMigrationOnPostgres` 已实现并明确 skip,不能据此声称 PostgreSQL 迁移实测通过。 - 未使用真实摄像头、真实事件或生产数据。 ## 文档 已更新并在线回读 Product-Requirements、Business-Rules-and-Glossary、Architecture-and-Code-Map、Local-Development-and-Verification。工单禁止写共享 `docs/**`,因此镜像同步留给协调工单;`sync --check` 已确认架构镜像 revision/正文落后。
ila added 1 commit 2026-08-28 10:26:52 +08:00
ila merged commit 4157d90e9f into dev 2026-08-28 10:26:58 +08:00
Sign in to join this conversation.