test: add session-boundary risk reload e2e regressions (#376) #386
Reference in New Issue
Block a user
Delete Branch "feature/issue-376-session-boundary-e2e"
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?
Summary
trading_cycle통합 회귀 테스트 2건을 추가했습니다.US_PRE -> US_DAY경계에서US_MIN_PRICEoverride가 적용/해제되어 주문 차단 -> 허용으로 전환되는지 검증합니다.REQ-V3-002상태를 E2E 증적 기준으로✅ 완료로 갱신했습니다.Scope Mapping
REQ-V3-002TASK-CODE-007TEST-ACC-016Validation
ruff check tests/test_main.py docs/ouroboros/80_implementation_audit.mdpytest -q tests/test_main.py -k "session_boundary_reloads_us_min_price_override_in_trading_cycle or session_boundary_falls_back_when_profile_reload_fails"python3 scripts/validate_ouroboros_docs.pypython3 scripts/validate_governance_assets.py origin/feature/v3-session-policy-stream...HEADpython3 scripts/validate_docs_sync.pyPR #386 코드 리뷰 — test: add session-boundary risk reload e2e regressions (#376)
범위: 세션 경계 리스크 파라미터 재로딩 E2E 회귀 테스트 추가 + 감사 문서 상태 업데이트
✅ 통과 항목
1. 테스트 커버리지 — 두 가지 핵심 경로 검증
test_session_boundary_reloads_us_min_price_override_in_trading_cycleUS_MIN_PRICE=8.0) → US_DAY(US_MIN_PRICE=5.0) 세션 전환 시 override 적용/해제test_session_boundary_falls_back_when_profile_reload_fails5.0) 폴백 유지2. 구현과 테스트 일치 확인
_parse_session_risk_profiles()파싱 실패 경로:테스트 2가 "폴백 시 기본값 유지"를 정확히 검증하고 있음.
3. 문서 상태 업데이트
REQ-V3-002: ⚠️ 부분 → ✅ 완료 (세션 경계 E2E 회귀 테스트 보강 완료)GAP-3: ⚠️ 부분 해소 → ✅ 해소 (#327 + #376)4. 로컬 실행 결과
⚠️ 소견 (Non-blocking)
전역 상태 테스트 격리 미비
_SESSION_RISK_LAST_BY_MARKET,_SESSION_RISK_OVERRIDES_BY_MARKET,_SESSION_RISK_PROFILES_RAW,_SESSION_RISK_PROFILES_MAP은 모듈 수준 전역 변수입니다.현재 두 테스트가 서로 다른 마켓
market.code = "US_NASDAQ"를 공유하고, 테스트 실행 순서에 따라 전역 상태가 다르게 남습니다. 순서가 바뀌어도 현재 케이스에서는 통과하지만, 미래에 유사 테스트가 추가될 때 순서 의존성이 발생할 수 있습니다.권장 패턴:
이 소견은 Non-blocking이며 별도 이슈/PR로 추적 가능합니다.
결론
LGTM — REQ-V3-002 잔여 갭 해소 확인, 테스트 로직 구현과 일치, 문서 상태 업데이트 적절.
전역 상태 격리는 후속 개선 항목으로 추적 권장.
추가 리뷰 — test: harden session-risk global reset isolation
커밋:
ca9e1ad test: harden session-risk global reset isolation✅ 소견 반영 확인
기존
_reset_kill_switch_stateautouse fixture 내 세션 리스크 전역 변수 리셋 코드를 내부 함수로 추출하고, 초기화 sentinel 값을 수정:변경 전
변경 후
두 가지 개선:
"__reset__"(유효하지 않은 JSON) →"{}"(유효한 JSON 빈 객체)_parse_session_risk_profiles()의raw == _SESSION_RISK_PROFILES_RAW캐시 비교가 의미 있는 값으로 동작하게 됨로컬 실행: 164 passed in 8.01s ✅
LGTM — 추가 소견 없음. 머지 준비 완료.