From 941ccb2cb34944e1321b3dc23731bfa93018d74f Mon Sep 17 00:00:00 2001 From: "Danilo M." Date: Wed, 1 Jul 2026 12:13:42 +0200 Subject: feat: tx list --flat, account create --if-not-exists, --since/--until doc (v0.3.6) Three smaller ISSUES.md items, one PATCH (two optional flags + a doc fix; no existing caller or JSON shape changes). - tx list --flat: emit one top-level object per split (journal id repeated), dropping the transactions[] nesting so single-split journals script cleanly. JSON-only; --human already explodes splits into a table. - account create --if-not-exists: resolve the name first; on a clash return the existing account with "existed": true (exit 0) instead of surfacing Firefly's 422, so import scripts are idempotent. Detects via resolver, not by parsing the error string. - SKILL.md documents that --since/--until filter on the transaction date (the value date); Firefly journals have a single date field, no separate book date (verified against firefly-iii TimeCollection setRange). Co-Authored-By: Claude Opus 4.8 --- completions/firefly.bash | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'completions') diff --git a/completions/firefly.bash b/completions/firefly.bash index 648fbe0..6901d14 100644 --- a/completions/firefly.bash +++ b/completions/firefly.bash @@ -38,12 +38,12 @@ _firefly() { case "$group $leaf" in "auth set") leaf_opts="--token --url";; "account balance") leaf_opts="--at";; - "account create") leaf_opts="--currency --opening-balance --type";; + "account create") leaf_opts="--currency --if-not-exists --opening-balance --type";; "account list") leaf_opts="--type";; "tx add") leaf_opts="--category --date --desc --dry-run --from --skip-dupes --tags --to --type";; "tx delete") leaf_opts="--yes";; "tx edit") leaf_opts="--amount --category --date --desc --from --tags --to --type";; - "tx list") leaf_opts="--account --all --limit --since --until";; + "tx list") leaf_opts="--account --all --flat --limit --since --until";; esac # Leaves per group. -- cgit v1.2.3