0823d1b5a8db1d51fbf2c968ac7e170b4d0a2c48
- ci.yml: venv 해시 기반 캐싱 적용 (validate_specs.py md5 기준), requirements.txt 불필요 스텝 제거 - harness_coverage_auditor.py: sector_trend_analysis.py, etf_representative_monitor.py PY_FILES 등록 - render_operational_report.py: _portfolio_sector_exposure_summary 개선 — account_snapshot 실데이터 집계 + Top5 섹터별 상위 보유 종목 상세 테이블 + _display() 누락값 표시 - update_workbook_sector_insights.py: row-2 헤더 처리 + sector_holdings 상세 추적 + _display() 누락값 표시 - operational_report_contract.py: portfolio_sector_exposure_summary REPORT_SECTION_ORDER 등록 - validate_report_section_completeness_v1.py: 동일 섹션 추가 - build_architecture_boundaries_v2.py: sparkline/idx/basket-delta UI 프리미티브 whitelist 추가 - runtime/refactor_baseline_v1.yaml: 엔트로피 베이스라인 갱신 (1692 files, gate=PASS) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Core/Satellite Collector v4
은퇴자산용 코어/위성 후보 데이터 수집기입니다.
v4 기본 정책
- 파라미터 없이 실행
- 1차 유니버스: KOSPI 160개 + KOSDAQ 40개
- 최종 후보: 100개
- 최종 후보 내 KOSDAQ: 최대 20개
- 1차 탐색 총량은 v3와 동일한 200개로 유지하여 호출 수 증가를 막습니다.
설치
npm install
node core_satellite_collector.js
OpenDART 공시까지 확인하려면:
$env:DART_API_KEY="발급받은키"
node core_satellite_collector.js
운영 표준
하네스/보고서/동기화까지 포함한 최종 게이트는 아래 순서를 사용합니다.
npm run full-gate
이 스크립트는 아래를 직렬로 수행합니다.
convert-data-jsonvalidate-gas-call-arityvalidate-proposal-referencevalidate-harness-contextvalidate-operational-report-contractaudit-coveragevalidate-harness-coverage-auditorvalidate-strategy-tests-contractvalidate-breakout-gatevalidate-anti-whipsawvalidate-cash-raise-routevalidate-brt-harnessvalidate-determinismvalidate-alpha-execution-harness:strictrender-report-jsonvalidate-report-jsonvalidate-report-qualityvalidate-report-sync
spec와 데이터 샘플 검증까지 포함한 전체 엄격 검증은 아래를 사용합니다.
npm run validate-engine-strict
proposal 평가 이력까지 갱신하는 일일 실행은 아래를 사용합니다.
npm run daily-feedback-report
백필 누적 원장(backdata_feature_bank) 상태를 즉시 검증하려면 아래를 사용합니다.
npm run validate-backdata-migration-state
Outcome/Evaluation 복구 파이프라인(YOLO)을 한 번에 실행하려면 아래를 사용합니다.
npm run yolo-outcome-recovery
GAS 함수 정의/호출 인자 수 불일치만 단독 점검하려면 아래를 사용합니다.
npm run validate-gas-call-arity
사용자 판단용 제안표 하네스 출력이 실제로 존재하는지 점검하려면 아래를 사용합니다.
npm run validate-proposal-reference
GAS runHarnessRefresh_() 반영 후에는 아래 강제 검증으로 올릴 수 있습니다.
npm run validate-proposal-reference:strict
GAS 반영 후 proposal_reference_json까지 포함한 최종 엄격 게이트는 아래를 사용합니다.
npm run full-gate:proposal-strict
spec/데이터 샘플까지 포함한 전체 엄격 검증은 아래를 사용합니다.
npm run validate-engine-proposal-strict
GAS 반영 체크리스트
proposal_reference_json을 실제 하네스 출력으로 승격하려면 아래 순서를 따릅니다.
- Apps Script에 최신 gas_harness_rows.gs 반영
- Apps Script에서
runHarnessRefresh_()실행 - Google Sheets
harness_context시트에 아래 키 생성 확인proposal_reference_jsonproposal_reference_lock
- 로컬에서
npm run convert-data-json실행 npm run validate-proposal-reference:strict실행npm run full-gate:proposal-strict실행- 최종 운영 전환 시
npm run validate-engine-proposal-strict기준으로 사용
운영 리포트 계약
운영 리포트는 사람이 읽는 Temp/operational_report.md와 기계 검증용 Temp/operational_report.json을 함께 생성합니다.
operational_report.json이 canonical 계약입니다.operational_report.md는 표시용 렌더입니다.- JSON 스키마는
schemas/operational_report.schema.json을 사용합니다. - 계약 드리프트 검사는
npm run validate-operational-report-contract로 수행합니다. - 전체 게이트에는
render-report-json -> validate-report-json -> validate-report-quality -> validate-report-sync순서가 포함됩니다.
전환 기준:
validate-proposal-reference가SKIP이면 아직 GAS 산출물 미반영 상태validate-proposal-reference:strict가PASS여야 proposal 하네스 strict 전환 완료
Description
Languages
Python
63.5%
JavaScript
31.8%
C#
3.7%
HTML
0.4%
PowerShell
0.2%
Other
0.4%