{"record":{"id":"a449fcfad81100ff","repo":"jlcodes99/cockpit-tools","slug":"wakeup-notice-testmissingmodel","errorCode":"wakeup.notice.testMissingModel","errorMessage":"wakeup.notice.testMissingModel","messagePattern":"wakeup\\.notice\\.testMissingModel","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"src/pages/AccountsPage.tsx","lineNumber":1716,"sourceCode":"    } catch (e) {\n      console.error(e)\n    } finally {\n      await loadVerificationHistory()\n      setRefreshingAll(false)\n    }\n  }\n\n  const handleWakeupSelected = async () => {\n    if (selected.size === 0 || wakeupRunning) return\n    setWakeupRunning(true)\n    setMessage(null)\n    const selectedIdSet = new Set(selected)\n    const selectedAccounts = accounts.filter((account) => selectedIdSet.has(account.id))\n    try {\n      const models = await invoke<Array<{ id: string }>>('fetch_available_models')\n      const model = models.find((item) => item.id)?.id\n      if (!model) {\n        throw new Error(t('wakeup.notice.testMissingModel'))\n      }\n      const officialLsVersionMode = loadWakeupOfficialLsVersionMode()\n      const results = await Promise.allSettled(\n        selectedAccounts.map((account) =>\n          invoke('trigger_wakeup', {\n            accountId: account.id,\n            model,\n            prompt: undefined,\n            maxOutputTokens: 0,\n            cancelScopeId: undefined,\n            officialLsVersionMode,\n          }),\n        ),\n      )\n      const failed = results.filter((result) => result.status === 'rejected').length\n      const success = results.length - failed\n      setMessage({\n        text:","sourceCodeStart":1698,"sourceCodeEnd":1734,"githubUrl":"https://github.com/jlcodes99/cockpit-tools/blob/1ed8b77992d62ca81fabf744deb0839ad361d5bf/src/pages/AccountsPage.tsx#L1698-L1734","documentation":"Guard in AccountsPage's wakeup-selected flow: fetch_available_models returned a list but no entry with a usable id (empty list or entries missing id), so there is no model to run the wakeup test against. The wakeup notice testMissingModel is thrown and shown to the user instead of silently waking nothing.","triggerScenarios":"Thrown at src/pages/AccountsPage.tsx:1716 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Verify the provider/backend is online and actually exposes models","Check account credentials — an unauthorized backend often returns an empty model list","Pick a fallback model or prompt the user to configure one when the list is empty"],"exampleFix":null,"handlingStrategy":"validation","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"1ed8b77992d62ca81fabf744deb0839ad361d5bf","analyzedAt":"2026-09-05T09:51:41.178Z","contentChangedAt":"2026-09-05T09:51:41.178Z","schemaVersion":2},"datasetVersion":"2026-09-12T12:17:11.808Z"}