{
 "ticket": "U58 #95",
 "startedAt": "2026-10-28T22:33:17.849963+08:00",
 "finishedAt": "2026-10-28T22:33:27.897300+08:00",
 "input": "python3 labs/rabbitmq-topology/run.py",
 "exitCode": 0,
 "environment": {
  "jdk": "openjdk version \"21.0.11\" 2026-04-21 LTS\nOpenJDK Runtime Environment (build 21.0.11+11-LTS)\nOpenJDK 64-Bit Server VM (build 21.0.11+11-LTS, mixed mode, sharing)",
  "maven": "Apache Maven 3.9.9 (8e8579a9e76f7d015ee5ec7bfcdc97d260186937)",
  "broker": "RabbitMQ 4.4.0（本机独立 node u58@localhost，端口 5679，数据目录临时）",
  "client": "com.rabbitmq:amqp-client:5.37.0",
  "os": "macOS-27.2-arm64-arm-64bit",
  "arch": "arm64",
  "erlang": "Erlang (SMP,ASYNC_THREADS) (BEAM) emulator version 17.1.1"
 },
 "reports": [
  {
   "name": "study.rabbitmq.RabbitTopologyTest",
   "tests": "11",
   "failures": "0",
   "errors": "0",
   "skipped": "0"
  }
 ],
 "testCount": 11,
 "results": [
  {
   "name": "broker-start",
   "command": [
    "/Users/gaochao/.cache/software-engineering-study/tools/rabbitmq_server-4.4.0/sbin/rabbitmq-server",
    "-detached"
   ],
   "exitCode": 0,
   "expected": 0,
   "ok": true,
   "observed": []
  },
  {
   "name": "mvn-test",
   "command": [
    "/Users/gaochao/develop/maven-3.9.9/bin/mvn",
    "-B",
    "-ntp",
    "-q",
    "-Dlab.amqp.port=5679",
    "clean",
    "test"
   ],
   "exitCode": 0,
   "expected": 0,
   "ok": true,
   "observed": [
    "U58 deadLetter=PASS work=0 dead=1",
    "U58 fanout=PASS q1=1 q2=1",
    "U58 mandatoryReturn=PASS 312:no.such.key",
    "U58 alternateExchange=PASS altQueue=1",
    "U58 unackedRecovery=PASS redelivered=true",
    "U58 nackRequeue=PASS firstDelivered=false secondDelivered=true",
    "U58 direct=PASS qA=1 qB=0 routed=e1",
    "U58 topic=PASS star=1 hash=2",
    "U58 publisherConfirm=PASS acked=true durable=1",
    "U58 quorumQueue=PASS type=quorum delivered=true replicas=1-of-1",
    "U58 prefetch=PASS beforeAck=2 afterAck=3"
   ]
  },
  {
   "name": "dependency",
   "command": [
    "/Users/gaochao/develop/maven-3.9.9/bin/mvn",
    "-B",
    "-ntp",
    "-q",
    "dependency:list",
    "-DoutputFile=/dev/stdout"
   ],
   "exitCode": 0,
   "expected": 0,
   "ok": true,
   "observed": []
  }
 ],
 "observed": [
  "U58 brokerStart=PASS port=5679 node=u58@localhost",
  "U58 tests=PASS count=11 failures=0 errors=0",
  "U58 deadLetter=PASS work=0 dead=1",
  "U58 fanout=PASS q1=1 q2=1",
  "U58 mandatoryReturn=PASS 312:no.such.key",
  "U58 alternateExchange=PASS altQueue=1",
  "U58 unackedRecovery=PASS redelivered=true",
  "U58 nackRequeue=PASS firstDelivered=false secondDelivered=true",
  "U58 direct=PASS qA=1 qB=0 routed=e1",
  "U58 topic=PASS star=1 hash=2",
  "U58 publisherConfirm=PASS acked=true durable=1",
  "U58 quorumQueue=PASS type=quorum delivered=true replicas=1-of-1",
  "U58 prefetch=PASS beforeAck=2 afterAck=3",
  "U58 brokerStop=PASS stopped=True"
 ],
 "artifacts": {
  "pom.xml": "d247525d9c1a60f2dbbf1278d81d8595a61ba9cf5397b287d7a2e5bd71acbd12",
  "run.py": "866edd028d49b4865776138f88bce30b8016f8fbfcce720cbe162f51c6035f83",
  "src/test/java/study/rabbitmq/Broker.java": "060d195214d18eaec274ed1a7c7c6b9caa7ea79182c2602831b2009e39fc34a8",
  "src/test/java/study/rabbitmq/RabbitTopologyTest.java": "141a46be8bf62da99a9f377562dc7663743275edba5e5d9e5fe8b95838589dfc"
 },
 "logs": "/Users/gaochao/.cache/software-engineering-study/java-depth-impl/u58/run-wsta4m0i",
 "cleanup": {
  "broker": "本脚本启动的 RabbitMQ node 已 stop；mnesia/log 位于临时目录（本次运行的 /Users/gaochao/.cache/software-engineering-study/java-depth-impl/u58/run-wsta4m0i）",
  "queues": "每个用例在结束时 queueDelete/exchangeDelete 自己的命名空间；默认交换机不做删除"
 },
 "limits": [
  "单节点 RabbitMQ 4.4.0；集群、quorum 队列多数派、镜像/仲裁队列跨节点恢复未运行",
  "持久化只验证 persistent 消息 confirm 与单节点重启前行为；broker 崩溃/断电恢复未运行",
  "未运行 TLS、SASL 外部认证、 shovel/federation、stream 插件、优先级队列与惰性队列",
  "prefetch 只验证单 channel basicQos；consumer 多 channel 分摊与公平分发未专项运行"
 ]
}
