{
 "ticket": "U62 #99",
 "startedAt": "2026-10-28T21:42:38.043664+08:00",
 "finishedAt": "2026-10-28T21:43:05.863711+08:00",
 "input": "python3 labs/build-toolchain/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)",
  "gradle": "Gradle 9.8.2",
  "git": "git version 2.55.0",
  "os": "macOS-27.2-arm64-arm-64bit",
  "arch": "arm64",
  "note": "Gradle 发行版与用户 home 位于仓库外缓存目录；临时工作树在运行结束时删除"
 },
 "results": [
  {
   "name": "maven-version",
   "command": [
    "/Users/gaochao/develop/maven-3.9.9/bin/mvn",
    "-B",
    "-ntp",
    "-v"
   ],
   "cwd": "/Users/gaochao/Documents/面试/software-engineering-study/.claude/worktrees/silly-ellis-2df603/labs/build-toolchain",
   "exitCode": 0,
   "expected": 0,
   "ok": true,
   "observed": []
  },
  {
   "name": "maven-install",
   "command": [
    "/Users/gaochao/develop/maven-3.9.9/bin/mvn",
    "-B",
    "-ntp",
    "-q",
    "install",
    "-DskipTests"
   ],
   "cwd": "/Users/gaochao/.cache/software-engineering-study/java-depth-impl/u62/run-y6j5buaq/maven",
   "exitCode": 0,
   "expected": 0,
   "ok": true,
   "observed": []
  },
  {
   "name": "maven-tree-managed",
   "command": [
    "/Users/gaochao/develop/maven-3.9.9/bin/mvn",
    "-B",
    "-ntp",
    "dependency:tree",
    "-pl",
    "app",
    "-Dincludes=com.fasterxml.jackson.core"
   ],
   "cwd": "/Users/gaochao/.cache/software-engineering-study/java-depth-impl/u62/run-y6j5buaq/maven",
   "exitCode": 0,
   "expected": 0,
   "ok": true,
   "observed": []
  },
  {
   "name": "maven-tree-nearest",
   "command": [
    "/Users/gaochao/develop/maven-3.9.9/bin/mvn",
    "-B",
    "-ntp",
    "dependency:tree",
    "-pl",
    "app",
    "-am",
    "-Dincludes=com.fasterxml.jackson.core"
   ],
   "cwd": "/Users/gaochao/.cache/software-engineering-study/java-depth-impl/u62/run-y6j5buaq/maven",
   "exitCode": 0,
   "expected": 0,
   "ok": true,
   "observed": []
  },
  {
   "name": "maven-tree-direct",
   "command": [
    "/Users/gaochao/develop/maven-3.9.9/bin/mvn",
    "-B",
    "-ntp",
    "dependency:tree",
    "-pl",
    "app",
    "-am",
    "-Dincludes=com.fasterxml.jackson.core"
   ],
   "cwd": "/Users/gaochao/.cache/software-engineering-study/java-depth-impl/u62/run-y6j5buaq/maven",
   "exitCode": 0,
   "expected": 0,
   "ok": true,
   "observed": []
  },
  {
   "name": "maven-enforcer-reject",
   "command": [
    "/Users/gaochao/develop/maven-3.9.9/bin/mvn",
    "-B",
    "-ntp",
    "-q",
    "-pl",
    "app",
    "validate",
    "-Djackson.version=2.17.1"
   ],
   "cwd": "/Users/gaochao/.cache/software-engineering-study/java-depth-impl/u62/run-y6j5buaq/maven",
   "exitCode": 1,
   "expected": 1,
   "ok": true,
   "observed": []
  },
  {
   "name": "maven-enforcer-pass",
   "command": [
    "/Users/gaochao/develop/maven-3.9.9/bin/mvn",
    "-B",
    "-ntp",
    "-q",
    "-pl",
    "app",
    "-am",
    "validate"
   ],
   "cwd": "/Users/gaochao/.cache/software-engineering-study/java-depth-impl/u62/run-y6j5buaq/maven",
   "exitCode": 0,
   "expected": 0,
   "ok": true,
   "observed": []
  },
  {
   "name": "maven-package-a",
   "command": [
    "/Users/gaochao/develop/maven-3.9.9/bin/mvn",
    "-B",
    "-ntp",
    "-q",
    "-pl",
    "app",
    "clean",
    "package",
    "-DskipTests"
   ],
   "cwd": "/Users/gaochao/.cache/software-engineering-study/java-depth-impl/u62/run-y6j5buaq/maven",
   "exitCode": 0,
   "expected": 0,
   "ok": true,
   "observed": []
  },
  {
   "name": "maven-package-b",
   "command": [
    "/Users/gaochao/develop/maven-3.9.9/bin/mvn",
    "-B",
    "-ntp",
    "-q",
    "-pl",
    "app",
    "clean",
    "package",
    "-DskipTests"
   ],
   "cwd": "/Users/gaochao/.cache/software-engineering-study/java-depth-impl/u62/run-y6j5buaq/maven",
   "exitCode": 0,
   "expected": 0,
   "ok": true,
   "observed": []
  },
  {
   "name": "maven-norepro-a",
   "command": [
    "/Users/gaochao/develop/maven-3.9.9/bin/mvn",
    "-B",
    "-ntp",
    "-q",
    "-pl",
    "app",
    "clean",
    "package",
    "-DskipTests"
   ],
   "cwd": "/Users/gaochao/.cache/software-engineering-study/java-depth-impl/u62/run-y6j5buaq/maven",
   "exitCode": 0,
   "expected": 0,
   "ok": true,
   "observed": []
  },
  {
   "name": "maven-norepro-b",
   "command": [
    "/Users/gaochao/develop/maven-3.9.9/bin/mvn",
    "-B",
    "-ntp",
    "-q",
    "-pl",
    "app",
    "clean",
    "package",
    "-DskipTests"
   ],
   "cwd": "/Users/gaochao/.cache/software-engineering-study/java-depth-impl/u62/run-y6j5buaq/maven",
   "exitCode": 0,
   "expected": 0,
   "ok": true,
   "observed": []
  },
  {
   "name": "maven-test",
   "command": [
    "/Users/gaochao/develop/maven-3.9.9/bin/mvn",
    "-B",
    "-ntp",
    "-q",
    "-pl",
    "app",
    "-am",
    "test"
   ],
   "cwd": "/Users/gaochao/.cache/software-engineering-study/java-depth-impl/u62/run-y6j5buaq/maven",
   "exitCode": 0,
   "expected": 0,
   "ok": true,
   "observed": [
    "U62 test jackson=2.21.7"
   ]
  },
  {
   "name": "maven-compile",
   "command": [
    "/Users/gaochao/develop/maven-3.9.9/bin/mvn",
    "-B",
    "-ntp",
    "-q",
    "-pl",
    "app",
    "-am",
    "compile"
   ],
   "cwd": "/Users/gaochao/.cache/software-engineering-study/java-depth-impl/u62/run-y6j5buaq/maven",
   "exitCode": 0,
   "expected": 0,
   "ok": true,
   "observed": []
  },
  {
   "name": "maven-classpath",
   "command": [
    "/Users/gaochao/develop/maven-3.9.9/bin/mvn",
    "-B",
    "-ntp",
    "-q",
    "-pl",
    "app",
    "dependency:build-classpath",
    "-Dmdep.outputFile=/dev/stdout"
   ],
   "cwd": "/Users/gaochao/.cache/software-engineering-study/java-depth-impl/u62/run-y6j5buaq/maven",
   "exitCode": 0,
   "expected": 0,
   "ok": true,
   "observed": []
  },
  {
   "name": "maven-run-main",
   "command": [
    "/Library/Java/JavaVirtualMachines/liberica-jdk-21.jdk/Contents/Home/bin/java",
    "-cp",
    "/Users/gaochao/.cache/software-engineering-study/java-depth-impl/u62/run-y6j5buaq/maven/app/target/classes:/Users/gaochao/.cache/software-engineering-study/java-depth-impl/u62/run-y6j5buaq/maven/lib/target/classes:/Users/gaochao/.cache/software-engineering-study/java-depth-impl/u62/run-y6j5buaq/maven/legacy/target/classes:/Users/gaochao/.m2/repository/study/build/lib/1.0.0/lib-1.0.0.jar:/Users/gaochao/.m2/repository/com/fasterxml/jackson/core/jackson-databind/2.21.7/jackson-databind-2.21.7.jar:/Users/gaochao/.m2/repository/com/fasterxml/jackson/core/jackson-annotations/2.21/jackson-annotations-2.21.jar:/Users/gaochao/.m2/repository/com/fasterxml/jackson/core/jackson-core/2.21.7/jackson-core-2.21.7.jar:/Users/gaochao/.m2/repository/study/build/legacy/1.0.0/legacy-1.0.0.jar:/Users/gaochao/.m2/repository/org/junit/jupiter/junit-jupiter/6.0.3/junit-jupiter-6.0.3.jar:/Users/gaochao/.m2/repository/org/junit/jupiter/junit-jupiter-api/6.0.3/junit-jupiter-api-6.0.3.jar:/Users/gaochao/.m2/repository/org/opentest4j/opentest4j/1.3.0/opentest4j-1.3.0.jar:/Users/gaochao/.m2/repository/org/junit/platform/junit-platform-commons/6.0.3/junit-platform-commons-6.0.3.jar:/Users/gaochao/.m2/repository/org/apiguardian/apiguardian-api/1.1.2/apiguardian-api-1.1.2.jar:/Users/gaochao/.m2/repository/org/jspecify/jspecify/1.0.0/jspecify-1.0.0.jar:/Users/gaochao/.m2/repository/org/junit/jupiter/junit-jupiter-params/6.0.3/junit-jupiter-params-6.0.3.jar:/Users/gaochao/.m2/repository/org/junit/jupiter/junit-jupiter-engine/6.0.3/junit-jupiter-engine-6.0.3.jar:/Users/gaochao/.m2/repository/org/junit/platform/junit-platform-engine/6.0.3/junit-platform-engine-6.0.3.jar",
    "study.build.app.AppMain"
   ],
   "cwd": "/Users/gaochao/.cache/software-engineering-study/java-depth-impl/u62/run-y6j5buaq/maven",
   "exitCode": 0,
   "expected": 0,
   "ok": true,
   "observed": [
    "U62 app jackson=2.21.7"
   ]
  },
  {
   "name": "gradle-dependencies",
   "command": [
    "/Users/gaochao/.cache/software-engineering-study/tools/gradle-9.8.2/bin/gradle",
    "--no-daemon",
    "-q",
    ":app:dependencies",
    "--configuration",
    "compileClasspath"
   ],
   "cwd": "/Users/gaochao/.cache/software-engineering-study/java-depth-impl/u62/run-y6j5buaq/gradle",
   "exitCode": 0,
   "expected": 0,
   "ok": true,
   "observed": []
  },
  {
   "name": "gradle-conflict-highest",
   "command": [
    "/Users/gaochao/.cache/software-engineering-study/tools/gradle-9.8.2/bin/gradle",
    "--no-daemon",
    "-q",
    ":app:dependencies",
    "--configuration",
    "compileClasspath"
   ],
   "cwd": "/Users/gaochao/.cache/software-engineering-study/java-depth-impl/u62/run-y6j5buaq/gradle",
   "exitCode": 0,
   "expected": 0,
   "ok": true,
   "observed": []
  },
  {
   "name": "gradle-test",
   "command": [
    "/Users/gaochao/.cache/software-engineering-study/tools/gradle-9.8.2/bin/gradle",
    "--no-daemon",
    "-q",
    ":app:test"
   ],
   "cwd": "/Users/gaochao/.cache/software-engineering-study/java-depth-impl/u62/run-y6j5buaq/gradle",
   "exitCode": 0,
   "expected": 0,
   "ok": true,
   "observed": []
  },
  {
   "name": "gradle-jar-a",
   "command": [
    "/Users/gaochao/.cache/software-engineering-study/tools/gradle-9.8.2/bin/gradle",
    "--no-daemon",
    "-q",
    ":app:jar"
   ],
   "cwd": "/Users/gaochao/.cache/software-engineering-study/java-depth-impl/u62/run-y6j5buaq/gradle",
   "exitCode": 0,
   "expected": 0,
   "ok": true,
   "observed": []
  },
  {
   "name": "gradle-clean",
   "command": [
    "/Users/gaochao/.cache/software-engineering-study/tools/gradle-9.8.2/bin/gradle",
    "--no-daemon",
    "-q",
    ":app:clean"
   ],
   "cwd": "/Users/gaochao/.cache/software-engineering-study/java-depth-impl/u62/run-y6j5buaq/gradle",
   "exitCode": 0,
   "expected": 0,
   "ok": true,
   "observed": []
  },
  {
   "name": "gradle-jar-b",
   "command": [
    "/Users/gaochao/.cache/software-engineering-study/tools/gradle-9.8.2/bin/gradle",
    "--no-daemon",
    "-q",
    ":app:jar"
   ],
   "cwd": "/Users/gaochao/.cache/software-engineering-study/java-depth-impl/u62/run-y6j5buaq/gradle",
   "exitCode": 0,
   "expected": 0,
   "ok": true,
   "observed": []
  },
  {
   "name": "git-init",
   "command": [
    "git",
    "init",
    "-q",
    "-b",
    "main"
   ],
   "cwd": "/Users/gaochao/.cache/software-engineering-study/java-depth-impl/u62/run-y6j5buaq/git",
   "exitCode": 0,
   "expected": 0,
   "ok": true,
   "observed": []
  },
  {
   "name": "git-add-config",
   "command": [
    "git",
    "add",
    "config.txt"
   ],
   "cwd": "/Users/gaochao/.cache/software-engineering-study/java-depth-impl/u62/run-y6j5buaq/git",
   "exitCode": 0,
   "expected": 0,
   "ok": true,
   "observed": []
  },
  {
   "name": "git-commit-base",
   "command": [
    "git",
    "commit",
    "-q",
    "-m",
    "base"
   ],
   "cwd": "/Users/gaochao/.cache/software-engineering-study/java-depth-impl/u62/run-y6j5buaq/git",
   "exitCode": 0,
   "expected": 0,
   "ok": true,
   "observed": []
  },
  {
   "name": "git-branch-feature",
   "command": [
    "git",
    "checkout",
    "-q",
    "-b",
    "feature"
   ],
   "cwd": "/Users/gaochao/.cache/software-engineering-study/java-depth-impl/u62/run-y6j5buaq/git",
   "exitCode": 0,
   "expected": 0,
   "ok": true,
   "observed": []
  },
  {
   "name": "git-commit-feature",
   "command": [
    "git",
    "commit",
    "-q",
    "-am",
    "feature: canary"
   ],
   "cwd": "/Users/gaochao/.cache/software-engineering-study/java-depth-impl/u62/run-y6j5buaq/git",
   "exitCode": 0,
   "expected": 0,
   "ok": true,
   "observed": []
  },
  {
   "name": "git-back-main",
   "command": [
    "git",
    "checkout",
    "-q",
    "main"
   ],
   "cwd": "/Users/gaochao/.cache/software-engineering-study/java-depth-impl/u62/run-y6j5buaq/git",
   "exitCode": 0,
   "expected": 0,
   "ok": true,
   "observed": []
  },
  {
   "name": "git-commit-main",
   "command": [
    "git",
    "commit",
    "-q",
    "-am",
    "main: scale out"
   ],
   "cwd": "/Users/gaochao/.cache/software-engineering-study/java-depth-impl/u62/run-y6j5buaq/git",
   "exitCode": 0,
   "expected": 0,
   "ok": true,
   "observed": []
  },
  {
   "name": "git-merge-conflict",
   "command": [
    "git",
    "merge",
    "--no-commit",
    "feature"
   ],
   "cwd": "/Users/gaochao/.cache/software-engineering-study/java-depth-impl/u62/run-y6j5buaq/git",
   "exitCode": 1,
   "expected": 1,
   "ok": true,
   "observed": []
  },
  {
   "name": "git-add-resolved",
   "command": [
    "git",
    "add",
    "config.txt"
   ],
   "cwd": "/Users/gaochao/.cache/software-engineering-study/java-depth-impl/u62/run-y6j5buaq/git",
   "exitCode": 0,
   "expected": 0,
   "ok": true,
   "observed": []
  },
  {
   "name": "git-commit-merge",
   "command": [
    "git",
    "commit",
    "-q",
    "-m",
    "merge: canary with scale-out"
   ],
   "cwd": "/Users/gaochao/.cache/software-engineering-study/java-depth-impl/u62/run-y6j5buaq/git",
   "exitCode": 0,
   "expected": 0,
   "ok": true,
   "observed": []
  },
  {
   "name": "git-log-merge",
   "command": [
    "git",
    "log",
    "--oneline",
    "--graph"
   ],
   "cwd": "/Users/gaochao/.cache/software-engineering-study/java-depth-impl/u62/run-y6j5buaq/git",
   "exitCode": 0,
   "expected": 0,
   "ok": true,
   "observed": []
  },
  {
   "name": "git-branch-rebase-src",
   "command": [
    "git",
    "checkout",
    "-q",
    "-b",
    "rebase-src"
   ],
   "cwd": "/Users/gaochao/.cache/software-engineering-study/java-depth-impl/u62/run-y6j5buaq/git",
   "exitCode": 0,
   "expected": 0,
   "ok": true,
   "observed": []
  },
  {
   "name": "git-rebase-add",
   "command": [
    "git",
    "add",
    "notes.txt"
   ],
   "cwd": "/Users/gaochao/.cache/software-engineering-study/java-depth-impl/u62/run-y6j5buaq/git",
   "exitCode": 0,
   "expected": 0,
   "ok": true,
   "observed": []
  },
  {
   "name": "git-rebase-commit",
   "command": [
    "git",
    "commit",
    "-q",
    "-m",
    "notes: add"
   ],
   "cwd": "/Users/gaochao/.cache/software-engineering-study/java-depth-impl/u62/run-y6j5buaq/git",
   "exitCode": 0,
   "expected": 0,
   "ok": true,
   "observed": []
  },
  {
   "name": "git-rebase-run",
   "command": [
    "git",
    "rebase",
    "main"
   ],
   "cwd": "/Users/gaochao/.cache/software-engineering-study/java-depth-impl/u62/run-y6j5buaq/git",
   "exitCode": 0,
   "expected": 0,
   "ok": true,
   "observed": []
  },
  {
   "name": "git-back-main-2",
   "command": [
    "git",
    "checkout",
    "-q",
    "main"
   ],
   "cwd": "/Users/gaochao/.cache/software-engineering-study/java-depth-impl/u62/run-y6j5buaq/git",
   "exitCode": 0,
   "expected": 0,
   "ok": true,
   "observed": []
  },
  {
   "name": "git-merge-fastforward",
   "command": [
    "git",
    "merge",
    "--ff-only",
    "rebase-src"
   ],
   "cwd": "/Users/gaochao/.cache/software-engineering-study/java-depth-impl/u62/run-y6j5buaq/git",
   "exitCode": 0,
   "expected": 0,
   "ok": true,
   "observed": []
  },
  {
   "name": "git-status-clean",
   "command": [
    "git",
    "status",
    "--porcelain"
   ],
   "cwd": "/Users/gaochao/.cache/software-engineering-study/java-depth-impl/u62/run-y6j5buaq/git",
   "exitCode": 0,
   "expected": 0,
   "ok": true,
   "observed": []
  }
 ],
 "observed": [
  "U62 mavenManagedBom=PASS jackson=2.21.7",
  "U62 mavenNearestWins=PASS resolved=2.17.1 expected!=2.21.7",
  "U62 mavenDirectWins=PASS jackson=2.17.1",
  "U62 mavenEnforcerReject=PASS exit=1 rule=BannedDependencies",
  "U62 mavenEnforcerPass=PASS exit=0",
  "U62 mavenReproducible=PASS sha256=8cf35840601c9edf…",
  "U62 mavenNotReproducibleWithoutTimestamp=PASS hashes differ",
  "U62 mavenRunManagedClasspath=PASS jackson=2.21.7",
  "U62 gradlePlatformBom=PASS",
  "U62 gradleHighestVersionWins=PASS 2.17.1 -> 2.21.7",
  "U62 gradleReproducibleJar=PASS sha256=c6deada2fac53b8e…",
  "U62 gitMergeConflict=PASS exit=1 path=config.txt",
  "U62 gitMergeResolved=PASS commits>=4",
  "U62 gitRebaseAndFastForward=PASS",
  "U62 gitStatusClean=PASS",
  "U62 test jackson=2.21.7",
  "U62 app jackson=2.21.7",
  "U62 cleanup=PASS temp trees removed"
 ],
 "artifacts": {
  "pom.xml": "305a6da65320bc5c78e8bb52dc07057619148f88db000dfe912570fe6b30d8c0",
  "app/pom.xml": "e64924d78406e2dc76251f8810da2a0ff84d50126656780b677a06dd02b6c3e5",
  "lib/pom.xml": "e5a372eabbfd2c2b269311829f471b13923899817e179cde89bec63aa7ab818a",
  "legacy/pom.xml": "2ef074a27ced50a151a902ceda510d9c3cf9b0c990d8ac6a95f24087aa0e4e86",
  "platform/pom.xml": "a28f2127ca62cbf411c43874df8601c340d081577e156c049f389eb615d1d0ce",
  "run.py": "6bfd1fb85994931d7157af811b611dc63a0f5d2a333947233705da9ed4269db7",
  "gradle-project/settings.gradle.kts": "4085db0c23177abbecc012258a877fc07586b4c61c87313360696f6c81130083",
  "gradle-project/build.gradle.kts": "327bdcc0ea243bf793c165c9badf767328badd1ad3ca227a0b0d765c988a2823",
  "gradle-project/lib/build.gradle.kts": "a772b98a28782e0c89ca7c837fceed621a8d6224831ce9e43678176b08ab647e",
  "gradle-project/app/build.gradle.kts": "48ef9f7d61ba834aab9f3d5275926ee4d499214efbeea4a362a57575f2d2b4f8",
  "app/src/main/java/study/build/app/AppMain.java": "d62318da49ae8e507b9e03463339013d0fa479b7abb017cc4c62d91622d80f89",
  "app/src/test/java/study/build/app/JacksonVersionTest.java": "d117cf81ae0f69c0eb978483e824ec61b7a9a57df9154cbf83a465142f8b7201",
  "legacy/src/main/java/study/build/legacy/LegacyFormatter.java": "eddd5a76bd4b5a86fefae969f473887def433e1e6ee76b2fa409d19d08ff517a",
  "lib/src/main/java/study/build/lib/JsonRenderer.java": "61a03de16e67eb58e9489cdf9dfaf89be98232bd9fc3cafd1a6fabacc68ebe39",
  "gradle-project/app/src/main/java/study/build/app/AppMain.java": "d62318da49ae8e507b9e03463339013d0fa479b7abb017cc4c62d91622d80f89",
  "gradle-project/app/src/test/java/study/build/app/JacksonVersionTest.java": "d117cf81ae0f69c0eb978483e824ec61b7a9a57df9154cbf83a465142f8b7201",
  "gradle-project/lib/src/main/java/study/build/lib/JsonRenderer.java": "61a03de16e67eb58e9489cdf9dfaf89be98232bd9fc3cafd1a6fabacc68ebe39"
 },
 "logs": "/Users/gaochao/.cache/software-engineering-study/java-depth-impl/u62/run-y6j5buaq",
 "cleanup": {
  "tempRepos": "本脚本创建的 maven/gradle/git 三份临时树已删除；构建日志保留在 /Users/gaochao/.cache/software-engineering-study/java-depth-impl/u62/run-y6j5buaq",
  "repository": "未修改本仓库 pom/源码；所有构建在临时副本中进行"
 },
 "limits": [
  "escalation 与分级构建只覆盖 Maven 3.9.9 与 Gradle 9.8.2 的最小对照；企业仓库/Nexus/制品库未运行",
  "可重复构建只验证同一机器同一 JDK 下两次哈希一致；跨 JDK/跨 OS 未运行",
  "Git 部分是本机临时仓库的冲突/rebase 演示，不涉及远程托管、CI 或评审流",
  "未做依赖漏洞扫描、license 检查与 SBOM 生成"
 ]
}
