이전 커밋들에서 추가한 기능을 실제로 동작시키는 배선 작업.
- .gitea/workflows/ci.yml: No Direct API Trading 게이트, KIS 자격증명
검증(mock), 캘리브레이션 백로그 빌드, 정성매도 파이프라인 검증,
Gitea secrets 계약 검증, snapshot admin 워크플로/웹 검증 단계 추가
- package.json: ops:data-collect, ops:sell-*, ops:snapshot-*,
ops:calibration-* npm 스크립트 추가
- src/gas/core/gas_lib.gs doPost(): "trigger_run_all" action 추가 —
Gitea CI가 공유 비밀키로 run_all()을 원격 트리거(주문 실행 없음,
governance/rules/06·07과 동일 원칙)
- tools/trigger_gas_run_all_v1.py: 위 GAS 엔드포인트를 호출하는 CLI
- AGENTS.md/README.md: 신규 파일 인덱스 및 사용 가이드 갱신
주요 변경:
- tools/build_rebalance_engine_v1.py: REBALANCE_ENGINE_V1 신규
* account_snapshot 직접 합산(_build_snap_position_map) → 소수주 분리 행 병합
* 레짐 소스 macro.REGIME_PRELIM 최우선 (GAS 와 동일)
- src/gas_adapter_parts/gdf_06_rebalance.gs: runRebalanceSheet_() 신규
* Logger.log / getSpreadsheet_() 로 run_all 연동 수정
- src/gas_adapter_parts/gdc_01_fetch_fundamentals.gs
* _mergePositionRecord_(): 소수주 중복 행 합산 신규
* parseInt → parseFloat (qty, availQty)
- src/gas_adapter_parts/gdf_01_price_metrics.gs
* 미보유 종목 SELL_READY → WATCH_EXIT_SIGNAL
- spec/41_release_dag.yaml: build_rebalance_sheet 노드 추가 (step_count 63)
- spec/51_formula_lifecycle_registry.yaml: REBALANCE_ENGINE_V1 등록
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>