← ClaudeAtlas

java-backend-guardrailslisted

Use when designing, implementing, or reviewing Java microservice or 电商/文旅/支付业务 involving 订单, 支付, 分账, 结算, OSS, 文件上传, STS, 直传, SSRF, 财务统计, GMV, 接口规范, 接口安全, 定时任务, XXL-JOB, 接口性能, N+1, 连接池, 防重放, 水平越权, 退款, 核销, 库存, 秒杀, 购物车, 优惠券, Redis, RocketMQ, 幂等, 高并发, 分布式事务, 限流, 缓存, 分库分表, 索引, 容灾, 远程调用, JVM, 对账, or 账期. Skip heavy concurrency skills for ordinary single-table CRUD.
1398281322-a11y/java-backend-guardrails · ★ 2 · AI & Automation · score 73
Install: claude install-skill 1398281322-a11y/java-backend-guardrails
# Java Backend Guardrails(总控) 定位:把面试考点变成写代码时的风险扫描,不是背题,也不是自动写出完美代码。 技术栈默认:Java 微服务 + Spring Boot + MyBatis-Plus + Redisson + RocketMQ。 ## 硬规则 1. **先读本文件,再按需加载子 skill。** 禁止把所有子 skill 读进上下文。 2. **最多加载 2–4 个子 skill。** 用下面的路由表匹配,取相关度最高的。 3. **普通单表 CRUD(无钱、无库存、无回调、无跨服务写、无公开高 QPS)→ 不加载任何高并发子 skill。** 只做安全与表设计里的轻量检查(`#{}`、登录鉴权、必要唯一约束)。 4. **先给轻量方案。** 禁止无脑上 TCC、Seata、分库分表、全局分布式锁。升级重方案必须写清触发条件。 5. **skill 给风险 + 对比 + 默认路径,取舍交给人。** 不要假装只有一种正确答案。 6. **写完代码后按已加载子 skill 的评审清单再扫一遍。** ## 工作流 按当前阶段只加载该阶段相关的子 skill: | 阶段 | 做什么 | 典型加载 | |------|--------|----------| | 需求 / 设计 | 标风险、定默认方案、标升级条件 | 业务命中的 2–4 个 | | 建表 | 唯一约束、状态机、版本号、索引 | `table-design` + `mysql-index`(需要分片才加 `sharding`) | | 写接口 | 按默认方案落代码 | 同需求阶段 | | 代码评审 / 存量扫描 | 对照子 skill 反例和清单 | 同需求阶段 | 两种触发: - **语义自动:** 识别到下方关键词就加载对应子 skill。 - **显式:** 用户点名某个 skill(如「用幂等 skill」)时只读那一个。 ## 路由表(只读命中的文件) 路径相对本 skill 根目录。索引和分片是两个文件,禁止当作同一个问题处理。 | 子 skill | 读这个 | 命中关键词 / 症状 | |----------|--------|-------------------| | 幂等 | [idempotent/SKILL.md](idempotent/SKILL.md) | 重复提交、重复回调、重复消费、重试、支付回调、退款回调、核销、防重 | | 超卖 / 扣库存 | [concurrency-sell/SKILL.md](concurrency-sell/SKILL.md) | 库存、超卖、扣减、名额、余票、分佣扣减、核销占名额 | | 分布式事务 | [distributed-transaction/SKILL.md](distributed-transaction/SKILL.md) | 跨服务写、下单后发券、支付后分佣、核销后结算、本地消息表、TCC、Seata | | 缓存陷阱 | [cache-trap/SKILL.md](cache-trap/SKILL.md) | Redis 缓存、穿透、击穿、雪崩、缓存一致性、热点 key | | 限流熔断 | [rate-limit/SKILL.md](rate-limit/SKILL.md) | 限流、熔断、降级、打爆、Sentinel、网关保护 | | 远程调用 | [rpc-remote/SKILL.md](rpc-remote/SKILL.md) | Fe