feat(tickets): filtres multi-critères par cases à cocher (backend + frontend)
Passe les filtres de la liste des tickets en sélection multiple (#12). Backend Rust : - IssueListFilter : statuses/priorities en Vec, filter_matches en OR intra-champ et AND inter-champs - TicketListRequestDto en tableaux + from_request (parse/déduplication) - MCP idea_ticket_list aligné sur le nouveau contrat Frontend : - TicketListQuery.statuses/priorities - UI de cases à cocher, toggle/clear des filtres Tests verts : issue_store (7), app-tauri --lib (59), mcp_server (24), issue_usecases (6), sprint_usecases (6), frontend vitest (505), npm run build (exit 0). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@ -426,10 +426,10 @@ impl From<&Issue> for IssueIndexEntry {
|
||||
/// Store-side list filter.
|
||||
#[derive(Debug, Clone, Default, PartialEq, Eq)]
|
||||
pub struct IssueListFilter {
|
||||
/// Optional status filter.
|
||||
pub status: Option<IssueStatus>,
|
||||
/// Optional priority filter.
|
||||
pub priority: Option<IssuePriority>,
|
||||
/// Allowed statuses. Empty means every status.
|
||||
pub statuses: Vec<IssueStatus>,
|
||||
/// Allowed priorities. Empty means every priority.
|
||||
pub priorities: Vec<IssuePriority>,
|
||||
/// Optional assigned agent filter.
|
||||
pub assigned_agent_id: Option<AgentId>,
|
||||
/// Optional sprint membership filter.
|
||||
|
||||
Reference in New Issue
Block a user