[BEL] 在 GoAdmin 基线上重建 Event、Receipt 与合成事件入口 #131
Closed
opened 2026-08-29 08:43:41 +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#131
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提取业务语义和测试证据,不迁移旧基础框架)原始需求与变化
dev的 Bell GoAdmin 基线上重建独立告警纵切,不能把explore旧框架整体合回;第一步建立不可变 Event、永久幂等 Receipt 和仅限开发测试的合成事件入口。explore,#62 明确未迁移这些业务,当前dev无法完成 Bell MVP 验收。目标
(producer_id, source_event_id)作为 Bell 内部入站幂等键;相同载荷重放返回同一 Event,不同载荷冲突拒绝且保留可定位审计。非目标
explore的自研 HTTP/认证/前端外壳。Sense/**、Brain/**、contracts/**、根级构建/部署或本地 Wiki 镜像。goadmin-baseline.json的上游 commit 或工具链。精确 write_paths
Bell/server/app/bell/event/**Bell/server/app/bell/receipt/**Bell/server/app/bell/synthetic/**Bell/server/app/bell/router/event.goBell/server/app/bell/router/synthetic.goBell/server/app/bell/router/registry.goBell/server/cmd/api/server.go(仅一次接入 Bell 业务路由聚合器)Bell/server/cmd/migrate/migration/version-local/*bell_event*Bell/server/cmd/migrate/migration/version-local/init.goBell/server/tests/bell_event/**Bell/scripts/test-event-synthetic.ps1禁止写:
Sense/**、Brain/**、contracts/**、docs/**、根级构建/部署配置,以及未列出的 Bell UI 路径。GoAdmin 实施门禁
实施前必须读取冻结 go-admin-doc 的 Router、API、Models、DTO、Service、DB、migrate 主题,并在工单评论记录实际文件与采用方式;使用 #62 已继承的 Gin/GORM/中间件/响应/迁移链,不另建 HTTP、认证或数据库框架。
已确认技术设计
验收标准
Bell/**路径。验证
go test ./...、go vet ./...、go build ./...python dev_scripts/harness.py check --strictgit diff --check与写路径检查风险与回退
设计与文档影响
docs/**。状态:进行中(2026-08-29)
前置 #62 已关闭并通过用户验收;当前
dev与origin/dev均为96bd4ad2c8c5f010a0caa1746154471dd0d031cc,工作区 clean。任务分支:feature/131-bell-event-receipt。已核对冻结来源 HEAD:
f06540883b41d03782bb6b2c4150f298f328c6b667d393d713877572fab0b897296a4c1d525fc81d424855aacf6905f3fde860c3331385cb25529a0d已读取 go-admin-doc:
cmd/migrate、Router、API、Models、DTO、Service、DB。采用方式:业务路由沿用 Gin + JWT + Casbin 中间件链;请求使用 API/DTO 绑定与统一响应;持久化使用 GORM/PostgreSQL;新迁移只写version-local,不修改冻结上游迁移。不会新建 HTTP、认证、RBAC 或数据库框架。写路径严格限定为 #131 列出的
Bell/**;Sense、Brain、contracts、docs 和 UI 不写。状态:待验收(2026-08-29)
#131 已按确认范围完成并经 PR 合入
dev。最终差异
Event、永久幂等Receipt与追加式IngestAudit;不嵌入 GoAdmin 可更新/软删除模型。(producer_id, source_event_id)、规范化载荷 SHA-256、PostgreSQL transaction advisory lock 和唯一索引实现并发幂等。GET /api/v1/bell/events/:id;新增仅管理员可用的POST /api/v1/bell/synthetic-events。BELL_SYNTHETIC_EVENTS_ENABLED=true/1;prod/production即使显式开关仍不注册路由。验证证据
GOTOOLCHAIN=go1.26.5 go test ./...:通过。GOTOOLCHAIN=go1.26.5 go vet ./...:通过。GOTOOLCHAIN=go1.26.5 go build ./...:通过。pwsh -NoProfile -File .\scripts\test-event-synthetic.ps1 -Verbose:通过,输出:BELL_131_SMOKE events=2 receipts=2 concurrent=12 audit=redacted immutable=true restart=true production_synthetic=404python dev_scripts/harness.py check --strict:通过。git diff --check:通过。Bell/**。提交与合并
8f7d91310b7d86d521a710a884f7470607431b77dev合并提交:689de560bb0d8928de77dd5ed2cae9ead581e3ef文档影响与未验证项
docs/。工单保持 open,等待用户验收;未关闭 #131,未合入
main。验收结论:通过
dev@689de560bb0d8928de77dd5ed2cae9ead581e3ef(PR #135)。dev → main,未创建任务归档。docs/**。