GAS 번들 빌드/동기화 파이프라인 추가

src/gas/core/, src/gas_adapter_parts/의 모듈 소스를 clasp push 대상인
루트 .gs 번들(gas_lib.gs, gas_data_collect.gs, gas_data_feed.gs)로
해시 검증과 함께 생성한다. 번들 파일에는 "GENERATED — DO NOT EDIT
MANUALLY" 헤더와 소스 해시를 새겨 수동 편집 드리프트를 방지한다.

- build_gas_bundle_v1.py: 소스→번들 생성, 해시 헤더 삽입
- validate_gas_bundle_sync_v1.py: 번들이 현재 소스 해시와 일치하는지 검증
- audit_tools_thin_wrapper_v1.py: tools/ CLI가 핵심 로직 없이 thin
  wrapper로만 동작하는지 감사
- deploy_gas.py: 번들 빌드 파이프라인과 연동
This commit is contained in:
2026-06-22 01:42:36 +09:00
parent 530cb5f47a
commit 89b4c118d1
7 changed files with 19626 additions and 11 deletions
+2 -11
View File
@@ -19,6 +19,7 @@ DEPLOY_DIR = ROOT / "Temp" / "gas_deploy"
# Resolve a file from multiple candidate directories
def _find(filename: str) -> Path | None:
candidates = [
ROOT / filename,
SRC_PARTS / filename,
SRC_GAS / "core" / filename,
SRC_GAS / "collection" / filename,
@@ -36,17 +37,7 @@ BUNDLE_MAP: dict[str, list[str]] = {
"gas_lib.gs": ["gas_lib.gs"],
"data_feed_base.gs": ["data_feed_base.gs"],
"gas_apex_runtime_core.gs":["gas_apex_runtime_core.gs"],
# gdc_01 + gdc_02 bundled as single file (GAS project legacy name)
"gas_data_collect.gs": [
"gdc_01_fetch_fundamentals.gs",
"gdc_02_account_satellite.gs",
],
"gdf_01_price_metrics.gs": ["gdf_01_price_metrics.gs"],
"gdf_02_harness_assembly.gs": ["gdf_02_harness_assembly.gs"],
"gdf_03_portfolio_gates.gs": ["gdf_03_portfolio_gates.gs"],
"gdf_04_execution_quality.gs":["gdf_04_execution_quality.gs"],
"gdf_05_alpha_engines.gs": ["gdf_05_alpha_engines.gs"],
"gdf_06_rebalance.gs": ["gdf_06_rebalance.gs"],
"gas_data_collect.gs": ["gas_data_collect.gs"],
"gas_data_feed.gs": ["gas_data_feed.gs"],
"gas_harness_rows.gs": ["gas_harness_rows.gs"],
"gas_report.gs": ["gas_report.gs"],