{"code":"var Component=(()=>{var u=Object.create;var r=Object.defineProperty;var h=Object.getOwnPropertyDescriptor;var p=Object.getOwnPropertyNames;var g=Object.getPrototypeOf,v=Object.prototype.hasOwnProperty;var b=(a,o)=>()=>(o||a((o={exports:{}}).exports,o),o.exports),q=(a,o)=>{for(var i in o)r(a,i,{get:o[i],enumerable:!0})},s=(a,o,i,d)=>{if(o&&typeof o==\"object\"||typeof o==\"function\")for(let n of p(o))!v.call(a,n)&&n!==i&&r(a,n,{get:()=>o[n],enumerable:!(d=h(o,n))||d.enumerable});return a};var C=(a,o,i)=>(i=a!=null?u(g(a)):{},s(o||!a||!a.__esModule?r(i,\"default\",{value:a,enumerable:!0}):i,a)),f=a=>s(r({},\"__esModule\",{value:!0}),a);var c=b((x,t)=>{t.exports=_jsx_runtime});var k={};q(k,{default:()=>m});var e=C(c());function l(a){let o={a:\"a\",blockquote:\"blockquote\",code:\"code\",em:\"em\",h2:\"h2\",h3:\"h3\",img:\"img\",li:\"li\",p:\"p\",pre:\"pre\",span:\"span\",strong:\"strong\",table:\"table\",tbody:\"tbody\",td:\"td\",th:\"th\",thead:\"thead\",tr:\"tr\",ul:\"ul\",...a.components};return(0,e.jsxs)(e.Fragment,{children:[(0,e.jsxs)(o.p,{children:[\"Seu Mac est\\xE1 quente sem fazer nada. A estimativa de bateria caiu pela metade. Voc\\xEA abre o Monitor de Atividade, ordena por CPU, e no topo est\\xE1 um processo que voc\\xEA nunca ouviu falar \\u2014 \",(0,e.jsx)(o.code,{children:\"peopled\"}),\" \\u2014 parado em 70 ou 80 por cento e permanecendo ali. Ou \\xE9 o \",(0,e.jsx)(o.code,{children:\"contactsd\"}),\". Ou, nas m\\xE1quinas mais afetadas, \",(0,e.jsx)(o.code,{children:\"accountsd\"}),\" em 180% com \",(0,e.jsx)(o.code,{children:\"contactsd\"}),\" e \",(0,e.jsx)(o.code,{children:\"itunescloudd\"}),\" logo atr\\xE1s. Encerrar n\\xE3o faz nada, porque voc\\xEA n\\xE3o consegue encerr\\xE1-los. Reiniciar ajuda por uma hora.\"]}),`\n`,(0,e.jsx)(o.p,{children:'Isso vem acontecendo com usu\\xE1rios de Mac desde o macOS Tahoe 26.4 em mar\\xE7o, ainda est\\xE1 acontecendo no 26.5 e no 26.6, a Apple n\\xE3o reconheceu o problema, e a corre\\xE7\\xE3o mais confi\\xE1vel n\\xE3o est\\xE1 em nenhum dos artigos de \"reinicie seu Mac / redefina a NVRAM\" que aparecem bem posicionados na busca. \\xC9 remover um widget.'}),`\n`,(0,e.jsxs)(o.p,{children:[\"Este guia explica o que \\xE9 o \",(0,e.jsx)(o.code,{children:\"peopled\"}),\" (n\\xF3s olhamos por dentro dele), por que um widget o coloca em loop, por que um sinalizador de quarentena numa pasta que voc\\xEA nem sabia que existia \\xE9 o outro gatilho, e a ordem exata em que tentar as corre\\xE7\\xF5es.\"]}),`\n`,(0,e.jsx)(o.p,{children:(0,e.jsx)(o.img,{alt:\"peopled consumindo CPU no macOS Tahoe no Monitor de Atividade\",src:\"/images/blog/peopled-contactsd-high-cpu-macos-tahoe-contacts-widget-callhistorydb-fix-2026/hero.webp\",width:\"1024\",height:\"541\"})}),`\n`,(0,e.jsx)(o.h2,{id:\"principais-conclus\\xF5es\",children:\"Principais conclus\\xF5es\"}),`\n`,(0,e.jsxs)(o.ul,{children:[`\n`,(0,e.jsxs)(o.li,{children:[(0,e.jsxs)(o.strong,{children:[(0,e.jsx)(o.code,{children:\"peopled\"}),\" \\xE9 o daemon por tr\\xE1s do widget de Contatos.\"]}),\" Seu pr\\xF3prio bin\\xE1rio cont\\xE9m classes chamadas \",(0,e.jsx)(o.code,{children:\"WidgetSuggester\"}),\", \",(0,e.jsx)(o.code,{children:\"WidgetConfigurationReader\"}),\" e \",(0,e.jsx)(o.code,{children:\"CallHistoryFetcher\"}),\", e seu perfil de sandbox concede a ele acesso ao seu banco de dados de hist\\xF3rico de chamadas. Essa combina\\xE7\\xE3o \\xE9 o loop.\"]}),`\n`,(0,e.jsxs)(o.li,{children:[(0,e.jsx)(o.strong,{children:\"Corre\\xE7\\xE3o 1: remova todo widget de Contatos\"}),\" \\u2014 na \\xE1rea de trabalho, na Central de Notifica\\xE7\\xF5es e na Central de Controle \\u2014 e reinicie. Isso resolveu a maioria dos mais de 54 relatos confirmados no f\\xF3rum da comunidade da Apple.\"]}),`\n`,(0,e.jsxs)(o.li,{children:[(0,e.jsxs)(o.strong,{children:[\"Corre\\xE7\\xE3o 2: limpe o sinalizador de quarentena em \",(0,e.jsx)(o.code,{children:\"~/Library/Application Support/CallHistoryDB\"})]}),\" e encerre o \",(0,e.jsx)(o.code,{children:\"peopled\"}),\". Essa \\xE9 a corre\\xE7\\xE3o quando n\\xE3o h\\xE1 widget algum para remover; ela exige Acesso Total ao Disco para o Terminal.\"]}),`\n`,(0,e.jsxs)(o.li,{children:[(0,e.jsx)(o.strong,{children:\"Corre\\xE7\\xE3o 3: desative os Contatos do iCloud e reative-os.\"}),\" Funciona para alguns, n\\xE3o para todos, e custa a sincroniza\\xE7\\xE3o enquanto est\\xE1 desativada.\"]}),`\n`,(0,e.jsxs)(o.li,{children:[(0,e.jsxs)(o.strong,{children:[\"Picos do \",(0,e.jsx)(o.code,{children:\"contactsd\"}),\" com uma conta Exchange ou Google s\\xE3o um bug diferente, mais antigo\"]}),\", com o mesmo sintoma e uma corre\\xE7\\xE3o diferente \\u2014 remover a conta ou usar um cliente de terceiros.\"]}),`\n`,(0,e.jsxs)(o.li,{children:[(0,e.jsx)(o.strong,{children:\"A Apple n\\xE3o documentou uma corre\\xE7\\xE3o.\"}),\" Nada nas notas de vers\\xE3o do 26.4.1, 26.5, 26.6 ou 26.6.x menciona isso, e os relatos no 26.5 e vers\\xF5es posteriores continuam.\"]}),`\n`]}),`\n`,(0,e.jsx)(o.h2,{id:\"qual-processo-exatamente\",children:\"Qual processo, exatamente\"}),`\n`,(0,e.jsx)(o.p,{children:\"Tr\\xEAs daemons aparecem nesses relatos e eles n\\xE3o s\\xE3o intercambi\\xE1veis. Ordene o Monitor de Atividade por % CPU e anote qual voc\\xEA tem.\"}),`\n`,(0,e.jsxs)(o.table,{children:[(0,e.jsx)(o.thead,{children:(0,e.jsxs)(o.tr,{children:[(0,e.jsx)(o.th,{children:\"Processo\"}),(0,e.jsx)(o.th,{children:\"A que pertence\"}),(0,e.jsx)(o.th,{children:\"Relato t\\xEDpico\"}),(0,e.jsx)(o.th,{children:\"Causa mais prov\\xE1vel\"})]})}),(0,e.jsxs)(o.tbody,{children:[(0,e.jsxs)(o.tr,{children:[(0,e.jsx)(o.td,{children:(0,e.jsx)(o.code,{children:\"peopled\"})}),(0,e.jsx)(o.td,{children:\"Framework People \\u2014 sugest\\xF5es de widget, Fam\\xEDlia, Tempo de Uso, status\"}),(0,e.jsx)(o.td,{children:\"70\\u201380% sustentado desde o 26.4\"}),(0,e.jsx)(o.td,{children:\"Widget de Contatos + CallHistoryDB ileg\\xEDvel\"})]}),(0,e.jsxs)(o.tr,{children:[(0,e.jsx)(o.td,{children:(0,e.jsx)(o.code,{children:\"contactsd\"})}),(0,e.jsx)(o.td,{children:\"Framework Contacts \\u2014 o banco de dados da agenda e sincroniza\\xE7\\xE3o\"}),(0,e.jsx)(o.td,{children:\"Picos de 80% a cada 60\\u201390 s, ou sustentado\"}),(0,e.jsx)(o.td,{children:\"Loop de sincroniza\\xE7\\xE3o de contatos do iCloud/Exchange/Google\"})]}),(0,e.jsxs)(o.tr,{children:[(0,e.jsx)(o.td,{children:(0,e.jsx)(o.code,{children:\"accountsd\"})}),(0,e.jsx)(o.td,{children:\"Framework Accounts \\u2014 toda conta conectada\"}),(0,e.jsxs)(o.td,{children:[\"180% junto com \",(0,e.jsx)(o.code,{children:\"contactsd\"}),\" e \",(0,e.jsx)(o.code,{children:\"itunescloudd\"})]}),(0,e.jsx)(o.td,{children:\"Loop de autentica\\xE7\\xE3o de conta; a corre\\xE7\\xE3o de sair da conta frequentemente falha\"})]})]})]}),`\n`,(0,e.jsxs)(o.p,{children:[\"Se for o \",(0,e.jsx)(o.code,{children:\"peopled\"}),\", comece pela se\\xE7\\xE3o do widget. Se for s\\xF3 o \",(0,e.jsx)(o.code,{children:\"contactsd\"}),\", v\\xE1 direto para a se\\xE7\\xE3o de conta sincronizada. Se forem os tr\\xEAs com o \",(0,e.jsx)(o.code,{children:\"accountsd\"}),\" no topo, voc\\xEA est\\xE1 na variante menos compreendida, e a se\\xE7\\xE3o sobre ela \\xE9 honesta quanto ao pouco que se sabe.\"]}),`\n`,(0,e.jsxs)(o.h2,{id:\"o-que-o-peopled-realmente-faz\",children:[\"O que o \",(0,e.jsx)(o.code,{children:\"peopled\"}),\" realmente faz\"]}),`\n`,(0,e.jsx)(o.p,{children:'O nome sugere contatos, e os guias que sequer o mencionam o descrevem como algo que \"gerencia dados de contato\". Isso est\\xE1 aproximadamente certo e especificamente errado, e a diferen\\xE7a \\xE9 o motivo pelo qual a corre\\xE7\\xE3o \\xE9 um widget, e n\\xE3o um reparo na agenda.'}),`\n`,(0,e.jsxs)(o.p,{children:[\"Examinamos o daemon em um Mac rodando 26.5.2. Ele fica em \",(0,e.jsx)(o.code,{children:\"/System/Library/PrivateFrameworks/People.framework/peopled\"}),\", e seu job do launchd (\",(0,e.jsx)(o.code,{children:\"/System/Library/LaunchAgents/com.apple.peopled.plist\"}),\") revela o que o desperta. Ele n\\xE3o \\xE9 carregado no login \\u2014 \",(0,e.jsx)(o.code,{children:\"RunAtLoad\"}),\" \\xE9 false. Ele \\xE9 iniciado por eventos:\"]}),`\n`,(0,e.jsxs)(o.ul,{children:[`\n`,(0,e.jsxs)(o.li,{children:[\"Streams do Biome para \",(0,e.jsx)(o.code,{children:\"missedCall\"}),\", \",(0,e.jsx)(o.code,{children:\"unreadMessage\"}),\", \",(0,e.jsx)(o.code,{children:\"readMessage\"}),\", \",(0,e.jsx)(o.code,{children:\"location\"}),\", \",(0,e.jsx)(o.code,{children:\"dndAvailability\"}),\", \",(0,e.jsx)(o.code,{children:\"screenTimeRequest\"}),\", \",(0,e.jsx)(o.code,{children:\"askToBuyRequest\"}),\" e \",(0,e.jsx)(o.code,{children:\"childState\"})]}),`\n`,(0,e.jsxs)(o.li,{children:[\"Duas notifica\\xE7\\xF5es do sistema: \",(0,e.jsx)(o.code,{children:\"__ABDataBaseChangedByOtherProcessNotification\"}),\" (a agenda mudou) e \",(0,e.jsx)(o.code,{children:\"_CalDatabaseChangedNotification\"}),\" (o calend\\xE1rio mudou)\"]}),`\n`]}),`\n`,(0,e.jsxs)(o.p,{children:[\"Ent\\xE3o toda chamada perdida, toda mensagem, toda edi\\xE7\\xE3o de contato e toda mudan\\xE7a de calend\\xE1rio desperta o \",(0,e.jsx)(o.code,{children:\"peopled\"}),\". E o que ele faz quando \\xE9 despertado? As strings em seu bin\\xE1rio respondem isso diretamente. Entre os nomes de classe Swift:\"]}),`\n`,(0,e.jsx)(e.Fragment,{children:(0,e.jsx)(o.pre,{className:\"shiki shiki-themes github-light github-dark\",style:{\"--shiki-light\":\"#24292e\",\"--shiki-dark\":\"#e1e4e8\",\"--shiki-light-bg\":\"#fff\",\"--shiki-dark-bg\":\"#24292e\"},tabIndex:\"0\",icon:'<svg viewBox=\"0 0 24 24\"><path d=\"M 6,1 C 4.354992,1 3,2.354992 3,4 v 16 c 0,1.645008 1.354992,3 3,3 h 12 c 1.645008,0 3,-1.354992 3,-3 V 8 7 A 1.0001,1.0001 0 0 0 20.707031,6.2929687 l -5,-5 A 1.0001,1.0001 0 0 0 15,1 h -1 z m 0,2 h 7 v 3 c 0,1.645008 1.354992,3 3,3 h 3 v 11 c 0,0.564129 -0.435871,1 -1,1 H 6 C 5.4358712,21 5,20.564129 5,20 V 4 C 5,3.4358712 5.4358712,3 6,3 Z M 15,3.4140625 18.585937,7 H 16 C 15.435871,7 15,6.5641288 15,6 Z\" fill=\"currentColor\" /></svg>',children:(0,e.jsxs)(o.code,{children:[(0,e.jsx)(o.span,{className:\"line\",children:(0,e.jsx)(o.span,{children:\"_TtC7peopled15WidgetSuggester\"})}),`\n`,(0,e.jsx)(o.span,{className:\"line\",children:(0,e.jsx)(o.span,{children:\"_TtC7peopled18CallHistoryFetcher\"})}),`\n`,(0,e.jsx)(o.span,{className:\"line\",children:(0,e.jsx)(o.span,{children:\"_TtC7peopled25WidgetConfigurationReader\"})})]})})}),`\n`,(0,e.jsx)(o.p,{children:\"e entre seus modelos de mensagem de log:\"}),`\n`,(0,e.jsx)(e.Fragment,{children:(0,e.jsx)(o.pre,{className:\"shiki shiki-themes github-light github-dark\",style:{\"--shiki-light\":\"#24292e\",\"--shiki-dark\":\"#e1e4e8\",\"--shiki-light-bg\":\"#fff\",\"--shiki-dark-bg\":\"#24292e\"},tabIndex:\"0\",icon:'<svg viewBox=\"0 0 24 24\"><path d=\"M 6,1 C 4.354992,1 3,2.354992 3,4 v 16 c 0,1.645008 1.354992,3 3,3 h 12 c 1.645008,0 3,-1.354992 3,-3 V 8 7 A 1.0001,1.0001 0 0 0 20.707031,6.2929687 l -5,-5 A 1.0001,1.0001 0 0 0 15,1 h -1 z m 0,2 h 7 v 3 c 0,1.645008 1.354992,3 3,3 h 3 v 11 c 0,0.564129 -0.435871,1 -1,1 H 6 C 5.4358712,21 5,20.564129 5,20 V 4 C 5,3.4358712 5.4358712,3 6,3 Z M 15,3.4140625 18.585937,7 H 16 C 15.435871,7 15,6.5641288 15,6 Z\" fill=\"currentColor\" /></svg>',children:(0,e.jsxs)(o.code,{children:[(0,e.jsx)(o.span,{className:\"line\",children:(0,e.jsx)(o.span,{children:\"Event triggered widget refresh: %{private}s, %s\"})}),`\n`,(0,e.jsx)(o.span,{className:\"line\",children:(0,e.jsx)(o.span,{children:\"Last widget suggestion date is older 24 hours, suggest widgets\"})}),`\n`,(0,e.jsx)(o.span,{className:\"line\",children:(0,e.jsx)(o.span,{children:\"Last widget suggestion date is within 24 hours, do not suggest widgets\"})}),`\n`,(0,e.jsx)(o.span,{className:\"line\",children:(0,e.jsx)(o.span,{children:\"error reading widgets configurations: %s\"})}),`\n`,(0,e.jsx)(o.span,{className:\"line\",children:(0,e.jsx)(o.span,{children:\"Failed to suggest widgets with error: %s\"})})]})})}),`\n`,(0,e.jsx)(o.p,{children:\"Ele vincula o framework Contacts, o framework CallHistory e dois frameworks do Biome. Seu prop\\xF3sito, tanto quanto o pr\\xF3prio c\\xF3digo descreve, \\xE9 decidir quais pessoas exibir no widget de Contatos e em sugest\\xF5es relacionadas a pessoas, usando suas chamadas e mensagens recentes como sinal.\"}),`\n`,(0,e.jsx)(o.p,{children:\"\\xC9 isso que faz o modo de falha fazer sentido: um daemon que \\xE9 despertado por toda chamada e mensagem, cujo trabalho \\xE9 atualizar um widget, e que precisa ler o hist\\xF3rico de chamadas para fazer isso.\"}),`\n`,(0,e.jsx)(o.p,{children:(0,e.jsx)(o.img,{alt:\"Por dentro do daemon peopled no macOS Tahoe\",src:\"/images/blog/peopled-contactsd-high-cpu-macos-tahoe-contacts-widget-callhistorydb-fix-2026/content-1.webp\",width:\"1024\",height:\"572\"})}),`\n`,(0,e.jsx)(o.h2,{id:\"por-que-ele-entra-em-loop\",children:\"Por que ele entra em loop\"}),`\n`,(0,e.jsx)(o.p,{children:\"Coloque as pe\\xE7as da thread da comunidade lado a lado com o que o bin\\xE1rio diz.\"}),`\n`,(0,e.jsxs)(o.p,{children:[\"O \",(0,e.jsx)(o.code,{children:\"peopled\"}),\" roda dentro de um sandbox. Seu perfil, em \",(0,e.jsx)(o.code,{children:\"/System/Library/Sandbox/Profiles/com.apple.peopled.sb\"}),\", come\\xE7a com \",(0,e.jsx)(o.code,{children:\"(deny default)\"}),\" e depois abre portas espec\\xEDficas. Duas delas:\"]}),`\n`,(0,e.jsx)(e.Fragment,{children:(0,e.jsx)(o.pre,{className:\"shiki shiki-themes github-light github-dark\",style:{\"--shiki-light\":\"#24292e\",\"--shiki-dark\":\"#e1e4e8\",\"--shiki-light-bg\":\"#fff\",\"--shiki-dark-bg\":\"#24292e\"},tabIndex:\"0\",icon:'<svg viewBox=\"0 0 24 24\"><path d=\"M 6,1 C 4.354992,1 3,2.354992 3,4 v 16 c 0,1.645008 1.354992,3 3,3 h 12 c 1.645008,0 3,-1.354992 3,-3 V 8 7 A 1.0001,1.0001 0 0 0 20.707031,6.2929687 l -5,-5 A 1.0001,1.0001 0 0 0 15,1 h -1 z m 0,2 h 7 v 3 c 0,1.645008 1.354992,3 3,3 h 3 v 11 c 0,0.564129 -0.435871,1 -1,1 H 6 C 5.4358712,21 5,20.564129 5,20 V 4 C 5,3.4358712 5.4358712,3 6,3 Z M 15,3.4140625 18.585937,7 H 16 C 15.435871,7 15,6.5641288 15,6 Z\" fill=\"currentColor\" /></svg>',children:(0,e.jsxs)(o.code,{children:[(0,e.jsx)(o.span,{className:\"line\",children:(0,e.jsx)(o.span,{children:'(home-subpath \"/Library/CallHistoryDB/\")'})}),`\n`,(0,e.jsx)(o.span,{className:\"line\",children:(0,e.jsx)(o.span,{children:'(home-subpath \"/Library/Logs/CallHistory\")'})})]})})}),`\n`,(0,e.jsxs)(o.p,{children:[\"Ent\\xE3o ele tem permiss\\xE3o para ler \",(0,e.jsx)(o.code,{children:\"~/Library/Application Support/CallHistoryDB/\"}),\", onde o macOS mant\\xE9m o banco de dados de chamadas feitas e recebidas pelo seu iPhone via Continuidade. Essa pasta tamb\\xE9m \\xE9 protegida pelo TCC \\u2014 no nosso Mac, \",(0,e.jsx)(o.code,{children:\"ls\"}),\" nela pelo Terminal retorna \",(0,e.jsx)(o.code,{children:\"Operation not permitted\"}),\" at\\xE9 que o Terminal tenha Acesso Total ao Disco \\u2014 o que explica por que as corre\\xE7\\xF5es abaixo exigem essa permiss\\xE3o.\"]}),`\n`,(0,e.jsxs)(o.p,{children:[\"Agora os relatos. Em 21 de abril, um usu\\xE1rio na \",(0,e.jsx)(o.a,{href:\"https://discussions.apple.com/thread/256271160\",children:\"thread da comunidade da Apple\"}),\" citou a mensagem do kernel que encontrou no Console enquanto o \",(0,e.jsx)(o.code,{children:\"peopled\"}),\" estava girando:\"]}),`\n`,(0,e.jsxs)(o.blockquote,{children:[`\n`,(0,e.jsx)(o.p,{children:\"Sandbox: peopled \\u2026 deny(1) file-read-data ~/Library/Application Support/CallHistoryDB\"}),`\n`]}),`\n`,(0,e.jsx)(o.p,{children:\"E em 20 de maio outro citou:\"}),`\n`,(0,e.jsxs)(o.blockquote,{children:[`\n`,(0,e.jsx)(o.p,{children:\"failed to open /Users/[user]/Library/Application Support/CallHistoryDB: 1 (Operation not permitted)\"}),`\n`]}),`\n`,(0,e.jsxs)(o.p,{children:[\"A leitura que se encaixa em tudo isso: um widget de Contatos est\\xE1 instalado, ent\\xE3o o \",(0,e.jsx)(o.code,{children:\"peopled\"}),\" \\xE9 solicitado a atualiz\\xE1-lo; atualizar significa buscar o hist\\xF3rico de chamadas; a busca \\xE9 negada \\u2014 porque a pasta adquiriu um atributo \",(0,e.jsx)(o.code,{children:\"com.apple.quarantine\"}),\", ou por algum outro motivo de permiss\\xE3o que os relatos ainda n\\xE3o identificaram com precis\\xE3o \\u2014 a atualiza\\xE7\\xE3o falha, e o pr\\xF3ximo evento (ou a nova tentativa) o dispara de novo. Um daemon que deveria rodar por milissegundos ap\\xF3s uma chamada perdida, em vez disso, roda continuamente.\"]}),`\n`,(0,e.jsx)(o.p,{children:'Queremos ser precisos sobre o que est\\xE1 e o que n\\xE3o est\\xE1 estabelecido aqui. Os nomes de classe, as regras de sandbox e as mensagens de log s\\xE3o diretamente observ\\xE1veis; n\\xF3s as lemos. Que o loop seja \"atualiza\\xE7\\xE3o de widget, leitura negada, nova tentativa\" \\xE9 uma infer\\xEAncia que se encaixa em todo relato que vimos e em ambas as corre\\xE7\\xF5es que funcionam. A Apple n\\xE3o confirmou o mecanismo, e pode haver um segundo gatilho \\u2014 um usu\\xE1rio relata que o loop come\\xE7ou depois de reorganizar a Central de Controle sem nenhum widget de Contatos presente.'}),`\n`,(0,e.jsx)(o.h2,{id:\"confirme-antes-de-mudar-qualquer-coisa\",children:\"Confirme antes de mudar qualquer coisa\"}),`\n`,(0,e.jsx)(o.p,{children:\"Dois minutos de observa\\xE7\\xE3o poupam uma hora de tentativa e erro, e o padr\\xE3o do uso de CPU indica qual corre\\xE7\\xE3o buscar.\"}),`\n`,(0,e.jsxs)(o.p,{children:[(0,e.jsx)(o.strong,{children:\"Observe o formato.\"}),\" No Monitor de Atividade, selecione o processo e veja o hist\\xF3rico de CPU no rodap\\xE9 da janela, ou pelo Terminal:\"]}),`\n`,(0,e.jsx)(e.Fragment,{children:(0,e.jsx)(o.pre,{className:\"shiki shiki-themes github-light github-dark\",style:{\"--shiki-light\":\"#24292e\",\"--shiki-dark\":\"#e1e4e8\",\"--shiki-light-bg\":\"#fff\",\"--shiki-dark-bg\":\"#24292e\"},tabIndex:\"0\",icon:'<svg viewBox=\"0 0 24 24\"><path d=\"M 6,1 C 4.354992,1 3,2.354992 3,4 v 16 c 0,1.645008 1.354992,3 3,3 h 12 c 1.645008,0 3,-1.354992 3,-3 V 8 7 A 1.0001,1.0001 0 0 0 20.707031,6.2929687 l -5,-5 A 1.0001,1.0001 0 0 0 15,1 h -1 z m 0,2 h 7 v 3 c 0,1.645008 1.354992,3 3,3 h 3 v 11 c 0,0.564129 -0.435871,1 -1,1 H 6 C 5.4358712,21 5,20.564129 5,20 V 4 C 5,3.4358712 5.4358712,3 6,3 Z M 15,3.4140625 18.585937,7 H 16 C 15.435871,7 15,6.5641288 15,6 Z\" fill=\"currentColor\" /></svg>',children:(0,e.jsx)(o.code,{children:(0,e.jsx)(o.span,{className:\"line\",children:(0,e.jsx)(o.span,{children:\"top -stats pid,command,cpu,time -o cpu -n 5\"})})})})}),`\n`,(0,e.jsxs)(o.p,{children:[\"Um \",(0,e.jsx)(o.code,{children:\"peopled\"}),\" parado em um plano de 70\\u201380% \\xE9 o loop do widget. Um \",(0,e.jsx)(o.code,{children:\"contactsd\"}),\" que dispara, cai a zero e dispara de novo um minuto depois \\xE9 o loop de sincroniza\\xE7\\xE3o. CPU sustentada nos tr\\xEAs daemons ao mesmo tempo \\xE9 a variante de conta.\"]}),`\n`,(0,e.jsxs)(o.p,{children:[(0,e.jsx)(o.strong,{children:\"Verifique h\\xE1 quanto tempo est\\xE1 rodando.\"}),\" O \",(0,e.jsx)(o.code,{children:\"peopled\"}),\" normalmente vive por segundos. No nosso Mac (saud\\xE1vel), ele est\\xE1 residente h\\xE1 41 dias com 0,0% de CPU \\u2014 residente por\\xE9m ocioso \\xE9 normal. O que voc\\xEA procura \\xE9 residente \",(0,e.jsx)(o.em,{children:\"e\"}),\" ocupado:\"]}),`\n`,(0,e.jsx)(e.Fragment,{children:(0,e.jsx)(o.pre,{className:\"shiki shiki-themes github-light github-dark\",style:{\"--shiki-light\":\"#24292e\",\"--shiki-dark\":\"#e1e4e8\",\"--shiki-light-bg\":\"#fff\",\"--shiki-dark-bg\":\"#24292e\"},tabIndex:\"0\",icon:'<svg viewBox=\"0 0 24 24\"><path d=\"M 6,1 C 4.354992,1 3,2.354992 3,4 v 16 c 0,1.645008 1.354992,3 3,3 h 12 c 1.645008,0 3,-1.354992 3,-3 V 8 7 A 1.0001,1.0001 0 0 0 20.707031,6.2929687 l -5,-5 A 1.0001,1.0001 0 0 0 15,1 h -1 z m 0,2 h 7 v 3 c 0,1.645008 1.354992,3 3,3 h 3 v 11 c 0,0.564129 -0.435871,1 -1,1 H 6 C 5.4358712,21 5,20.564129 5,20 V 4 C 5,3.4358712 5.4358712,3 6,3 Z M 15,3.4140625 18.585937,7 H 16 C 15.435871,7 15,6.5641288 15,6 Z\" fill=\"currentColor\" /></svg>',children:(0,e.jsx)(o.code,{children:(0,e.jsx)(o.span,{className:\"line\",children:(0,e.jsx)(o.span,{children:'ps -axo pid,etime,pcpu,comm | grep -E \"peopled|contactsd|accountsd\"'})})})})}),`\n`,(0,e.jsxs)(o.p,{children:[(0,e.jsx)(o.strong,{children:\"Procure pela nega\\xE7\\xE3o.\"}),\" Esse \\xE9 o teste decisivo. Abra uma segunda janela do Terminal e transmita o log do daemon enquanto ele est\\xE1 girando:\"]}),`\n`,(0,e.jsx)(e.Fragment,{children:(0,e.jsx)(o.pre,{className:\"shiki shiki-themes github-light github-dark\",style:{\"--shiki-light\":\"#24292e\",\"--shiki-dark\":\"#e1e4e8\",\"--shiki-light-bg\":\"#fff\",\"--shiki-dark-bg\":\"#24292e\"},tabIndex:\"0\",icon:'<svg viewBox=\"0 0 24 24\"><path d=\"M 6,1 C 4.354992,1 3,2.354992 3,4 v 16 c 0,1.645008 1.354992,3 3,3 h 12 c 1.645008,0 3,-1.354992 3,-3 V 8 7 A 1.0001,1.0001 0 0 0 20.707031,6.2929687 l -5,-5 A 1.0001,1.0001 0 0 0 15,1 h -1 z m 0,2 h 7 v 3 c 0,1.645008 1.354992,3 3,3 h 3 v 11 c 0,0.564129 -0.435871,1 -1,1 H 6 C 5.4358712,21 5,20.564129 5,20 V 4 C 5,3.4358712 5.4358712,3 6,3 Z M 15,3.4140625 18.585937,7 H 16 C 15.435871,7 15,6.5641288 15,6 Z\" fill=\"currentColor\" /></svg>',children:(0,e.jsx)(o.code,{children:(0,e.jsx)(o.span,{className:\"line\",children:(0,e.jsx)(o.span,{children:`log stream --predicate 'process == \"peopled\"' --info`})})})})}),`\n`,(0,e.jsx)(o.p,{children:\"e, na primeira janela, busque nos \\xFAltimos minutos pela linha de sandbox que os relatos da comunidade citam:\"}),`\n`,(0,e.jsx)(e.Fragment,{children:(0,e.jsx)(o.pre,{className:\"shiki shiki-themes github-light github-dark\",style:{\"--shiki-light\":\"#24292e\",\"--shiki-dark\":\"#e1e4e8\",\"--shiki-light-bg\":\"#fff\",\"--shiki-dark-bg\":\"#24292e\"},tabIndex:\"0\",icon:'<svg viewBox=\"0 0 24 24\"><path d=\"M 6,1 C 4.354992,1 3,2.354992 3,4 v 16 c 0,1.645008 1.354992,3 3,3 h 12 c 1.645008,0 3,-1.354992 3,-3 V 8 7 A 1.0001,1.0001 0 0 0 20.707031,6.2929687 l -5,-5 A 1.0001,1.0001 0 0 0 15,1 h -1 z m 0,2 h 7 v 3 c 0,1.645008 1.354992,3 3,3 h 3 v 11 c 0,0.564129 -0.435871,1 -1,1 H 6 C 5.4358712,21 5,20.564129 5,20 V 4 C 5,3.4358712 5.4358712,3 6,3 Z M 15,3.4140625 18.585937,7 H 16 C 15.435871,7 15,6.5641288 15,6 Z\" fill=\"currentColor\" /></svg>',children:(0,e.jsx)(o.code,{children:(0,e.jsx)(o.span,{className:\"line\",children:(0,e.jsx)(o.span,{children:`log show --last 10m --predicate 'eventMessage CONTAINS \"Sandbox: peopled\"'`})})})})}),`\n`,(0,e.jsxs)(o.p,{children:[\"Se voc\\xEA ver \",(0,e.jsx)(o.code,{children:\"deny(1) file-read-data\"}),\" contra \",(0,e.jsx)(o.code,{children:\"CallHistoryDB\"}),\", voc\\xEA tem a variante do CallHistoryDB e a Corre\\xE7\\xE3o 2 \\xE9 a que vai funcionar. Se voc\\xEA ver \",(0,e.jsx)(o.code,{children:\"Event triggered widget refresh\"}),\" se repetindo sem uma nega\\xE7\\xE3o, comece pela Corre\\xE7\\xE3o 1. Se o log est\\xE1 silencioso e a CPU est\\xE1 alta, o loop est\\xE1 em um c\\xF3digo que n\\xE3o registra log no n\\xEDvel padr\\xE3o; tente as corre\\xE7\\xF5es na ordem mesmo assim.\"]}),`\n`,(0,e.jsxs)(o.p,{children:[(0,e.jsx)(o.strong,{children:\"Observe o sistema de arquivos, se quiser certeza.\"}),\" O \",(0,e.jsx)(o.code,{children:\"fs_usage\"}),\" mostra toda opera\\xE7\\xE3o de arquivo que um processo tenta, incluindo as que falham:\"]}),`\n`,(0,e.jsx)(e.Fragment,{children:(0,e.jsx)(o.pre,{className:\"shiki shiki-themes github-light github-dark\",style:{\"--shiki-light\":\"#24292e\",\"--shiki-dark\":\"#e1e4e8\",\"--shiki-light-bg\":\"#fff\",\"--shiki-dark-bg\":\"#24292e\"},tabIndex:\"0\",icon:'<svg viewBox=\"0 0 24 24\"><path d=\"M 6,1 C 4.354992,1 3,2.354992 3,4 v 16 c 0,1.645008 1.354992,3 3,3 h 12 c 1.645008,0 3,-1.354992 3,-3 V 8 7 A 1.0001,1.0001 0 0 0 20.707031,6.2929687 l -5,-5 A 1.0001,1.0001 0 0 0 15,1 h -1 z m 0,2 h 7 v 3 c 0,1.645008 1.354992,3 3,3 h 3 v 11 c 0,0.564129 -0.435871,1 -1,1 H 6 C 5.4358712,21 5,20.564129 5,20 V 4 C 5,3.4358712 5.4358712,3 6,3 Z M 15,3.4140625 18.585937,7 H 16 C 15.435871,7 15,6.5641288 15,6 Z\" fill=\"currentColor\" /></svg>',children:(0,e.jsx)(o.code,{children:(0,e.jsx)(o.span,{className:\"line\",children:(0,e.jsx)(o.span,{children:\"sudo fs_usage -w -f filesys peopled\"})})})})}),`\n`,(0,e.jsxs)(o.p,{children:[\"Uma tela cheia de tentativas em \",(0,e.jsx)(o.code,{children:\"CallHistoryDB\"}),\" retornando erros \\xE9 o loop, vis\\xEDvel em tempo real.\"]}),`\n`,(0,e.jsx)(o.h2,{id:\"corre\\xE7\\xE3o-1-remova-o-widget-de-contatos\",children:\"Corre\\xE7\\xE3o 1: remova o widget de Contatos\"}),`\n`,(0,e.jsx)(o.p,{children:\"Essa \\xE9 a corre\\xE7\\xE3o com mais confirma\\xE7\\xF5es, e \\xE9 a primeira a tentar porque \\xE9 revers\\xEDvel e n\\xE3o exige Terminal.\"}),`\n`,(0,e.jsx)(o.p,{children:\"O problema \\xE9 que h\\xE1 tr\\xEAs lugares onde um widget pode existir em um Mac com Tahoe, e ele precisa desaparecer de todos eles.\"}),`\n`,(0,e.jsx)(o.h3,{id:\"\\xE1rea-de-trabalho\",children:\"\\xC1rea de trabalho\"}),`\n`,(0,e.jsxs)(o.p,{children:[\"Control-clique no papel de parede e escolha \",(0,e.jsx)(o.strong,{children:\"Editar Widgets\"}),\". Qualquer widget de Contatos na \\xE1rea de trabalho mostra um bot\\xE3o de remo\\xE7\\xE3o (o sinal de menos no canto) durante a edi\\xE7\\xE3o; clique nele. Alternativamente, Control-clique no pr\\xF3prio widget e escolha \",(0,e.jsx)(o.strong,{children:\"Remover Widget\"}),\". Clique em \",(0,e.jsx)(o.strong,{children:\"Conclu\\xEDdo\"}),\".\"]}),`\n`,(0,e.jsx)(o.h3,{id:\"central-de-notifica\\xE7\\xF5es\",children:\"Central de Notifica\\xE7\\xF5es\"}),`\n`,(0,e.jsxs)(o.p,{children:[\"Clique na data e hora na barra de menus para abrir a Central de Notifica\\xE7\\xF5es, role at\\xE9 o fim, clique em \",(0,e.jsx)(o.strong,{children:\"Editar Widgets\"}),\". Remova qualquer widget de Contatos ali da mesma forma \\u2014 Control-clique e \",(0,e.jsx)(o.strong,{children:\"Remover Widget\"}),\", ou Option-clique no bot\\xE3o de remo\\xE7\\xE3o dele.\"]}),`\n`,(0,e.jsx)(o.h3,{id:\"central-de-controle\",children:\"Central de Controle\"}),`\n`,(0,e.jsxs)(o.p,{children:[\"Esse \\xE9 o que as pessoas costumam esquecer, porque o Tahoe moveu os widgets para a Central de Controle e a personaliza\\xE7\\xE3o n\\xE3o est\\xE1 nos Ajustes do Sistema. Clique no \\xEDcone da Central de Controle na barra de menus, escolha \",(0,e.jsx)(o.strong,{children:\"Editar Controles\"}),\", e arraste qualquer item de Contatos para fora da Central de Controle. Clique em \",(0,e.jsx)(o.strong,{children:\"Conclu\\xEDdo\"}),\".\"]}),`\n`,(0,e.jsxs)(o.p,{children:[\"Depois \",(0,e.jsx)(o.strong,{children:\"reinicie\"}),\" \\u2014 n\\xE3o apenas encerre a sess\\xE3o. V\\xE1rias corre\\xE7\\xF5es confirmadas na thread apontam que a CPU s\\xF3 caiu depois de um rein\\xEDcio completo.\"]}),`\n`,(0,e.jsx)(o.p,{children:\"Uma precau\\xE7\\xE3o adicional da mesma thread, relatada em 31 de julho: para alguns usu\\xE1rios o loop voltou depois que eles abriram a galeria de widgets de novo, mesmo sem adicionar o widget de Contatos. Se voc\\xEA j\\xE1 teve esse problema, trate o editor de widgets como algo a evitar at\\xE9 que a Apple corrija o daemon.\"}),`\n`,(0,e.jsx)(o.h2,{id:\"corre\\xE7\\xE3o-2-limpe-o-sinalizador-de-quarentena-no-callhistorydb\",children:\"Corre\\xE7\\xE3o 2: limpe o sinalizador de quarentena no CallHistoryDB\"}),`\n`,(0,e.jsx)(o.p,{children:'Para Macs sem nenhum widget de Contatos em lugar algum, ou onde remov\\xEA-lo n\\xE3o ajudou, essa \\xE9 a corre\\xE7\\xE3o a que chegou o relato mais tecnicamente detalhado da thread, em 20 de maio, e que pelo menos outros dois usu\\xE1rios confirmaram (\"o processo peopled agora est\\xE1 em 0% de consumo de CPU,\" escreveu um em 26 de junho).'}),`\n`,(0,e.jsx)(o.h3,{id:\"passo-1-conceda-ao-terminal-acesso-total-ao-disco\",children:\"Passo 1: conceda ao Terminal Acesso Total ao Disco\"}),`\n`,(0,e.jsxs)(o.p,{children:['Ajustes do Sistema > Privacidade e Seguran\\xE7a > Acesso Total ao Disco, adicione o Terminal e ative-o. Sem isso, todo comando abaixo falha com \"Operation not permitted\" \\u2014 que, por sinal, \\xE9 o mesmo erro que o ',(0,e.jsx)(o.code,{children:\"peopled\"}),\" est\\xE1 enfrentando. Reinicie o Terminal depois de conceder o acesso.\"]}),`\n`,(0,e.jsx)(o.h3,{id:\"passo-2-examine-a-pasta\",children:\"Passo 2: examine a pasta\"}),`\n`,(0,e.jsx)(e.Fragment,{children:(0,e.jsx)(o.pre,{className:\"shiki shiki-themes github-light github-dark\",style:{\"--shiki-light\":\"#24292e\",\"--shiki-dark\":\"#e1e4e8\",\"--shiki-light-bg\":\"#fff\",\"--shiki-dark-bg\":\"#24292e\"},tabIndex:\"0\",icon:'<svg viewBox=\"0 0 24 24\"><path d=\"M 6,1 C 4.354992,1 3,2.354992 3,4 v 16 c 0,1.645008 1.354992,3 3,3 h 12 c 1.645008,0 3,-1.354992 3,-3 V 8 7 A 1.0001,1.0001 0 0 0 20.707031,6.2929687 l -5,-5 A 1.0001,1.0001 0 0 0 15,1 h -1 z m 0,2 h 7 v 3 c 0,1.645008 1.354992,3 3,3 h 3 v 11 c 0,0.564129 -0.435871,1 -1,1 H 6 C 5.4358712,21 5,20.564129 5,20 V 4 C 5,3.4358712 5.4358712,3 6,3 Z M 15,3.4140625 18.585937,7 H 16 C 15.435871,7 15,6.5641288 15,6 Z\" fill=\"currentColor\" /></svg>',children:(0,e.jsx)(o.code,{children:(0,e.jsx)(o.span,{className:\"line\",children:(0,e.jsx)(o.span,{children:'ls -lan@ \"$HOME/Library/Application Support/CallHistoryDB\"'})})})})}),`\n`,(0,e.jsxs)(o.p,{children:[\"A flag \",(0,e.jsx)(o.code,{children:\"@\"}),\" mostra atributos estendidos. O que voc\\xEA procura \\xE9 \",(0,e.jsx)(o.code,{children:\"com.apple.quarantine\"}),\" na pasta ou nos arquivos \",(0,e.jsx)(o.code,{children:\"CallHistory.storedata\"}),\" dentro dela. Quarentena \\xE9 o sinalizador que o macOS coloca em arquivos baixados; ele n\\xE3o tem nada que fazer em um banco de dados do sistema, e como ele chega ali n\\xE3o \\xE9 sabido \\u2014 uma restaura\\xE7\\xE3o de backup e uma migra\\xE7\\xE3o de outro Mac s\\xE3o as duas rotas plaus\\xEDveis.\"]}),`\n`,(0,e.jsx)(o.h3,{id:\"passo-3-remova-o\",children:\"Passo 3: remova-o\"}),`\n`,(0,e.jsx)(e.Fragment,{children:(0,e.jsx)(o.pre,{className:\"shiki shiki-themes github-light github-dark\",style:{\"--shiki-light\":\"#24292e\",\"--shiki-dark\":\"#e1e4e8\",\"--shiki-light-bg\":\"#fff\",\"--shiki-dark-bg\":\"#24292e\"},tabIndex:\"0\",icon:'<svg viewBox=\"0 0 24 24\"><path d=\"M 6,1 C 4.354992,1 3,2.354992 3,4 v 16 c 0,1.645008 1.354992,3 3,3 h 12 c 1.645008,0 3,-1.354992 3,-3 V 8 7 A 1.0001,1.0001 0 0 0 20.707031,6.2929687 l -5,-5 A 1.0001,1.0001 0 0 0 15,1 h -1 z m 0,2 h 7 v 3 c 0,1.645008 1.354992,3 3,3 h 3 v 11 c 0,0.564129 -0.435871,1 -1,1 H 6 C 5.4358712,21 5,20.564129 5,20 V 4 C 5,3.4358712 5.4358712,3 6,3 Z M 15,3.4140625 18.585937,7 H 16 C 15.435871,7 15,6.5641288 15,6 Z\" fill=\"currentColor\" /></svg>',children:(0,e.jsx)(o.code,{children:(0,e.jsx)(o.span,{className:\"line\",children:(0,e.jsx)(o.span,{children:'xattr -dr com.apple.quarantine \"$HOME/Library/Application Support/CallHistoryDB\"'})})})})}),`\n`,(0,e.jsxs)(o.p,{children:[(0,e.jsx)(o.code,{children:\"-d\"}),\" apaga o atributo, \",(0,e.jsx)(o.code,{children:\"-r\"}),\" percorre recursivamente a pasta.\"]}),`\n`,(0,e.jsx)(o.h3,{id:\"passo-4-reinicie-os-daemons\",children:\"Passo 4: reinicie os daemons\"}),`\n`,(0,e.jsx)(e.Fragment,{children:(0,e.jsx)(o.pre,{className:\"shiki shiki-themes github-light github-dark\",style:{\"--shiki-light\":\"#24292e\",\"--shiki-dark\":\"#e1e4e8\",\"--shiki-light-bg\":\"#fff\",\"--shiki-dark-bg\":\"#24292e\"},tabIndex:\"0\",icon:'<svg viewBox=\"0 0 24 24\"><path d=\"M 6,1 C 4.354992,1 3,2.354992 3,4 v 16 c 0,1.645008 1.354992,3 3,3 h 12 c 1.645008,0 3,-1.354992 3,-3 V 8 7 A 1.0001,1.0001 0 0 0 20.707031,6.2929687 l -5,-5 A 1.0001,1.0001 0 0 0 15,1 h -1 z m 0,2 h 7 v 3 c 0,1.645008 1.354992,3 3,3 h 3 v 11 c 0,0.564129 -0.435871,1 -1,1 H 6 C 5.4358712,21 5,20.564129 5,20 V 4 C 5,3.4358712 5.4358712,3 6,3 Z M 15,3.4140625 18.585937,7 H 16 C 15.435871,7 15,6.5641288 15,6 Z\" fill=\"currentColor\" /></svg>',children:(0,e.jsx)(o.code,{children:(0,e.jsx)(o.span,{className:\"line\",children:(0,e.jsx)(o.span,{children:\"sudo killall -9 peopled CallHistorySyncHelper\"})})})})}),`\n`,(0,e.jsx)(o.p,{children:\"Ambos ser\\xE3o relan\\xE7ados sob demanda. Observe o Monitor de Atividade por alguns minutos.\"}),`\n`,(0,e.jsx)(o.h3,{id:\"se-o-sinalizador-voltar\",children:\"Se o sinalizador voltar\"}),`\n`,(0,e.jsx)(o.p,{children:'Um usu\\xE1rio na thread relatou em 17 de julho que a corre\\xE7\\xE3o funcionou e o sinalizador de quarentena \"reapareceu\" durante a noite. Se isso acontecer com voc\\xEA, algo est\\xE1 recolocando a pasta em quarentena, e os candidatos s\\xE3o uma ferramenta de backup ou sincroniza\\xE7\\xE3o que a trata como dado novo. Verifique o que roda durante a noite. Alternativamente, e de forma mais direta, a abordagem de outro usu\\xE1rio foi excluir o banco de dados e deixar o macOS recri\\xE1-lo:'}),`\n`,(0,e.jsx)(e.Fragment,{children:(0,e.jsx)(o.pre,{className:\"shiki shiki-themes github-light github-dark\",style:{\"--shiki-light\":\"#24292e\",\"--shiki-dark\":\"#e1e4e8\",\"--shiki-light-bg\":\"#fff\",\"--shiki-dark-bg\":\"#24292e\"},tabIndex:\"0\",icon:'<svg viewBox=\"0 0 24 24\"><path d=\"M 6,1 C 4.354992,1 3,2.354992 3,4 v 16 c 0,1.645008 1.354992,3 3,3 h 12 c 1.645008,0 3,-1.354992 3,-3 V 8 7 A 1.0001,1.0001 0 0 0 20.707031,6.2929687 l -5,-5 A 1.0001,1.0001 0 0 0 15,1 h -1 z m 0,2 h 7 v 3 c 0,1.645008 1.354992,3 3,3 h 3 v 11 c 0,0.564129 -0.435871,1 -1,1 H 6 C 5.4358712,21 5,20.564129 5,20 V 4 C 5,3.4358712 5.4358712,3 6,3 Z M 15,3.4140625 18.585937,7 H 16 C 15.435871,7 15,6.5641288 15,6 Z\" fill=\"currentColor\" /></svg>',children:(0,e.jsx)(o.code,{children:(0,e.jsx)(o.span,{className:\"line\",children:(0,e.jsx)(o.span,{children:\"rm -rf ~/Library/Application\\\\ Support/CallHistoryDB\"})})})})}),`\n`,(0,e.jsx)(o.p,{children:\"Voc\\xEA perde a c\\xF3pia do hist\\xF3rico de chamadas do Mac. Ele \\xE9 repopulado a partir do iPhone via Continuidade. Isso \\xE9 uma medida mais dr\\xE1stica do que remover um atributo, e n\\xF3s tentar\\xEDamos o atributo primeiro.\"}),`\n`,(0,e.jsx)(o.h2,{id:\"corre\\xE7\\xE3o-3-alterne-os-contatos-do-icloud\",children:\"Corre\\xE7\\xE3o 3: alterne os Contatos do iCloud\"}),`\n`,(0,e.jsx)(o.p,{children:\"Ajustes do Sistema > [seu nome] > iCloud > Salvo no iCloud > Contatos, desative. Espere um minuto, observe a CPU. Se ela cair, reative e veja se permanece baixa.\"}),`\n`,(0,e.jsxs)(o.p,{children:[\"Isso funciona para um subconjunto de usu\\xE1rios e \\xE9 o conselho padr\\xE3o nas threads mais antigas da mesma fam\\xEDlia de problemas, remontando a anos atr\\xE1s. Tamb\\xE9m tem um modo de falha que um usu\\xE1rio encontrou em 11 de maio: o alternador simplesmente n\\xE3o desativava. Se isso acontecer, saia da conta do iCloud por completo (mantendo uma c\\xF3pia dos dados quando solicitado), reinicie, entre novamente. Note que o relator do V2EX com a variante do \",(0,e.jsx)(o.code,{children:\"accountsd\"}),\" tentou exatamente isso, e a CPU voltou imediatamente ap\\xF3s entrar na conta.\"]}),`\n`,(0,e.jsx)(o.p,{children:(0,e.jsx)(o.img,{alt:\"Removendo o widget de Contatos e limpando a quarentena do CallHistoryDB no macOS Tahoe\",src:\"/images/blog/peopled-contactsd-high-cpu-macos-tahoe-contacts-widget-callhistorydb-fix-2026/content-2.webp\",width:\"1024\",height:\"572\"})}),`\n`,(0,e.jsxs)(o.h2,{id:\"se-for-o-contactsd-e-voc\\xEA-tiver-uma-conta-exchange-ou-google\",children:[\"Se for o \",(0,e.jsx)(o.code,{children:\"contactsd\"}),\" e voc\\xEA tiver uma conta Exchange ou Google\"]}),`\n`,(0,e.jsx)(o.p,{children:\"Esse \\xE9 anterior ao Tahoe e tem um mecanismo mais claro.\"}),`\n`,(0,e.jsxs)(o.p,{children:[\"O \",(0,e.jsx)(o.code,{children:\"contactsd\"}),\" \\xE9 o daemon do framework Contacts: ele \\xE9 dono do banco de dados da agenda e o reconcilia com toda conta que sincroniza contatos. Ele tamb\\xE9m faz manuten\\xE7\\xE3o em um cronograma \\u2014 seu job do launchd registra uma tarefa di\\xE1ria \",(0,e.jsx)(o.code,{children:\"validate-cache\"}),\" que roda apenas na energia externa quando voc\\xEA est\\xE1 inativo, e uma atividade repetida \",(0,e.jsx)(o.code,{children:\"accounts.cleanup\"}),\". CPU breve e ocasional do \",(0,e.jsx)(o.code,{children:\"contactsd\"}),\" \\xE9 normal.\"]}),`\n`,(0,e.jsxs)(o.p,{children:[\"O que n\\xE3o \\xE9 normal \\xE9 um pico a cada minuto ou algo assim. Um desenvolvedor \",(0,e.jsx)(o.a,{href:\"https://developer.apple.com/forums/thread/809986\",children:\"documentou exatamente isso\"}),\" nos F\\xF3runs de Desenvolvedores da Apple em dezembro de 2025: em um M1 Max no Tahoe 26.1, uma conta Office 365 com Contatos ativado levou o \",(0,e.jsx)(o.code,{children:\"AddressBookManager\"}),\" a 81% e o \",(0,e.jsx)(o.code,{children:\"contactsd\"}),\" a 22\\u201359% em um padr\\xE3o repetido a cada 60\\u201390 segundos \\u2014 mesmo com a pasta de contatos do Exchange esvaziada no servidor, e reproduz\\xEDvel em uma instala\\xE7\\xE3o limpa. A mesma conta e os mesmos dados n\\xE3o fizeram isso em um Mac com M4 nem no iOS. Ningu\\xE9m da Apple respondeu.\"]}),`\n`,(0,e.jsxs)(o.p,{children:[\"A solu\\xE7\\xE3o dele \\xE9 a que funciona: remover a conta Exchange em Ajustes do Sistema > Contas de Internet, e, se precisar dela, usar o Outlook, que n\\xE3o passa pelo framework Contacts. Um relato de fevereiro no f\\xF3rum da comunidade com o \",(0,e.jsx)(o.code,{children:\"contactsd\"}),\" em um MacBook Pro 2024 no 26.3 recebeu um conselho equivalente \\u2014 parar de sincronizar contatos do Exchange e do Google e testar \\u2014 e se voc\\xEA tiver tanto o iCloud quanto uma conta Google sincronizando contatos, tente remover o Google primeiro.\"]}),`\n`,(0,e.jsxs)(o.h2,{id:\"a-variante-do-accountsd\",children:[\"A variante do \",(0,e.jsx)(o.code,{children:\"accountsd\"})]}),`\n`,(0,e.jsxs)(o.p,{children:[\"Os relatos mais graves \\u2014 \",(0,e.jsx)(o.code,{children:\"accountsd\"}),\" em 180% com \",(0,e.jsx)(o.code,{children:\"contactsd\"}),\" e \",(0,e.jsx)(o.code,{children:\"itunescloudd\"}),\" a reboque, em um MacBook Air M5 no 26.5.2, \",(0,e.jsx)(o.a,{href:\"https://www.v2ex.com/t/1226043\",children:\"descrito no V2EX em julho\"}),\" \\u2014 n\\xE3o t\\xEAm uma corre\\xE7\\xE3o confirmada. O relator observou que o problema come\\xE7ava no mesmo hor\\xE1rio toda manh\\xE3, o que aponta para uma tarefa agendada em vez de um evento de widget. Sair e entrar novamente na conta n\\xE3o ajudou.\"]}),`\n`,(0,e.jsxs)(o.p,{children:[\"O que podemos acrescentar: o \",(0,e.jsx)(o.code,{children:\"accountsd\"}),\" \\xE9 o daemon do framework Accounts e \\xE9 invocado sempre que algo precisa de uma credencial para uma conta conectada, e o \",(0,e.jsx)(o.code,{children:\"itunescloudd\"}),\" \\xE9 o daemon da biblioteca iTunes Cloud (Apple Music / Store). Os tr\\xEAs ao mesmo tempo significam que algo est\\xE1 pedindo credenciais de conta repetidamente e falhando. Se voc\\xEA tem essa variante, as corre\\xE7\\xF5es acima ainda valem a pena tentar em ordem, e se nenhuma delas funcionar, vale verificar se uma \\xFAnica conta \\u2014 um login antigo do Google ou Exchange, uma senha espec\\xEDfica de aplicativo expirada \\u2014 est\\xE1 falhando na autentica\\xE7\\xE3o em Ajustes do Sistema > Contas de Internet. Remova qualquer coisa que mostre um distintivo de aviso.\"]}),`\n`,(0,e.jsx)(o.h2,{id:\"por-que-o-tahoe-e-por-que-um-widget\",children:\"Por que o Tahoe, e por que um widget\"}),`\n`,(0,e.jsx)(o.p,{children:\"Widgets existem no Mac h\\xE1 anos, ent\\xE3o \\xE9 justo perguntar por que isso come\\xE7ou com o 26.4. Duas coisas mudaram juntas.\"}),`\n`,(0,e.jsx)(o.p,{children:'A primeira \\xE9 onde os widgets vivem. O Tahoe colocou widgets na Central de Controle ao lado da \\xE1rea de trabalho e da Central de Notifica\\xE7\\xF5es, e um widget de Contatos na Central de Controle \\xE9 atualizado em uma cad\\xEAncia diferente de um que fica na \\xE1rea de trabalho \\u2014 os pr\\xF3prios modelos de log do daemon distinguem uma passagem di\\xE1ria de \"sugerir widgets\" (\"Last widget suggestion date is older 24 hours\") de atualiza\\xE7\\xF5es disparadas por evento (\"Event triggered widget refresh\"). Mais superf\\xEDcies, mais solicita\\xE7\\xF5es de atualiza\\xE7\\xE3o, mais chances de uma que falha ser tentada de novo.'}),`\n`,(0,e.jsx)(o.p,{children:\"A segunda \\xE9 que o tratamento de erros do daemon parece tentar de novo em vez de recuar. Essa \\xE9 a nossa infer\\xEAncia a partir do comportamento, n\\xE3o algo que possamos ler no bin\\xE1rio, e \\xE9 o bug real: uma leitura negada deveria ser registrada uma vez e a atualiza\\xE7\\xE3o abandonada at\\xE9 o pr\\xF3ximo evento genu\\xEDno. Em vez disso, ela \\xE9 tentada de novo, e os eventos continuam chegando.\"}),`\n`,(0,e.jsx)(o.p,{children:\"Nenhuma dessas duas coisas \\xE9 algo que voc\\xEA pode mudar. O que voc\\xEA pode mudar \\xE9 se o widget existe e se a leitura \\xE9 negada, que \\xE9 o que as tr\\xEAs corre\\xE7\\xF5es fazem.\"}),`\n`,(0,e.jsx)(o.h2,{id:\"depois-de-corrigido\",children:\"Depois de corrigido\"}),`\n`,(0,e.jsx)(o.p,{children:\"Algumas coisas mant\\xEAm o problema resolvido.\"}),`\n`,(0,e.jsxs)(o.p,{children:[(0,e.jsx)(o.strong,{children:\"Deixe o Acesso Total ao Disco do Terminal como est\\xE1\"}),\" se voc\\xEA usou a Corre\\xE7\\xE3o 2, ou revogue-o deliberadamente \\u2014 qualquer uma das op\\xE7\\xF5es serve, mas saiba qual delas voc\\xEA escolheu, porque Terminal com Acesso Total ao Disco \\xE9 uma concess\\xE3o ampla.\"]}),`\n`,(0,e.jsxs)(o.p,{children:[(0,e.jsx)(o.strong,{children:\"Evite a galeria de widgets\"}),\" por um tempo. O relato de 31 de julho na thread \\xE9 espec\\xEDfico: abri-la \\u2014 sem adicionar nada \\u2014 reiniciou o loop. Se voc\\xEA quiser adicionar outros widgets, fa\\xE7a isso e depois confira o Monitor de Atividade em seguida.\"]}),`\n`,(0,e.jsxs)(o.p,{children:[(0,e.jsx)(o.strong,{children:\"Depois da pr\\xF3xima atualiza\\xE7\\xE3o do macOS, verifique de novo.\"}),\" Atualiza\\xE7\\xF5es pontuais j\\xE1 readicionaram itens padr\\xE3o da Central de Controle para alguns usu\\xE1rios, e um widget de Contatos silenciosamente voltando \\xE9 o motivo mais prov\\xE1vel de o problema retornar.\"]}),`\n`,(0,e.jsxs)(o.p,{children:[(0,e.jsx)(o.strong,{children:\"Registre o relato.\"}),\" Feedback Assistant, categoria macOS, anexe um sysdiagnose feito enquanto a CPU est\\xE1 alta (\",(0,e.jsx)(o.code,{children:\"sudo sysdiagnose\"}),\" pelo Terminal, ou Shift-Control-Option-Command-Ponto), e cole a linha de nega\\xE7\\xE3o do sandbox. Cinco meses de threads no f\\xF3rum n\\xE3o moveram isso; algumas centenas de relatos de Feedback com a mesma linha de log talvez consigam.\"]}),`\n`,(0,e.jsx)(o.h2,{id:\"j\\xE1-est\\xE1-corrigido\",children:\"J\\xE1 est\\xE1 corrigido?\"}),`\n`,(0,e.jsxs)(o.p,{children:[\"N\\xE3o, pelo que se pode dizer. Verificamos as \",(0,e.jsx)(o.a,{href:\"https://support.apple.com/en-us/122868\",children:\"notas de atualiza\\xE7\\xE3o da Apple para o Tahoe\"}),': o 26.4.1 \"traz corre\\xE7\\xF5es de bugs,\" o 26.5 \"inclui melhorias, corre\\xE7\\xF5es de bugs e atualiza\\xE7\\xF5es de seguran\\xE7a,\" o 26.6 otimiza o \\xEDndice do Spotlight, e o 26.6.1 e o 26.6.2 s\\xE3o lan\\xE7amentos de seguran\\xE7a. Nenhum menciona Contatos, widgets ou CPU. Na thread da comunidade, os relatos continuam no 26.5 (\"O problema ainda existe no Tahoe 26.5. A Apple precisa corrigir isso o quanto antes,\" em 15 de maio) e seguem at\\xE9 julho. N\\xE3o vimos relato algum, nem a favor nem contra, para o 26.6.2, lan\\xE7ado em 17 de agosto.']}),`\n`,(0,e.jsxs)(o.p,{children:[\"Se voc\\xEA est\\xE1 na beta do macOS 27 e viu ou n\\xE3o viu esse problema, o \",(0,e.jsx)(o.a,{href:\"/blog/should-you-install-macos-27-golden-gate-developer-beta-known-issues-2026\",children:\"resumo de problemas conhecidos da beta\"}),\" \\xE9 onde acompanhamos isso.\"]}),`\n`,(0,e.jsx)(o.h2,{id:\"o-que-n\\xE3o-vale-a-pena-tentar\",children:\"O que n\\xE3o vale a pena tentar\"}),`\n`,(0,e.jsxs)(o.p,{children:[(0,e.jsx)(o.strong,{children:\"Redefinir a NVRAM ou o SMC.\"}),\" Nenhum dos dois tem qualquer rela\\xE7\\xE3o com as permiss\\xF5es de arquivo de um daemon em espa\\xE7o de usu\\xE1rio. Pule.\"]}),`\n`,(0,e.jsxs)(o.p,{children:[(0,e.jsxs)(o.strong,{children:[(0,e.jsx)(o.code,{children:\"tccutil reset All\"}),\".\"]}),\" Um usu\\xE1rio tentou; n\\xE3o ajudou, e isso remove toda permiss\\xE3o de privacidade de todo aplicativo no Mac, o que depois te faz gastar uma tarde reconcedendo tudo. N\\xE3o h\\xE1 motivo para achar que o TCC \\xE9 a camada respons\\xE1vel \\u2014 a nega\\xE7\\xE3o nos logs \\xE9 do sandbox, n\\xE3o do TCC.\"]}),`\n`,(0,e.jsxs)(o.p,{children:[(0,e.jsx)(o.strong,{children:\"Modo de Seguran\\xE7a.\"}),\" Reiniciar em Modo de Seguran\\xE7a e voltar limpa alguns caches e deu al\\xEDvio tempor\\xE1rio para alguns usu\\xE1rios. \\xC9 um rein\\xEDcio com passos extras e n\\xE3o resolve a causa.\"]}),`\n`,(0,e.jsxs)(o.p,{children:[(0,e.jsxs)(o.strong,{children:[\"Desativar o \",(0,e.jsx)(o.code,{children:\"peopled\"}),\" com \",(0,e.jsx)(o.code,{children:\"launchctl\"}),\".\"]}),\" Voc\\xEA pode usar \",(0,e.jsx)(o.code,{children:\"launchctl disable\"}),' no agente, e ele vai parar de consumir CPU porque vai parar de rodar. Isso tamb\\xE9m vai interromper o widget de Contatos, as sugest\\xF5es de pessoas, a infraestrutura de \"pedir para comprar\" do Tempo de Uso e o que mais depender dele, e em um Mac com prote\\xE7\\xE3o de integridade do sistema, a mudan\\xE7a pode n\\xE3o sobreviver a uma atualiza\\xE7\\xE3o. N\\xE3o recomendado, exceto como diagn\\xF3stico de \\xFAltimo recurso.']}),`\n`,(0,e.jsx)(o.h2,{id:\"solu\\xE7\\xE3o-de-problemas-comuns\",children:\"Solu\\xE7\\xE3o de problemas comuns\"}),`\n`,(0,e.jsxs)(o.h3,{id:\"o-monitor-de-atividade-mostra-vinte-c\\xF3pias-de-contactsd\",children:[\"O Monitor de Atividade mostra vinte c\\xF3pias de \",(0,e.jsx)(o.code,{children:\"contactsd\"})]}),`\n`,(0,e.jsxs)(o.p,{children:[\"Vimos isso n\\xF3s mesmos enquanto escrev\\xEDamos: uma explos\\xE3o de vinte processos \",(0,e.jsx)(o.code,{children:\"contactsd\"}),\" com PIDs consecutivos, todos filhos do launchd, todos a 0% de CPU, desaparecendo em menos de um minuto. Isso \\xE9 o launchd criando inst\\xE2ncias por cliente sob demanda, e n\\xE3o \\xE9 o bug. O bug \\xE9 um \\xFAnico processo em CPU alta que permanece assim.\"]}),`\n`,(0,e.jsxs)(o.h3,{id:\"o-widget-de-contatos-sumiu-mas-o-peopled-ainda-est\\xE1-em-80\",children:[\"O widget de Contatos sumiu, mas o \",(0,e.jsx)(o.code,{children:\"peopled\"}),\" ainda est\\xE1 em 80%\"]}),`\n`,(0,e.jsx)(o.p,{children:\"Verifique os tr\\xEAs locais \\u2014 \\xE1rea de trabalho, Central de Notifica\\xE7\\xF5es, Central de Controle \\u2014 e depois passe para a Corre\\xE7\\xE3o 2. Se voc\\xEA nunca teve um widget de Contatos, v\\xE1 direto para a Corre\\xE7\\xE3o 2.\"}),`\n`,(0,e.jsxs)(o.h3,{id:\"xattr-diz-no-such-xattr-comapplequarantine\",children:[(0,e.jsx)(o.code,{children:\"xattr\"}),' diz \"No such xattr: com.apple.quarantine\"']}),`\n`,(0,e.jsx)(o.p,{children:\"A pasta n\\xE3o est\\xE1 em quarentena, ent\\xE3o esse n\\xE3o \\xE9 o seu gatilho. Tente a Corre\\xE7\\xE3o 3, e verifique se voc\\xEA tem uma conta Exchange ou Google sincronizando contatos.\"}),`\n`,(0,e.jsxs)(o.h3,{id:\"ls-no-callhistorydb-diz-operation-not-permitted-mesmo-com-sudo\",children:[(0,e.jsx)(o.code,{children:\"ls\"}),' no CallHistoryDB diz \"Operation not permitted\" mesmo com sudo']}),`\n`,(0,e.jsxs)(o.p,{children:[(0,e.jsx)(o.code,{children:\"sudo\"}),\" n\\xE3o contorna o TCC. O pr\\xF3prio Terminal precisa de Acesso Total ao Disco, concedido nos Ajustes do Sistema, e depois relan\\xE7ado.\"]}),`\n`,(0,e.jsx)(o.h3,{id:\"voltou-depois-de-uma-atualiza\\xE7\\xE3o-do-macos\",children:\"Voltou depois de uma atualiza\\xE7\\xE3o do macOS\"}),`\n`,(0,e.jsx)(o.p,{children:\"Atualiza\\xE7\\xF5es podem readicionar o widget ao layout padr\\xE3o da Central de Controle. Verifique os tr\\xEAs locais novamente.\"}),`\n`,(0,e.jsx)(o.h2,{id:\"perguntas-frequentes\",children:\"Perguntas frequentes\"}),`\n`,(0,e.jsxs)(o.h3,{id:\"o-peopled-\\xE9-malware\",children:[\"O \",(0,e.jsx)(o.code,{children:\"peopled\"}),\" \\xE9 malware?\"]}),`\n`,(0,e.jsxs)(o.p,{children:[\"N\\xE3o. \\xC9 um daemon assinado pela Apple em \",(0,e.jsx)(o.code,{children:\"/System/Library/PrivateFrameworks/People.framework/peopled\"}),\", no volume de sistema selado. Um processo com esse nome rodando de qualquer outro lugar valeria a pena investigar; este \\xE9 da Apple.\"]}),`\n`,(0,e.jsx)(o.h3,{id:\"posso-simplesmente-encerr\\xE1-lo\",children:\"Posso simplesmente encerr\\xE1-lo?\"}),`\n`,(0,e.jsxs)(o.p,{children:[(0,e.jsx)(o.code,{children:\"sudo killall peopled\"}),\" o interrompe at\\xE9 o pr\\xF3ximo evento despert\\xE1-lo, o que em um Mac movimentado leva segundos. \\xC9 \\xFAtil como diagn\\xF3stico \\u2014 se a CPU permanece baixa depois de encerrado, o gatilho sumiu \\u2014 n\\xE3o como corre\\xE7\\xE3o.\"]}),`\n`,(0,e.jsx)(o.h3,{id:\"remover-o-widget-faz-perder-alguma-coisa\",children:\"Remover o widget faz perder alguma coisa?\"}),`\n`,(0,e.jsxs)(o.p,{children:[\"S\\xF3 o widget. Contatos, hist\\xF3rico de chamadas e sugest\\xF5es no Spotlight e no Mensagens continuam funcionando normalmente; o \",(0,e.jsx)(o.code,{children:\"peopled\"}),\" ainda roda quando necess\\xE1rio. Ele s\\xF3 deixa de ser solicitado a atualizar algo que n\\xE3o consegue atualizar.\"]}),`\n`,(0,e.jsx)(o.h3,{id:\"por-que-a-pasta-callhistorydb-precisa-de-acesso-total-ao-disco-para-ser-lida\",children:\"Por que a pasta CallHistoryDB precisa de Acesso Total ao Disco para ser lida?\"}),`\n`,(0,e.jsx)(o.p,{children:\"Ela cont\\xE9m seu registro de chamadas, que o macOS trata como dado pessoal sens\\xEDvel e protege com o TCC, assim como Mensagens e Mail. Essa prote\\xE7\\xE3o \\xE9 o motivo pelo qual o Terminal precisa da concess\\xE3o, e tamb\\xE9m \\xE9 o motivo pelo qual um sinalizador de quarentena inesperado nela \\xE9 t\\xE3o disruptivo: o daemon tem um \\xFAnico caminho estreito e isolado at\\xE9 os dados, e qualquer coisa que bloqueie esse caminho o bloqueia por completo.\"}),`\n`,(0,e.jsx)(o.h3,{id:\"o-macos-27-vai-corrigir-isso\",children:\"O macOS 27 vai corrigir isso?\"}),`\n`,(0,e.jsx)(o.p,{children:\"Desconhecido. A Apple n\\xE3o reconheceu o problema, e n\\xE3o h\\xE1 nada nas notas de vers\\xE3o da beta sobre isso. Se o mecanismo for o que as evid\\xEAncias sugerem, a corre\\xE7\\xE3o \\xE9 pequena \\u2014 falhar uma vez e parar de tentar de novo \\u2014 e ela poderia chegar em qualquer atualiza\\xE7\\xE3o pontual sem ser mencionada.\"}),`\n`,(0,e.jsx)(o.h2,{id:\"conclus\\xE3o\",children:\"Conclus\\xE3o\"}),`\n`,(0,e.jsx)(o.p,{children:\"Um Mac que roda quente sem fazer nada quase sempre tem um processo em loop, e o loop quase sempre tem uma causa banal. Neste caso, \\xE9 um daemon cujo trabalho \\xE9 manter um widget atualizado, que \\xE9 despertado por toda chamada e mensagem, e que n\\xE3o consegue ler o \\xFAnico banco de dados de que precisa. Remova o widget e as solicita\\xE7\\xF5es param; corrija as permiss\\xF5es da pasta e as leituras funcionam. Qualquer uma das duas quebra o loop.\"}),`\n`,(0,e.jsxs)(o.p,{children:[\"Se voc\\xEA tem o \",(0,e.jsx)(o.code,{children:\"peopled\"}),\" no topo do Monitor de Atividade, percorra as tr\\xEAs corre\\xE7\\xF5es em ordem e reinicie entre elas. Se for o \",(0,e.jsx)(o.code,{children:\"contactsd\"}),\" com uma conta Exchange ou Google, remova a conta. E se forem os tr\\xEAs com o \",(0,e.jsx)(o.code,{children:\"accountsd\"}),\" na frente, tente tudo acima, remova qualquer conta que mostre um aviso e \\u2014 porque a Apple est\\xE1 em sil\\xEAncio sobre isso h\\xE1 cinco meses \\u2014 registre o relato de Feedback, com a linha de log do sandbox, que talvez finalmente resolva isso de vez.\"]}),`\n`,(0,e.jsx)(o.p,{children:(0,e.jsxs)(o.em,{children:[\"Leitura relacionada: \",(0,e.jsx)(o.a,{href:\"/blog/mac-hot-battery-drain-after-macos-26-6-spotlight-siri-index-rebuild-fix-2026\",children:\"Mac quente e com a bateria descarregando ap\\xF3s o macOS 26.6\"}),\", \",(0,e.jsx)(o.a,{href:\"/blog/windowserver-high-cpu-macos-tahoe-26-5-liquid-glass-multi-display-fix-2026\",children:\"CPU do WindowServer no 26.5 com o Liquid Glass\"}),\", \",(0,e.jsx)(o.a,{href:\"/blog/contacts-app-not-working-macos-tahoe-ghost-numbers-crashes-wont-save-fix-2026\",children:\"o app Contatos n\\xE3o funcionando no Tahoe\"}),\", \",(0,e.jsx)(o.a,{href:\"/blog/mac-activity-monitor-complete-guide-2025\",children:\"Monitor de Atividade do zero\"}),\", e \",(0,e.jsx)(o.a,{href:\"/blog/macos-tahoe-widgets-customization-complete-guide-2025\",children:\"personalizando widgets no Tahoe\"}),\".\"]})})]})}function m(a={}){let{wrapper:o}=a.components||{};return o?(0,e.jsx)(o,{...a,children:(0,e.jsx)(l,{...a})}):l(a)}return f(k);})();\n;return Component;","toc":[{"title":"Principais conclusões","url":"#principais-conclusões","depth":2},{"title":"Qual processo, exatamente","url":"#qual-processo-exatamente","depth":2},{"title":"O que o peopled realmente faz","url":"#o-que-o-peopled-realmente-faz","depth":2},{"title":"Por que ele entra em loop","url":"#por-que-ele-entra-em-loop","depth":2},{"title":"Confirme antes de mudar qualquer coisa","url":"#confirme-antes-de-mudar-qualquer-coisa","depth":2},{"title":"Correção 1: remova o widget de Contatos","url":"#correção-1-remova-o-widget-de-contatos","depth":2},{"title":"Área de trabalho","url":"#área-de-trabalho","depth":3},{"title":"Central de Notificações","url":"#central-de-notificações","depth":3},{"title":"Central de Controle","url":"#central-de-controle","depth":3},{"title":"Correção 2: limpe o sinalizador de quarentena no CallHistoryDB","url":"#correção-2-limpe-o-sinalizador-de-quarentena-no-callhistorydb","depth":2},{"title":"Passo 1: conceda ao Terminal Acesso Total ao Disco","url":"#passo-1-conceda-ao-terminal-acesso-total-ao-disco","depth":3},{"title":"Passo 2: examine a pasta","url":"#passo-2-examine-a-pasta","depth":3},{"title":"Passo 3: remova-o","url":"#passo-3-remova-o","depth":3},{"title":"Passo 4: reinicie os daemons","url":"#passo-4-reinicie-os-daemons","depth":3},{"title":"Se o sinalizador voltar","url":"#se-o-sinalizador-voltar","depth":3},{"title":"Correção 3: alterne os Contatos do iCloud","url":"#correção-3-alterne-os-contatos-do-icloud","depth":2},{"title":"Se for o contactsd e você tiver uma conta Exchange ou Google","url":"#se-for-o-contactsd-e-você-tiver-uma-conta-exchange-ou-google","depth":2},{"title":"A variante do accountsd","url":"#a-variante-do-accountsd","depth":2},{"title":"Por que o Tahoe, e por que um widget","url":"#por-que-o-tahoe-e-por-que-um-widget","depth":2},{"title":"Depois de corrigido","url":"#depois-de-corrigido","depth":2},{"title":"Já está corrigido?","url":"#já-está-corrigido","depth":2},{"title":"O que não vale a pena tentar","url":"#o-que-não-vale-a-pena-tentar","depth":2},{"title":"Solução de problemas comuns","url":"#solução-de-problemas-comuns","depth":2},{"title":"O Monitor de Atividade mostra vinte cópias de contactsd","url":"#o-monitor-de-atividade-mostra-vinte-cópias-de-contactsd","depth":3},{"title":"O widget de Contatos sumiu, mas o peopled ainda está em 80%","url":"#o-widget-de-contatos-sumiu-mas-o-peopled-ainda-está-em-80","depth":3},{"title":"xattr diz \"No such xattr: com.apple.quarantine\"","url":"#xattr-diz-no-such-xattr-comapplequarantine","depth":3},{"title":"ls no CallHistoryDB diz \"Operation not permitted\" mesmo com sudo","url":"#ls-no-callhistorydb-diz-operation-not-permitted-mesmo-com-sudo","depth":3},{"title":"Voltou depois de uma atualização do macOS","url":"#voltou-depois-de-uma-atualização-do-macos","depth":3},{"title":"Perguntas frequentes","url":"#perguntas-frequentes","depth":2},{"title":"O peopled é malware?","url":"#o-peopled-é-malware","depth":3},{"title":"Posso simplesmente encerrá-lo?","url":"#posso-simplesmente-encerrá-lo","depth":3},{"title":"Remover o widget faz perder alguma coisa?","url":"#remover-o-widget-faz-perder-alguma-coisa","depth":3},{"title":"Por que a pasta CallHistoryDB precisa de Acesso Total ao Disco para ser lida?","url":"#por-que-a-pasta-callhistorydb-precisa-de-acesso-total-ao-disco-para-ser-lida","depth":3},{"title":"O macOS 27 vai corrigir isso?","url":"#o-macos-27-vai-corrigir-isso","depth":3},{"title":"Conclusão","url":"#conclusão","depth":2}],"estimatedTime":22}