docs(phase2): Stage 2 (KIS API 포팅) 완료 상태 문서화

**이 커밋 기준 현황:**

Phase 1: Web UI 마이그레이션  COMPLETE
- MudBlazor → Fluent UI v5 (RC) 완전 전환
- 모든 페이지 마이그레이션 완료 (0% MudBlazor 잔존)

Phase 2: KIS API 및 데이터 수집 파이프라인 🔄 IN PROGRESS
 완료된 작업:
- KisApiClient: 5가지 quotation 메서드 (읽기 전용)
- 보안: AssertReadOnly enforcement (trading API 차단)
- PostgreSQL: TokenCache, CollectionRepository 구현
- Web API: 6가지 Collection 엔드포인트
- Blazor UI: Collection.razor 대시보드 완성
- Build: 0 에러 (6개 RC 경고는 패키지 RC 버전 이슈)

📋 진행 중:
- Collection 엔드포인트 통합 테스트
- Python subprocess 임시 연계 (Phase 2 단계별 구현)

**CLAUDE.md 업데이트 내용:**
- Phase 1~3 상태 요약
- KIS API 보안 정책 문서화
- Collection API 엔드포인트 명세
- 개발 커맨드 추가 (Phase 2 테스팅 가이드)

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
This commit is contained in:
2026-06-29 23:23:25 +09:00
parent c5e6a013f4
commit 5c68e9526c
335 changed files with 3067 additions and 29 deletions
@@ -13,7 +13,7 @@ using System.Reflection;
[assembly: System.Reflection.AssemblyCompanyAttribute("QuantEngine.Application")]
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+d083eb7bf9b7e96f19b3ac73f4d514e69e495e47")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+c5e6a013f40060315f33535da0c1f8af21134d52")]
[assembly: System.Reflection.AssemblyProductAttribute("QuantEngine.Application")]
[assembly: System.Reflection.AssemblyTitleAttribute("QuantEngine.Application")]
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
@@ -1 +1 @@
9f50f44709e82a4118b82725c00939dad5bf8b2b5f5b5eca65f730487bcd98a1
bf1c86d292c5a2ca1e8f5452dc03c75a2caebd7a699552c60b9a992210afe2c9
@@ -0,0 +1,4 @@
// <autogenerated />
using System;
using System.Reflection;
[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v10.0", FrameworkDisplayName = ".NET 10.0")]
@@ -0,0 +1,22 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
using System;
using System.Reflection;
[assembly: System.Reflection.AssemblyCompanyAttribute("QuantEngine.Application")]
[assembly: System.Reflection.AssemblyConfigurationAttribute("Release")]
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+c5e6a013f40060315f33535da0c1f8af21134d52")]
[assembly: System.Reflection.AssemblyProductAttribute("QuantEngine.Application")]
[assembly: System.Reflection.AssemblyTitleAttribute("QuantEngine.Application")]
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
// Generated by the MSBuild WriteCodeFragment class.
@@ -0,0 +1 @@
863c4404b5e9e179e713800ed031459e6bd1b4563d27bf581d8f4180b174dbfe
@@ -0,0 +1,18 @@
is_global = true
build_property.TargetFramework = net10.0
build_property.TargetFrameworkIdentifier = .NETCoreApp
build_property.TargetFrameworkVersion = v10.0
build_property.TargetPlatformMinVersion =
build_property.UsingMicrosoftNETSdkWeb =
build_property.ProjectTypeGuids =
build_property.InvariantGlobalization =
build_property.PlatformNeutralAssembly =
build_property.EnforceExtendedAnalyzerRules =
build_property.EntryPointFilePath =
build_property._SupportedPlatformList = Linux,macOS,Windows
build_property.RootNamespace = QuantEngine.Application
build_property.ProjectDir = C:\Temp\data_feed\src\dotnet\QuantEngine.Application\
build_property.EnableComHosting =
build_property.EnableGeneratedComInterfaceComImportInterop =
build_property.EffectiveAnalysisLevelStyle = 10.0
build_property.EnableCodeStyleSeverity =
@@ -0,0 +1,8 @@
// <auto-generated/>
global using System;
global using System.Collections.Generic;
global using System.IO;
global using System.Linq;
global using System.Net.Http;
global using System.Threading;
global using System.Threading.Tasks;
@@ -0,0 +1 @@
50a1a17d0b66d4e2aad7ae33d2c42deb772d97115767c08cf92bc6f6c8ee49ee
@@ -0,0 +1,15 @@
C:\Temp\data_feed\src\dotnet\QuantEngine.Application\bin\Release\net10.0\QuantEngine.Application.deps.json
C:\Temp\data_feed\src\dotnet\QuantEngine.Application\bin\Release\net10.0\QuantEngine.Application.dll
C:\Temp\data_feed\src\dotnet\QuantEngine.Application\bin\Release\net10.0\QuantEngine.Application.pdb
C:\Temp\data_feed\src\dotnet\QuantEngine.Application\bin\Release\net10.0\QuantEngine.Core.dll
C:\Temp\data_feed\src\dotnet\QuantEngine.Application\bin\Release\net10.0\QuantEngine.Core.pdb
C:\Temp\data_feed\src\dotnet\QuantEngine.Application\obj\Release\net10.0\QuantEngine.Application.csproj.AssemblyReference.cache
C:\Temp\data_feed\src\dotnet\QuantEngine.Application\obj\Release\net10.0\QuantEngine.Application.GeneratedMSBuildEditorConfig.editorconfig
C:\Temp\data_feed\src\dotnet\QuantEngine.Application\obj\Release\net10.0\QuantEngine.Application.AssemblyInfoInputs.cache
C:\Temp\data_feed\src\dotnet\QuantEngine.Application\obj\Release\net10.0\QuantEngine.Application.AssemblyInfo.cs
C:\Temp\data_feed\src\dotnet\QuantEngine.Application\obj\Release\net10.0\QuantEngine.Application.csproj.CoreCompileInputs.cache
C:\Temp\data_feed\src\dotnet\QuantEngine.Application\obj\Release\net10.0\QuantEng.294596D8.Up2Date
C:\Temp\data_feed\src\dotnet\QuantEngine.Application\obj\Release\net10.0\QuantEngine.Application.dll
C:\Temp\data_feed\src\dotnet\QuantEngine.Application\obj\Release\net10.0\refint\QuantEngine.Application.dll
C:\Temp\data_feed\src\dotnet\QuantEngine.Application\obj\Release\net10.0\QuantEngine.Application.pdb
C:\Temp\data_feed\src\dotnet\QuantEngine.Application\obj\Release\net10.0\ref\QuantEngine.Application.dll