feat: persist leftover interaction-map coordinates (v2.12.19) - #579
feat: persist leftover interaction-map coordinates (v2.12.19)#579seonghobae wants to merge 43 commits into
Conversation
After IRT main effects, persist complete-case ξ/ζ leftover-map coordinates and render the 2D Jeon/Gabriel map above leftover pairs (ADR 0121 / 0126). Click a post node or leftover-pair criterion to open that post. Rank-0/1 maps pad unused axes with zero. Hidden posts stay hidden. Never invent a leftover score or a theta.
|
Warning Review limit reachedNext included review available in 17 minutes. View limit detailsLimit details: You’ve used the included review currently available. You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository. Review configuration: ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Plus Run ID: ⛔ Files ignored due to path filters (1)
📒 Files selected for processing (22)
📝 WalkthroughWalkthroughChanges기간 보고서에 fast-mlsirm 기반 leftover interaction map의 person/item 좌표를 추가했습니다. 좌표와 leftover pair를 데이터베이스에 저장하고 API로 반환합니다. 보고서 UI는 SVG 맵과 post 탐색을 제공합니다. 관련 테스트, 번역, 문서, 마이그레이션을 갱신했습니다. 잔여 상호작용 맵
아키텍처와 마이그레이션 검증
Estimated code review effort: 4 (Complex) | ~45 minutes Merge Risk: 🟠 High · up to The PR adds persisted leftover interaction-map coordinates and a clickable map, but the current head can expose private posts across process-unit boundaries and can return 500 for private leftover-pair comparisons; invalid numeric values may also be persisted instead of marked unavailable. These concrete availability, authorization, and data-integrity risks should be fixed or explicitly accepted before merging. Sequence Diagram(s)sequenceDiagram
participant ReportView
participant ReportsAPI
participant report_ingestion
participant ReportMapTables
ReportView->>ReportsAPI: 기간 보고서 요청
ReportsAPI->>report_ingestion: 보고서 조회
report_ingestion->>ReportMapTables: 맵 좌표와 pair 조회
ReportMapTables-->>report_ingestion: person/item 좌표 반환
report_ingestion-->>ReportsAPI: 맵 데이터가 포함된 보고서 반환
ReportsAPI-->>ReportView: leftover interaction map 렌더링
🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
Full details: Docstring CoverageExplanation Docstring coverage is 73.33% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 45 functions across 20 files. (9 skipped: 9 unsupported.) ✨ Finishing Touches 💡 2📝 Generate docstrings 💡
⚔️ Resolve merge conflicts 💡
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
Requesting independent review on exact head 8640199. Closest/farthest leftover pairs already live on main; this increment only persists leftover-map ξ/ζ and renders the 2D map. Hidden posts stay hidden. Never invent leftover score/theta. Never self-approve. Squash-merge only with independent APPROVE + exact-head required success. Do not wait on Checks. |
…-interaction-map-v21219 # Conflicts: # AGENTS.md # ARCHITECTURE.md # CHANGELOG.md # CLAUDE.md # backend/app/main.py # backend/app/report_ingestion.py # backend/tests/test_api.py # frontend/src/App.test.tsx # frontend/src/App.tsx # frontend/src/api.ts # lineageweave/leftover_pairs.py # lineageweave/period_report.py # scripts/seed_demo_data.py # tests/test_leftover_pairs.py # tests/test_migration_replay.py # tests/test_period_report.py # tests/test_schema.py
…wave 2 conflict resolution) # Conflicts: # AGENTS.md # ARCHITECTURE.md # CHANGELOG.md # CLAUDE.md # backend/tests/test_api.py # frontend/package.json # lineageweave/leftover_pairs.py # pyproject.toml # scripts/seed_demo_data.py # tests/test_leftover_pairs.py # tests/test_period_report.py # tests/test_schema.py # uv.lock
|
Cycle 2026-08-25T04:01 KST: leftover interaction-map coordinates remain independent of leftover-share/reconstruction stacks. Independent exact-head APPROVE required. This identity will not self-approve. Squash-merge only with independent APPROVE + exact-head required success. |
|
Cycle comment: leftover-map coordinates (#579) still waits for independent APPROVE + exact-head required success. Do not self-approve. Recutting leftover-map length onto protected main as independent v2.12.31 / ADR 0187 (0183–0186 remain claimed by open leftover PRs). Never mix reconstruction/share/cosine/inner-product/coordinates into that recut. |
|
Cycle comment: leftover increment still waits for independent APPROVE + exact-head required success. Author must not self-approve. Do not squash-merge without that APPROVE. Recut leftover-map length onto protected main as independent v2.12.31 / ADR 0187 (0183–0186 claimed by open leftover share/reconstruction PRs). Do not mix leftover stacks. Issues #79 and #87 stay open. |
# Conflicts: # AGENTS.md # ARCHITECTURE.md # backend/app/report_ingestion.py # backend/tests/test_api.py # frontend/src/App.test.tsx # frontend/src/App.tsx # frontend/src/i18n.test.ts # lineageweave/leftover_pairs.py # lineageweave/period_report.py # scripts/seed_demo_data.py # tests/test_leftover_pairs.py # tests/test_schema.py
# Conflicts: # AGENTS.md # CLAUDE.md
…n-map-v21219' into HEAD # Conflicts: # docs/product-technical-gap-baseline.md
# Conflicts: # backend/tests/test_api.py # docs/storybook-inventory.md # tests/test_schema.py
…n-map-v21219' into HEAD
|
Remaining closed per ADR 0208 Decision 1 and owner direction (methodology rejected: no accepted paper basis for the residual-SVD/Gabriel leftover map; Python implementation rejected on performance). The construct belongs to fast-mlsirm's residual-interaction-map contract under ADR 0208's stacked delivery order. This PR will not merge; further reopenings should move the work to ContextualWisdomLab/fast-mlsirm instead. |
Pull request was closed
…21219 # Conflicts: # docs/product-technical-gap-baseline.md
|
ADR 0208 ownership verification at exact head |
|
Exact-head review reconciliation (2026-08-26):
These are exact-head validations; no stale review snapshot was transferred as merge evidence. Hosted Checks and independent approval remain authoritative. |
Period reports now persist complete-case leftover interaction-map coordinates ξ / ζ after IRT main effects and render a 2D Jeon / Gabriel map above leftover pairs (ADR 0121 / 0126). Click a post node or a leftover-pair criterion node to open that post.
This restacks the unique 2D-map increment from #481 onto current
main@b4911f8as v2.12.19. Closest/farthest leftover pairs already live on main. Do not mix into #74/#92. #96 stays closed.Buyer next action
After seed, the leftover interaction map sits above leftover pairs. Click a post node or a highlighted leftover-pair criterion to open that post.
Constraints
0172_report_leftover_interaction_map.sqlis four-digit replayed (ADR 0166).Tests
Independent review required. Never self-approve. Squash-merge only with independent APPROVE + exact-head required success. Do not wait on Checks.
Summary by CodeRabbit
새로운 기능
개선 사항