Files
jarca-ledger-mcp/docs/srs/Interface/req-023_monthly-settlement-dashboard-shell-kpi-cashflow-budget.md
T
genichin 835728793e feat: complete dcy-015 monthly settlement dashboard
Merge dcy-015 monthly settlement dashboard delivery after local and GitHub Actions verification.
2026-07-12 20:16:36 +09:00

2.4 KiB

REQ-023 Monthly settlement dashboard shell, KPI, cashflow, and budget sections

  • Status: Implemented
  • Type: Interface
  • Priority: High
  • Owner: 렛저장인
  • Source Discovery: docs/discovery/dcy-015_20260711_monthly-settlement-page-requirements-wireframe.md
  • Depends On: REQ-022
  • Created At (KST): 2026-07-11 20:56 KST
  • Approved At: 2026-07-12 09:01 KST
  • Implemented At (KST): 2026-07-12 12:24 KST

1. Intent

Add the visible Streamlit 월정산 page shell and implement the first user-facing sections that rely on the REQ-022 read model.

2. In Scope

  • Add 월정산 to Streamlit routing/sidebar.
  • Provide Header / 월 선택 with selected month, basis date, KST timestamp, and read-only status badge.
  • Render 월간 핵심 KPI: actual income, actual expense, net cashflow, savings rate, budget overrun count, unresolved blocker count.
  • Render 현금흐름 / 지출 구조 using existing category/person/cashflow groupings where available.
  • Render 예산 대비 점검 with budget, actual, remaining, usage rate, and status.
  • Provide user-friendly CTA/menu guidance to existing transaction/budget pages without creating new writes.
  • Add AppTest coverage for page routing, headings, month selector, and key section rendering.

3. Out of Scope

  • Detailed blocker/import/account/asset status sections.
  • Evidence/next action section hardening.
  • Monthly close persistence, MCP tool, or export.

4. Acceptance Criteria

  • AC-1: Streamlit can navigate to 월정산.
  • AC-2: The page displays selected month and basis date.
  • AC-3: KPI, cashflow/spending structure, and budget sections render on the synthetic fixture DB.
  • AC-4: The UI calls the read-model/gateway seam rather than duplicating core formulas in dashboard/app.py.
  • AC-5: AppTest verifies the core headings and representative KPI/budget content.
  • AC-6: python -m ruff check . and the relevant dashboard tests pass.

5. Notes

This slice intentionally stops before operational blocker/import/asset sections to keep the first UI delivery small and verifiable.

Implementation Evidence

  • Batch: BAT-018
  • QC verdict: .stagepilot/delivery/dcy-015_monthly-settlement/bat-018-qc-verdict-03.md
  • Validation: independent QC rerun confirmed ruff check . and pytest -q tests/test_dashboard_app.py pass.
  • Scope note: REQ-024 blocker/import/account/asset sections and REQ-025 evidence/next-action hardening remain separate approved follow-on slices.