Files
portfolio-hub/.proofline/criteria/ac-0002.md
T

1.3 KiB

id, status
id status
ac-0002 active

REVERSAL-aware manual ledger 산식과 목록·단건 일치

Criterion

net_contributed_capital은 REVERSAL되지 않은 manual INVEST 합계에서 REVERSAL되지 않은 manual WITHDRAW 합계를 뺀 값이어야 하고, cumulative_profit_withdrawn은 REVERSAL되지 않은 manual PROFIT 합계여야 한다. REVERSAL이 참조한 INVEST, WITHDRAW, PROFIT 원거래는 모든 return aggregate에서 제외하고 REVERSAL 자체는 금액으로 합산하지 않으며, 목록과 단건 returns/summary는 같은 유효 원장 판정과 네 집계값 의미를 사용해야 한다.

Verification

  • 성공 조건: 미취소 INVEST, WITHDRAW, PROFIT 조합에서 PROFIT은 WITHDRAW와 분리되고 목록과 단건 summary의 total_invested, total_withdrawn, net_contributed_capital, cumulative_profit_withdrawn이 일치한다.
  • 실패·경계 조건: INVEST, WITHDRAW, PROFIT을 각각 reversal하면 해당 원거래 효과가 제거되며 reversal row 자체가 합계에 더해지지 않는다.
  • 검사 방법: tests/test_portfolio_ledger_aggregates.py의 shared batch semantics와 tests/test_v1_portfolios_manual_ledger.py의 profit 분리 및 세 action reversal 회귀를 실행한다.