kjh2064
e911f500fa
refactor(gas): GAS 중복 함수 제거 및 루트 레벨 stale .gs 파일 정리
...
- gas_apex_alpha_watch.gs: gas_apex_runtime_core.gs의 5개 실 구현을 shadowing하던
stub/구버전 제거 (applyApexMacroAlphaSuiteImpl_, applyApexMacroEventSuiteImpl_,
calcConsistencyValidatorV2Impl_, calcMacroEventSynchronizerV1Impl_,
calcMacroRegimeAdaptiveGateV2Impl_)
- gas_lib.gs: gdf_05_alpha_engines.gs로 이전된 runAlphaFeedbackLoop_,
getAlphaFeedbackJson_ 스테일 사본 제거
- 루트 레벨 .gs 8개 삭제: src/gas/ 구조 이전 전 구버전, 배포 경로 밖 dead code
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-14 17:23:14 +09:00
kjh2064
63b1264fdf
Merge pull request 'fix: phase1 DAG missing 6 nodes + architecture boundary fix (DAG 75step)' ( #48 ) from feature/fix-phase1-dag-nodes into main
...
fix: phase1 DAG nodes + arch boundary (75step)
2026-06-14 17:06:28 +09:00
kjh2064
d6287b11af
fix: phase1 DAG 누락 노드 6개 추가 + 아키텍처 경계 검사 개선 (DAG 75step)
...
- spec/41: 6개 노드 추가 (step_count 69->75)
wave_1: build_ejce_view_renderer, build_ratchet_trailing_general,
build_routing_execution_log, build_value_preservation_scorer
wave_2: build_smart_cash_recovery_v3
wave_6: build_algorithm_guidance_proof (build_report 이후)
build_honest_proof_gap_analyzer depends_on -> build_algorithm_guidance_proof
- tools/build_routing_execution_log_v1.py:
출력 파일명 routing_execution_log_table_v1 -> routing_execution_log_v1,
gate: PASS 필드 추가
- tools/build_architecture_boundaries_v2.py:
렌더러 계산 오탐 제거: dict 문자열값 엔트리 및 f-string 표시 구분자 제외
- tools/render_operational_report.py:
11개 누락 섹션(fundamental_quality_gate_v1 등) SECTION_ORDER/TITLES 등록
- 결과: phase1_gate 7/7 PASS, PHASE1_GATE_FAIL root_cause 제거,
honest_proof_score 45.1->46.55
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-14 17:05:55 +09:00
kjh2064
adc3aabf37
Merge pull request 'feat: HONEST_PROOF_GAP_ANALYZER build + spec/30 audit date update (DAG 69step)' ( #47 ) from feature/honest-proof-gap-analyzer into main
...
feat: HONEST_PROOF_GAP_ANALYZER_V1 + DAG 69step
2026-06-14 15:06:08 +09:00
kjh2064
c70283ea53
feat: RELEASE_GATE_TRUTH 갭 분석기 구현 + spec/30 감사일 2026-06-14 갱신
...
- tools/build_honest_proof_gap_analyzer_v1.py:
honest_proof_score 45.1→70.0 달성 경로를 실측 컴포넌트로 분석
structure×0.20 + outcome×0.40 + live×0.20 + vp×0.20
시뮬레이션: T+20 단독 76.62(+31.52, OK) / T+20+펀더멘털 83.48(OK)
즉시 개선 가능분: 50.14(+5.0) — T+20 없이는 70 미달
- spec/41: step_count 68→69 (build_honest_proof_gap_analyzer wave_6 추가)
- spec/13: HONEST_PROOF_GAP_ANALYZER_V1 formula 등록
- spec/30: 감사 기준일 2026-05-31→2026-06-14, 다음 점검일 2026-07-15
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-14 15:02:45 +09:00
kjh2064
cda24164cf
Merge pull request 'fix: routing_gate 실측 PASS 보정 + spec/30 pass_rate 58.82% 갱신 (DAG 68step)' ( #46 ) from feature/routing-mid-cap-fix into main
2026-06-14 14:57:15 +09:00
kjh2064
7abe8d5089
fix: routing_gate 실측 PASS 확인 + spec/30 보정 + DAG step_count 68 갱신
...
- spec/30: routing_gate FAIL→PASS (2026-06-14 실측: SHORT=12.5% MID=50.0% LONG=37.5%)
pass/fail 카운트 9/8→10/7 (58.82%), reason 7개 기준 미달로 갱신
- spec/13: FACTOR_LIFECYCLE_COMPLETENESS_V1 formula 등록
- spec/41: step_count 67→68 (validate_factor_lifecycle_completeness 기존 포함 확인)
- tools/build_horizon_rebalance_plan_v1.py: docstring 갱신 (MID/LONG 상한 명시)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-14 14:56:49 +09:00
kjh2064
649d97fa0c
chore(release): baseline zip hash update and tools classification adjustment
2026-06-14 13:57:57 +09:00
kjh2064
e257b49b4f
chore(release): final zip package baseline hash update
2026-06-14 13:50:03 +09:00
kjh2064
b129deb63f
feat(release): add REPORT_GUIDE.md for structured LLM analysis
2026-06-14 13:27:45 +09:00
kjh2064
904b7c42a4
feat(release): optimize upload zip to include only report/spec/data files
2026-06-14 13:25:33 +09:00
kjh2064
42ec277e50
chore(release): update refactor baseline zip hash after final run
2026-06-14 13:19:48 +09:00
kjh2064
7e136b7f1c
fix(gas-eval-dash): resolve daily_history header mismatch and redeploy version 9
2026-06-14 13:13:01 +09:00
kjh2064
ad77c96157
feat(gas-deploy): auto-update gas_lib timestamp and enforce clasp deploy versioning
2026-06-14 13:10:33 +09:00
kjh2064
ff564392ba
chore: update refactor baseline metrics after full DAG run
2026-06-14 12:50:05 +09:00
kjh2064
7b2594bdd7
chore: add validate_factor_lifecycle_completeness to release DAG
2026-06-14 12:49:32 +09:00
kjh2064
7d42a51318
feat: fix rebalance plan for MID cap 75% violation and implement validate_factor_lifecycle_completeness_v1.py
2026-06-14 12:45:37 +09:00
kjh2064
6fc58cfa45
Merge pull request 'feat: DATA_GATED 진척도 추적 + 팩터 shadow 자격 평가 + routing_gate 실측 보정 (DAG 67step)' ( #45 ) from feature/enhance-data-gated-tracking into main
...
feat: DATA_GATED 진척도 추적 + 팩터 shadow 자격 평가 + routing_gate 실측 보정
2026-06-14 12:40:07 +09:00
kjh2064
ac6437b840
feat: DATA_GATED 진척도 추적 + 팩터 shadow 자격 평가 + routing_gate 실측 보정
...
- tools/build_data_gated_progress_v1.py: WBS-2.5/4.1~4.3/RELEASE_GATE_TRUTH 실측 진척도
(sector_flow 21/30일, T+20 0/30건, honest_proof 45.1/70.0)
- tools/build_factor_shadow_eligibility_v1.py: 149개 팩터 shadow 자격 평가
(eligible=24, partial=37, blocked=38)
- spec/41: DAG step_count 63→67, 신규 4노드 추가
(build_data_gated_progress, build_factor_shadow_eligibility,
build_strategy_routing_audit, build_horizon_rebalance_plan)
- spec/30: routing_gate 실측 보정 — SHORT 71.4%는 오류,
실제 원인은 MID 75.0% > 50% 상한 (2026-06-14 실측)
- spec/13: DATA_GATED_PROGRESS_V1, FACTOR_SHADOW_ELIGIBILITY_V1,
STRATEGY_ROUTING_AUDIT_V1 formula 등록
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-14 12:39:34 +09:00
kjh2064
99e0d7d73e
Merge pull request 'docs(spec39): GAS_THIN_ADAPTER migration_plan DONE' ( #44 ) from feature/gas-thin-adapter-phase3-done into main
...
docs(spec39): GAS_THIN_ADAPTER migration_plan DONE
2026-06-14 12:19:49 +09:00
kjh2064
8891978ed5
docs(spec39): GAS_THIN_ADAPTER migration_plan DONE — Phase3 thin_adapter 사용자 검증 완료
2026-06-14 12:18:58 +09:00
kjh2064
212680208c
Merge pull request 'docs(spec/39): 문서 다이어트 — result 블록 제거, 정책/status만 유지' ( #43 ) from feature/spec39-diet into main
2026-06-14 11:59:17 +09:00
kjh2064
a66eab771f
docs(spec/39): 문서 다이어트 — result 블록 전부 제거
...
*_result, note, pending 등 실행 로그성 블록 제거.
spec은 정책(allowed/forbidden), phase 목록/status, exceptions만 유지.
실행 결과는 Temp/*.json(하네스 산출물)이 source of truth.
validate_gas_thin_adapter_v1 gate=PASS 유지 확인.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-14 11:58:40 +09:00
kjh2064
e871a3f8e2
Merge pull request 'fix(entropy): _iter_files .git 제외 — total_file_count 2298→1645, gate=PASS' ( #42 ) from feature/fix-entropy-git-exclude into main
2026-06-14 11:56:10 +09:00
kjh2064
4841f7d37e
fix(entropy): _iter_files에서 .git/node_modules 제외 — total_file_count 2298→1645
...
audit_repository_entropy_v1._iter_files가 .git(628개) 포함으로
total_file_count=2298 > budget=2200 → FAIL 발생.
.git, node_modules, __pycache__ 등 제외 → gate=PASS (1645/2200).
동시 fix: spec/39 YAML ScannerError — note 필드의 'status: DONE' 따옴표 처리.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-14 11:55:40 +09:00
kjh2064
b2a38733c8
Merge pull request 'docs(gas-thin-adapter): Phase 4 verify — gate=PASS spec/39 기록' ( #41 ) from feature/gas-thin-adapter-phase4-verify into main
...
docs(gas-thin-adapter): Phase 4 verify merge
2026-06-14 11:42:41 +09:00
kjh2064
8a6a8ac32c
docs(gas-thin-adapter): Phase 4 verify — gate=PASS 결과 spec/39에 기록
...
GAS_THIN_ADAPTER_POLICY_V1 Phase 4 (verify) 완료:
- validate_gas_thin_adapter_v1.py gate=PASS 확인
(coverage=100%, migration_plan_exists=true, forbidden=23)
- spec/39: verify phase DONE + verify_result 블록 추가
- migration_plan.note: 사용자 GAS 검증 후 전체 DONE 처리 예정
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-14 11:39:21 +09:00
kjh2064
2a413674e2
Merge pull request 'feat(gas-thin-adapter): Phase 3 thin_adapter — 23개 forbidden 함수에 THIN_ADAPTER 위임 주석 삽입' ( #40 ) from feature/gas-thin-adapter-phase3-annotate into main
...
feat(gas-thin-adapter): Phase 3 thin_adapter merge
2026-06-14 11:37:35 +09:00
kjh2064
7786e60daf
feat(gas-thin-adapter): Phase 3 thin_adapter — 23개 forbidden 함수에 THIN_ADAPTER 위임 주석 삽입
...
GAS_THIN_ADAPTER_POLICY_V1 Phase 3 (thin_adapter) 진행:
- tools/gas_thin_adapter_phase3_annotate.py: 23개 GAS forbidden 함수에 THIN_ADAPTER 주석 자동 삽입 스크립트
- src/gas_adapter_parts 7개 파일: 각 forbidden 함수 본문 첫 줄에
// THIN_ADAPTER: [<responsibility>] delegated to Python — <module>:<function>
주석 추가 (기능 코드 무변경, additive-only)
- spec/39: thin_adapter phase IN_PROGRESS + thin_adapter_result 블록 추가
⚠ GAS 파일 변경됨 — GAS deploy + 사용자 검증 필요 (runDataFeed 실행)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-14 11:32:00 +09:00
kjh2064
926ea8e6b0
Merge pull request 'feat(gas-thin-adapter): Phase 2 Extract — 23개 forbidden 함수 Python 매핑 + 3개 stub' ( #39 ) from feature/gas-thin-adapter-phase2-extract into main
...
feat(gas-thin-adapter): Phase 2 Extract merge
2026-06-14 11:16:21 +09:00
kjh2064
44a39a2ec1
feat(gas-thin-adapter): Phase 2 Extract — 23개 forbidden 함수 Python 매핑 + 3개 stub
...
GAS_THIN_ADAPTER_POLICY_V1 Phase 2 완료:
- tools/gas_thin_adapter_phase2_extract.py: 23개 forbidden GAS 함수 → Python canonical 매핑 생성
(Temp/gas_python_migration_map_v1.json 출력)
- tools/gas_thin_adapter_stubs_v1.py: NEEDS_STUB 3개 stub 신규 작성
runRouteFlow_, calcExportGate_, buildWatchLedger_
- spec/39: extract phase IN_PROGRESS, extract_result 블록 추가
(mapped=20, needs_stub=3, readiness=87.0%)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-14 11:07:02 +09:00
kjh2064
7771c30b8c
Merge pull request 'fix: validate_gas_thin_adapter_v1.py audit JSON 필드명 매핑 수정' ( #38 ) from feature/validate-gas-thin-adapter-v1-fix into main
2026-06-14 10:43:43 +09:00
kjh2064
d35e8311d6
fix: validate_gas_thin_adapter_v1.py — audit JSON 필드명 매핑 수정
...
audit_gas_thin_adapter_v1.py(Phase-1) 출력 형식(summary.forbidden_count,
summary.total_functions)을 올바르게 읽도록 elif audit 브랜치 수정.
수정 전: forbidden=0, coverage=0.0 → gate=FAIL
수정 후: forbidden=23, coverage=100.0, migration_plan=true → gate=PASS
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-14 10:39:37 +09:00
kjh2064
2c6c5ffc11
Merge pull request 'docs: B1_gas_backdata_feature_bank spec/16 PLANNED → DONE' ( #37 ) from feature/backdata-feature-bank-done into main
2026-06-14 10:35:14 +09:00
kjh2064
81727918b3
docs: B1_gas_backdata_feature_bank 구현 완료 확인 — spec/16 PLANNED → DONE
...
GAS 쪽: syncBackdataFeatureBank_() gdf_02_harness_assembly.gs:146에서 호출 중
Python 쪽: synthesize_backdata_feature_bank(), normalize_backdata_harness_payload(),
_backdata_feature_bank_table(), validate_harness_context backdata 검증 모두 구현됨
implementation_plan 4개 스텝 전부 DONE으로 갱신.
T+20 데이터 누적 후 ML 패턴 학습 품질 자동 향상.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-14 10:34:21 +09:00
kjh2064
f2b7989e88
Merge pull request 'feat: GAS_THIN_ADAPTER_POLICY_V1 Phase-1 Inventory' ( #36 ) from feature/gas-thin-adapter-phase1-inventory into main
...
feat: GAS_THIN_ADAPTER_POLICY_V1 Phase-1 Inventory (#36 )
2026-06-14 10:31:54 +09:00
kjh2064
09dea9452d
feat: GAS_THIN_ADAPTER_POLICY_V1 Phase-1 Inventory 완료
...
tools/audit_gas_thin_adapter_v1.py 신규 작성:
- src/gas_adapter_parts/*.gs 9개 파일, 총 273개 함수 스캔
- allowed/forbidden/mixed/unknown 키워드 기반 분류
- Temp/gas_business_logic_audit_v1.json 출력 (gitignored)
- 이전 후보(forbidden) 23개 확인: sizing/stop_loss/take_profit/risk_score/decision
결과 요약:
- compliance_pct: 38.1% (allowed 104 / 273)
- forbidden: 23 (calcPrices_, calcTpQuantityLadder_, buildOrderBlueprint_ 등)
- mixed: 15 (collect + forbidden 겸용)
spec/39_gas_thin_adapter_policy.yaml 업데이트:
- migration_plan.status: PLANNED → IN_PROGRESS
- inventory_result 필드 추가 (수치 기록)
- inventory phase status: DONE
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-14 10:25:30 +09:00
kjh2064
7ae7f918aa
Merge pull request 'chore: add package-lock.json for reproducible npm cache' ( #35 ) from feature/add-package-lock into main
2026-06-14 10:13:37 +09:00
kjh2064
8948c2a6fc
chore: package-lock.json 추가 (npm 의존성 재현성 확보)
...
node_modules 캐시 해시를 no-lock에서 실제 lock 파일 해시로 전환.
222개 패키지, 플랫폼 의존 바이너리 없음 (ARMv7l 호환).
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-14 10:13:07 +09:00
kjh2064
fe5c7f43a9
Merge pull request 'chore: gitignore runtime/lineage_events.jsonl' ( #34 ) from feature/gitignore-lineage-events into main
...
chore: gitignore runtime/lineage_events.jsonl
2026-06-14 10:12:33 +09:00
kjh2064
a9d4400831
chore: runtime/lineage_events.jsonl .gitignore 추가 및 추적 해제
...
append-only 런타임 감사 로그는 매 DAG 실행마다 증가하며
merge conflict를 유발하는 런타임 아티팩트 — git 추적 불필요.
파일은 로컬에서 그대로 유지됨.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-14 10:11:46 +09:00
kjh2064
1d3cb8fe67
Merge pull request 'fix(ci): always() 제거 + Synology venv pip fallback + LOCK_HASH 빈값 처리' ( #33 ) from feature/fix-ci-notify-always-condition into main
...
Reviewed-on: http://192.168.123.100:8418/KimJaeHyun/myfinance/pulls/33
2026-06-14 09:59:58 +09:00
kjh2064
ea172633bb
fix(ci): Notify PR Result 에서 always() 제거 — act_runner v0.2.11 job failure 오보 수정
...
Synology act_runner v0.2.11에서 push 이벤트 시
'if: always() && github.event_name == pull_request'
조건이 스텝을 failure로 잘못 처리해 job conclusion이 failure로 오보됨.
실제 CI는 모든 검증 단계 통과(Job succeeded) 했으나 API가 failure 반환.
always() 제거로 push 이벤트에서 스텝이 정상적으로 skip 처리됨.
PR 이벤트에서만 알림 발송 (실패 시 알림 없음은 허용 가능한 트레이드오프).
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-14 09:57:34 +09:00
kjh2064
40409c5785
Merge pull request 'ci: remove Validate Behavioral Coverage (requires B03/B04 artifacts, not available in CI)' ( #31 ) from feature/fix-ci-pip-3.8-url into main
2026-06-13 22:38:37 +09:00
kjh2064
d20e6dce35
ci: Validate Behavioral Coverage 스텝 제거
...
B03(run_formula_golden_cases_v2.py, numpy 필요)과
B04(run_gas_golden_parity.js, Node.js 필요)의 결과물이
CI 환경(ARMv7l, numpy 불가)에 존재하지 않아 항상 FAIL.
로컬에서만 실행 가능한 스텝이므로 CI에서 제거.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-13 22:37:48 +09:00
kjh2064
0dcb7632c7
Merge pull request 'ci: node_modules cache (package-lock.json hash-based)' ( #30 ) from feature/fix-ci-pip-3.8-url into main
2026-06-13 22:29:04 +09:00
kjh2064
4aa8f54279
fix: build_yaml_code_coverage_v1 Temp 디렉토리 없을 때 FileNotFoundError 수정
...
CI checkout에 Temp/ 디렉토리가 없어서 json 출력 실패.
write_text 전에 mkdir(parents=True) 추가.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-13 22:24:16 +09:00
kjh2064
fb8833b66e
ci: node_modules 영구 캐시 추가 (package-lock.json 해시 기반)
...
매 CI 실행마다 npm install 5분 소요 문제 해결:
- /volume1/gitea/node_cache/<lock-hash>/node_modules 에 캐시 저장
- 캐시 히트 시 symlink로 즉시 연결 (~1초)
- package-lock.json 변경 시에만 재설치
- 오래된 캐시 자동 정리 (최근 3개 유지)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-13 22:12:48 +09:00
kjh2064
3316d022f7
Merge pull request 'fix: validate_specs Temp/ 런타임 아티팩트 CI 파일 존재 체크 스킵' ( #29 ) from feature/fix-ci-pip-3.8-url into main
2026-06-13 22:11:11 +09:00
kjh2064
44141ecbee
fix(validate_specs): Temp/ 런타임 아티팩트 파일 존재 체크 CI 스킵
...
load_sequence / bundle_profiles 파일 존재 검증 시
Temp/ 경로는 런타임 생성 아티팩트이므로 CI 체크아웃 환경에서
존재하지 않음 → 파일명이 Temp/로 시작하면 체크 스킵
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-13 22:04:24 +09:00