feat(sdp-web): add csv export to dashboard - #962
Conversation
|
@enochakinbode is attempting to deploy a commit to the Solana Foundation Team on Vercel. A member of the Team first needs to authorize it. |
Greptile SummaryAdds CSV export support for filtered payment transactions.
Confidence Score: 5/5The PR appears safe to merge. No blocking failure remains. Important Files Changed
Sequence DiagramsequenceDiagram
participant U as Dashboard user
participant W as Payments workspace
participant E as CSV export route
participant A as SDP API
U->>W: Download filtered transactions
W->>E: GET export with active filters
loop Until total reached or hasMore is false
E->>A: Request transfer page
A-->>E: Transfers and pagination metadata
end
E-->>W: CSV attachment
W-->>U: Browser download
Reviews (13): Last reviewed commit: "Merge branch 'main' into feat/dashboard-..." | Re-trigger Greptile |
|
@enochakinbode thanks for this! can you fix CI/CD? |
00e8a99 to
c0c312c
Compare
|
@GuiBibeau done. |
|
@enochakinbode apologies for the runaround on CI. As a first-time contributor from a fork, GitHub holds every workflow run until a maintainer approves it, so nothing had actually executed. I've approved the runs and CI is going now. Pushing more commits was never going to change it, so that's on us, not you. Three things left, and only two of them are yours: 1. Sign your commits. This is the real merge blocker. I'd like you to also consider this optional fix to toughen things up:
Once it's green I'll review. @multipletwigs you're the assignee on #716 and you already agreed the CSV-only scope, so a second pair of eyes from you would be ideal. |
|
Want your agent to iterate on Greptile's feedback? Try greploops. |
|
@resourcefulmind please review. |
resourcefulmind
left a comment
There was a problem hiding this comment.
Reviewed all six files. This is good work and the CSV hardening is genuinely solid now: the formula guard
strips control, format and separator characters before testing the prefix, which closes the leading
whitespace and zero-width bypasses Greptile flagged on the earlier commits. I checked those against the
current head rather than taking the replies on trust, and both are properly closed.
Approving. One optional thing if you want it in, otherwise it can wait: the response is UTF-8 with no
BOM, so Excel renders accented characters as mojibake. Memo and counterparty fields can carry them, and
we're adding Spanish and Portuguese this week. Prefixing is one line. Happy either way.
I'll file the 10k row cap separately, the export stops at MAX_EXPORT_ROWS without telling anyone, which
matters for reconciliation, but that's a follow-up rather than something to hold this on.
Sorry about the CI runaround. Signing the commits required a force-push, which reset the fork approval
gate, so the runs needed approving again. That's on our side, not yours, and it'll happen on any future
force-push here.
|
@enochakinbode the original commit c0c312c is still unsigned, and branch protection needs every commit signed, not just the recent ones. |
|
@resourcefulmind i am away from my computer, i will rectify asap |
|
@enochakinbode could i get some screenshots on the ui 🙏 appreciate it! |
c9fdfe1 to
117a9b8
Compare
117a9b8 to
6827220
Compare
|
@resourcefulmind all should be good now |


Summary
Adds CSV export support for the dashboard Payments transactions view. Issue: #716
This PR is expected to include both sides of the feature: a dashboard action that lets users download the currently filtered transaction list, and a dashboard API route that generates the CSV from SDP API transfer data. The export preserves the same filters used by the transactions table, fetches paginated results server-side, and returns a downloadable CSV file for reconciliation and audit workflows.
Changes
/api/dashboard/payments/transactions/exportas the dashboard-owned CSV export routemeta.totalandmeta.hasMoreTesting