Commit Graph
10 Commits
Author SHA1 Message Date
genichinandClaude Opus 4.8 a570ac659e fix(daemon): buy 심볼 resolver 결함 수정 + REL-004 draft (운영자 run 증거)
REL-004(미릴리즈 BAT-014~021 통합) draft-release 작성. confirm-release 전
운영자 프로그램 run-the-app 검증(실 데몬 + trex-core CLI e2e)을 수행했고,
369 passed 가 놓친 실 프로덕션 버그를 검출·수정했다.

- fix(REQ-007 CHG-20260608-03): Daemon._resolve_symbol 이 SnapshotAsset.symbol
  (없는 속성)을 접근 → 데몬 buy admission 매 요청 AttributeError → intent RPC
  타임아웃(실 데몬 매수 전면 불능). asset.item.symbol 로 수정. 단위 테스트가
  stub resolver 를 주입해 실 배선을 한 번도 실행하지 않아 미검출이었음
- test: tests/runtime/test_daemon_resolve_symbol.py — 실 Daemon._resolve_symbol
  × 실 SnapshotStore 회귀 가드(수정 전 실패하는 테스트)
- docs(release): rel-004 draft(app-service, BAT-014~021) + Pre-Release Run
  Evidence(데몬 기동 + universe/slots/enter/exit e2e + ledger completed +
  버그 검출·수정 + LIVE 미검증 한계) + releases/index REL-004 행

검증: 실 데몬 재기동 후 buy/sell e2e admitted→체결→closed + ledger completed,
단위 337 passed, ruff clean.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-08 17:38:34 +09:00
genichin 5eebe9c4e8 docs: update rel-003 safety killswitch release 2026-06-07 23:00:24 +09:00
genichinandClaude Opus 4.8 cb288c24c2 docs(release): REL-003 통합 confirmed — BAT-010~013 (safety-sell + kill-switch + multi-instance)
REL-003/004/005를 단일 app-service 릴리즈로 통합(사용자 결정). REL-003에
BAT-010·011(dcy-007 safety-sell) + BAT-012(dcy-008 kill-switch) +
BAT-013(dcy-009 multi-instance)를 묶고 rename, REL-004/005 draft 폐기.

- 파일 rename: rel-003 core-autonomous-safety-sell → safety-killswitch-multi-instance
- Scope/Rollout/Rollback/Verification 통합 (⚠️ --config 필수화 파괴적 기동 변경 +
  제어 큐 pause.req→control.req + 마이그레이션 004/005 + LIVE safety-sell/kill_switch 안전 주의)
- confirm-release: draft → confirmed (단위 271 + 인프라 게이트 301 passed + 전 e2e PASS)
- releases/index: REL-003 통합 행, REL-004/005 제거

배포 핸드오프 가능 상태(confirmed). 운영자는 commit SHA + REL-003 Rollout Plan으로 배포.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-07 15:45:01 +09:00
genichinandClaude Sonnet 4.6 0082d3b5da fix(kis): REQ-038 현재가 tr_id 정정 + REL-003 확정 + dcy-008 kill-switch Discovery
## REQ-038 CHG-04/05: KIS 시세 tr_id 정정 (FHKST01010100)
- kis.py _tr_price(): TTTC8397R/VTTC8397R → FHKST01010100 (실전/모의 공용)
  배포 전 실 KIS LIVE 진단에서 구 tr_id가 rt_cd=1 "없는 서비스 코드"로 거부됨을
  확인 — stop-loss/take-profit이 LIVE에서 조용히 미발동하는 결함이었음.
  FHKST01010100으로 정정 후 get_current_price('005930')=329000(rt_cd=0) 확인.
- test_kis_price.py: AC-7 테스트 정정 (FHKST01010100 공용 검증)
- REQ-038: CHG-04/05 Change Log 추가, Requirement/AC-7/Notes 정정
- BAT-011 implementation.md: LIVE 검증 및 tr_id 정정 이력 추가
- BAT-011 verification.md: AC-7 evidence를 CHG-04 정정 버전으로 갱신
- docs/srs/index.md: CHG-04/05 Change Log 항목 추가

## REL-003: core 자율 안전 매도 release 문서 생성
- docs/releases/rel-003_20260607_core-autonomous-safety-sell.md 신규 생성
  (BAT-010 + BAT-011, app-service profile, Status: confirmed)
