Files
fuj-management/docs/plans/2026-05-07-1321-fuj-sync-print-fio-table.md
Jan Novak a7cf45fc95
All checks were successful
Deploy to K8s / deploy (push) Successful in 7s
feat(go): add --print-fio-table flag to fuj sync --dry-run
Prints an aligned tabwriter table of every Fio transaction in the
look-back window, with a STATUS column showing NEW (would be appended)
or DUP (already in sheet). Only fires when --dry-run is also set, so
it can't affect real syncs. Refactors Sync ID computation into a single
pre-pass shared by both the table printer and the row builder.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-07 13:49:42 +02:00

1.4 KiB

Add --print-fio-table debug flag to fuj sync

Context

The Go port of fuj sync --dry-run currently prints only the new transactions — i.e. rows that will be appended to the payments sheet after deduping against existing Sync IDs (see sync.go:125-129). When debugging Fio sync issues ("why isn't transaction X showing up?", "is the dedup working?"), there's no way to see what Fio actually returned versus what got filtered as a duplicate.

This change adds a --print-fio-table flag that, only when combined with --dry-run, prints an aligned table of every Fio transaction in the window with each row marked NEW (would be appended) or DUP (already in sheet, skipped). The flag is silently ignored without --dry-run, so it can't accidentally fire during a real sync.

Decisions

  • Flag name: --print-fio-table (specific, not generic --verbose).
  • Columns: DATE | AMOUNT | SENDER | VS | MESSAGE | BANKID | STATUS, with MESSAGE truncated and STATUS = NEW / DUP.
  • Scope: only effective when --dry-run is also set.

Files modified