Skip to content

Expose named project statuses and support status filtering - #62

Open
FelixLisczyk wants to merge 2 commits into
joa23:mainfrom
FelixLisczyk:tl-544
Open

Expose named project statuses and support status filtering#62
FelixLisczyk wants to merge 2 commits into
joa23:mainfrom
FelixLisczyk:tl-544

Conversation

@FelixLisczyk

Copy link
Copy Markdown
Contributor

Problem

Project responses currently expose only Linear’s deprecated scalar state field, which represents the status type rather than the named status. As a result, projects such as In Progress and On Hold—both of which may have type started—cannot be distinguished.

The CLI also does not support filtering project lists by named status.

Changes

This PR:

  • Exposes the project status object with id, name, and type.
  • Preserves state as a backward-compatible alias for the status type.
  • Renders named statuses in human-readable project output.
  • Adds --status filtering to linear projects list.
  • Supports comma-separated, case-insensitive status names with whitespace trimming and deduplication.
  • Rejects empty, unknown, ambiguous, and archived-only status filters clearly.
  • Applies filtering before the requested --limit.
  • Supports status filtering consistently for team-scoped and --mine project lists.
  • Preserves existing team/default-team precedence and --state mutation behavior.
  • Adds mutation result support so project state updates can expose the returned named status.
  • Adds client, service, CLI, formatter, GraphQL, compatibility, and pagination tests.

Example:

linear projects list --team TL --status "In Progress"
linear projects list --team TL --status "In Progress, On Hold"

Testing

  • Adds automated coverage for project status decoding and JSON output.
  • Adds filtering, normalization, validation, duplicate, archived, and limit-ordering tests.
  • Adds team-scoped and --mine service/CLI coverage.
  • Adds text-rendering and legacy state fallback tests.
  • Adds mutation response compatibility tests.

FelixLisczykand others added 2 commits August 6, 2026 12:58
Expose project status names alongside the deprecated state type so CLI users can distinguish statuses such as In Progress and On Hold. Add server-side status filtering, compatibility rendering, mutation result support, and focused tests across the client, service, CLI, and formatters.\n\nCo-Authored-By: Claude <noreply@anthropic.com>
Validate explicit empty status filters before dispatch and paginate user project queries so assignee matching happens before the visible limit. Narrow project service seams and add client, service, CLI, and mutation compatibility coverage.
Co-Authored-By: Claude <noreply@anthropic.com>
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant

@FelixLisczyk