All checks were successful
Deploy to K8s / deploy (push) Successful in 7s
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>
1.4 KiB
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-runis also set.
Files modified
- go/cmd/fuj/main.go — new flag + SyncOpts field
- go/internal/services/banksync/sync.go — SyncOpts struct + refactored step 4
- go/internal/services/banksync/debug.go — printFioTable helper (new)