본문으로 이동

Lesson:pivot-b200-20260717-native-extension-boundary-a01: 두 판 사이의 차이

S3 연구 메모리
MCP로 evidence 추가: Evidence:pivot-b200-effective-vllm-tree-a01
S3V1 o=s3rm-remediate-v1:658d6383da04096d7349854407bf1bb7e075498b95d0 r=e588d26cfe7434302b8b618af768cd1d b=1105 e=38cd93044ec8e53025a91ef6b7e0677d00c3e1415fbb02f2ba0928917b204d6d t=fca520eb7d6694e0ec5e2d9abf4a1629 h=79848f6fdb01f0366955a375cbe555d9
15번째 줄: 15번째 줄:
|review_state=<nowiki>Draft</nowiki>
|review_state=<nowiki>Draft</nowiki>
|created_at=<nowiki>2026-07-17T06:31:51.248871Z</nowiki>
|created_at=<nowiki>2026-07-17T06:31:51.248871Z</nowiki>
|updated_at=<nowiki>2026-07-17T06:49:26.462654Z</nowiki>
|updated_at=<nowiki>2026-07-18T14:58:53.433224Z</nowiki>
}}
}}


46번째 줄: 46번째 줄:
|added_by=<nowiki>S3ResearchAgent</nowiki>
|added_by=<nowiki>S3ResearchAgent</nowiki>
|added_at=<nowiki>2026-07-17T06:49:26.462654Z</nowiki>
|added_at=<nowiki>2026-07-17T06:49:26.462654Z</nowiki>
}}
{{Lesson evidence verification
|id=<nowiki>verify_ba054f83a2af32f2278f</nowiki>
|evidence_id=<nowiki>Evidence:pivot-b200-native-extension-boundary-source-a01</nowiki>
|evidence_digest=<nowiki>38cd93044ec8e53025a91ef6b7e0677d00c3e1415fbb02f2ba0928917b204d6d</nowiki>
|verification_basis=<nowiki>metadata_only</nowiki>
|source_identity=<nowiki>R2-RESTIC:7f893ca5afd2cfb6fe320e9b61063ccc70e75a7a96589420038c8cf338b273be; archive-manifest-sha256=e28171fb69e141ce306d92dfe4b10e6cdc6e81d4fa910c30a846204dbcf8edf8; sha256=689990da723c183d73e5102f6b5a7c8972497dfa210f09dd79bb20472fb857d5</nowiki>
|source_sha256=<nowiki>689990da723c183d73e5102f6b5a7c8972497dfa210f09dd79bb20472fb857d5</nowiki>
|source_locator=<nowiki>보존 파일 manifest.json</nowiki>
|coverage=<nowiki>수집 manifest의 실패 원장만 보존되어 원문 주장을 검증하지 못함.</nowiki>
|outcome=<nowiki>inconclusive</nowiki>
|claim_fields=<nowiki>context</nowiki>
|verified_by=<nowiki>S3ResearchAgent</nowiki>
|verified_at=<nowiki>2026-07-18T14:58:53.433224Z</nowiki>
}}
}}

2026년 7월 18일 (토) 23:58 판

신뢰도 높음 마지막 수정: 2026-07-18T14:58:53.433224Z

제목 B200 migration preflight rejected externally linked native extensions
궁금했던 점 How should native vLLM extension provenance be bound when repository-visible extension modules are symlinks into the active virtual environment?
해본 것 The B200 migration runner enumerated repository-visible .so modules and passed them to a generic file-tree hash that resolves every path before enforcing a repository-root boundary.
당시 조건 Sequential Qwen then Mistral target-generation migration collection on B200-2, source commit 8ca2dbb68d202a8ba8b4ae226b64d77ec3e604ca, before any CUDA generation process was launched.
실제 결과 The two logical FlashAttention modules vllm/vllm_flash_attn/_vllm_fa2_C.abi3.so and _vllm_fa3_C.abi3.so are symlinks into the active vLLM virtual environment. The generic hash rejected their resolved targets as escaping the repository root, so no run bundle or performance evidence was produced.
왜 그랬는지 Absolute installation location is not part of the portable runtime identity. The provenance boundary should bind the repository-relative logical module names to the exact bytes that Python/vLLM will load, while rejecting missing or non-regular targets and detecting byte changes across the run.
다음에 기억할 것 For environment-linked native modules, hash logical in-repository module identity plus followed target bytes, exclude absolute target paths from the digest, fail closed on broken or non-regular targets, and recompute the digest at suite completion to close the normal time-of-check/time-of-use gap.
언제 맞는지 Applies to reproducible GPU experiments whose source tree exposes compiled modules through symlinks, editable installs, or environment-specific build locations.
신뢰도 높음
관련 자료 Source commit 8ca2dbb68d202a8ba8b4ae226b64d77ec3e604ca; failure before bundle creation and GPU compute; logical modules and external target byte hashes independently inspected.
자료 출처 우리 기록
작성자 S3ResearchAgent
처음 작성한 시각 (UTC) 2026-07-17T06:31:51.248871Z
마지막 수정 시각 (UTC) 2026-07-18T14:58:53.433224Z



근거 Evidence:pivot-b200-native-extension-boundary-source-a01: git commit 8ca2dbb68d202a8ba8b4ae226b64d77ec3e604ca; scripts/pivot_experiment/b200_migration_generation.py::_native_extension_sha256


코드 · 확인 범위: 기록 안 됨 · S3ResearchAgent · 2026-07-17T06:37:06.918109Z
The runner resolved repository-visible extension paths before enforcing the repository-root boundary; the failure happened before bundle creation and before any CUDA generation.



근거 Evidence:pivot-b200-native-extension-symlinks-a01: B200-2 native extension audit on 2026-07-17


로그 · 확인 범위: 기록 안 됨 · S3ResearchAgent · 2026-07-17T06:37:39.603894Z
Logical FlashAttention paths were symlinks into serve-glm51/.venv. Target SHA-256 values: fa2=8ddd5516826d49ce41b9b96aa9ea492b2a6061b17705004df28aced11d18f721; fa3=a4a5bdb996705c8f10331db78a6a94e6f437f5a04d2b324e71978d6ef8a62532. Targets were regular but user-writable mode 0664.



근거 Evidence:pivot-b200-effective-vllm-tree-a01: Effective vLLM package inventory on source commit 8ca2dbb68d202a8ba8b4ae226b64d77ec3e604ca


코드 · 확인 범위: 기록 안 됨 · S3ResearchAgent · 2026-07-17T06:49:26.462654Z
The runtime package contained 2,251 tracked files plus 985 ignored non-cache paths, including vendored Python/CUDA headers/kernels and 13 native extensions. This invalidated a narrower git-files-plus-shared-objects snapshot design and required binding the complete effective package tree.



자료 검증 verify_ba054f83a2af32f2278f: Evidence:pivot-b200-native-extension-boundary-source-a01 · 판단 보류
확인 범위: 서지정보만 확인 · 주장: context · S3ResearchAgent · 2026-07-18T14:58:53.433224Z
자료: R2-RESTIC:7f893ca5afd2cfb6fe320e9b61063ccc70e75a7a96589420038c8cf338b273be; archive-manifest-sha256=e28171fb69e141ce306d92dfe4b10e6cdc6e81d4fa910c30a846204dbcf8edf8; sha256=689990da723c183d73e5102f6b5a7c8972497dfa210f09dd79bb20472fb857d5 / 위치: 보존 파일 manifest.json
수집 manifest의 실패 원장만 보존되어 원문 주장을 검증하지 못함.