{
  "fixture": "gradle-lock",
  "category": "dependency",
  "input": {
    "kind": "source",
    "ref": "fixtures/gradle-lock"
  },
  "dbSnapshot": "2026-06-30",
  "componentsComplete": true,
  "vulnComplete": false,
  "notes": "Gradle, dependency locking 사용(gradle.lockfile 로 전이까지 고정). gradle-nolock 의 lockfile 대조쌍 — 같은 의존성(jackson-databind 2.13.0)을 lockfile 유무로만 바꿔, lockfile 이 도구를 수렴시키는지(npm 의 node-lock 처럼) 측정한다. gradle.lockfile 은 jackson-bom(BOM constraint)도 담지만 정답에서는 의존성 관리 메타라 제외한다(도구가 내면 과탐). 직접은 버전까지, 전이는 이름만(하이브리드). 취약점은 jackson-databind 2.13.0 의 CVE-2020-36518 한 건만 담아 recall 만 본다(vulnComplete=false). 정답 도출 절차(2026-07-03 재검증 일치): 임시 사본에서 ./gradlew dependencies --configuration runtimeClasspath — jackson-databind 2.13.0(직접), jackson-annotations 와 jackson-core(전이). jackson-bom 은 트리에 constraint((c) 표기)로만 나타나는 버전 정렬 선언이라 산출물 아티팩트가 아님을 트리에서 직접 확인 — 정답 제외와 과탐 판정의 근거.",
  "components": [
    {
      "purl": "pkg:maven/com.fasterxml.jackson.core/jackson-databind@2.13.0",
      "version": "2.13.0",
      "licenses": [
        "Apache-2.0"
      ],
      "scope": "direct"
    },
    {
      "purl": "pkg:maven/com.fasterxml.jackson.core/jackson-core",
      "version": "",
      "licenses": [],
      "scope": "transitive"
    },
    {
      "purl": "pkg:maven/com.fasterxml.jackson.core/jackson-annotations",
      "version": "",
      "licenses": [],
      "scope": "transitive"
    }
  ],
  "vulnerabilities": [
    {
      "cve": "CVE-2020-36518",
      "affectedPurl": "pkg:maven/com.fasterxml.jackson.core/jackson-databind@2.13.0",
      "fixedVersion": "2.13.2.1"
    }
  ],
  "fpReasons": [
    {
      "id": "pkg:maven/com.fasterxml.jackson/jackson-bom",
      "reason": "BOM import(버전 정렬용 pom 선언)라 실제 빌드 산출물(jar)에 들어가지 않는다 — 배포물 구성 기준으로 정답에서 제외"
    },
    {
      "id": "pkg:maven/org.gradle.wrapper.GradleWrapperMain/gradle-wrapper",
      "reason": "저장소에 포함된 빌드 도구(gradle wrapper jar)로 배포 산출물이 아니다 — 정답에서 제외"
    }
  ],
  "fnReasons": [
    {
      "id": "pkg:maven/com.fasterxml.jackson.core/jackson-databind@2.13.0",
      "reason": "입력(매니페스트, lockfile)에 라이선스 메타데이터가 없다 — 패키지 설치나 저장소 조회를 하지 않는 도구는 라이선스를 낼 수 없다",
      "axis": "license"
    },
    {
      "id": "pkg:maven/com.fasterxml.jackson.core/jackson-core",
      "reason": "전이 의존성 — 매니페스트만 읽는 도구는 전이를 해석하지 못한다(설치, 빌드, lockfile 해석이 필요)",
      "axis": "component"
    },
    {
      "id": "pkg:maven/com.fasterxml.jackson.core/jackson-annotations",
      "reason": "전이 의존성 — 매니페스트만 읽는 도구는 전이를 해석하지 못한다(설치, 빌드, lockfile 해석이 필요)",
      "axis": "component"
    },
    {
      "id": "CVE-2020-36518",
      "reason": "이 CVE 가 붙은 컴포넌트를 검출하지 못한 도구는 취약점 매칭도 불가하다 — 컴포넌트 축의 미탐과 연동",
      "axis": "vulnerability"
    }
  ]
}
