engine-bridge PoC v1 (정적 분석 + API 초안) #9
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
목표
Sprint Contract:
docs/contracts/engine-bridge.mdHmEG 내부(선택/카메라/씬/렌더)에 접근할 경로 확보. v1은 정적 분석 + API 초안 + probe 설계 문서까지. 실제 attach는 v2.
범위
Recordingtest.EngineBridge라이브러리 +Recordingtest.EngineBridge.ProbeexeMetadataLoadContext로 HmEG/Editor/HmGeometry 어셈블리 정적 분석docs/engine-catalog/*.json)IEngineSnapshot인터페이스 +CameraState/SceneSummaryDTO 초안docs/engine-bridge-probe-design.md— in-process injection 옵션 비교사이클
/evaluate engine-bridgeRelated: #2, #8
engine-bridge PoC v1 — Verdict: pass ✅
Generator (
2a4f1d3)Recordingtest.EngineBridge+Recordingtest.EngineBridge.Probe+ xUnit testsMetadataLoadContext+PathAssemblyResolver사용 — 정적 전용, 실행 경로 제로docs/engine-catalog/{hmeg-types,hmeg-candidates}.json결정적 생성 (2회 diff 0)IEngineSnapshot인터페이스 +HmEgSnapshotskeleton + 상수 cross-checkdocs/engine-bridge-probe-design.md— 5개 injection 옵션 비교 + MEF plugin masquerade 권고Evaluator DoD (전부 pass)
HmEGAppManagerx8)Activator.CreateInstance,Assembly.Load(등)핵심 발견
select/camera/scene/render관련 멤버 수천 개 존재 → obfuscation 없음, v2 접근 가능성 매우 높음HmEGAppManager타입이 카탈로그에 다수 등장 → MEF plugin 로드 entry point 후보로 확인됨EG-BIM Modeler/Plugins/에 drop-in →Editor03.PluginInterface계약 구현 → HmEG 상태를 로컬 HTTP/pipe로 노출비용
다음 단계
engine-bridge v2: MEF plugin masquerade 구현. 필요한 것:
Editor03.PluginInterface.dll계약 분석 (sut-prober 확장 or 별도)HmEgHttpSnapshot구현)closing v1.