Back to inline
The change, in the order it was built
A large pull request arrives as an alphabetical file list, which is the one order nobody wrote it in. inline reorganizes a reviewed diff into ordered layers, each with a note on why it exists, and hosts it behind a link posted on the pull request.
Layers, not
a file list
Schema before persistence, persistence before the endpoint, the endpoint before its tests. Each layer carries a short recap of what it does and which findings landed inside it, so a reviewer can start where the risk is.
- 1Schemaidempotency_keys table
- 2Persistencekey insert + unique index
- 3Endpointcharge path rewiring
- 4Testsreplay + concurrency cases
src/charges.ts
114 async function charge(req: ChargeRequest) {
115 const key = req.headers['idempotency-key'];
116 const existing = await keys.find(key);
117- const charge = await stripe.charge(req.amount);
117+ await keys.insert(key); // unique index
118+ const charge = await stripe.charge(req.amount);
119 return charge;
Why this layer
The key has to land before the money moves, so a concurrent retry loses the unique-index race instead of charging twice.
Included
Public share linkssigned tokens, opened straight from the PR comment
Ask inlinechat grounded in that exact diff, layers and findings
Unanchored findingsanything that could not be pinned to a line still surfaces here
Wireframe recapsUI changes get a mockup of the before and after
Put it on one repository
Connect GitHub, enable a repo, and the next pull request opened gets a review.