3.7 KiB
3.7 KiB
Bell 目录规则
- Bell 是独立销售和部署的事件预警与处置产品。
- 主实现技术栈为 Go 后端与 Vue 3 + Element Plus 管理端;正式数据库为 PostgreSQL。
- Bell 拥有独立账户、角色、会话、数据库角色、审计和密码策略,不信任 Sense 用户 token。
- Event 与 Alert 分离;原始 Event 不可变,Alert 状态迁移、ack/close、投递和升级事实只追加并可审计。
- 外部事件以
(producer_id, source_event_id)幂等;Bell 不读取 Sense 数据库、摄像头密码或内部文件路径。 - 修改
contracts/、Sense connector 或 Brain 输出语义前,必须转为跨项目协调工单。 - Bell agent 默认写路径仅为
Bell/及工单明确列出的共享文件。
独立建单职责
- Bell agent 负责建立独立登录/RBAC、外部事件入站、规则、Event/Alert、ack/close、升级恢复、联系人/排班、通知、审计和合成事件验收等 Bell 单项目工单。
- 每个工单必须写明任务类型、主项目
Bell、主 agent、精确write_paths、独立运行方式、测试命令和在 Sense/Brain 未启动时使用合成或第三方事件的验收标准。 - 首轮并行建单只创建 Bell 独立工单;发现需要外部事件/证据契约、producer identity、Sense connector、根级部署或端到端测试时,停止扩写本工单,向主 agent 提交协同需求摘要。
- 协同需求摘要至少包含生产者、消费者、接口目的、候选事实源、阻塞的 Bell 工单和建议验证;Bell agent 不直接创建契约实现或取得
contracts/、Sense/、Brain/的写入权。
go-admin / go-admin-ui 约束
- Bell 管理面只启用事件预警、告警处置和通知运维所需的默认能力;框架演示页和无关管理模块优先通过配置、菜单权限或路由开关隐藏。
- 涉及权限或安全的不用模块不能只隐藏菜单,必须同时验证前端入口和后端接口均不可访问;永久删除默认模块必须单独建立清理工单。
- 新页面优先复用 Bell/go-admin-ui 已有的布局、表格、表单、弹窗、上传、权限控制和请求封装;新增组件前在工单中说明现有组件为何不能满足需求。
- 新增组件沿用 Bell 现有颜色、字号、间距、状态反馈、交互方式、命名和目录结构,并验证没有多余入口、失效入口或重复组件。
- 修改底层公共组件的全局行为时,必须单独建单并列出所有受影响页面;同时影响 Sense 或共享基线时升级为协同工单。
GoAdmin 技术基线
- 初始化或升级 Bell 前必须读取根
goadmin-baseline.json,按其中的 go-admin、go-admin-ui commit 和 Go/Node/pnpm 精确版本实施。 - Bell 必须由冻结 go-admin 后端与 go-admin-ui 前端源码直接派生;旧
explore实现只能用于业务语义对照,禁止把其中自研认证、RBAC、会话、HTTP 平台或前端外壳复制为新基础。 - 开始每个骨架、认证权限、菜单路由、代码生成、ORM 或通用 UI 工单前,必须读取任务相关的冻结 go-admin-doc,并把参考主题/文件及采用方式写回工单。
- 骨架验收必须证明上游来源、继承路径、许可证、裁剪清单和相对上游差异;只有相似技术栈或视觉不能通过验收。
D:\github\goadmin下的仓库仅可只读参考;Bell 产品代码只能写入Bell/或工单授权路径,不得在参考仓库原地开发。- 派生上游代码必须保留 MIT 许可证和版权声明;上游
go-admin-doc只作框架用法参考,不覆盖 yovision Wiki 和本目录规则。 - 变更冻结基线必须升级为 Sense/Bell 协同工单;Bell 可以独立发布,但不得单独漂移上游或工具链版本。