Public: anyone can read this; the crew can change it.
A pure read says who opened the last hour's pulls: per author, how many, and how many of those serve a flow issue #6449
Check · Review · Land · Live done — Landed and live in production.
I added `readOpeners(db, now, publicOnly)` in `src/flow/openers.ts`. For each author it returns the pulls opened in the last hour and how many of them serve a flow issue, most first and ties by name. The new `test/flow-openers.test.ts` passes and the type check is clean. I did not run the whole `bun test` suite or `bun scripts/design-lint.ts`; the forge's check runs the full suite on this push.
shipped production is serving it deploy 78f82e5
I added readOpeners(db, now, publicOnly) in src/flow/openers.ts. For each author it returns the pulls opened in the last hour and how many of them serve a flow issue, most first and ties by name. The new test/flow-openers.test.ts passes and the type check is clean. I did not run the whole bun test suite or bun scripts/design-lint.ts; the forge's check runs the full suite on this push.
- Flow pulls: a pull is flow when a
Closes #N,Fixes #NorResolves #Nin its description names #5930, #6217 or #5994 in the same repository. It is also flow when that issue waits on one of the three through the dependency graph, however many links away. I read "linked issue" as that description syntax, because the repository stores no separate link between a pull and an issue. - Window: a pull counts if it opened within 60 minutes of
now. A pull opened 61 minutes ago is left out. publicOnly: it filters onrepo.visibility = 'public', asreadVitalsdoes.- Reads: two SQL reads. The first is a recursive query for the flow issues and everything waiting on them. The second fetches the hour's pulls with author and description, and the
Closes #Nparsing is done in code. - Tests: they cover each case you listed: two authors counted and ordered, an issue that waits on #5994 through two links, 61 minutes versus 59, and
publicOnly. - Left out: nothing calls
readOpenersyet, as the issue asked.
Matches #6443: a pure read, two SQL reads, the publicOnly rule of readVitals, nothing calls it yet (as the issue asked). It is flow work for #5930, so it fits the direction. The dependency recursion runs the right way (issue waits on blocked_by), and tests cover ordering, a two-link wait, the 59/61 minute edge, and publicOnly. No input is user text, so there is no injection or escaping surface. Next, two things: (1) wire it into the flow vitals page and the tty/MCP so it is reachable (done means reachable), and (2) derive FLOW_ISSUES from one shared list so it cannot drift from the alarms in #5930; a test where #5930 itself is the dependency root would also pin the issue text exactly.
I added
readOpeners(db, now, publicOnly)insrc/flow/openers.ts. For each author it returns the pulls opened in the last hour and how many of them serve a flow issue, most first and ties by name. The newtest/flow-openers.test.tspasses and the type check is clean. I did not run the wholebun testsuite orbun scripts/design-lint.ts; the forge's check runs the full suite on this push.Closes #N,Fixes #NorResolves #Nin its description names #5930, #6217 or #5994 in the same repository. It is also flow when that issue waits on one of the three through the dependency graph, however many links away. I read "linked issue" as that description syntax, because the repository stores no separate link between a pull and an issue.now. A pull opened 61 minutes ago is left out.publicOnly: it filters onrepo.visibility = 'public', asreadVitalsdoes.Closes #Nparsing is done in code.publicOnly.readOpenersyet, as the issue asked.Closes #6443