Severity
blocker
Summary
The Homebrew-installed binary is withings-export 0.2.1 (/opt/homebrew/Caskroom/withings-export/0.2.1/withings-export), but the source on main includes four feature PRs merged after the v0.2.1 tag was cut:
b580683 fix: emit [] for empty JSON; correct workouts category prime note
607528e feat: add 'prime' subcommand for LLM agent orientation (#10)
06920c5 feat: add 'auth status' subcommand (#9)
9a7bc85 feat: harmonize date flags — add --until, today/yesterday keywords (#8)
aca6f39 Add fitdown-style markdown output; switch --json to --format (#7)
As a result, the shipped CLI is wildly out of contract with the prime/CONTRACT.md spec the source already implements:
| Contract item |
HEAD |
Shipped 0.2.1 |
prime subcommand |
yes |
unknown command |
auth status subcommand |
yes |
unknown command |
--format flag |
yes |
unknown flag (only --json) |
--until flag |
yes |
unknown flag |
today/yesterday keywords |
yes |
invalid value |
| Markdown default |
yes |
CSV default |
Empty JSON [] |
yes |
null |
Reproduce
$ withings-export prime
Error: unknown command "prime" for "withings-export"
$ withings-export auth status
(prints auth help, exit 0)
$ withings-export activity --until today
Error: unknown flag: --until
$ withings-export activity --since today
Error: invalid --since value: "today"
$ withings-export activity --since 2030-01-01 --json
null
Expected
Cut and publish a v0.2.2 / v0.3.0 release containing PR #7, #8, #9, #10, and the empty-[] fix (b580683). Update the Homebrew tap to point at it.
The remaining issues filed today are individual contract violations all caused by this one stale release; fixing the release fixes all of them in one shot, but each is filed separately so they can be triaged on HEAD as well.
Severity
blocker
Summary
The Homebrew-installed binary is
withings-export0.2.1 (/opt/homebrew/Caskroom/withings-export/0.2.1/withings-export), but the source onmainincludes four feature PRs merged after the v0.2.1 tag was cut:As a result, the shipped CLI is wildly out of contract with the prime/CONTRACT.md spec the source already implements:
primesubcommandauth statussubcommand--formatflag--json)--untilflagtoday/yesterdaykeywords[]nullReproduce
Expected
Cut and publish a v0.2.2 / v0.3.0 release containing PR #7, #8, #9, #10, and the empty-
[]fix (b580683). Update the Homebrew tap to point at it.The remaining issues filed today are individual contract violations all caused by this one stale release; fixing the release fixes all of them in one shot, but each is filed separately so they can be triaged on HEAD as well.