121 lines
21 KiB
Markdown
121 lines
21 KiB
Markdown
# 최종 검증 기록
|
||
|
||
## 지면·여섯 풍경·끌기 개선 검증 (2026-10-11 KST)
|
||
|
||
검사 소스는 `b438ee266bdda86ec40833792a004413d1182a39`, APK SHA-256은 `172A20915A9E82C06E557AFC6113189EDE659CA75CAA4A8A2FFF910E7C74CA49`다. 전체 묶음의 지면·큰 소품·경계 정지, 소품 접지, 다섯 번호씩 여섯 고정 풍경과 변형, 끌기 시점 보조·수동 복귀, 이어하기의 모양 보존 위치 보정·문제 슬롯만 초기화를 구현했다. 승인 자산455개·30개 비시각 정의·초기173개 구 ID와 위치를 보존했다.
|
||
|
||
| 실제 명령 | 결과 | 실제 종료 |
|
||
|---|---|---|
|
||
| `pwsh -NoProfile -File tools/verify.ps1 -Phase EditMode -Milestone Final` | 177/177 | 0 |
|
||
| `pwsh -NoProfile -File tools/verify.ps1 -Phase PlayMode -Milestone Final` | 112/112 | 0 |
|
||
| `pwsh -NoProfile -File tools/verify.ps1 -Phase AndroidBuild -Milestone Final` | APK 제작 | 0 |
|
||
| AndroidSmoke | 사용자 지시로 생략 | 실행하지 않음 |
|
||
|
||
사용자는 “안드로이드 기기 검증은 건너뛰겠습니다. 먼저 Unity 에디터에서 검증하세요”라고 지시했다. 현재 APK 설치·기기 실행·정상30개 Android 진행·FPS는 검증하지 않았다. 실제 세 단계 명령·로그·UTC·소스·APK 해시와 생략 범위는 `artifacts/verification/PlaygroundInteraction/completion.json`에 있다. 문서만 추가된 소스는 제품 파일 동일성으로 검사 소스에 연결하며 검사를 다시 실행한 것으로 표기하지 않는다.
|
||
|
||
현재 Main의 여섯 대표 풍경·각 다음 번호 변형을 스마트폰2400×1080·태블릿1600×1000의 기본/회전 확대 시점48장과 끌기 보조2장으로 직접 확인했다. Editor Camera.Render의 모의 가로 viewport·검수 fixture이며 Android 캡처가 아니다. 직접 관찰50개와 해시는 `EditorObservation/editor-visual-observer.json`, 화면은 `index.html`에 있다. 원래173개 구의 실제 선택·끌기·취소는 `Final/DragCapture/root-final-173-drag-proof.json`에 있다. PNG만으로 접촉·ID·성능을 판정하지 않는다.
|
||
|
||
반복 식생을 줄이고 기존 자갈을 활용해 여섯 대표 풍경의 환경 FBX 삼각형 합계를 이전 개선 배치 대비22~47% 줄였다. 여섯 Editor Camera.Render CPU 중앙값 비교 중 하나는 상승했고 측정 날짜·호스트 부하도 다르므로 전체 성능 향상·GPU 비용·기기 FPS를 주장하지 않는다. 원문은 ResourceSceneryFix/editor-resource-observations.json에 있다.
|
||
|
||
일부 아치 뒤 기사 발견성·세계 숫자 대비·수동 회전 확대의 하단 안내 겹침은 현재 관찰 제한으로 남긴다. 원래 배치를 유지하며 지원 시점의 실제 입력과 자동 끌기 여백 검사는 별도로 통과했다. 모든 시점 무가림·5~7세 가독성·실기기 성능·iOS·스토어 배포는 확인하지 않았다. 기능 브랜치에서 결과를 준비했으며 최종 승인과 dev 통합 선택은 별도다. 아래 날짜의 이전 제품·실패·성공 기록은 해당 소스의 이력이다.
|
||
|
||
## 이전 승인 모델 적용의 최종 실행 (2026-10-09 KST)
|
||
|
||
제품 소스는 `3346eb559bdfba24332feb4d9be4b7104520233e`다. 네 단계 실제 종료 0을 확인했다. 최종 제품 전체의 새 사용자 승인은 별도이며 2026-10-08 KST의 승인은 모델 다섯 묶음·원본 2개·FBX 23개의 정확한 바이트에만 적용한다.
|
||
|
||
| 실제 명령 | 결과 | 실제 외부 종료 |
|
||
|---|---|---|
|
||
| `pwsh -NoProfile -File tools/verify.ps1 -Phase EditMode -Milestone Final` | 103/103 | 0 |
|
||
| `pwsh -NoProfile -File tools/verify.ps1 -Phase PlayMode -Milestone Final` | 53/53 | 0 |
|
||
| `pwsh -NoProfile -File tools/verify.ps1 -Phase AndroidBuild -Milestone Final` | ARM64 IL2CPP APK 생성 | 0 |
|
||
| `pwsh -NoProfile -File tools/verify.ps1 -Phase AndroidSmoke -Milestone Final` | 226/226, 네 child 종료 0 | 0 |
|
||
|
||
현재 빌드 [APK](../artifacts/android/MagnetismHeroes.apk)는 57,215,937바이트, SHA-256 `DA533F235A9869E5A68F4A244AF9A89E34A8E6FB9E7C7F2F57D830939507B829`다. 표준 사본·Final 사본·Fresh30의 실제 설치 후 가져온 APK는 같은 바이트다. 실제 APK의 승인 44개 PCM과 고지 3개의 정확한 바이트를 대조했다. 실행 소스·시각·실제 종료 원문은 [completion.json](../artifacts/verification/VisualUpgrade/FinalProduct/completion.json), 별도 오프라인 원문 대조는 [문서 근거 확인](../artifacts/verification/VisualUpgrade/FinalProduct/documentation-final-evidence-audit.json)에 연결한다.
|
||
|
||
성공한 Smoke는 2026-10-08 17:04:22.9959710~17:19:58.4677196 UTC에 실행했다. Fresh30 151/151, FinalBoundary 37/37, RapidBoundary 39/39, ContentBoundary 69/69가 각각 종료 0이다. 하위 수를 독립 제품 기능 수로 합산하지 않는다. 새 저장에서 실제 입력으로 1~30을 순서대로 해결했으며 저장 push는 0회다. 각 단계 실제 성공·전체 구 ID 보존, 두 미완료 퍼즐과 최근 자유 놀이·부분 계수·카메라의 독립 복원, 0..10·반납·재공급·취소·손상 복구·오프라인·전체 숫자 발화·마지막 발화 보존을 확인했다. 별도 빠른 계수·경계 QA 상태는 정상 진행 증거와 구분한다.
|
||
|
||
세 자연 테마, 2+3 합체·떨어진 선택 구의 분리, 10개 단독/한 묶음, 0·재공급·재진입의 현재 Editor 화면 119개는 `artifacts/verification/VisualUpgrade/FinalProduct/EditorCapture`에 있다. [적용 검수 갤러리](../artifacts/verification/VisualUpgrade/FinalProduct/index.html)는 실제 Unity 렌더링의 스마트폰 2400×1080·태블릿 1600×1000 모의 viewport와 Android AVD 화면을 구분한다. 합성 Core 검수 상태는 정상 30단계 진행 증거가 아니다. 이전 101개 시각 검수의 원문은 [GameReview](../artifacts/verification/VisualUpgrade/GameReview/visual-review.json)이며 소스 b4d8854의 이력으로 보존한다.
|
||
|
||
자원 측정은 active hierarchy의 상주 MeshFilter 인덱스 합계이며 Renderer가 꺼진 원래 바닥을 포함한다. GPU 제출 삼각형 수가 아니다. 전체 Editor-loaded texture의 메모리·치수와 Camera.Render CPU wall time은 Android FPS·GPU 비용·실기기 성능을 증명하지 않는다.
|
||
|
||
원래 30개 비시각 정의·구 ID/총량/초기 위치·기존 GUID·44개 음성·6표정·폰트·UI·Mixer·Core·저장 경계를 유지했다. yaw 210도·pitch −45도·거리 15의 지면 아래 시점에서 새 지면 뒷면은 원래 Island보다 보드를 더 많이 가린다. 같은 여섯 물리 Raycast가 원래 바닥을 먼저 맞아도 시각적 가림이 같다는 뜻은 아니다. 실제 대조는 `FinalProduct/EditorCapture/belowground-raycast-comparison.txt`와 같은 폴더의 원본/새 지면 PNG에 있다. 기존 카메라·pick·초기 배치 보존을 우선했으며 카메라 범위·복귀 동작은 별도 UX 결정으로 남겼다. 실제 기기·아이 대상 사용성·iOS·스토어 검증은 후속이다.
|
||
|
||
원경 하단의 실제 틈을 보정하기 위해 30개 Stage의 FarHorizon 120개 x/z 배치 반경만 35에서 27로 옮겼다. 승인 메시·31개 재질·높이·회전·크기·다른 배치와 카메라·입력·Collider는 유지했다. 실제 가져온 sharedMesh의 별도 물리 장면에서 중앙 24m 복도 표본 누락은 366→반경 28의 6→반경 27의 세 풍경 각각 0이었다. 같은 카메라의 근접 A/B와 지적된 두 전체 화면에서도 중앙 틈 제거를 확인했으며 모든 외곽·픽셀·시점의 무틈을 보장하지 않는다. 원문은 `artifacts/verification/VisualUpgrade/HorizonFix/result.json`과 `HorizonFix/final`의 119개 PNG다.
|
||
|
||
원경 보정 전 제품 소스 `83182e7f3e86926bf130817d401a331829401fac`의 성공 검증·APK·갤러리는 `artifacts/verification/VisualUpgrade/BeforeHorizonFix/manifest.json`에 2,311개 파일과 SHA로 보존했다. 그 결과를 새 제품의 증거로 혼용하지 않는다.
|
||
|
||
이번 첫 AndroidSmoke는 2026-10-08 16:58:49.3785491~17:00:52.0393312 UTC에 실제 종료 1이었다. Fresh30 stage5의 ADB `shell wm size` 관찰 명령에서 localhost:5037 연결이 약 21초 뒤 timeout 10060으로 실패했다. AVD 충돌이나 게임 판정 실패로 원인을 단정하지 않는다. 실패 원문·부분 결과 1,257개는 `artifacts/verification/VisualUpgrade/HorizonFailedSmokeAttempt1/manifest.json`에 보존했다. 실행 소유자는 정상 장치와 같은 조회 명령의 종료 0을 확인한 뒤 실패한 Smoke만 재실행했다. 먼저 통과한 EditMode·PlayMode·AndroidBuild는 재실행하지 않았으며 소스와 제품 732개 바이트·APK SHA는 그대로였다. 실제 완료 시각은 2026-10-08 17:19:58.7340281 UTC다. 실패 시도를 통과로 바꾸지 않았다.
|
||
|
||
2026-10-07 제품의 이전 Final 원문은 [PreviousFinal 보존 목록](../artifacts/verification/VisualUpgrade/PreviousFinal/manifest.json)에 2,517개 파일과 SHA로 보존했다. 원경 보정 전 제품의 첫 Smoke는 실제 종료 1이며 원문 113개를 `FinalProduct/FailedAndroidAttempt1`에 보존했다. Unity 빌드 뒤 서로 다른 SDK의 ADB daemon 연결이 막힌 실행 소유자는 daemon을 재연결하고 실제 device/boot를 확인한 뒤 같은 clean 소스·APK로 실패한 Smoke만 재실행했다. 실패 결과를 통과로 바꾸지 않았다. [보존·정리 원문](../artifacts/verification/VisualUpgrade/FinalProduct/FailedAndroidAttempt1/preservation-and-pruning.json)은 과거 잔여 2,480개를 고정 사본과 정확한 SHA 대조 후 제거한 기록이다. 당시 실행 UTC·소스·APK가 맞는 원문만 당시 결과로 채택했다.
|
||
|
||
## T8 이전 통합 dev 검사 (2026-10-07)
|
||
|
||
당시 완료 검사는 루트 `C:/git/MagnetismHeroes`, 고정 소스 `ea2ad4506ce2288f7777c0eb017833723679f487`에서 수행했다. 아래 작업 디렉터리의 이전 결과와 구분한다. 네 실제 명령의 외부 종료가 모두 0이고 실행 전후 tracked 변경과 소스 변경이 없다.
|
||
|
||
| 실제 명령 | 결과 | 외부 종료 |
|
||
|---|---|---|
|
||
| `pwsh -NoProfile -File tools/verify.ps1 -Phase EditMode -Milestone Final` | 100/100, 실패·건너뜀·미확정 0 | 0 |
|
||
| `pwsh -NoProfile -File tools/verify.ps1 -Phase PlayMode -Milestone Final` | 47/47, 실패·건너뜀·미확정 0 | 0 |
|
||
| `pwsh -NoProfile -File tools/verify.ps1 -Phase AndroidBuild -Milestone Final` | release ARM64 IL2CPP APK 생성·검사 | 0 |
|
||
| `pwsh -NoProfile -File tools/verify.ps1 -Phase AndroidSmoke -Milestone Final` | Final 226/226, 하위 네 검사 실제 종료 0 | 0 |
|
||
|
||
Smoke는 2026-10-06 17:46:54.093493~18:03:58.028723 UTC에 실행됐다. 새 저장·실제 입력의 Fresh30 151/151, FinalBoundary 37/37, RapidBoundary 39/39, ContentBoundary 69/69가 통과했다. 정상 1~30 진행에는 저장 push나 완료 기록 주입이 없다. 두 미완료 퍼즐·최근 자유 놀이 독립 복원과 부분 계수·카메라, 별도 명시 QA 상태의 빠른 계수·전체 숫자 발화·마지막 발화 보존, 취소·손상 복구·오프라인을 확인했다.
|
||
|
||
당시 [고정 APK](../artifacts/verification/T8/BaseEa2/artifacts/android/Final/MagnetismHeroes.apk)·Final 사본·그때 설치 후 가져온 APK의 SHA-256은 **`0D341465FD2DC4809DF8FA423490A9CFB3BA755220A8685479399CACBD9BDDE8`**다. 아래 이전 작업 APK `223F...`는 별도 보존본이다. 당시 실제 APK에서도 승인 44개 PCM, 원본/편집본/runtime 132개 해시와 고지 3개의 정확한 일치를 확인했다. 효과음·배경음악은 제외하며 한국어 음성은 유지한다.
|
||
|
||
실제 원문은 `artifacts/verification/Final`의 `*-outer.json`, phase 기록·XML·네 child report와 JSON/PNG/PCM이다. [고정 보존 목록](../artifacts/verification/T8/BaseEa2/manifest.json)은 2,527개 파일의 SHA를 대조한 사본이다. [독립 원문 확인](../artifacts/verification/T8/independent-base-evidence-ea2.json)은 실제 234개 조건과 종료 0을 기록한다. 이전 작업 원문 16,032개는 `Implementation5eb`, 실패한 첫 통합 검사와 진단 1,146개는 `BaseD9Failure`에 따로 보존했다.
|
||
|
||
첫 통합 검사 d9의 AndroidSmoke는 18번의 가려진 구를 검사 도구가 좌우 회전만 반복하여 실제 종료 1이었다. 같은 APK·같은 구 ID/위치를 상하 회전 한 번과 탭으로 성공시킨 실제 진단을 남겼다. ea2는 계수 검사에 주기적 상하 회전을 추가한 한 줄의 QA 수정이며 제품 규칙·자산·저장 스키마는 변경하지 않았다. 수정 후 통합본의 네 검사를 새로 모두 수행했다. 실패 결과를 통과 결과로 바꾸지 않았다.
|
||
|
||
이후 변경은 개발 지침·인수인계 문서와 Unity가 실제 import하여 생성한 문서 메타데이터 3개다. import는 실제 종료 0이며 기존 제품 tracked 파일의 변경은 없었다. 원문은 `artifacts/verification/T8/DocumentationImport`에 있다. 제품 파일 동일성은 별도 기록으로 확인한다. 실제 Android 기기 조작·성능·학습 효과, iOS·스토어 게시 검증은 수행하지 않았다.
|
||
|
||
최종 소스 `73ffcbef`의 전체 구현·기획·개발 문서 최종 독립 검토는 approved, blocking 0·남은 advisory 0이다. 후보의 실제 출력 경로와 예정 runtime 경로를 구분하는 문서 보완도 재검토했다. [검토 원문](../artifacts/verification/T8/FinalReview/review.json)에 검토 범위·근거·한계를 기록했다. 사용자가 2026-10-07 “승인합니다”로 최종 결과와 개발 문서를 승인했다.
|
||
|
||
## 이전 작업 디렉터리의 고정 검사 기록
|
||
|
||
2026-10-07 KST. 작업 디렉터리의 고정 소스 `5ebb86e2a82c6005f870460e8434d7ad99c0e99d`에서 Final 네 단계를 모두 실행했다. 검사 전후 tracked 변경은 없으며 아래 종료 코드는 실제 외부 명령의 값이다. 루트 통합·completion 네 단계와 최종 인수는 별도 단계다.
|
||
|
||
T7은 사용자가 명시한 첫 버전 범위에서 완료됐다. **효과음·배경음악은 제외하며 추가 음원 요청이나 자리표시자를 요구하지 않는다. 승인된 한국어 음성 44개는 유지한다.** T8에서는 게임 규칙·자산·저장 스키마를 변경하지 않았다. 기반 `7db006544cc471240e4342c4fa4affcb7c616d71`과 Assets/Packages/ProjectSettings/SourceAssets의 모든 tracked blob이 같다.
|
||
|
||
## 실행 결과
|
||
|
||
| 실제 명령 | 결과 | 외부 종료 코드 |
|
||
|---|---|---|
|
||
| `pwsh -NoProfile -File tools/verify.ps1 -Phase EditMode -Milestone Final` | 100/100, 실패·건너뜀·미확정 0 | 0 |
|
||
| `pwsh -NoProfile -File tools/verify.ps1 -Phase PlayMode -Milestone Final` | 47/47, 실패·건너뜀·미확정 0 | 0 |
|
||
| `pwsh -NoProfile -File tools/verify.ps1 -Phase AndroidBuild -Milestone Final` | 실제 APK 생성·검사 통과 | 0 |
|
||
| `pwsh -NoProfile -File tools/verify.ps1 -Phase AndroidSmoke -Milestone Final` | Final 226개 게이트 통과 | 0 |
|
||
|
||
AndroidSmoke는 2026-10-06 17:00:44.546~17:16:16.506 UTC에 실행됐다. Final 디스패치가 실제 다음 네 검사를 순서대로 호출하며 각각 실제 종료 0이다.
|
||
|
||
| 검사 | 통과 | 증명 범위 |
|
||
|---|---|---|
|
||
| Fresh30 | 151/151 | 새 저장에서 실제 터치로 1~30 순차 해결, 저장 push/완료 주입 0회 |
|
||
| FinalBoundary | 37/37 | 실제 30 완료 후 공급·반환·빈 보드·핀치·분리 취소·음성 취소·손상 파일 복구 |
|
||
| RapidBoundary | 39/39 | 명시적인 별도 평면 10구 QA 배치, 오프라인 빠른 계수와 전체 음성 |
|
||
| ContentBoundary | 69/69 | 기존 콘텐츠·도움·시범·저장·음성 경계의 별도 실제 입력/QA 교차 검사 |
|
||
|
||
Fresh30은 각 단계의 실제 완료 JSON·원래 구 ID·목표 묶음을 확인했다. 서로 다른 두 미완료 퍼즐과 최근 자유 놀이가 동시에 저장되고, 양수의 부분 계수와 바뀐 카메라를 포함해 강제 종료 후 각각 복원됐다. 6/10 최초 시범, 순차 해금, 재플레이 완료 기록 유지, 자동 다음 단계 이동 없음, 30 이후 31 없음도 확인했다. 모양이나 특정 구 ID 조합을 새로운 성공 조건으로 추가하지 않았다. Stage15에서 요청한 터치 ID와 실제 선택 ID가 달랐지만 올바른 2+3으로 이미 완료된 경우는 실제 목표·전체 ID 보존으로 판정하고, 요청 ID 일치 검사 통과로 표기하지 않는다.
|
||
|
||
## APK와 음성
|
||
|
||
[이전 작업의 고정 APK](../artifacts/verification/T8/Implementation5eb/artifacts/android/Final/MagnetismHeroes.apk)와 그 작업의 표준 사본·Fresh30 설치 후 가져온 `installed-base.apk`는 모두 다음 SHA-256이었다. 당시 배포용 파일은 위 통합본의 APK였다.
|
||
|
||
`223F26C5E2EFAE6A7C50A36CF654195C7EF3AD37DCCDC3001B8CF6E3A515C8C7`
|
||
|
||
실제 APK의 AudioClip 44개를 고정된 검증 도구 UnityPy 1.25.4로 추출했다. 이름 유일성·44개 완전성과 승인 runtime WAV의 PCM 바이트·형식이 모두 정확히 일치한다. 승인 원본/편집본/runtime 해시 132개와 사용 고지 3개도 일치한다. incremental BuildReport의 빈 packed-assets 목록을 자산 존재 증거로 사용하지 않는다. 동일 inspector로 실제 APK 양성 종료 0, 자산 누락/실제 PCM 변형 사본 각각 종료 1을 확인했다. 검증 도구·모델 가중치·TTS 서버는 APK 의존성이 아니다.
|
||
|
||
RapidBoundary는 **이번 Fresh30의 실제 30 완료 원문과 Stage20 실제 수집/성공 원문**을 출처로 남기고 위치·카메라·한 묶음·계수 전 상태만 QA용으로 구성했다. 완료 기록은 출처와 정확히 같다. 이 저장 주입은 새로운 정상 진행 증거가 아니다. 실제 11회 탭(중복 포함)을 0.441초에 수행했다. 첫 읽기의 계수 9 이후 약 82ms 뒤 실제 Free20을 관찰했으며 각 읽기 JSON/UTC를 보존했다. PCM 시작보다 앞선 녹음 wrapper 시작으로 계산한 Free 관찰 시각 상한 1.676초는 열 번째 전체 발화 끝 7.383초보다 이르다. 하나~열 전체 발화·FIFO·중복 추가 발화 없음·같은 구/카메라의 Free 전이 이후 마지막 발화 완결을 확인했다. 녹음 전체 길이는 23.893초다.
|
||
|
||
안내/숫자 취소는 실제 발화 시작의 양성 PCM과 이동·일시 정지 후 마지막 3초 무음을 함께 확인했다. 완전 발화 비교는 취소된 파일을 거부했다. 전체 발화 양성과 앞/뒤/중간 잘림·중복·잡음·다른 발화 여섯 음성 비교 대조군도 실제 0/1 결과로 확인했다. 기존 44개 청취 승인과 이번 객관적 PCM 검사는 구분한다.
|
||
|
||
## 환경·시각 확인·원문
|
||
|
||
Unity 6000.6.3f1, `Medium_Phone_API_37.0` AVD(API37/x86_64, arm64 번역), 2400×1080 가로 화면이다. 실제 APK는 arm64-v8a, minSdk26/targetSdk36이다. Editor와 native 녹음은 모두 종료했고 AVD는 유지했다. 네트워크 airplane/wifi/data 0/1/1과 audio speaker/submix/default 5/5/5를 실제 복원했다. 마지막 ContentBoundary가 남긴 Stage11 QA 상태는 Fresh30 정상 완료 원문과 구분한다. **실기기 성능·FPS, iOS, 스토어 배포는 검사하지 않았다.**
|
||
|
||
[이전 작업의 시각 확인 원문](../artifacts/verification/T8/Implementation5eb/artifacts/verification/Final/native-visual-review.json)은 실제 Android PNG/SHA/터치 명령과 관찰 범위를 연결한다. 해당 작업 Stage13/15의 2+3 친구 얼굴·숫자·구 수량, Stage28의 실제 선택5, 분리 경계의 실제 전체 선택5/떨어진 양끝 선택2를 직접 확인했다. Stage15의 이전 아래쪽 시점은 가독성 합격 근거에서 제외하고 해당 작업의 정상 시점을 사용한다. Editor Camera.Render RT나 모든 시점·해상도의 가독성 합격으로 확대하지 않는다.
|
||
|
||
해당 작업의 지정 목록은 [고정 manifest.json](../artifacts/verification/T8/Implementation5eb/artifacts/verification/Final/manifest.json)의 **1,982개 지정 파일과 해시**다. 당시 원시 증거 위치는 `C:/git/MagnetismHeroes/.dryforge/worktrees/T8/artifacts/verification/Final`이며 현재 루트 completion 증거와 구분한다. 네 외부 명령/phase 기록, XML, 네 child report, 실제 JSON/PNG/PCM, 해당 APK의 UUID 추출 파일만 명시적으로 연결한다. Final 폴더에 남은 이전 UUID·도구 설치 이력 전체를 해당 소스의 증거로 주장하지 않는다. 문서 전용 후속 커밋과 검사 소스의 관계는 고정 사본 같은 폴더의 `source-documentation-relationship.json`에 기록한다.
|
||
|
||
실패·사전 검사 원문은 `artifacts/verification/T8-red/`에 보존했다. Final 첫 퍼즐 fallthrough, PowerShell 인수/선택 배열, 화면 밖·소품 가림 입력, 이미 완료된 보드 재시도, 재사용된 recorder PID, 계수 마지막 입력/저장 관찰 경쟁을 게임 규칙 우회 없이 수정했다. 정상 임의 3D 배치에 모든 구가 한 시점에서 보인다는 추가 조건을 요구하지 않는다. 녹음은 시작 때 확인한 원래 process handle을 유지하여 재사용된 브라우저 PID를 기다리거나 종료하지 않는다. 이전 폴더의 이동 관계도 원문에 남겼다.
|