Files
recordingtest/docs/contracts/engine-bridge-v2.evaluation.md
minsung a0609f8f0e Orchestrate engine-bridge v2 + smoke test guide (#10)
- Plugin masquerade pass (11 tests), drop-in via HmEG.PluginLoader (no MEF)
- Smoke test guide covers recorder/player/runner/plugin end-to-end manual steps
- PROGRESS.md Done rows, PLAN.md pivoted to v3 reflection mapping

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 16:12:59 +09:00

2.6 KiB

engine-bridge v2 — Evaluation

Verdict: PASS Generator commit: b1c2383 Evaluator: independent eval pass, 2026-04-07 Issue: #10

DoD verdict table

# DoD item Result Evidence
1 dotnet build recordingtest.sln green PASS 0 warnings, 0 errors, 6.55s
2 Integration tests = 6 pass PASS Recordingtest.EngineBridge.IntegrationTests 6/6 in 687 ms
3 EgPlugin tests >= 3 pass PASS Recordingtest.EgPlugin.Tests 5/5 (exceeds claim of 5)
4 csproj: net8.0-windows + HintPath to EG-BIM Modeler/, Private=false, no local copy PASS csproj L3, L11-19; no DLL copies under src/
5 HmEgBridgePlugin: inherits EditorPlugin, overrides Name/Description/Initialize, ctor boots listener, Dispose closes it PASS HmEgBridgePlugin.cs L10-47
6 StateRouter: 5 endpoints, 404 for unknown, try/catch -> {"error":...} PASS StateRouter.cs L28-42
7 PortResolver: env var RECORDINGTEST_BRIDGE_PORT, default 38080, safe parse PASS PortResolver.cs L5-17 (also bounds-checks 1..65535)
8 HmEgHttpSnapshot: IEngineSnapshot impl, GET per property, 2s default timeout w/ ctor override, throws EngineBridgeException PASS HmEgHttpSnapshot.cs L13-107
9 Tests meaningful (FakeBridgeServer + real client; pure-logic plugin tests) PASS FakeBridgeServer.cs, HmEgHttpSnapshotTests.cs, StateRouterTests.cs
10 deploy guide: Build/Copy/Env/Launch/Verify/Troubleshoot/Uninstall + SUT-write warning PASS docs/guides/engine-bridge-deploy.md sec 1-7, warning in sec 2
11 No writes to EG-BIM Modeler/ from src PASS grep finds only csproj read-only HintPaths
12 No copy of Editor03.PluginInterface.dll / HmEG.dll in src/ PASS glob returns 0 matches

Notes

  • ReflectionEngineStateProvider is a skeleton returning defaults. Contract explicitly allows this ("진짜 매핑은 smoke test 후 조정"). Graded PASS with note — production mapping deferred to v3 post-smoke.
  • StateRouter returns HTTP 200 for provider-thrown errors with {"error":"..."} payload (per contract spec line 22). Acceptable per DoD wording.
  • BridgeHttpServer swallows listener errors so SUT stability is preserved (port-conflict path handled).
  • EgPlugin test count is 5, exceeding the contract minimum of 3.

Artifacts

  • src: src/Recordingtest.EgPlugin/, src/Recordingtest.EngineBridge.Client/
  • tests: tests/Recordingtest.EngineBridge.IntegrationTests/, tests/Recordingtest.EgPlugin.Tests/
  • guide: docs/guides/engine-bridge-deploy.md
  • history: docs/history/2026-04-07_이슈10-engine-bridge-v2-evaluator.md