Part 4 of #1566. Throughput counts items moving through the stages from issue to live per hour, and no source exposes that today.
Done looks like:
[ ] A source in src/boards/sources.ts gives, per hour, how many items entered each stage (issue opened, run started, pull opened, merged, live), read from the existing issues, runs, pulls and deploys tables. It adds no new table.
[ ] The Throughput board is written as in 6a and never overwritten.
[ ] Test: with seeded rows, the source's counts are exact, and every panel answers on a fresh forge.
Part 4 of #1566. Throughput counts items moving through the stages from issue to live per hour, and no source exposes that today.
Done looks like:
src/boards/sources.tsgives, per hour, how many items entered each stage (issue opened, run started, pull opened, merged, live), read from the existing issues, runs, pulls and deploys tables. It adds no new table.