7937266262
- Implemented the --project flag in the pcli status command to filter boards based on the specified project name. - Updated the command to resolve project names to IDs using case-insensitive matching. - Adjusted the totalBoards count in the output to reflect the number of boards matching the project filter. - Enhanced command help text and README documentation to include usage examples for the new flag. - Verified functionality through manual testing and ensured default behavior remains unchanged when the flag is omitted. feat(board): expand GetBoard response to include labels and card associations - Modified the Board struct to include Labels, CardLabels, and CardMemberships fields. - Updated the GetBoard method to parse additional fields from the API response. - Enhanced ListCardsByBoard to include label names for each card based on the enriched board data. - Ensured backward compatibility by making new fields optional and preserving existing output structure.
1.6 KiB
1.6 KiB
MODIFIED Requirements
Requirement: Enriched board-level card listing
The system SHALL provide a card list --board <id> operation that returns all cards across all lists in a board, with each card enriched with the listName field and a labels field. The operation SHALL: (1) call GET /boards/{id} to retrieve the board and its included lists, cards, labels, and cardLabels, (2) build a card-to-label-names map by joining cardLabels with labels, (3) inject listName and labels into each card. The labels field SHALL be an array of label name strings. The --limit flag SHALL apply to the total number of cards returned across all lists.
Scenario: List all cards on a board
- WHEN
pcli card list --board <id>is executed - THEN the system SHALL return all cards from all lists in the board
- AND each card SHALL include a
listNamefield with the name of its containing list - AND each card SHALL include a
labelsfield with an array of label names attached to that card
Scenario: Card with multiple labels
- WHEN a card has two labels ("bug" and "urgent") attached
- THEN the
labelsarray for that card SHALL contain both "bug" and "urgent"
Scenario: Card with no labels
- WHEN a card has no labels attached
- THEN the
labelsarray for that card SHALL be an empty array (not null)
Scenario: Board card listing with limit
- WHEN
pcli card list --board <id> --limit 10is executed - THEN the system SHALL return at most 10 cards total across all lists
- AND each card SHALL include the
listNameandlabelsfields