Files
stack/docs/plans/reviews/2026-09-12_ledger-review-request.md
T

44 lines
2.5 KiB
Markdown

# Ledger review request, #1506
Author Darkwing requests independent read-only review by Filbert of piece 3.
Baseline 889d8750 on refactor. Approved brief is Piece 3 on
`docs/plans/2026-09-12_control-board-mvp.md`. No author self-approval.
Review these exact candidates and run `node --test packages/ledger/tests/`.
Use only fixtures, no real Gitea/session reads needed. Do not edit source or
unrelated work. Write the verdict, tested hashes and findings to
`docs/plans/reviews/2026-09-12_ledger-verdict.md`, then notify darkwing.
SHA-256:
```text
601db1de6d4838785f334dd93dd191d444276f306e016b3a4137659eaae76561 packages/ledger/README.md
e33fc5be5cdeb69f6f443a44c5b02a7bc346ac74dd69f984538e424a8d1b5de9 packages/ledger/src/cli.mjs
fbd95e45c5753cb44e39dfead0c6e0d2a5f07859dd9411f1dd659dde98af2ffc packages/ledger/src/ledger.mjs
c836ecd64068cccf7f515ab699c6a218e5ea1618c39e7e88be21bfa74d96414e packages/ledger/tests/gitea-helper.test.mjs
8e838a5333cbe6aafda5d72b810eb2840c4439973841d9c2bf5b55bc660455a3 packages/ledger/tests/ledger.test.mjs
033e6d5fdd4626fb0ca1c981b6d85eba961a4618a303faf2bb7b30ae024ed9a6 scripts/gitea-api.sh
```
Author fixtures 20/20. Node syntax, shell syntax and diff whitespace pass.
No root Gitea/GitHub workflow directory exists, so no CI run is claimed.
Direct refactor publication follows the approved brief; no PR/trunk merge or
live deployment. Gate D stays with Jason.
Important choices to assess: UTC inclusive dates, in-range follow-ups, unique
commit total versus per-issue links, zero/unknown denominator handling, and
one Gitea call. Gitea capped an unfiltered request at 50; updated-since returned
19 issues for this week. Full 50-row pages fail, missing row metadata is unknown.
Session counts are literal entries, without copied-log dedup or authorship claims.
Blocking helper defect discovered by real use: GET returned HTTP 200 with valid
JSON but status 1 because the EXIT cleanup's final conditional failed when there
was no body file. One-line `if` correction preserves successful GET status; fake
Node/curl tests cover GET 200, POST 201 and GET 403 without reading credentials.
Live pre-publication measurement: 8 issues closed, 2.7 median hours open,
40 tagged commits, 1.9 follow-ups per issue, 18.9 human messages per closed issue.
These are changing source counts, not the final post-publication measurement.
Archived numeric references can point to unrelated same-number current issues;
the README explicitly disclaims remapping, matching the literal-subject brief.