
 RUN  v2.1.9 /home/naqued/Development/omdev/Client-Dashboard/.claude/worktrees/agent-abf782c767335c77c

 ✓ src/features/tasks/hierarchy.test.ts (9 tests) 19ms
 ✓ src/features/overview/kpis.test.ts (21 tests) 33ms
 ✓ src/components/overview/SubprojectHealthCard.test.tsx (8 tests) 393ms
 ✓ src/components/atoms/TimeSeriesChart.test.tsx (17 tests) 479ms
 ✓ src/components/molecules/TaskStageGroup.test.tsx (15 tests) 609ms
 ✓ src/components/security/VulnTable.test.tsx (10 tests) 590ms
 ✓ src/components/atoms/MessageBubble.test.tsx (13 tests) 435ms
 ✓ src/components/overview/UptimeBar.test.tsx (11 tests) 810ms
 ✓ src/components/molecules/ConversationSwitcher.test.tsx (8 tests) 1095ms
 ✓ src/components/organisms/ChatPane.test.tsx (8 tests) 799ms
   ✓ ChatPane > resets the create-ticket takeover when the conversation changes 474ms
 ✓ src/components/organisms/TicketDraftPanel.test.tsx (17 tests) 1448ms
   ✓ TicketDraftPanel > classification & complexity (#50) > files with proposed_classification + argumentation on an override 346ms
 ✓ src/components/organisms/AdminOverview.test.tsx (8 tests) 1303ms
   ✓ AdminOverview > adds a component via the inline form 377ms
   ✓ AdminOverview > surfaces a 409 from add as an inline Name error 323ms
 ✓ src/features/tasks/hooks.test.tsx (6 tests) 373ms
 ✓ src/components/molecules/LinkedConversation.test.tsx (7 tests) 1587ms
   ✓ LinkedConversation > preselects a linked conversation by display NAME, never the raw spec_ref 361ms
   ✓ LinkedConversation > choosing a conversation then Save persists conversation:{id} 434ms
   ✓ LinkedConversation > None + freeform note + Save persists the note text 481ms
 ✓ src/components/overview/ProjectOverview.test.tsx (3 tests) 894ms
   ✓ ProjectOverview > renders header, KPIs, chips and cards from the data 540ms
 ✓ src/features/security/hooks.test.tsx (6 tests) 340ms
 ✓ src/features/tasks/ticketMeta.test.ts (12 tests) 14ms
 ✓ src/features/chat/hooks.test.tsx (5 tests) 336ms
 ✓ src/components/organisms/TaskDetailPane.test.tsx (13 tests) 2330ms
   ✓ TaskDetailPane — read-only status (no client transitions) > renders the status as a read-only Badge with no transition control 325ms
   ✓ TaskDetailPane — gated edit / delete / attachments > saves an edit via PATCH 527ms
 ✓ src/features/chat/useAssistantStream.test.tsx (5 tests) 85ms
 ✓ src/features/chat/useStagedAttachments.test.tsx (7 tests) 97ms
 ✓ src/components/molecules/TransitionControl.test.tsx (6 tests) 514ms
 ✓ src/components/organisms/AboutProjectPanel.test.tsx (7 tests) 455ms
 ✓ src/features/chat/useCreateTicket.test.tsx (3 tests) 205ms
 ✓ src/components/molecules/MessageComposer.test.tsx (9 tests) 1022ms
   ✓ MessageComposer > sends on Enter with non-empty text and clears the field 319ms
 ✓ src/features/security/posture.test.ts (11 tests) 19ms
 ✓ app/projects/[id]/ticketing/page.test.tsx (2 tests) 901ms
   ✓ Ticketing workspace (/projects/[id]/ticketing) > renders the assistant composer and the project context (active module tab + name) 422ms
   ✓ Ticketing workspace (/projects/[id]/ticketing) > shows a Back-to-parent affordance for a deep-linked subticket whose parent isn't on the loaded board (#40) 473ms
 ✓ src/components/molecules/ComponentHealthCard.test.tsx (4 tests) 183ms
 ✓ src/features/tasks/useTicketAttachments.test.tsx (5 tests) 313ms
 ✓ src/components/organisms/TicketAttachmentsPanel.test.tsx (6 tests) 282ms
 ✓ src/features/chat/useUploadAttachments.test.tsx (1 test) 133ms
 ✓ src/components/molecules/LanguageSwitcher.test.tsx (5 tests) 505ms
 ✓ src/features/admin/useAddComponent.test.tsx (2 tests) 167ms
 ✓ src/components/organisms/ProjectList.test.tsx (4 tests) 196ms
 ✓ src/components/security/SubprojectSecurityCard.test.tsx (5 tests) 265ms
 ✓ src/features/usage/useHostMetrics.test.tsx (3 tests) 195ms
 ✓ src/components/usage/ContainerTable.test.tsx (6 tests) 310ms
 ✓ src/features/tasks/useEditTicket.test.tsx (1 test) 96ms
 ✓ src/components/molecules/OnboardForm.test.tsx (11 tests) 5434ms
   ✓ OnboardForm > shows inline validation errors and does not submit when fields are empty 360ms
   ✓ OnboardForm > submits two components in the components array 1082ms
   ✓ OnboardForm > submits valid values and shows the success state with the temp password 742ms
   ✓ OnboardForm > submits language (default en, switchable to fr) 1348ms
   ✓ OnboardForm > maps a 409 to a project_key field error and a banner 561ms
   ✓ OnboardForm > shows a generic banner on a 500 612ms
 ✓ src/lib/api.test.ts (6 tests) 106ms
 ✓ src/components/organisms/ComponentHealthBreakdown.test.tsx (6 tests) 221ms
 ✓ src/components/overview/buildWindow.test.ts (6 tests) 12ms
 ✓ src/features/auth/useSetLanguage.test.tsx (3 tests) 222ms
 ✓ src/components/usage/HostMetricsSection.test.tsx (5 tests) 434ms
 ✓ src/components/security/SecurityModule.test.tsx (5 tests) 3594ms
   ✓ SecurityModule > renders an error with Retry when the summary fails 3194ms
 ✓ src/components/security/FindingsTable.test.tsx (4 tests) 203ms
 ✓ src/features/admin/useRemoveComponent.test.tsx (2 tests) 164ms
 ✓ src/components/security/PostureHeader.test.tsx (3 tests) 209ms
 ✓ src/components/molecules/LoginForm.test.tsx (4 tests) 836ms
 ✓ src/components/usage/UsageModule.test.tsx (5 tests) 3757ms
   ✓ UsageModule > renders both sections on success 317ms
   ✓ UsageModule > shows a section error with Retry when the host query fails 3127ms
 ✓ src/components/molecules/ProjectHealthStrip.test.tsx (3 tests) 76ms
 ✓ app/projects/[id]/usage/page.test.tsx (1 test) 385ms
   ✓ Usage page (/projects/[id]/usage) > renders the project context (active module tab + name) and the module 380ms
 ✓ app/projects/[id]/page.test.tsx (1 test) 436ms
   ✓ Project Overview page (/projects/[id]) > renders the project name and the context-bar Ticketing tab 431ms
 ✓ src/components/molecules/AccountMenu.test.tsx (4 tests) 528ms
 ✓ src/lib/relativeTime.test.ts (8 tests) 12ms
 ✓ src/components/atoms/ConfirmDialog.test.tsx (4 tests) 248ms
 ✓ src/components/molecules/ProjectCard.test.tsx (5 tests) 199ms
 ✓ src/features/overview/useUptimeHistory.test.tsx (2 tests) 127ms
 ✓ src/components/atoms/BfDisagreeTag.test.tsx (5 tests) 127ms
 ✓ src/components/atoms/Tooltip.test.tsx (4 tests) 83ms
 ✓ src/components/security/SeverityBar.test.tsx (2 tests) 183ms
 ✓ src/features/tasks/useAddTicketAttachment.test.tsx (1 test) 119ms
 ✓ src/components/organisms/TopBar.test.tsx (4 tests) 271ms
 ✓ src/features/chat/conversationNames.test.ts (4 tests) 8ms
 ✓ src/components/usage/RangePicker.test.tsx (4 tests) 316ms
 ✓ src/components/atoms/LastIndexed.test.tsx (5 tests) 68ms
 ✓ src/features/auth/useGuestLocale.test.tsx (2 tests) 189ms
 ✓ src/components/molecules/CiFieldList.test.tsx (3 tests) 253ms
 ✓ src/components/overview/TicketStateChips.test.tsx (3 tests) 176ms
 ✓ src/components/atoms/Switch.test.tsx (3 tests) 178ms
 ✓ src/components/molecules/SpecRefEditor.test.tsx (3 tests) 344ms
   ✓ SpecRefEditor > disables Save until the draft changes, then saves the new value 311ms
 ✓ src/components/atoms/ReindexButton.test.tsx (4 tests) 212ms
 ✓ src/features/chat/useDeleteConversation.test.tsx (1 test) 96ms
 ✓ src/components/providers/IntlProvider.test.tsx (2 tests) 134ms
 ✓ src/features/projects/useProjectsSummary.test.tsx (2 tests) 96ms
 ✓ src/components/overview/KpiStat.test.tsx (4 tests) 137ms
 ✓ src/components/molecules/TaskRow.test.tsx (3 tests) 152ms
 ✓ src/features/auth/useLogout.test.tsx (1 test) 92ms
 ✓ src/components/molecules/TicketingFirstRun.test.tsx (3 tests) 192ms
 ✓ src/features/usage/ranges.test.ts (3 tests) 8ms
 ✓ src/features/projects/hooks.test.tsx (4 tests) 6280ms
   ✓ project hooks > useProject polls while indexing until it settles to ready 6039ms
 ✓ src/components/atoms/TaskStatusPill.test.tsx (3 tests) 105ms
 ✓ src/components/molecules/ProjectTabs.test.tsx (2 tests) 123ms
 ✓ src/components/molecules/KnowledgeStrip.test.tsx (2 tests) 113ms
 ✓ src/components/atoms/Badge.test.tsx (2 tests) 62ms
 ✓ src/components/atoms/HealthBadge.test.tsx (2 tests) 28ms

 Test Files  86 passed (86)
      Tests  458 passed (458)
   Start at  22:10:07
   Duration  12.78s (transform 4.47s, setup 17.28s, collect 32.20s, tests 47.18s, environment 58.37s, prepare 10.80s)

