Repository navigation
Was it a design decision to not give default columns id's? #202
Copy link
Copy link
Closed
Description
I am building pfm and it is a framework to allow my agent to create and track prds locally in md files.
When I pull the cards the cards in Maybe come back with empty id's and name's. Seems like this might be tied to the fact that they are default columns using non-uuid's.
So is this a feature, bug or does it GO ALL THE WAY TO THE TOP?
EDIT:
Looking further into this. I did a test where I moved the card from maybe to prd.
if you do this and monitor https://app.fizzy.app/1/cards/216.json if the card is in maybe the column key is undefined and populates on column change. So I guess this confirms this is an API issue not a CLI issue.
I have opened up the discussion here basecamp/fizzy#2596
$ fizzy column list --board 03gllis4fqpsod45szjmzxhym --json
{
"ok": true,
"data": [
{
"id": "not-now",
"kind": "not_now",
"name": "Not Now",
"pseudo": true
},
{
"id": "maybe",
"kind": "triage",
"name": "Maybe?",
"pseudo": true
},
{
"cards_url": "...",
"color": {
"name": "Blue",
"value": "var(--color-card-default)"
},
"created_at": "2026-08-01T03:27:29.340Z",
"id": "03gllis5bhiq287m3pow7x1k8",
"name": "PRD"
},...
$ fizzy column list --board 03gllis4fqpsod45szjmzxhym
10 columns
ID Name
──────────────────────────────────────
not-now Not Now
maybe Maybe?
03gllis5bhiq287m3pow7x1k8 PRD
03gllis5z6lonr6c9ta0mnstj Ready
03gllis6lig0q2dhervvytj46 Design
03gllis7a9wmig83ecptupp81 Blocked
03gllis7yvq9loz1347ekk6ck Development
03gllis8nc5j98r6bd37mn1qt Review
03gllis9afg8l6p7wo4v5pv5q Testing
done Done
$ fizzy column list --board 03gllis4fqpsod45szjmzxhym --json
{
"ok": true,
"data": [
{
"board": {
"all_access": true,
"auto_postpone_period_in_days": 30,
"created_at": "2026-08-01T03:27:29.131Z",
...
"closed": false,
"column": {
"created_at": "",
"id": "", <--- Missing id
"name": "" <--- Missing name
},
"comments_url": "...",
"created_at": "2026-08-01T19:04:41.481Z",
"creator": {
"active": true,
"avatar_url": "...",
"created_at": "2026-05-10T18:00:43.537Z",
"email_address": "",
"id": "03g3ppo6jr9vzt51t0d9r44nt",
"name": "Walter Jenkins",
"role": "owner",
"url": "..."
},
"golden": false,
"has_attachments": false,
"id": "03glqluyqfaddp7ktbdq66dg1",
"last_active_at": "2026-08-01T19:04:55.637Z",
"number": 216,
"postponed": false,
"reactions_url": "...",
"status": "published",
"title": "waffles",
"url": "..."
},
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels
Activity
[-]Was it a design decision to not give default columns id's[/-][+]Was it a design decision to not give default columns id's?[/+]jeremy commentedon Sep 9, 2026
It's an outcome of the data model rather than a choice to withhold ids. In Fizzy, Maybe, Not Now and Done aren't columns: a card in Maybe has
column: niland nothing else, Not Now is anot_nowrecord, Done is aclosurerecord. The card JSON only emitscolumnwhen there is one (json.column ... if card.column), so those cards arrive with no column at all, and the CLI's typed model rendered that as the empty object you saw.column listinvents thenot-now/maybe/donepseudo ids client-side; the card output just hadn't been doing the same.#207 closes that gap: when the API sends no column, the CLI infers the lane from
closed/postponed/statusand emits the same pseudo-column shape ascolumn list({"id":"maybe","name":"Maybe?","kind":"triage","pseudo":true}), which round-trips into--column maybe. Reviewed it against the fizzy model today and it lines up; it's waiting on a maintainer merge. One thing to keep in mind for your pull: a card closed from a real column keeps that column in the API, soclosedis the reliable signal for Done, notcolumn.id.AvidDabbler commentedon Sep 13, 2026
@jeremy thanks for the response. was genuinely curious 😄