14 DAO 与事务责任:实验卡(2026-10-04) 先核实 RequestStore.java 的 insert/find/transition/insertOrder/findOrder 与 JdbcRequestStore.java 的实现确实打入本次 WAR,JDK 21 / Open Liberty 26.0.0.5 / javaee_lab 独立配置可用。不要对共用 PostgreSQL 或未认证公共接口运行演示路径。 正常(business/ 中记录过一次顺序场景): cd examples/javaee-enterprise JAVAEE_PORT=9085 JAVAEE_DEMO_MODE=true JAVAEE_LAB_USER=javaee_lab bash scenarios/09-lab-procurement.sh 前提:独立实验服务端同样开启演示模式、本地提供 JAVAEE_LAB_PASSWORD。判据:顺序提交→批准→下单→重试后同一订单 ID;另一数据库连接查到 ORDERED|13.75|1。保存新租户/申请 ID 与原退出码,不把单次重试外推为并发安全。 失败(jta-rollback/ 中归档过另一条创建路径): JAVAEE_PORT=9085 JAVAEE_DEMO_MODE=true JAVAEE_LAB_USER=javaee_lab bash scenarios/18-lab-rollback.sh 判据:人工注入创建路径异常,HTTP 500,另一连接查该随机租户申请行数 0;强化脚本还读 identity 序列前后值。订单先插入、状态更新前故意失败的对照入口并不存在,因此订单两步原子性失败实验 NOT_RUN,不能复用草稿回滚日志。 后续订单故障合同(NOT_RUN):测试专用 WAR 在 insertOrder 返回后、transition 之前设置单次触发点;记录前置 APPROVED/版本/订单数、异常、独立连接最终两表行;预期本次尝试不留下新订单且状态仍 APPROVED。删除故障点后同输入再测恢复;并发冲突需双请求屏障,不能靠 sleep。尚无可复制的故障 HTTP 命令,勿虚构端点。 归档代码和 WAR SHA、脱敏配置、数据库版本、HTTP/SQL 原始结果、事务日志与时间窗。JPA RESOURCE_LOCAL 结果只作为机制对照。