-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Labels
priority:mediumShould be done soonShould be done soonsize:sSmall — 1 to 4 hoursSmall — 1 to 4 hoursstatus:readyRefined and ready for sprint selectionRefined and ready for sprint selectiontype:choreMaintenance, refactoring, toolingMaintenance, refactoring, tooling
Description
Part of #68
Description
Refactor the current CSV reader/writer into a pluggable format interface so new formats can be added incrementally. This is the prerequisite for all other #68 sub-issues.
Acceptance Criteria
- Internal reader/writer interface extracted (e.g.
FormatReader,FormatWritertypes or function pointers) - CSV remains the default format — no behavior change for existing users
-
--input-format <fmt>/-I <fmt>flag accepted (currently: onlycsvvalid) -
--output-format <fmt>/-O <fmt>flag accepted (currently: onlycsvvalid) - Unknown format values produce a clear error message listing supported formats
- Existing
--tsvand--jsonflags continue to work (mapped to--output-format tsv/jsoninternally)
Notes
- Keep it simple: a tagged union or vtable-style dispatch in Zig is sufficient
- Don't remove
--tsv/--jsonflags yet — they can be aliases mapped to--output-format - This issue is purely architectural; no new format support is added here
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
priority:mediumShould be done soonShould be done soonsize:sSmall — 1 to 4 hoursSmall — 1 to 4 hoursstatus:readyRefined and ready for sprint selectionRefined and ready for sprint selectiontype:choreMaintenance, refactoring, toolingMaintenance, refactoring, tooling