Relationships
#3463 auth whoami: log mode labels collectives Free and shows trial expired for a superseded trial
Opened by skunk-ape · 10/14/2026
Problem
swamp auth whoami (log mode) prints one row per collective with the plan name and a trial note, e.g. alice Free trial expired. This misrepresents a collective's standing in two ways the web UI deliberately avoids:
- The web never presents Free as a plan. A collective's chip shows its paid plan, then Personal License, then the trial chip; FREE is only the billing page's last-resort label. whoami prints planName Free for every unlicensed, unpaid collective.
- A superseded trial (a team's plan or trial took over, e.g. the owner joined a paid collective) is hidden on the web, because trial ended would misreport the person's standing (components/collective/TrialStatus.tsx). whoami's contract reports a superseded trial as state expired (lib/app/views/whoami-view.ts: the cli contract predates supersession), so the CLI prints trial expired.
Expected
whoami log mode presents standing as the web does: paid plan name, Personal License, active trial or trial ended (not when superseded), never Free plan. Covered personal namespaces should not read as lapsed.
Notes
Telling superseded apart from expired likely needs swamp-club to report supersession (or rely on the privateExtensions verdict added to collectiveEntitlements). Found while triaging swamp-club#3311, which fixes the extension push --private messages and passes privateExtensions through whoami --json; this issue is the log-mode presentation, left out of #3311 to keep its scope.
Open
Click a lifecycle step above to view its details.
Sign in to post a ripple.