kjh2064
c2cd643729
feat(dotnet): add domain parity artifact gate
CI Workflow Lint / validate-ci-workflow-lint (push) Failing after 16s
Validators (Pushes and Pull Requests) / validate-ui-and-storage (push) Successful in 24s
Validators (Pushes and Pull Requests) / validate-core (push) Has been cancelled
2026-07-13 01:04:13 +09:00
kjh2064
d610ecb57c
feat(dotnet): add read model contract harness
CI Workflow Lint / validate-ci-workflow-lint (push) Failing after 13s
Validators (Pushes and Pull Requests) / validate-ui-and-storage (push) Successful in 23s
Validators (Pushes and Pull Requests) / validate-core (push) Successful in 2m11s
2026-07-13 00:41:30 +09:00
kjh2064
3fbb5ea2bf
feat(dotnet): add domain parity backlog harness
CI Workflow Lint / validate-ci-workflow-lint (push) Failing after 14s
Validators (Pushes and Pull Requests) / validate-ui-and-storage (push) Successful in 23s
Validators (Pushes and Pull Requests) / validate-core (push) Successful in 2m10s
2026-07-13 00:36:41 +09:00
kjh2064
a45961928e
feat(dotnet): add cicd chain contract harness
CI Workflow Lint / validate-ci-workflow-lint (push) Failing after 13s
Validators (Pushes and Pull Requests) / validate-ui-and-storage (push) Successful in 24s
Validators (Pushes and Pull Requests) / validate-core (push) Has been cancelled
2026-07-13 00:34:45 +09:00
kjh2064
736951526b
feat(dotnet): add idempotency contract harness
CI Workflow Lint / validate-ci-workflow-lint (push) Failing after 14s
Validators (Pushes and Pull Requests) / validate-ui-and-storage (push) Successful in 21s
Validators (Pushes and Pull Requests) / validate-core (push) Has been cancelled
2026-07-13 00:32:48 +09:00
kjh2064
ed137c2574
feat(dotnet): add normalization contract harness
CI Workflow Lint / validate-ci-workflow-lint (push) Failing after 14s
Validators (Pushes and Pull Requests) / validate-ui-and-storage (push) Successful in 20s
Validators (Pushes and Pull Requests) / validate-core (push) Has been cancelled
2026-07-13 00:31:13 +09:00
kjh2064
b694a101d1
feat(dotnet): add scheduler contract harness
CI Workflow Lint / validate-ci-workflow-lint (push) Failing after 13s
Validators (Pushes and Pull Requests) / validate-ui-and-storage (push) Successful in 20s
Validators (Pushes and Pull Requests) / validate-core (push) Successful in 2m6s
2026-07-13 00:27:51 +09:00
kjh2064
14ced733f2
feat(dotnet): add provenance contract harness
CI Workflow Lint / validate-ci-workflow-lint (push) Failing after 14s
Validators (Pushes and Pull Requests) / validate-ui-and-storage (push) Successful in 20s
Validators (Pushes and Pull Requests) / validate-core (push) Successful in 2m6s
2026-07-13 00:24:44 +09:00
kjh2064
eb3a33f124
feat(dotnet): add parity contract and wiring
Validators (Pushes and Pull Requests) / validate-ui-and-storage (push) Successful in 24s
CI Workflow Lint / validate-ci-workflow-lint (push) Failing after 12s
Validators (Pushes and Pull Requests) / validate-core (push) Has been cancelled
2026-07-13 00:06:48 +09:00
kjh2064
ebbd42e4e0
feat(wbs): add execution plan validator and wiring
CI Workflow Lint / validate-ci-workflow-lint (push) Failing after 14s
Validators (Pushes and Pull Requests) / validate-ui-and-storage (push) Successful in 24s
Validators (Pushes and Pull Requests) / validate-core (push) Has been cancelled
2026-07-13 00:01:07 +09:00
kjh2064
fbb35c5296
feat(ci): wire dotnet migration roadmap validator
CI Workflow Lint / validate-ci-workflow-lint (push) Failing after 14s
Validators (Pushes and Pull Requests) / validate-ui-and-storage (push) Successful in 24s
Validators (Pushes and Pull Requests) / validate-core (push) Has been cancelled
2026-07-12 23:51:32 +09:00
kjh2064
2701f7bba5
fix(ci): skip non-ci reproducible wbs tasks
CI Workflow Lint / validate-ci-workflow-lint (push) Failing after 14s
Validators (Pushes and Pull Requests) / validate-ui-and-storage (push) Successful in 21s
Validators (Pushes and Pull Requests) / validate-core (push) Failing after 1m46s
2026-07-12 23:00:35 +09:00
kjh2064
0f4e589cf1
fix(ci): guard wbs verdict coverage
Validators (Pushes and Pull Requests) / validate-ui-and-storage (push) Successful in 16s
CI Workflow Lint / validate-ci-workflow-lint (push) Failing after 8s
Validators (Pushes and Pull Requests) / validate-core (push) Has been cancelled
2026-07-12 22:51:13 +09:00
kjh2064
7e0d3ad5b0
fix(ci): avoid postgres host port collision
Validators (Pushes and Pull Requests) / validate-ui-and-storage (push) Successful in 15s
Validators (Pushes and Pull Requests) / validate-core (push) Failing after 1m41s
2026-07-12 22:45:54 +09:00
kjh2064
ea9614be13
feat(qe-m3-05): complete scores frontend DOM verification E2E test and fix Gitea CI migration sequence
Validators (Pushes and Pull Requests) / validate-core (push) Failing after 1s
Validators (Pushes and Pull Requests) / validate-ui-and-storage (push) Successful in 12s
2026-07-12 22:17:45 +09:00
kjh2064
f698880aaa
build(harness): integrate TreatWarningsAsErrors into all csproj files and prioritize dotnet tests in CI
Validators (Pushes and Pull Requests) / validate-core (push) Failing after 1s
Validators (Pushes and Pull Requests) / validate-ui-and-storage (push) Successful in 12s
2026-07-12 21:57:36 +09:00
kjh2064
b0c9776601
feat(qe-m3-01): implement GetBarsAsOf with lookahead bias prevention and complete unit tests
Validators (Pushes and Pull Requests) / validate-core (push) Failing after 9s
Validators (Pushes and Pull Requests) / validate-ui-and-storage (push) Successful in 16s
2026-07-12 21:46:38 +09:00
kjh2064
5589a0432b
feat(collection): wire KIS collection end-to-end, add price-history pipeline (WBS QE-M0/M1/M2)
...
Validators (Pushes and Pull Requests) / validate-ui-and-storage (push) Successful in 16s
Validators (Pushes and Pull Requests) / validate-core (push) Failing after 56s
Critical re-review of the QuantEngine WBS evidence system found several
regressions of the "no fake gates" discipline established by M0, plus a
still-unwired M1 collection path. This closes 10 more WBS tasks
(QE-M1-01..06, QE-M2-01/02/04/05/06 — see spec/60_quant_engine_wbs.yaml)
with real, gate-verified evidence (18/34 total).
M1 — real KIS data now lands in PostgreSQL end-to-end:
- SchedulerService: load ticker universe from GatherTradingData.json instead
of a hardcoded array; fix a Hangfire scoped-service resolution bug.
- KisDataCollectionOrchestrator: restore logging on the lineage-event write
path (was a bare `catch {}` swallowing all failures silently); persist
daily OHLCV bars into quantengine.price_history_daily per run.
- Verified live: POST /api/collection/run -> Hangfire -> orchestrator ->
KIS mock API -> PostgreSQL, with Playwright DOM/API parity evidence.
M2 — historical price-history pipeline:
- CollectionRepository: SavePriceHistoryDailyAsync (idempotent upsert),
GetPriceHistorySummaryAsync (per-ticker aggregation) + a new
DateOnlyTypeHandler registered globally, since Dapper has no built-in
System.DateOnly support in either direction (write threw
NotSupportedException, read threw a constructor-mismatch
InvalidOperationException — found by exercising both paths live).
- tools/validate_price_history_integrity_v1.py: gap-freeness (vs KIS
trading calendar) + price-sanity gate over collected history.
- Admin Collection page: new "히스토리 현황" summary table +
GET /api/collection/history-summary, with Playwright evidence.
Governance/gate fixes:
- validate_market_time_series_schema_v1.py mislabeled its own output
"runtime_database_query": "DATA_GATED" despite never opening a DB
connection (pure file/regex check) — relabeled "check_scope":
"STATIC_STRUCTURAL_ONLY" and wired the node into the release DAG so it
isn't only reachable from ci.yml, matching every other validator.
Live-data authority for the same claim stays with QE-M2-01's pg_query
gate (spec/60), documented in spec/64.
- Fixed a WBS log_pattern check (QE-M1-06) that couldn't match its own
multi-line target; loosened two depends_on edges (QE-M1-05/06,
QE-M2-04/05) that encoded "needs X verified" when the real requirement
was only "needs X's code merged."
- Discovered and fixed admin-pages.spec.ts logging in with the wrong
seeded password (admin/admin instead of admin/quant123!, per CLAUDE.md)
— every test in that suite had been silently failing at the login step.
Deferred: QE-M2-03 (2-year backfill) — the KIS mock/VTS token endpoint
started returning 403 after the first successful call this session; looks
like a token-issuance rate limit or credential issue on KIS's side, not a
code defect. Backfilling at scale right now would just generate more 403s,
so left QE-M2-03 PENDING pending KIS account/console verification.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com >
2026-07-12 21:07:53 +09:00
kjh2064
ee0787683b
ci: package only generated report artifacts
Validators (Pushes and Pull Requests) / validate-ui-and-storage (push) Successful in 16s
Validators (Pushes and Pull Requests) / validate-core (push) Has been cancelled
2026-07-12 12:55:42 +09:00
kjh2064
f8d93de299
ci: emit contract-shaped missing-data artifacts
Validators (Pushes and Pull Requests) / validate-ui-and-storage (push) Successful in 15s
Validators (Pushes and Pull Requests) / validate-core (push) Failing after 1m37s
2026-07-12 12:53:28 +09:00
kjh2064
d49e45b308
ci: install dotnet sdk before core tests
Validators (Pushes and Pull Requests) / validate-ui-and-storage (push) Successful in 15s
Validators (Pushes and Pull Requests) / validate-core (push) Failing after 1m23s
2026-07-12 12:36:02 +09:00
kjh2064
15b9840204
ci: regenerate completed WBS verdicts
Validators (Pushes and Pull Requests) / validate-ui-and-storage (push) Successful in 15s
Validators (Pushes and Pull Requests) / validate-core (push) Failing after 54s
2026-07-12 12:30:44 +09:00
kjh2064
cc001fa263
test: verify market time series schema contract
Validators (Pushes and Pull Requests) / validate-ui-and-storage (push) Failing after 15s
Validators (Pushes and Pull Requests) / validate-core (push) Failing after 54s
2026-07-12 12:20:44 +09:00
kjh2064
34991eca2d
ci: enforce schema model evidence generation
Validators (Pushes and Pull Requests) / validate-ui-and-storage (push) Failing after 16s
Validators (Pushes and Pull Requests) / validate-core (push) Failing after 55s
2026-07-12 12:13:02 +09:00
kjh2064
c25e3bee7a
ci: install pytest for parallel storage checks
Validators (Pushes and Pull Requests) / validate-ui-and-storage (push) Failing after 15s
Validators (Pushes and Pull Requests) / validate-core (push) Failing after 54s
2026-07-12 11:39:31 +09:00
kjh2064
129e2ec2d7
ci: parallelize independent validation jobs
Validators (Pushes and Pull Requests) / validate-ui-and-storage (push) Failing after 11s
Validators (Pushes and Pull Requests) / validate-core (push) Failing after 22s
2026-07-12 11:14:58 +09:00
kjh2064
4cd1cab466
ci: export isolated Python dependencies
Validators (Pushes and Pull Requests) / validate-core (push) Failing after 20s
Validators (Pushes and Pull Requests) / validate-ui-and-storage (push) Has been skipped
2026-07-12 11:12:19 +09:00
kjh2064
be043a85e3
ci: remove runner venv dependency
Validators (Pushes and Pull Requests) / validate-core (push) Failing after 10s
Validators (Pushes and Pull Requests) / validate-ui-and-storage (push) Has been skipped
2026-07-12 11:11:55 +09:00
kjh2064
7f0c9b9a27
ci: harden Python environment bootstrap
Validators (Pushes and Pull Requests) / validate-core (push) Failing after 7s
Validators (Pushes and Pull Requests) / validate-ui-and-storage (push) Has been skipped
2026-07-12 11:06:07 +09:00
kjh2064
42d45e85fb
ci: validate main pushes automatically
Validators (Pull Requests Only) / validate-core (push) Failing after 8s
Validators (Pull Requests Only) / validate-ui-and-storage (push) Has been skipped
2026-07-12 11:03:52 +09:00
kjh2064
e7d1069222
feat: add quant engine WBS verification harness
2026-07-12 10:58:22 +09:00
kjh2064
4023fff0f2
chore: Phase 3a - CI pipeline to PR-only mode
...
- Removed 'push' trigger from ci.yml
- Now runs validators only on pull_requests
- Main branch validation handled by merge-to-main.yml
- Reduces duplicate validation runs on push
Next:
- Phase 3b: Group validators for parallel execution
- Phase 4: Secret management validation
- Phase 5: Monitoring & metrics
Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com >
2026-07-11 20:39:01 +09:00
kjh2064
79f4a45b98
fix(ci): change Synology venv path to home dir and setup python step in deploy workflow
Quant Engine CI/CD Pipeline / validate-core (push) Failing after 8s
Quant Engine CI/CD Pipeline / validate-ui-and-storage (push) Has been skipped
Snapshot Admin Deployment / build-and-deploy (push) Failing after 45s
Deploy to Production / Build Release Package (push) Successful in 1m40s
Deploy to Production / Deploy to Production Server (push) Failing after 16s
Deploy to Production / Post-Deployment Checks (push) Has been skipped
2026-06-29 12:15:31 +09:00
kjh2064
78564c5b41
fix(ci): ensure Temp directory and dummy packet json exist to avoid test crashes
Quant Engine CI/CD Pipeline / validate-core (push) Failing after 8s
Quant Engine CI/CD Pipeline / validate-ui-and-storage (push) Has been skipped
Deploy to Production / Build Release Package (push) Failing after 19s
Deploy to Production / Deploy to Production Server (push) Has been skipped
Deploy to Production / Post-Deployment Checks (push) Has been skipped
Snapshot Admin Deployment / build-and-deploy (push) Failing after 34s
2026-06-29 11:38:49 +09:00
kjh2064
84ef22e148
fix(ci): replace hardcoded git checkout clone commands with standard actions/checkout
Quant Engine CI/CD Pipeline / validate-core (push) Failing after 8s
Deploy to Production / Build Release Package (push) Failing after 16s
Quant Engine CI/CD Pipeline / validate-ui-and-storage (push) Has been skipped
Deploy to Production / Deploy to Production Server (push) Has been skipped
Deploy to Production / Post-Deployment Checks (push) Has been skipped
Snapshot Admin Deployment / build-and-deploy (push) Failing after 33s
2026-06-29 11:15:23 +09:00
kjh2064
99c4885692
deploy workflow and docs
WBS-9.3 - NULL Policy CI Gate / NULL Policy Validation (push) Failing after 4s
WBS-9.3 - NULL Policy CI Gate / NULL Policy Validation (pull_request) Failing after 6s
Quant Engine CI/CD Pipeline / validate-core (pull_request) Failing after 2m16s
Quant Engine CI/CD Pipeline / validate-ui-and-storage (pull_request) Has been skipped
2026-06-26 18:07:13 +09:00
kjh2064
9e6e2ded2f
feat: .NET 운영 리포트 렌더러와 CI 경로 전환
...
- operational_report.json/md와 final_decision_packet_v4 생성 경로를 .NET으로 전환했습니다.
- CI, 운영 게이트, 릴리스 DAG, 대시보드의 운영 진입점을 새 경로로 정렬했습니다.
- legacy Python 렌더러는 비운영으로 명시했습니다.
2026-06-26 14:18:03 +09:00
kjh2064
c1e84a387c
chore: 워크플로우 및 클라우드 가이드 내 잔여 시놀로지(Synology) 참조 제거
WBS-9.3 - NULL Policy CI Gate / NULL Policy Validation (pull_request) Failing after 4s
Quant Engine CI/CD Pipeline / validate-core (pull_request) Failing after 2m14s
Quant Engine CI/CD Pipeline / validate-ui-and-storage (pull_request) Has been skipped
2026-06-26 11:12:50 +09:00
kjh2064
1690510999
Merge pull request '[CHORE] Gitea CI 워크플로우 runs-on 라벨 수정' ( #5 ) from feature/ci-runner-update into main
...
Quant Engine CI/CD Pipeline / validate-core (push) Failing after 2m14s
Quant Engine CI/CD Pipeline / validate-ui-and-storage (push) Has been skipped
Reviewed-on: http://178.104.200.7/kjh2064/QuantEngineByItz/pulls/5
2026-06-25 15:27:16 +09:00
kjh2064
7cce836cc6
chore(ci): update workflow runs-on label to ubuntu-latest
Quant Engine CI/CD Pipeline / validate-core (pull_request) Failing after 2m33s
Quant Engine CI/CD Pipeline / validate-ui-and-storage (pull_request) Has been cancelled
WBS-9.3 - NULL Policy CI Gate / NULL Policy Validation (pull_request) Failing after 37s
2026-06-25 15:24:57 +09:00
kjh2064
27730704ae
test(validation): 토큰 위생 및 플랫폼 통합 검증 체계 고도화
Snapshot Admin Web Validation / validate-snapshot-admin-smoke (push) Has been cancelled
Snapshot Admin Web Validation / validate-snapshot-admin-full (push) Has been cancelled
Quant Engine CI/CD Pipeline / validate-core (pull_request) Has been cancelled
Quant Engine CI/CD Pipeline / validate-ui-and-storage (pull_request) Has been cancelled
WBS-9.3 - NULL Policy CI Gate / NULL Policy Validation (pull_request) Has been cancelled
2026-06-24 18:06:05 +09:00
kjh2064
2af3681fb9
WBS-7.9: keep push CI on core validation only
2026-06-22 01:47:57 +09:00
kjh2064
cfcf65f822
WBS-7.9: split CI core and ui/storage validation jobs
2026-06-22 01:42:38 +09:00
kjh2064
47184a2f25
WBS-7.9: trim CI cache-hit overhead and wait for deploy readiness
2026-06-22 01:38:11 +09:00
kjh2064
3002149fce
fix: dry-run mock KIS validation in workflows
2026-06-21 23:22:22 +09:00
kjh2064
610b9b1330
fix: reinstall workflow deps on cached venvs
2026-06-21 23:17:57 +09:00
kjh2064
febd85d95e
fix: synology py38 compatibility and KIS validation deps
2026-06-21 23:09:55 +09:00
kjh2064
4c00229442
KIS·정성매도·스냅샷어드민·캘리브레이션을 CI/npm/문서에 통합 배선
...
이전 커밋들에서 추가한 기능을 실제로 동작시키는 배선 작업.
- .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: 신규 파일 인덱스 및 사용 가이드 갱신
2026-06-21 20:11:26 +09:00
kjh2064
0823d1b5a8
fix: CI venv hash-cache + sector exposure renderer + auditor registration
...
- 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 >
2026-06-14 21:16:32 +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