Skip to content

feat(ui): add assigned user email column to virtual keys CSV export - #8945

Merged
danpiths merged 1 commit into
devfrom
10-23-feat_add_assigned_to_email_column_into_vk_export
Oct 23, 2026
Merged

danpiths merged 1 commit into
devfrom
10-23-feat_add_assigned_to_email_column_into_vk_export

Conversation

@impoiler

Copy link
Copy Markdown
Member

Summary

The virtual keys CSV export now includes an "Assigned User Email" column. Previously the export showed only the "Assigned To" value, so there was no way to see which user's email a key belonged to. This adds that email to the export.

Changes

  • Added an "Assigned User Email" column to the virtual keys CSV export, placed right after "Assigned To".
  • Each row's value comes from vk.assigned_user?.email. It is an empty string when the key has no assigned user, so the column count stays consistent across rows.
  • The new cell uses the same quoting and escaping as the other columns.
  • Both the "current page" and "all" export scopes include the column, since they share the same CSV builder.

Type of change

  • Bug fix
  • Feature
  • Refactor
  • Documentation
  • Chore/CI

Affected areas

  • Core (Go)
  • Transports (HTTP)
  • Providers/Integrations
  • Plugins
  • UI (React)
  • Docs

How to test

  1. Open the Virtual Keys page in the workspace.
  2. Make sure at least one key is assigned to a user and at least one is not.
  3. Export the CSV for both the current page and all keys.
  4. Open the file and check the following:
    • The header has "Assigned User Email" after "Assigned To".
    • Keys with an assigned user show that user's email.
    • Keys without an assigned user have an empty cell.
    • Later columns (Budget Limit, Budget Spent, Budget Reset, Description, Created At) are still aligned with their headers.
# UI
cd ui
pnpm i || npm i
pnpm test || npm test
pnpm build || npm run build

Screenshots/Recordings

Not included. A sample of the exported CSV can be attached if needed.

Breaking changes

  • Yes
  • No

The new column is inserted in the middle of the CSV, so anything that reads the export by column position will see later columns shift by one. Tools that read by header name are unaffected.

Related issues

N/A

Security considerations

The export now includes user email addresses, which are PII. The data is already available to users who can view virtual keys. Anyone who shares exported files should handle them accordingly.

Checklist

  • I read docs/contributing/README.md and followed the guidelines
  • I added/updated tests where appropriate
  • I updated documentation where needed
  • I verified builds succeed (Go and UI)
  • I verified the CI pipeline passes locally if applicable

@impoiler
impoiler deployed to ci-trusted-branch October 23, 2026 07:18 — with GitHub Actions Active
@coderabbitai

coderabbitai Bot commented Oct 23, 2026 •

Copy link
Copy Markdown
Contributor

Review in Change Stack →

Important

Review skipped

Review was skipped as selected files did not have any reviewable changes.

⚙️ Run configuration
📥 Commits

Reviewing files that changed from the base of the PR and between d6f4f9e and aa16f49.

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration
📥 Commits

Reviewing files that changed from the base of the PR and between 6b53591 and d6f4f9e.

📒 Files selected for processing: 1
  • ui/app/workspace/virtual-keys/views/virtualKeysTable.tsx

Included review availability: This review used your included allowance. Your plan provides up to 10 included reviews per hour; 6 remain after this review.

📝 Summary

Summary by CodeRabbit

  • Improvements
    • Virtual-key CSV exports now include the assigned user’s email, or an empty value when unavailable.

The virtual-key CSV export adds an Assigned User Email column after Assigned To. Rows use the assigned user’s email, or an empty string when no email is available.

Changes: Virtual-key CSV export

Layer / File(s) Summary
Add assigned user email column
ui/app/workspace/virtual-keys/views/virtualKeysTable.tsx
The CSV header adds Assigned User Email after Assigned To. Each row includes the assigned user’s email, or an empty string when it is unavailable.

Priority: ➖ Normal

Estimated code review effort: 1 (Trivial) | ~3 minutes

Suggested reviewers: akshaydeo

Merge Risk: ⚪ Minimal · up to d6f4f

The export change is ready to merge with no actionable risk identified.

Pre-merge checks: Passed 4 · Failed 1

Failed Failed checks: 1 warning

Check name Status Explanation Resolution
Docstring Coverage Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 1 functions across 1 files. Write docstrings for the functions missing them to satisfy the coverage threshold.
Passed Passed checks: 4 passed
Check name Status Explanation
Title check Passed The title clearly and concisely identifies the main change: adding an assigned user email column to the virtual keys CSV export.
Description check Passed The description is complete and relevant. It explains the change, affected UI area, manual validation steps, CSV compatibility impact, PII considerations, and breaking-change status. It does not repor…
Linked Issues check Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check Passed Check skipped because no linked issues were found for this pull request.
Full details: Description check

Explanation

The description is complete and relevant. It explains the change, affected UI area, manual validation steps, CSV compatibility impact, PII considerations, and breaking-change status. It does not report completed test or build results, and it does not include screenshots, but these omissions are not critical for this small change.

✨ Finishing Touches: 💡 1
📝 Generate docstrings: 💡
  • Commit to this branch
  • Create a new PR
🧪 Generate unit tests (beta)
  • Commit to this branch
  • Create a new PR
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Comment @coderabbitai help to get the list of available commands.

impoiler commented Oct 23, 2026 •

Copy link
Copy Markdown
Member Author

@impoiler impoiler self-assigned this Oct 23, 2026
@impoiler
impoiler marked this pull request as ready for review October 23, 2026 07:43
@coderabbitai
coderabbitai Bot requested a review from akshaydeo October 23, 2026 07:45

danpiths commented Oct 23, 2026 •

Copy link
Copy Markdown
Collaborator

Merge activity

  • Oct 23, 7:56 AM UTC: A user started a stack merge that includes this pull request via Graphite.
  • Oct 23, 7:57 AM UTC: Graphite rebased this pull request as part of a merge.
  • Oct 23, 7:59 AM UTC: @danpiths merged this pull request with Graphite.

@danpiths
danpiths force-pushed the 10-23-feat_add_assigned_to_email_column_into_vk_export branch from d6f4f9e to aa16f49 Compare October 23, 2026 07:57
@danpiths
danpiths deployed to ci-trusted-branch October 23, 2026 07:57 — with GitHub Actions Active
@danpiths
danpiths merged commit 839faec into dev Oct 23, 2026
16 checks passed
@danpiths
danpiths deleted the 10-23-feat_add_assigned_to_email_column_into_vk_export branch October 23, 2026 07:59

This branch was successfully deployed

1 active deployment
ci-trusted-branch — aa16f49c Deployed Oct 23, 2026 by danpiths via dependency-review #38045
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants