Skip to content

PE run-job #376: client-review workbook inspection (run 2026-10-20)

Provenance (MMDEP-PM check-in, scheduled run, 20 Oct 2026 ~11:05 IST):

  • Issue: https://github.com/moneymarche-dev/portfolio-engine/issues/376
  • Repository moneymarche-dev/portfolio-engine, branch feat/issue-309-client-review-excel, checked-out head 700f65a6457f0a436a9a1c6ed57b67172cb162e9 (PR #310, still open).
  • Exact-head CI: workflow run 39095669184 (#559) completed / success on that head, re-verified via GitHub REST before the run.
  • Heartbeat: control/HEARTBEAT.md last collector run 2026-10-20T05:16Z, active until 2026-10-20T07:46Z: ACTIVE at execution (~05:35Z).
  • Input: docs/relay/data/pe-client-review-workbook-2026-10-17/PHASE1_25FUND_CLIENT_PORTFOLIO_REVIEW_2026-10-17.xlsx, copied unchanged; SHA-256 verified ebe1caa58791e0677a2ab685b1e1c8bae0377025e7673abe1731691420bba322. Relay original untouched; not regenerated; no live API.
  • Runner: MMDEP-PM cloud sandbox (Linux, Python, python -I, stdin from /dev/null), not the laptop. The inspector is read-only and makes no network calls, so the PowerShell form in the issue was run as its Linux equivalent: python tools/jobs/inspect_client_review_workbook.py <workbook> --out <out>
  • Exit code: 0; status PASS; 8 sheets; missing expected sheets none; formula/error tokens 0.
  • Output hashes (SHA-256):
  • inspection_summary.json 69a5fd3cab9c92fe88a31ab4d7491a96b79d63b7772e3c2672b42fc75fb1cf2d
  • inspection_report.md 932de177cd07f8d911b9d04fcac4d7c02120da9b7b9d9192c07b32b0217552d7
  • sheets/*.csv: every non-empty cell of each of the 8 worksheets.

Observations for PE (not acceptance; PE reviews the exports):

  • Review chart: 1 LineChart, 1 series, title 'Chart Data'!B1, values 'Chart Data'!$B$2:$B$915, categories $A$2:$A$915 (914 observations, matching "Observations: 914").
  • Label search "starting value" / "ending value" found 0 hits because the workbook says "Starting portfolio value" / "Ending portfolio value"; the labels exist (Review, Performance). The search term list repeats "UNAPPROVED", so that block is printed twice.
  • Benchmark Evidence rows are marked UNAPPROVED; Methodology says portfolio benchmark UNAVAILABLE. Consistent with frozen methodology.
  • No client identifiers in the exports (model portfolio of public schemes).