鼎味肉市DESIGN ATELIER
← 资料目录docs/architecture/07-bounded-context/bc-03-catalog.md阅读原文

BC-03|商品与内容发布(catalog)

状态:working-draft;本次边界建议,未批准为完整新基线。
Design=draft;Contract=not-defined-here;Implementation=not-assessed;Verification=document-review-only。
上游:SD-01(仍为候选占位)
输入:既有模块设计(历史材料保留在 docs_bak/)
编写责任:主会话;业务决策 / 长期维护责任人:待指定。日期:2026-09-18。

1. 需要什么,它是什么

清晰表达卖什么、按什么规格展示与履约,以及哪个版本已经发布。

统一语言:SKU 是销售对象身份;SKUVersion/Spec 是约定版本;Publication 是面向入口和时间的发布决定。发布、质量放行、可承诺和可成交价格是不同判断。

2. 拥有与不拥有

拥有: 商品与 SKU、销售及加工包装规格版本、推荐菜谱与 SKU 映射、经营内容及首页发布快照、发布计划和历史。

不拥有: 物料账本、质量结论、容量、成交价格、顾客个人计划、外部平台审核结果;媒体文件存储状态归平台技术能力。

这里列出事实族和职责,不直接定义数据库表、聚合事务范围或最终接口名称;详细模型须在下一层继续验证。

3. 谁参与,怎样使用

经营者通过后台编辑审批发布;顾客读取发布内容;Commerce、Demand、Supply、Fulfillment 引用规格;Channel 适配到外部展示。

典型场景:编辑草稿 → 校验规格与素材就绪 → 发布版本 → 顾客与其他 BC 读取;下架改变新的可用入口,不修改历史订单保存的规格快照。

4. 如何与其他上下文协作

提供版本化规格和发布内容;组合页面通过各 Owner 的查询获取价格、容量和公开追溯,Catalog 不接管这些事实。

调用方向、信息方向、流程协调者和失败责任统一见 CONTEXT-MAP;事实边界及混淆项见 OWNERSHIP。不使用共享可变实体或跨 Owner 写表。

5. 不变量、权限与一致性

历史版本可追溯;发布不保证可售;预览不生成交易副作用;依赖失效应明确不可用而不是补造规格。

所有入口遵循 统一授权接缝。本上下文负责自己的资源关系和业务动作条件,不能仅凭客户端提交的角色或对象归属放行。

6. 失败、并发与恢复

并发编辑防覆盖;媒体未就绪阻断发布;缓存更新失败展示版本或过期状态;回滚以新的生效指针保留历史。

部署和数据库共用不构成跨上下文原子性承诺。需要立即成立的约束在对应事实 Owner 内执行;跨域步骤记录意图、版本、结果与恢复进度。

7. 边界取舍与可能推翻结论的证据

商品相关内容与发布暂合并。若出现跨业务的独立编辑流程、受众投放和内容生命周期,再评估 Content 上下文,不因首页页面独立就自动拆 BC。

反证检查:验证下架并不改历史订单、已发布无容量仍不能成交、外部审核通过不能反向批准内部商品。反例是内容不再依赖商品且拥有独立强规则。

上述是设计反例清单,尚未执行产品测试。拆合讨论及重开条件见 BOUNDARY-DECISIONS。

8. 未决事项与后续交付

商品范围、通用内容与商品内容边界、实验/推荐规则 Owner、规格版本兼容规则待明确。

先核对本页业务范围及上下文边界,再细化模型、不变量、状态、命令/查询/事件和授权契约;最后派生完整业务增量 REQ。不得据本稿直接锁定开发接口。当前未决项统一归入DECISIONS对应D项;REVIEW仅保留历史审查及Q项来源,不另作活动决策台账。