Skip to content

Add CSV import/export functionality to task arguments dialog#1890

Open
Mbeaulne wants to merge 1 commit into03-04-bulk_submissionsfrom
03-04-bulk_argument_upload
Open

Add CSV import/export functionality to task arguments dialog#1890
Mbeaulne wants to merge 1 commit into03-04-bulk_submissionsfrom
03-04-bulk_argument_upload

Conversation

@Mbeaulne
Copy link
Collaborator

@Mbeaulne Mbeaulne commented Mar 4, 2026

Description

Added CSV import and export functionality to the task arguments dialog. Users can now download a CSV template with current argument values and import CSV files to populate pipeline inputs. The import supports both single-row (direct value assignment) and multi-row (bulk submission) formats. Secret inputs are automatically excluded from CSV operations for security. The system provides feedback on successful imports, unmatched columns, and skipped secret fields.

Related Issue and Pull requests

Type of Change

  • Bug fix
  • New feature
  • Improvement
  • Cleanup/Refactor
  • Breaking change
  • Documentation update

Checklist

  • I have tested this does not break current pipelines / runs functionality
  • I have tested the changes on staging

Screenshots (if applicable)

bulk_sub.mov (uploaded via Graphite)

Test Instructions

  1. Open a pipeline submission dialog
  2. Click "Template" button to download a CSV template with current argument values
  3. Modify the CSV file with test data (single row for direct import, multiple rows for bulk)
  4. Click "Import CSV" button and select the modified file
  5. Verify that arguments are populated correctly and bulk mode is enabled for multi-row imports
  6. Test with CSV containing unmatched columns and verify warning messages
  7. Test with pipelines containing secret inputs to ensure they are properly excluded

Additional Comments

The CSV parser implements RFC 4180 standards, handling quoted fields with commas and escaped quotes. Comprehensive test coverage is included for all parsing and mapping functionality.

@github-actions
Copy link

github-actions bot commented Mar 4, 2026

🎩 To tophat this PR:

You can add the following URL parameter to your browser to tophat this PR:

`?tophat_location=03-04-bulk_argument_upload/97de98b`

@Mbeaulne Mbeaulne requested a review from camielvs March 11, 2026 19:04
@Mbeaulne Mbeaulne force-pushed the 03-04-bulk_argument_upload branch from 5b08c9a to 4528eaf Compare March 11, 2026 19:05
@Mbeaulne Mbeaulne force-pushed the 03-04-bulk_submissions branch from afad2c5 to 0d679b5 Compare March 11, 2026 19:05
@Mbeaulne Mbeaulne force-pushed the 03-04-bulk_argument_upload branch from 4528eaf to 38a9d1b Compare March 11, 2026 20:20
@Mbeaulne Mbeaulne force-pushed the 03-04-bulk_submissions branch 2 times, most recently from 2a9fb0e to a950f79 Compare March 11, 2026 20:24
@Mbeaulne Mbeaulne force-pushed the 03-04-bulk_argument_upload branch 2 times, most recently from 95ba6b3 to e8f6fbd Compare March 11, 2026 20:27
camielvs
camielvs previously approved these changes Mar 11, 2026
Copy link
Collaborator

@camielvs camielvs left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

actually, changing my review because I want the raise the question: is this something we need?

This PR and subsequent ones are adding a bunch of complex methods, algorithms and other abstract logic and my gut sense is that there may be better alternatives

@camielvs camielvs dismissed their stale review March 11, 2026 20:59

changed mind

@camielvs camielvs requested a review from maxy-shpfy March 11, 2026 21:00
Copy link
Collaborator

hmm. I see on Slack you mention you still need to clean up this stack. I will reserve judgment until that has been done.

@Mbeaulne Mbeaulne force-pushed the 03-04-bulk_argument_upload branch from e8f6fbd to 6c31e06 Compare March 11, 2026 21:18
@Mbeaulne Mbeaulne force-pushed the 03-04-bulk_submissions branch from 465d436 to 46d35fc Compare March 11, 2026 21:18
@Mbeaulne Mbeaulne force-pushed the 03-04-bulk_argument_upload branch from 6c31e06 to 97de98b Compare March 11, 2026 21:32
@Mbeaulne Mbeaulne force-pushed the 03-04-bulk_submissions branch from 46d35fc to 8b94ba3 Compare March 11, 2026 21:32
} from "./componentSpec";

/**
* RFC 4180 CSV parser. Handles quoted fields with commas and escaped quotes.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

wondering if we can find npm package for this instead implementing ourselves?

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.

3 participants