docs: preserve MITC4 prep sandbox failure and recovery boundary

This commit is contained in:
KOKO\Mimi
2026-09-06 16:18:04 +09:00
parent dc6b9b1cf7
commit c0f3dc7c11
5 changed files with 156 additions and 9 deletions
@@ -253,6 +253,37 @@ foreach ($mfeRun in $mfePytestRuns) {
}
```
## E8. Attempt3 후의 정상 backend 대안
E7의 짧은 TEMP/TMP는 actual native build shell에 적용됐지만 FileTracker 접근 거부가
재발했다. 환경 누락으로 해석하지 않는다. 현재 우선 작업은
[R8](implementation-recovery.md#r8-attempt3의-blocked-기록-보존)의 실패 보존이며,
아래는 다음 bounded delta에서 구체화할 정상 backend 대안이다. 설정·configure·build·
Executor 재실행은 이번 Planning에서 수행하지 않았다.
저장소의 [MSVC Ninja preset](../../CMakePresets.json)과
[local config 예시](../../.harness/config.example.json)는 동일 Ninja graph를 manual 검증과
registered Stop이 선택할 수 있는 기존 경로다. MSVC/x64/Debug, 테스트·Hook·유한
7200/7500/14400초 한도와 workspace-write는 유지한다. 기존 config/adapter에 없는
Ninja Multi-Config 선택 기능이나 새 public preset은 만들지 않는다.
Single-config의 실제 archive 출력에는 기존 reference helper가 확인하는
`src/fesa/Debug/fesa_solver.lib`가 필요하다. 표준 CMake cache 변수
`CMAKE_ARCHIVE_OUTPUT_DIRECTORY_DEBUG`로 새 ignored build의 해당 디렉터리를 지정하는
대안을 검토했다. Local CMake help는 archive target 속성 초기화 의미를 확인했지만,
이 선택의 actual native configure/build/full VERIFY 성공은 아직 미검증이다.
실제 library 위치/hash/mtime와 기존 cache freshness를 확인해야 하며 파일 복사나 mtime
조작으로 cache guard를 만족시키지 않는다. 기존 VS cache와 attempt evidence는 보존한다.
다음 delta에서 Root 소유의 exact ignored config/환경 setup과 Coordinator 소유의
unchanged Executor invocation을 분리해 확정한다. Prep/main의 기존 고정 build 경로를
새 preset graph에 대응시키는 명령과 registered Stop의 같은 graph 선택까지 명시한 뒤
활성화한다. 현재 E8 요약만으로 이전 명령을 임의 대체하거나 재실행하지 않는다.
기존 named Python/UV offline, 짧은 새 TEMP와 pytest basetemp, process 환경 복원은 유지한다.
이 정상 대안에는 새 DFA 승인을 요청하지 않는다. 이전 one-time DFA 승인은 소진됐으며,
정상 대안이 실제 실패하면 그 evidence로 exact-run의 새 결정을 별도로 다룬다.
Main은 prep 전체 gate와 Coordinator의 사후 감사 전 활성화하지 않는다.
CMake/MSVC/x64/Debug configure/build와 전체 CTest discovery/run은 기존 Step0의 정확한
명령을 같은 inherited TEMP/TMP에서 별도로 실행한다. 실패 시 actual command/exit와 남은
검증을 기록한다. Registered Stop을 수동 full 검증으로 대체하지 않으며 원 보고서 갱신은