2.8 KiB
2.8 KiB
구현 진행 상황
- 대상: [portfolio-hub] discovery: 포트폴리오 전체 원장 조회 API (#29)
- 브랜치:
main - 기준:
main(fe22be0b6686f346f4e6a5c9b64f7b3469e75810) - 상태: 로컬 main 구현·검증·커밋 완료 — 미푸시, 미배포, 미릴리스
- 최종 업데이트: 2026-08-20T11:05:00+09:00 (KST)
구현 계획 및 작업 목록
- 통합 원장 조회 API의 응답·입력 계약을 추가했다.
- 모든 출처를 하나의 대문자
action모델로 표현하고, 출처별로 없는 사실은null로 명시한다.
- 모든 출처를 하나의 대문자
- source 필터와 cursor 기반 페이지 조회를 구현했다.
- cursor는 portfolio·source 조건과 정렬 기준에 결속하며, 잘못되거나 다른 조건의 cursor는 HTTP 422로 거부한다.
- 소유자 권한과 기존 manual 전용 조회의 하위호환성을 검증했다.
- user/session owner만 허용하고 기존
/ledger/manual계약을 변경하지 않았다.
- user/session owner만 허용하고 기존
- API/OpenAPI 문서와 단위·통합 회귀 검증을 추가·실행했다.
- manual·broker 혼합, source filter, 권한 경계와 cursor 오류를 검증했다.
- 실제 PostgreSQL query plan 및 index/migration을 검증했다.
- disposable PostgreSQL DB에서
20260820_0030migration head와idx_portfolio_ledger_portfolio_recorded_entry_desc생성을 확인했다.
- disposable PostgreSQL DB에서
진행 기록
- 2026-08-20T09:29:48+09:00 (KST): 승인된 Discovery(OQ-001~007)와 현재
main기준 SHA를 확인했다. 별도 구현 worktree는 만들지 않고main에서 구현·검증을 시작한다. - 2026-08-20T10:40:54+09:00 (KST): source-중립
GET /v1/portfolios/{portfolio_id}/ledgervertical slice를 추가했다. focusedtests/test_v1_portfolios_manual_ledger.py는14 passed였다. - 2026-08-20T10:55:00+09:00 (KST): disposable PostgreSQL fresh upgrade에서 migration head와 unified-ledger keyset index 생성을 확인했다.
- 2026-08-20T11:05:00+09:00 (KST): 권한/source/OpenAPI/release-contract 회귀를 보완했다. 전체 회귀
664 passed, 16 skipped, 변경 범위 lint와git diff --check를 통과했고, 로컬main에ac742b1로 커밋했다.temp/는 후보 source가 아니므로 auth-surface 정적 검사의 재귀 대상에서 제외했다.
각 작업이 실제로 완료되고 검증될 때마다 이 댓글의 체크박스와 진행 기록을 갱신한다. 체크 표시는 구현 완료 또는 해당 검증의 실제 통과를 의미하며, 배포·릴리스 완료를 의미하지 않는다.