{
  "schema": "local-recipe-evidence/v2",
  "status": "PASS_WITH_EXPLICIT_LIMITS",
  "recordedAt": "2026-10-17T22:23:03+09:00",
  "scope": "Separate local sample, not original author or specified-model reproduction.",
  "runtime": {
    "node": {
      "node": "v24.13.1",
      "timezone": "Asia/Seoul"
    },
    "browser": "Ego Lite Chromium desktop viewport emulation",
    "servedOver": "localhost HTTP"
  },
  "unitChecks": [
    {
      "id": "village-roundtrip",
      "status": "PASS"
    },
    {
      "id": "village-independent-clone",
      "status": "PASS"
    },
    {
      "id": "village-duplicate-id",
      "status": "PASS"
    },
    {
      "id": "village-unknown-model",
      "status": "PASS"
    },
    {
      "id": "village-invalid-scale",
      "status": "PASS"
    },
    {
      "id": "village-invalid-position",
      "status": "PASS"
    },
    {
      "id": "village-invalid-start",
      "status": "PASS"
    },
    {
      "id": "village-too-many",
      "status": "PASS"
    }
  ],
  "browserObservations": [
    {
      "id": "village-loaded",
      "state": {
        "state": {
          "version": 1,
          "start": [
            0,
            0,
            8
          ],
          "placements": [
            {
              "id": "home-1",
              "model": "home",
              "position": [
                -6,
                0,
                -2
              ],
              "rotation": 0,
              "scale": 1
            },
            {
              "id": "library-1",
              "model": "library",
              "position": [
                0,
                0,
                -6
              ],
              "rotation": 0,
              "scale": 1
            },
            {
              "id": "studio-1",
              "model": "studio",
              "position": [
                6,
                0,
                -2
              ],
              "rotation": 0,
              "scale": 1
            }
          ]
        },
        "failures": 0,
        "loadedModels": [
          "home",
          "library",
          "studio"
        ],
        "groups": [
          {
            "id": "home-1",
            "position": [
              -6,
              0,
              -2
            ],
            "scale": 1
          },
          {
            "id": "library-1",
            "position": [
              0,
              0,
              -6
            ],
            "scale": 1
          },
          {
            "id": "studio-1",
            "position": [
              6,
              0,
              -2
            ],
            "scale": 1
          }
        ],
        "webgl": "WebGL 2.0 (OpenGL ES 3.0 Chromium)"
      }
    },
    {
      "id": "village-transform",
      "state": {
        "state": {
          "version": 1,
          "start": [
            0,
            0,
            8
          ],
          "placements": [
            {
              "id": "home-1",
              "model": "home",
              "position": [
                -4,
                0,
                -2
              ],
              "rotation": 90,
              "scale": 1.2
            },
            {
              "id": "library-1",
              "model": "library",
              "position": [
                0,
                0,
                -6
              ],
              "rotation": 0,
              "scale": 1
            },
            {
              "id": "studio-1",
              "model": "studio",
              "position": [
                6,
                0,
                -2
              ],
              "rotation": 0,
              "scale": 1
            }
          ]
        },
        "failures": 0,
        "loadedModels": [
          "home",
          "library",
          "studio"
        ],
        "groups": [
          {
            "id": "home-1",
            "position": [
              -4,
              0,
              -2
            ],
            "scale": 1.2
          },
          {
            "id": "library-1",
            "position": [
              0,
              0,
              -6
            ],
            "scale": 1
          },
          {
            "id": "studio-1",
            "position": [
              6,
              0,
              -2
            ],
            "scale": 1
          }
        ],
        "webgl": "WebGL 2.0 (OpenGL ES 3.0 Chromium)"
      }
    },
    {
      "id": "village-copy",
      "state": {
        "state": {
          "version": 1,
          "start": [
            0,
            0,
            8
          ],
          "placements": [
            {
              "id": "home-1",
              "model": "home",
              "position": [
                -4,
                0,
                -2
              ],
              "rotation": 90,
              "scale": 1.2
            },
            {
              "id": "library-1",
              "model": "library",
              "position": [
                0,
                0,
                -6
              ],
              "rotation": 0,
              "scale": 1
            },
            {
              "id": "studio-1",
              "model": "studio",
              "position": [
                6,
                0,
                -2
              ],
              "rotation": 0,
              "scale": 1
            },
            {
              "id": "home-copy-1",
              "model": "home",
              "position": [
                -2,
                0,
                -2
              ],
              "rotation": 90,
              "scale": 1.2
            }
          ]
        },
        "failures": 0,
        "loadedModels": [
          "home",
          "library",
          "studio"
        ],
        "groups": [
          {
            "id": "home-1",
            "position": [
              -4,
              0,
              -2
            ],
            "scale": 1.2
          },
          {
            "id": "library-1",
            "position": [
              0,
              0,
              -6
            ],
            "scale": 1
          },
          {
            "id": "studio-1",
            "position": [
              6,
              0,
              -2
            ],
            "scale": 1
          },
          {
            "id": "home-copy-1",
            "position": [
              -2,
              0,
              -2
            ],
            "scale": 1.2
          }
        ],
        "webgl": "WebGL 2.0 (OpenGL ES 3.0 Chromium)"
      }
    },
    {
      "id": "village-delete",
      "state": {
        "state": {
          "version": 1,
          "start": [
            0,
            0,
            8
          ],
          "placements": [
            {
              "id": "home-1",
              "model": "home",
              "position": [
                -4,
                0,
                -2
              ],
              "rotation": 90,
              "scale": 1.2
            },
            {
              "id": "library-1",
              "model": "library",
              "position": [
                0,
                0,
                -6
              ],
              "rotation": 0,
              "scale": 1
            },
            {
              "id": "studio-1",
              "model": "studio",
              "position": [
                6,
                0,
                -2
              ],
              "rotation": 0,
              "scale": 1
            }
          ]
        },
        "failures": 0,
        "loadedModels": [
          "home",
          "library",
          "studio"
        ],
        "groups": [
          {
            "id": "home-1",
            "position": [
              -4,
              0,
              -2
            ],
            "scale": 1.2
          },
          {
            "id": "library-1",
            "position": [
              0,
              0,
              -6
            ],
            "scale": 1
          },
          {
            "id": "studio-1",
            "position": [
              6,
              0,
              -2
            ],
            "scale": 1
          }
        ],
        "webgl": "WebGL 2.0 (OpenGL ES 3.0 Chromium)"
      }
    },
    {
      "id": "village-invalid-kept",
      "state": {
        "state": {
          "version": 1,
          "start": [
            0,
            0,
            8
          ],
          "placements": [
            {
              "id": "home-1",
              "model": "home",
              "position": [
                -4,
                0,
                -2
              ],
              "rotation": 90,
              "scale": 1.2
            },
            {
              "id": "library-1",
              "model": "library",
              "position": [
                0,
                0,
                -6
              ],
              "rotation": 0,
              "scale": 1
            },
            {
              "id": "studio-1",
              "model": "studio",
              "position": [
                6,
                0,
                -2
              ],
              "rotation": 0,
              "scale": 1
            }
          ]
        },
        "failures": 0,
        "loadedModels": [
          "home",
          "library",
          "studio"
        ],
        "groups": [
          {
            "id": "home-1",
            "position": [
              -4,
              0,
              -2
            ],
            "scale": 1.2
          },
          {
            "id": "library-1",
            "position": [
              0,
              0,
              -6
            ],
            "scale": 1
          },
          {
            "id": "studio-1",
            "position": [
              6,
              0,
              -2
            ],
            "scale": 1
          }
        ],
        "webgl": "WebGL 2.0 (OpenGL ES 3.0 Chromium)"
      }
    },
    {
      "id": "village-roundtrip",
      "state": {
        "state": {
          "version": 1,
          "start": [
            0,
            0,
            8
          ],
          "placements": [
            {
              "id": "home-1",
              "model": "home",
              "position": [
                -4,
                0,
                -2
              ],
              "rotation": 90,
              "scale": 1.2
            },
            {
              "id": "library-1",
              "model": "library",
              "position": [
                0,
                0,
                -6
              ],
              "rotation": 0,
              "scale": 1
            },
            {
              "id": "studio-1",
              "model": "studio",
              "position": [
                6,
                0,
                -2
              ],
              "rotation": 0,
              "scale": 1
            }
          ]
        },
        "failures": 0,
        "loadedModels": [
          "home",
          "library",
          "studio"
        ],
        "groups": [
          {
            "id": "home-1",
            "position": [
              -4,
              0,
              -2
            ],
            "scale": 1.2
          },
          {
            "id": "library-1",
            "position": [
              0,
              0,
              -6
            ],
            "scale": 1
          },
          {
            "id": "studio-1",
            "position": [
              6,
              0,
              -2
            ],
            "scale": 1
          }
        ],
        "webgl": "WebGL 2.0 (OpenGL ES 3.0 Chromium)"
      }
    },
    {
      "id": "village-missing-model-fallback",
      "state": {
        "state": {
          "version": 1,
          "start": [
            0,
            0,
            8
          ],
          "placements": [
            {
              "id": "home-1",
              "model": "home",
              "position": [
                -4,
                0,
                -2
              ],
              "rotation": 90,
              "scale": 1.2
            },
            {
              "id": "library-1",
              "model": "library",
              "position": [
                0,
                0,
                -6
              ],
              "rotation": 0,
              "scale": 1
            },
            {
              "id": "studio-1",
              "model": "studio",
              "position": [
                6,
                0,
                -2
              ],
              "rotation": 0,
              "scale": 1
            }
          ]
        },
        "failures": 1,
        "loadedModels": [
          "home",
          "library",
          "studio"
        ],
        "groups": [
          {
            "id": "home-1",
            "position": [
              -4,
              0,
              -2
            ],
            "scale": 1.2
          },
          {
            "id": "library-1",
            "position": [
              0,
              0,
              -6
            ],
            "scale": 1
          },
          {
            "id": "studio-1",
            "position": [
              6,
              0,
              -2
            ],
            "scale": 1
          }
        ],
        "webgl": "WebGL 2.0 (OpenGL ES 3.0 Chromium)"
      }
    },
    {
      "id": "village-width-360",
      "state": {
        "scrollWidth": 360,
        "clientWidth": 360,
        "bodyCut": "visible"
      }
    },
    {
      "id": "village-width-390",
      "state": {
        "scrollWidth": 390,
        "clientWidth": 390,
        "bodyCut": "visible"
      }
    },
    {
      "id": "village-width-768",
      "state": {
        "scrollWidth": 768,
        "clientWidth": 768,
        "bodyCut": "visible"
      }
    },
    {
      "id": "village-width-1440",
      "state": {
        "scrollWidth": 1440,
        "clientWidth": 1440,
        "bodyCut": "visible"
      }
    }
  ],
  "issues": [
    {
      "kind": "최초 실행에서 실제 발견",
      "observed": "GLTFLoader가 추가로 가져오는 SkeletonUtils.js가 ZIP 준비 폴더에 없어 초기화되지 않았습니다.",
      "change": "설치된 동일 Three.js 버전의 파일과 MIT 고지를 함께 포함했습니다.",
      "result": "같은 브라우저에서 다시 열어 GLB 3개 로드·실제 장면을 확인했습니다."
    },
    {
      "kind": "의도적 경계 시험",
      "observed": "깨진 JSON과 존재하지 않는 GLB 파일 경로를 입력했습니다.",
      "change": "JSON은 검증 후 적용하고 GLB 실패는 임시 도형으로 표시합니다.",
      "result": "현재 배치 3개를 유지했고 누락 오류를 화면에 표시했습니다."
    }
  ],
  "packageReproduction": {
    "id": "small-3d-village",
    "source": "freshly extracted sample-source.zip",
    "initialized": true,
    "details": {
      "state": {
        "version": 1,
        "start": [
          0,
          0,
          8
        ],
        "placements": [
          {
            "id": "home-1",
            "model": "home",
            "position": [
              -6,
              0,
              -2
            ],
            "rotation": 0,
            "scale": 1
          },
          {
            "id": "library-1",
            "model": "library",
            "position": [
              0,
              0,
              -6
            ],
            "rotation": 0,
            "scale": 1
          },
          {
            "id": "studio-1",
            "model": "studio",
            "position": [
              6,
              0,
              -2
            ],
            "rotation": 0,
            "scale": 1
          }
        ]
      },
      "failures": 0,
      "loadedModels": [
        "home",
        "library",
        "studio"
      ],
      "groups": [
        {
          "id": "home-1",
          "position": [
            -6,
            0,
            -2
          ],
          "scale": 1
        },
        {
          "id": "library-1",
          "position": [
            0,
            0,
            -6
          ],
          "scale": 1
        },
        {
          "id": "studio-1",
          "position": [
            6,
            0,
            -2
          ],
          "scale": 1
        }
      ],
      "webgl": "WebGL 2.0 (OpenGL ES 3.0 Chromium)"
    }
  },
  "scopeBoundaries": [
    "단순 도형 건물 3채의 배치·복제·삭제와 JSON 텍스트 재적용을 다룹니다. 파일 선택기 가져오기·NPC·캐릭터 충돌·자동 경로 탐색은 이 예제의 범위 밖입니다.",
    "직접 작성한 별도 로컬 샘플의 동작 기록입니다. 원작 재현이나 지정 AI 모델 간 성능 비교와 구분합니다.",
    "화면 폭 검사는 데스크톱 Chromium 뷰포트 에뮬레이션 기준입니다. 실제 단말·Safari·Firefox·장기 운영은 별도 환경 시험 대상입니다."
  ]
}
