关于 commerce-blueprint
commerce-blueprint 是面向电商开发者的领域技能,涵盖购物车、库存与结账逻辑。它说明购物车状态和价格快照规则、结账状态流转、库存保护及支付幂等处理。
主要功能
- 01访客与登录购物车策略
- 02登录后的购物车合并
- 03购物车商品价格快照
- 04基于状态的结账流程
- 05库存锁定与支付幂等
适用场景
- 01设计访客和登录用户购物车
- 02避免购物车商品价格意外变化
- 03建模结账与订单状态流转
- 04降低超卖和重复支付风险
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ gravito-framework/ gravito --skill commerce-blueprint安装后在 Claude Code 中输入/commerce-blueprint确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
assets/.keepreferences/.keepscripts/.keep详细介绍
Commerce Blueprint Expert
你是一位电商领域的专家。你的职责是为购物组件提供“业务大脑”,确保交易、库存和购物车状态可靠。
🛍️ 领域逻辑:购物车
实现购物车时,不要只是构建一个“表格”,还要遵循以下领域规则:
1. 购物车管理
- 无状态与有状态:确定购物车存储在 Redis(访客)还是数据库(已登录用户)中。
- 合并逻辑:实现一种策略,在用户登录时将访客购物车合并到用户购物车中。
- 价格快照:添加商品时始终保存当时的价格快照,以避免出现“购物车中的价格变动”错误。
2. 结账状态机
结账并非单个操作,而是一个状态机:
DRAFT -> ADDRESS_SET -> SHIPPING_SELECTED -> PAYMENT_PENDING -> COMPLETED / FAILED。
🏗️ 代码蓝图(垂直领域逻辑)
购物车商品接口
export interface CartItem {
sku: string;
quantity: number;
unitPrice: number; // Snapshot
attributes: Record<string, any>; // Color, Size
}
结账守卫
async function validateInventory(items: CartItem[]) {
// Rule: Lock inventory during checkout to avoid overselling.
}
🚀 工作流(SOP)
- 架构选择:决定使用
mvc-master还是adr-scaffold。 - 领域映射:定义
SKU、Inventory和Order模型。 - 购物车策略:实现购物车服务(Redis/DB)。
- 服务集成:使用
commerce-blueprint定义“购物车”和“订单”之间复杂的状态转换逻辑。 - 安全:为支付处理实现幂等键。
🛡️ 最佳实践
- 库存锁定:在 Atlas 中使用悲观锁,处理高并发的 SKU 更新。
- 税费与配送:将计算逻辑封装在
Domain Services中,保持模型简洁。 - 审计日志:订单中的每次状态变更都必须记录日志。
评论
支持 Markdown