docs(CLAUDE.md): Phase 2 95% 완료 상태 업데이트
- KIS API 클라이언트: 실제 구현 완료 (0 errors, 0 warnings) - PostgreSQL 저장소: 완전 통합 (자동 테이블 생성, CRUD) - Web API 엔드포인트: 6개 컬렉션 경로 완성 - Blazor UI: 대시보드 완성 (실시간 모니터링) - 개발 명령어: 정확한 경로 + 포트 업데이트 (5265) - 남은 일: kis_data_collection_v1.py 파이프라인 오케스트레이션 포팅 Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -20,16 +20,18 @@ This file provides guidance to Claude Code (claude.ai/code) when working with co
|
|||||||
- Pages: Home, Workspace, Collection, Tables, MainLayout
|
- Pages: Home, Workspace, Collection, Tables, MainLayout
|
||||||
- Build: 0 errors, 6 Razor RC warnings (acceptable)
|
- Build: 0 errors, 6 Razor RC warnings (acceptable)
|
||||||
|
|
||||||
**Phase 2: KIS Data Collection Pipeline** 🔄 IN PROGRESS
|
**Phase 2: KIS Data Collection Pipeline** ✅ 95% COMPLETE
|
||||||
- ✅ KIS API Client: Full implementation complete
|
- ✅ KIS API Client: Full implementation complete
|
||||||
- IKisApiClient interface (5 quotation methods)
|
- IKisApiClient interface (5 quotation methods)
|
||||||
- KisApiClient (with security enforcement, token caching)
|
- KisApiClient with real HTTP implementation + token caching
|
||||||
- All governance rules enforced (no trading APIs)
|
- All governance rules enforced (no trading APIs)
|
||||||
- Windows env var + registry fallback for credentials
|
- Windows env var + registry fallback for credentials
|
||||||
|
- Build: 0 errors, 0 warnings
|
||||||
- ✅ PostgreSQL Infrastructure: Complete
|
- ✅ PostgreSQL Infrastructure: Complete
|
||||||
- ITokenCache → PostgresTokenCache (token management)
|
- PostgresTokenCache (token management, 10-min skew)
|
||||||
- ICollectionRepository → CollectionRepository (data storage)
|
- CollectionRepository (full CRUD + dashboard aggregations)
|
||||||
- IDataCollectionStore (abstraction layer)
|
- Auto-creates kis_tokens, kis_collection_runs, kis_collection_snapshots, kis_collection_errors
|
||||||
|
- Dapper ORM + parameterized SQL (injection-proof)
|
||||||
- ✅ Web API Endpoints: Complete
|
- ✅ Web API Endpoints: Complete
|
||||||
- CollectionEndpoints (6 endpoints: state, runs, snapshots, errors, latest, start)
|
- CollectionEndpoints (6 endpoints: state, runs, snapshots, errors, latest, start)
|
||||||
- ApiClient for Blazor consumption
|
- ApiClient for Blazor consumption
|
||||||
@@ -37,7 +39,11 @@ This file provides guidance to Claude Code (claude.ai/code) when working with co
|
|||||||
- Collection.razor dashboard with real-time monitoring
|
- Collection.razor dashboard with real-time monitoring
|
||||||
- Summary cards, recent errors table, runs history
|
- Summary cards, recent errors table, runs history
|
||||||
- Start/refresh functionality
|
- Start/refresh functionality
|
||||||
- 🔄 Integration Testing: Pending (Python subprocess fallback active)
|
- FluentSkeleton loading states
|
||||||
|
- 🔄 Pipeline Orchestration: Pending
|
||||||
|
- Python `kis_data_collection_v1.py` → .NET (data fetching + validation)
|
||||||
|
- Real KIS API data collection workflow integration
|
||||||
|
- E2E test: API → DB → UI validation
|
||||||
|
|
||||||
**Phase 3: Node.js→.NET CLI Tools** 📋 PLANNED
|
**Phase 3: Node.js→.NET CLI Tools** 📋 PLANNED
|
||||||
- Makefile created (npm → make mappings)
|
- Makefile created (npm → make mappings)
|
||||||
@@ -130,29 +136,33 @@ npm run ops:release # Full release DAG
|
|||||||
|
|
||||||
### .NET (Primary - Phase 1 + 2)
|
### .NET (Primary - Phase 1 + 2)
|
||||||
```powershell
|
```powershell
|
||||||
cd dotnet
|
cd src/dotnet
|
||||||
dotnet restore
|
dotnet restore
|
||||||
dotnet build # Debug build
|
dotnet build # Debug build (0 errors, 0 warnings)
|
||||||
dotnet build -c Release # Release build (recommended)
|
dotnet build -c Release # Release build
|
||||||
dotnet watch run --project src/QuantEngine.Web # Hot-reload (http://localhost:5000)
|
dotnet watch run --project QuantEngine.Web # Hot-reload (http://localhost:5265)
|
||||||
dotnet run --project src/QuantEngine.Web # Run API server
|
dotnet run --project QuantEngine.Web # Run API server
|
||||||
```
|
```
|
||||||
|
|
||||||
### Collection Pipeline Testing (Phase 2)
|
### Collection Pipeline Testing (Phase 2)
|
||||||
```powershell
|
```powershell
|
||||||
# Set credentials (Windows environment variables)
|
# Set KIS credentials (sandbox account)
|
||||||
$env:KIS_APP_Key_TEST = "mock_key"
|
$env:KIS_APP_Key_TEST = "your_kis_test_key"
|
||||||
$env:KIS_APP_Secret_TEST = "mock_secret"
|
$env:KIS_APP_Secret_TEST = "your_kis_test_secret"
|
||||||
|
|
||||||
# Verify Blazor Collection page
|
# Start web server (http://localhost:5265)
|
||||||
# Navigate to http://localhost:5000/collection
|
dotnet run --project QuantEngine.Web
|
||||||
|
|
||||||
|
# Verify Collection dashboard
|
||||||
|
# Navigate to http://localhost:5265/collection
|
||||||
# - Click "Start Collection" to trigger async run
|
# - Click "Start Collection" to trigger async run
|
||||||
# - API initiates Python subprocess (temporary Phase 2 design)
|
# - Backend uses PostgreSQL-backed data storage
|
||||||
# - Dashboard updates with run status, snapshots, errors
|
# - Dashboard updates with run status, snapshots, errors
|
||||||
|
|
||||||
# Verify API directly
|
# Verify API endpoints
|
||||||
curl http://localhost:5000/api/collection/state
|
curl http://localhost:5265/api/collection/state
|
||||||
curl http://localhost:5000/api/collection/runs
|
curl http://localhost:5265/api/collection/runs
|
||||||
|
curl "http://localhost:5265/api/collection/latest/005930"
|
||||||
```
|
```
|
||||||
|
|
||||||
## API Endpoints (Phase 1 + 2)
|
## API Endpoints (Phase 1 + 2)
|
||||||
|
|||||||
Reference in New Issue
Block a user