[ai-assisted] feat(vector): add projection visualization api#381
Merged
[ai-assisted] feat(vector): add projection visualization api#381
Conversation
Issue: - Closes #380 Why: - 관리자 화면에서 기존 벡터 저장 테이블을 기반으로 2D 산점도 시각화 API가 필요하다. What: - 기존 tb_ai_document_chunk를 변경하지 않고 projection 상태/좌표 테이블과 V603 migration을 추가했다. - PCA 기반 projection generator, JDBC repository, 비동기 job service, search visualization service를 추가했다. - /api/mgmt/ai/vectors/projections, /items/{vectorItemId}, /search-visualization API와 클라이언트용 DTO를 추가했다. - metadata allowlist, query 길이 제한, projection item 상한, executor rejection 처리, projection scope 기반 검색 제한을 반영했다. - README와 CHANGELOG에 API 사용 흐름과 제약을 문서화했다. Validation: - ./gradlew :studio-platform-ai:test :starter:studio-platform-starter-ai:test :starter:studio-platform-starter-ai-web:test && git diff --check: PASS - ./gradlew test: PASS AI / Subagent Usage: - AI-assisted: Yes - Subagent used: Yes - Delegated scope: code review and security review for issue #380 - Main author validation: subagent findings were reviewed, data exposure and lifecycle issues were addressed, targeted and full tests passed
58c0c03 to
66c5959
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why
tb_ai_document_chunk벡터를 2D 산점도로 시각화할 수 있는 서버 API가 필요합니다.What
tb_ai_vector_projection,tb_ai_vector_projection_pointV603 migration을 추가했습니다.studio-platform-ai에 vector projection core contract와 PCA generator를 추가했습니다.starter-ai에 기존tb_ai_document_chunkadapter, projection repository, projection job/service, search visualization service를 추가했습니다.starter-ai-web에/api/mgmt/ai/vectors/projections,/items/{vectorItemId},/search-visualizationAPI와 DTO를 추가했습니다.vectorItemId,targetType,sourceId,label,x,y,clusterId, allowlist metadata를 반환합니다.Related Issues
Validation
./gradlew :studio-platform-ai:test :starter:studio-platform-starter-ai:test :starter:studio-platform-starter-ai-web:test && git diff --check./gradlew testRisk / Rollback
AI / Subagent Usage
Checklist
AI-Assistedvalue is correct