- docs/releases/index.md: REL-003 행 추가

## dcy-008: 비상 정지/강제 청산(kill-switch) Discovery 초안
- docs/discovery/dcy-008_20260607_emergency-stop-kill-switch.md 신규 생성
  GitHub #3 기반; SlotService.sell() 재사용, 당일 전략 제외 day-scoped
  FR 6개, NFR 3개, OQ 4개 (트리거 표면/영속 방식/수동 해제 결정 필요)
- docs/discovery/index.md: dcy-008 행 추가

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-07 10:17:36 +09:00
genichinandClaude Opus 4.8 c8174e8bb6 docs(release): REL-001 released → feedback-captured (BAT-001~008 released)
운영자(Hermes Agent) 실 환경 배포 evidence(revision 71faa23, host 86ba33f2997a,
broker=kis LIVE, 2026-06-06T11:18:16Z) 반영:
- Release Execution Evidence 기재(배포 facts + app-service profile checks +
  동일 revision 71faa23 pre-deploy 게이트 재현 보강).
- Rollback Outcome 의미 정정: 운영자 보고 "rollback yes"는 배포 롤백이 아니라
  휴장일(현충일) KIS 거절에 따른 slot pending_buy→idle 정상 복구(매수 거부 경로 smoke 성공).
- capture-release-feedback: release feedback-captured 전환,
  포함 batch BAT-001~008 released 전환.
- 잔여(차기 거래일 실증): ledger flush(fill→ledger), 마이그레이션 명시 로그,
  포지션 정합/warning 마스킹 결과 로그 — Feedback Handoff 기록.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-07 00:26:08 +09:00
genichinandClaude Opus 4.8 71faa23e5d docs(release): REL-002 released — BAT-009 merged + pushed to main
Record deployment evidence for REL-002 (tooling): bat-009 fast-forward
merged to main and pushed (ca75700..7b6ed55). No migration/restart;
broker=kis unaffected. Status confirmed -> released.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-06 18:38:09 +09:00
genichinandClaude Opus 4.8 7b6ed5591c docs(release): draft + confirm REL-002 (tooling) for BAT-009
REL-002 bundles BAT-009 (paper broker env tuning, REQ-010 AC-5) as a
tooling-profile release. Rollout/rollback/verification ready; status
confirmed. No DB migration or daemon restart; broker=kis runtime
unaffected (paper config only).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-06 18:36:25 +09:00
genichinandClaude Opus 4.8 2f57aad7b2 feat(config): expose paper broker tuning via env (REQ-010 AC-5, BAT-009)
Wire the existing PaperBroker scenario knobs (fill_after_polls /
qty_per_poll / reject_symbols) to daemon env so REQ-011 AC-2 e2e
scenarios (delayed / partial / reject) can be reproduced by a daemon
restart. Unset == prior PaperBroker() behaviour, byte-for-byte (no
regression).

- config.py: PaperBrokerConfig + from_env parsing (TREX_PAPER_*)
- daemon.py: _build_broker injects config.paper into PaperBroker
- .env.example: document the 3 paper tuning keys (paper-only, e2e)
- tests: paper broker defaults + env tuning parsing

SDLC: REQ-010 CHG-20260606-01 (AC-5 added) / -02 (Implemented);
BAT-009 batch-lite release-candidate; REL-001 feedback handoff records
pre-deployment e2e observations incl. event-publisher idle-drop and
paper correlation_id collision (GitHub #4, #5).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-06 16:49:51 +09:00
genichinandClaude Opus 4.7 f8c5661147 docs(release): confirm REL-001 trex-core slot-core baseline (BAT-001~008)
Bundle BAT-001~008 into REL-001 (app-service profile) and promote to
confirmed. Register index row added.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-06 11:27:35 +09:00
genichinandClaude Opus 4.8 b40e569537 Bootstrap StagePilot baseline for slot domain migration
Initialize baseline seed, four baseline docs (project-structure,
runtime-flows, interface-contract, data-model), and the active
discovery/srs/batches/releases indexes. Content derived from the
trex-orbit slot pure-domain migration plan (trex-core as a new base,
pure domain only).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-03 09:47:14 +00:00