feat: added sample-csv command to download sample files with headers for csv file based uploads
Summary
This MR introduces a new sample-csv command to the CLI that allows users to download/generate sample CSV templates for supported upload workflows.
The feature provides predefined CSV files containing the required headers and structure for different upload types, helping users prepare valid CSV files before performing uploads.
What This MR Does
Adds support for generating/downloading sample CSV templates for:
- Normal bulk uploads
- Patch uploads
- Extracted text uploads
The generated CSV files contain:
- Required column headers
- Correct CSV structure for the selected upload type
This reduces user errors caused by incorrect CSV formatting and improves overall usability of CSV-based upload flows.
Motivation
Users currently need to manually determine the required CSV structure for each upload type, which can lead to:
- Invalid uploads
- Missing headers
- Incorrect column ordering
- Increased support/debugging effort
Providing downloadable sample templates directly from the CLI improves discoverability and streamlines the upload process.
CLI Usage
<cli-name> sample-csv upload
<cli-name> sample-csv patch
<cli-name> sample-csv extracted-text
Acceptance Criteria
-
A new sample-csvcommand is available in the CLI -
Users can generate/download sample CSV files for: -
Bulk uploads -
Patch uploads -
Extracted text uploads
-
-
Generated CSVs contain the correct headers for the selected upload type -
Generated files are valid CSV format -
Command help/usage documentation is updated -
Proper error handling exists for unsupported template types -
File generation/download works across supported environments
Testing Performed
-
Verified CSV generation for all supported upload types -
Verified generated headers match upload validation requirements -
Tested command with valid and invalid template types -
Verified generated files can be used successfully in upload workflows