diff --git a/crates/application/src/issues/mod.rs b/crates/application/src/issues/mod.rs index 988a1e3..7889135 100644 --- a/crates/application/src/issues/mod.rs +++ b/crates/application/src/issues/mod.rs @@ -591,7 +591,11 @@ impl BulkDeleteIssues { issue_ref, freed_sprint, }); - BatchIssueResult::deleted(issue_ref) + BatchIssueResult { + issue_ref, + issue: None, + error: None, + } } Err(err) => BatchIssueResult::err(issue_ref, AppError::from(err)), } diff --git a/crates/application/src/lib.rs b/crates/application/src/lib.rs index fd35595..737b7ac 100644 --- a/crates/application/src/lib.rs +++ b/crates/application/src/lib.rs @@ -97,13 +97,13 @@ pub use git::{ pub use health::{HealthInput, HealthReport, HealthUseCase}; pub use issues::{ AssignIssueAgent, AssignIssueAgentInput, AssignIssueAgentOutput, BatchIssueResult, - BulkIssueMutationOutput, BulkUpdateIssuePriority, BulkUpdateIssuePriorityInput, - BulkUpdateIssueStatus, BulkUpdateIssueStatusInput, CreateIssue, CreateIssueInput, - CreateIssueOutput, DeleteIssue, DeleteIssueInput, DeleteIssueOutput, LinkIssues, - LinkIssuesInput, LinkIssuesOutput, ListIssues, ListIssuesInput, ListIssuesOutput, ReadIssue, - ReadIssueCarnet, ReadIssueCarnetInput, ReadIssueCarnetOutput, ReadIssueInput, ReadIssueOutput, - UnlinkIssues, UnlinkIssuesInput, UpdateIssue, UpdateIssueCarnet, UpdateIssueCarnetInput, - UpdateIssueCarnetOutput, UpdateIssueInput, UpdateIssueOutput, + BulkDeleteIssues, BulkDeleteIssuesInput, BulkIssueMutationOutput, BulkUpdateIssuePriority, + BulkUpdateIssuePriorityInput, BulkUpdateIssueStatus, BulkUpdateIssueStatusInput, CreateIssue, + CreateIssueInput, CreateIssueOutput, DeleteIssue, DeleteIssueInput, DeleteIssueOutput, + LinkIssues, LinkIssuesInput, LinkIssuesOutput, ListIssues, ListIssuesInput, ListIssuesOutput, + ReadIssue, ReadIssueCarnet, ReadIssueCarnetInput, ReadIssueCarnetOutput, ReadIssueInput, + ReadIssueOutput, UnlinkIssues, UnlinkIssuesInput, UpdateIssue, UpdateIssueCarnet, + UpdateIssueCarnetInput, UpdateIssueCarnetOutput, UpdateIssueInput, UpdateIssueOutput, }; pub use layout::{ CreateLayout, CreateLayoutInput, CreateLayoutOutput, DeleteLayout, DeleteLayoutInput, diff --git a/crates/application/tests/issue_usecases.rs b/crates/application/tests/issue_usecases.rs index 2ecff5f..3c665ea 100644 --- a/crates/application/tests/issue_usecases.rs +++ b/crates/application/tests/issue_usecases.rs @@ -530,11 +530,7 @@ async fn bulk_update_status_preserves_order_and_allows_partial_success() { issues.create(&project.root, &issue).await.unwrap(); } let bus = Arc::new(SpyBus::default()); - let uc = BulkUpdateIssueStatus::new( - issues.clone(), - Arc::new(FixedClock), - bus.clone(), - ); + let uc = BulkUpdateIssueStatus::new(issues.clone(), Arc::new(FixedClock), bus.clone()); let out = uc .execute(BulkUpdateIssueStatusInput { @@ -587,11 +583,7 @@ async fn bulk_update_priority_updates_each_existing_ticket() { .unwrap(); issues.create(&project.root, &initial).await.unwrap(); let bus = Arc::new(SpyBus::default()); - let uc = BulkUpdateIssuePriority::new( - issues.clone(), - Arc::new(FixedClock), - bus.clone(), - ); + let uc = BulkUpdateIssuePriority::new(issues.clone(), Arc::new(FixedClock), bus.clone()); let out = uc .execute(BulkUpdateIssuePriorityInput { diff --git a/crates/backend/src/lib.rs b/crates/backend/src/lib.rs index 645e353..f765917 100644 --- a/crates/backend/src/lib.rs +++ b/crates/backend/src/lib.rs @@ -15,25 +15,25 @@ use application::{ AgentResumer, AgentWakeService, AppError, AssignIssueAgent, AssignSkillToAgent, AssignTicketToSprint, AttachLiveAgent, AuthenticateSession, BackgroundCommandArchive, BulkUpdateIssuePriority, BulkUpdateIssueStatus, CancelBackgroundTask, ChangeAgentProfile, - CheckEmbedderSuggestion, CloneOpenCodeProfileFromSeed, - CloneProfileFromSeed, CloseProject, CloseTab, CloseTerminal, CloseTicketAssistant, - ConfigureProfiles, ContextGuardUseCases, CreateAgentFromScratch, CreateAgentFromTemplate, - CreateIssue, CreateLayout, CreateMemory, CreateProject, CreateSkill, CreateSprint, - CreateTemplate, DeleteAgent, DeleteEmbedderProfile, DeleteIssue, DeleteLayout, DeleteMemory, - DeleteModelArtifact, DeleteModelServer, DeleteProfile, DeleteSkill, DeleteSprint, - DeleteTemplate, DescribeEmbedderEngines, DetectAgentDrift, DetectProfiles, - DismissEmbedderSuggestion, EnsureLocalModelServer, FirstRunState, GetAppExitWorkGuardState, - GetLiveStateLean, GetMemory, GetProjectPermissions, GetProjectSystemPermissions, - GetProjectWorkState, GitBranches, GitCheckout, GitCommit, GitGraph, GitInit, GitLog, GitStage, - GitStatus, GitUnstage, HarvestMemoryFromTurn, HealthUseCase, InspectConversation, - InstallPluginFromArchive, InstallPluginFromDirectory, JsonPluginManifestValidator, LaunchAgent, - LaunchAgentInput, LinkIssues, ListAgents, ListAgentsInput, ListClaudeModels, ListCodexModels, - ListDevices, ListEmbedderProfiles, ListIssues, ListLayouts, ListMemories, ListModelServers, - ListOpenCodeProviders, ListPluginRuntimeContributions, ListPlugins, ListProfiles, ListProjects, - ListResumableAgents, ListSkills, ListSprints, ListTemplates, LiveAgentRegistry, LiveSessions, - LiveStateLeanProvider, LiveStateProvider, LiveStateReadProvider, LoadLayout, McpRuntime, - McpToolPermissionCatalogue, MoveTabToNewWindow, MutateLayout, OnnxModelView, OpenProject, - OpenTerminal, OpenTicketAssistant, OrchestratorService, PairAttemptLimiter, PairDevice, + CheckEmbedderSuggestion, CloneOpenCodeProfileFromSeed, CloneProfileFromSeed, CloseProject, + CloseTab, CloseTerminal, CloseTicketAssistant, ConfigureProfiles, ContextGuardUseCases, + CreateAgentFromScratch, CreateAgentFromTemplate, CreateIssue, CreateLayout, CreateMemory, + CreateProject, CreateSkill, CreateSprint, CreateTemplate, DeleteAgent, DeleteEmbedderProfile, + DeleteIssue, DeleteLayout, DeleteMemory, DeleteModelArtifact, DeleteModelServer, DeleteProfile, + DeleteSkill, DeleteSprint, DeleteTemplate, DescribeEmbedderEngines, DetectAgentDrift, + DetectProfiles, DismissEmbedderSuggestion, EnsureLocalModelServer, FirstRunState, + GetAppExitWorkGuardState, GetLiveStateLean, GetMemory, GetProjectPermissions, + GetProjectSystemPermissions, GetProjectWorkState, GitBranches, GitCheckout, GitCommit, + GitGraph, GitInit, GitLog, GitStage, GitStatus, GitUnstage, HarvestMemoryFromTurn, + HealthUseCase, InspectConversation, InstallPluginFromArchive, InstallPluginFromDirectory, + JsonPluginManifestValidator, LaunchAgent, LaunchAgentInput, LinkIssues, ListAgents, + ListAgentsInput, ListClaudeModels, ListCodexModels, ListDevices, ListEmbedderProfiles, + ListIssues, ListLayouts, ListMemories, ListModelServers, ListOpenCodeProviders, + ListPluginRuntimeContributions, ListPlugins, ListProfiles, ListProjects, ListResumableAgents, + ListSkills, ListSprints, ListTemplates, LiveAgentRegistry, LiveSessions, LiveStateLeanProvider, + LiveStateProvider, LiveStateReadProvider, LoadLayout, McpRuntime, McpToolPermissionCatalogue, + MoveTabToNewWindow, MutateLayout, OnnxModelView, OpenProject, OpenTerminal, + OpenTicketAssistant, OrchestratorService, PairAttemptLimiter, PairDevice, PermissionProjectorRegistry, ProposeContext, ReadAgentContext, ReadContext, ReadConversationPage, ReadIssue, ReadIssueCarnet, ReadMcpToolPermissions, ReadMemory, ReadMemoryIndex, ReadProjectContext, ReadSkill, ReadTemplate, RecallMemory, ReconcileLayouts, diff --git a/crates/infrastructure/tests/mcp_server.rs b/crates/infrastructure/tests/mcp_server.rs index 48a88de..28c56de 100644 --- a/crates/infrastructure/tests/mcp_server.rs +++ b/crates/infrastructure/tests/mcp_server.rs @@ -769,11 +769,11 @@ async fn tools_list_advertises_the_idea_tools_with_schemas() { ); } assert!(!names.contains(&"idea_reply")); - assert_eq!( - tools.len(), - 33, - "exactly the thirty-three exposed idea_* tools; got {names:?}" - ); + assert_eq!( + tools.len(), + 33, + "exactly the thirty-three exposed idea_* tools; got {names:?}" + ); // Every tool advertises an object input schema. for t in tools {