1.9 KiB
1.9 KiB
id, status, discovery, criteria
| id | status | discovery | criteria | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| req-0007 | approved | dcy-0007 |
|
기업행동 원장이 포함된 보유 원가·전체 원장 조회 복구 (#19)
Objective
기업행동 metadata를 JOIN하는 포트폴리오 read query가 PostgreSQL column ambiguity 없이 기존 보유 원가 replay와 source-neutral 전체 원장 계약을 제공하도록 복구한다.
Scope
- 기업행동 원장이 있는 포트폴리오의 holdings cost-basis path가 모든 거래와 기업행동 metadata를 기존 순서·의미로 읽어 원가 replay 결과를 반환한다.
GET /v1/portfolios/{portfolio_id}/ledger가 기업행동 행과 일반 거래 행을 함께 기존 latest-first·source filter·keyset pagination 계약으로 반환한다.- Joined query의 base ledger column reference를 table alias로 한정하고 corporate-action metadata projection은 명시적으로 유지한다.
- 실제 PostgreSQL repository 회귀와 API 회귀로 holdings cost-basis 및 unified ledger HTTP 200, 혼합 행, metadata mapping과 cursor 경계를 검증한다.
Constraints
- SELECT column 순서와
_row_to_ledger_entry()positional mapping을 유지한다. - API endpoint, response schema, authorization, source/action 의미, ordering 및 cursor 형식을 변경하지 않는다.
- Holdings cost basis, WAC, PnL 또는 corporate-action replay 회계 규칙을 변경하지 않는다.
- 기존 active
AC-0032,AC-0034,AC-0036의 의미를 변경하지 않고 satisfy binding으로 적용한다.
Non-Goals
- 기업행동 또는 일반 ledger row의 생성·수정·삭제·backfill.
- broker 주문·취소·체결, producer/outbox 또는 reversal/recovery 동작 변경.
- trex-web UI 구현, 배포, release, production mutation 또는 특정 production portfolio 데이터 보정.