{"code":"var Component=(()=>{var h=Object.create;var s=Object.defineProperty;var p=Object.getOwnPropertyDescriptor;var m=Object.getOwnPropertyNames;var g=Object.getPrototypeOf,b=Object.prototype.hasOwnProperty;var v=(n,a)=>()=>(a||n((a={exports:{}}).exports,a),a.exports),y=(n,a)=>{for(var i in a)s(n,i,{get:a[i],enumerable:!0})},l=(n,a,i,r)=>{if(a&&typeof a==\"object\"||typeof a==\"function\")for(let o of m(a))!b.call(n,o)&&o!==i&&s(n,o,{get:()=>a[o],enumerable:!(r=p(a,o))||r.enumerable});return n};var C=(n,a,i)=>(i=n!=null?h(g(n)):{},l(a||!n||!n.__esModule?s(i,\"default\",{value:n,enumerable:!0}):i,n)),f=n=>l(s({},\"__esModule\",{value:!0}),n);var c=v((w,d)=>{d.exports=_jsx_runtime});var q={};y(q,{default:()=>u});var e=C(c());function t(n){let a={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\",...n.components};return(0,e.jsxs)(e.Fragment,{children:[(0,e.jsxs)(a.p,{children:[\"Tu Mac est\\xE1 caliente sin hacer nada. La estimaci\\xF3n de bater\\xEDa se ha reducido a la mitad. Abres Monitor de Actividad, ordenas por CPU, y arriba del todo hay un proceso que nunca hab\\xEDas visto \\u2014 \",(0,e.jsx)(a.code,{children:\"peopled\"}),\" \\u2014 instalado en el 70 u 80 por ciento y sin moverse de ah\\xED. O es \",(0,e.jsx)(a.code,{children:\"contactsd\"}),\". O, en las m\\xE1quinas m\\xE1s afectadas, \",(0,e.jsx)(a.code,{children:\"accountsd\"}),\" al 180% con \",(0,e.jsx)(a.code,{children:\"contactsd\"}),\" e \",(0,e.jsx)(a.code,{children:\"itunescloudd\"}),\" detr\\xE1s. Forzar la salida no sirve de nada, porque no puedes forzar su salida. Reiniciar ayuda durante una hora.\"]}),`\n`,(0,e.jsx)(a.p,{children:\"Esto le viene pasando a los usuarios de Mac desde macOS Tahoe 26.4 en marzo, sigue pasando en 26.5 y 26.6, Apple no lo ha reconocido, y la soluci\\xF3n m\\xE1s fiable no aparece en ninguno de los art\\xEDculos de \\xABreinicia tu Mac / restablece la NVRAM\\xBB que posicionan para esta b\\xFAsqueda. Es eliminar un widget.\"}),`\n`,(0,e.jsxs)(a.p,{children:[\"Esta gu\\xEDa explica qu\\xE9 es \",(0,e.jsx)(a.code,{children:\"peopled\"}),\" (lo hemos mirado por dentro), por qu\\xE9 un widget lo mete en un bucle, por qu\\xE9 un indicador de cuarentena en una carpeta cuya existencia desconoc\\xEDas es el otro disparador, y el orden exacto en el que probar las soluciones.\"]}),`\n`,(0,e.jsx)(a.p,{children:(0,e.jsx)(a.img,{alt:\"peopled consumiendo CPU en macOS Tahoe en Monitor de Actividad\",src:\"/images/blog/peopled-contactsd-high-cpu-macos-tahoe-contacts-widget-callhistorydb-fix-2026/hero.webp\",width:\"1024\",height:\"541\"})}),`\n`,(0,e.jsx)(a.h2,{id:\"puntos-clave\",children:\"Puntos clave\"}),`\n`,(0,e.jsxs)(a.ul,{children:[`\n`,(0,e.jsxs)(a.li,{children:[(0,e.jsxs)(a.strong,{children:[(0,e.jsx)(a.code,{children:\"peopled\"}),\" es el daemon detr\\xE1s del widget de Contactos.\"]}),\" Su propio binario contiene clases llamadas \",(0,e.jsx)(a.code,{children:\"WidgetSuggester\"}),\", \",(0,e.jsx)(a.code,{children:\"WidgetConfigurationReader\"}),\" y \",(0,e.jsx)(a.code,{children:\"CallHistoryFetcher\"}),\", y su perfil de sandbox le concede acceso a tu base de datos de historial de llamadas. Esa combinaci\\xF3n es el bucle.\"]}),`\n`,(0,e.jsxs)(a.li,{children:[(0,e.jsx)(a.strong,{children:\"Soluci\\xF3n 1: elimina todos los widgets de Contactos\"}),\" \\u2014 escritorio, Centro de Notificaciones y Centro de Control \\u2014 y luego reinicia. Esto resolvi\\xF3 la mayor\\xEDa de los m\\xE1s de 54 casos confirmados en el foro comunitario de Apple.\"]}),`\n`,(0,e.jsxs)(a.li,{children:[(0,e.jsxs)(a.strong,{children:[\"Soluci\\xF3n 2: elimina el indicador de cuarentena en \",(0,e.jsx)(a.code,{children:\"~/Library/Application Support/CallHistoryDB\"})]}),\" y mata \",(0,e.jsx)(a.code,{children:\"peopled\"}),\". Esta es la soluci\\xF3n cuando no hay ning\\xFAn widget que eliminar; requiere Acceso Total al Disco para Terminal.\"]}),`\n`,(0,e.jsxs)(a.li,{children:[(0,e.jsx)(a.strong,{children:\"Soluci\\xF3n 3: desactiva Contactos de iCloud y vuelve a activarlo.\"}),\" Funciona para algunos, no para todos, y te cuesta la sincronizaci\\xF3n mientras est\\xE1 desactivado.\"]}),`\n`,(0,e.jsxs)(a.li,{children:[(0,e.jsxs)(a.strong,{children:[\"Los picos de \",(0,e.jsx)(a.code,{children:\"contactsd\"}),\" con una cuenta de Exchange o Google son un bug diferente y m\\xE1s antiguo\"]}),\" con el mismo s\\xEDntoma y una soluci\\xF3n distinta \\u2014 eliminar la cuenta o usar un cliente de terceros.\"]}),`\n`,(0,e.jsxs)(a.li,{children:[(0,e.jsx)(a.strong,{children:\"Apple no ha documentado ninguna soluci\\xF3n.\"}),\" Nada en las notas de la versi\\xF3n 26.4.1, 26.5, 26.6 o 26.6.x lo menciona, y los reportes en 26.5 y posteriores contin\\xFAan.\"]}),`\n`]}),`\n`,(0,e.jsx)(a.h2,{id:\"qu\\xE9-proceso-exactamente\",children:\"Qu\\xE9 proceso, exactamente\"}),`\n`,(0,e.jsx)(a.p,{children:\"Tres daemons aparecen en estos reportes y no son intercambiables. Ordena Monitor de Actividad por % CPU y anota cu\\xE1l tienes.\"}),`\n`,(0,e.jsxs)(a.table,{children:[(0,e.jsx)(a.thead,{children:(0,e.jsxs)(a.tr,{children:[(0,e.jsx)(a.th,{children:\"Proceso\"}),(0,e.jsx)(a.th,{children:\"A qu\\xE9 pertenece\"}),(0,e.jsx)(a.th,{children:\"Reporte t\\xEDpico\"}),(0,e.jsx)(a.th,{children:\"Causa m\\xE1s probable\"})]})}),(0,e.jsxs)(a.tbody,{children:[(0,e.jsxs)(a.tr,{children:[(0,e.jsx)(a.td,{children:(0,e.jsx)(a.code,{children:\"peopled\"})}),(0,e.jsx)(a.td,{children:\"People framework \\u2014 sugerencias de widgets, Family, Screen Time, estado\"}),(0,e.jsx)(a.td,{children:\"70\\u201380% sostenido desde 26.4\"}),(0,e.jsx)(a.td,{children:\"Widget de Contactos + CallHistoryDB ilegible\"})]}),(0,e.jsxs)(a.tr,{children:[(0,e.jsx)(a.td,{children:(0,e.jsx)(a.code,{children:\"contactsd\"})}),(0,e.jsx)(a.td,{children:\"Contacts framework \\u2014 la base de datos de la agenda y su sincronizaci\\xF3n\"}),(0,e.jsx)(a.td,{children:\"Picos al 80% cada 60\\u201390 s, o sostenido\"}),(0,e.jsx)(a.td,{children:\"Bucle de sincronizaci\\xF3n de contactos de iCloud/Exchange/Google\"})]}),(0,e.jsxs)(a.tr,{children:[(0,e.jsx)(a.td,{children:(0,e.jsx)(a.code,{children:\"accountsd\"})}),(0,e.jsx)(a.td,{children:\"Accounts framework \\u2014 cada cuenta con sesi\\xF3n iniciada\"}),(0,e.jsxs)(a.td,{children:[\"180% junto a \",(0,e.jsx)(a.code,{children:\"contactsd\"}),\" e \",(0,e.jsx)(a.code,{children:\"itunescloudd\"})]}),(0,e.jsx)(a.td,{children:\"Bucle de autenticaci\\xF3n de cuenta; la soluci\\xF3n de cerrar sesi\\xF3n suele fallar\"})]})]})]}),`\n`,(0,e.jsxs)(a.p,{children:[\"Si es \",(0,e.jsx)(a.code,{children:\"peopled\"}),\", empieza por la secci\\xF3n del widget. Si es solo \",(0,e.jsx)(a.code,{children:\"contactsd\"}),\", salta a la secci\\xF3n de sincronizaci\\xF3n de cuentas. Si son los tres con \",(0,e.jsx)(a.code,{children:\"accountsd\"}),\" a la cabeza, est\\xE1s en la variante menos comprendida, y la secci\\xF3n sobre ella es honesta acerca de lo poco que se sabe.\"]}),`\n`,(0,e.jsxs)(a.h2,{id:\"qu\\xE9-hace-realmente-peopled\",children:[\"Qu\\xE9 hace realmente \",(0,e.jsx)(a.code,{children:\"peopled\"})]}),`\n`,(0,e.jsx)(a.p,{children:\"El nombre sugiere contactos, y las gu\\xEDas que lo mencionan siquiera lo describen como que \\xABgestiona los datos de contactos\\xBB. Eso es aproximadamente correcto y espec\\xEDficamente incorrecto, y la diferencia es la raz\\xF3n por la que la soluci\\xF3n es un widget en lugar de una reparaci\\xF3n de la agenda.\"}),`\n`,(0,e.jsxs)(a.p,{children:[\"Miramos el daemon en un Mac con 26.5.2. Vive en \",(0,e.jsx)(a.code,{children:\"/System/Library/PrivateFrameworks/People.framework/peopled\"}),\", y su trabajo de launchd (\",(0,e.jsx)(a.code,{children:\"/System/Library/LaunchAgents/com.apple.peopled.plist\"}),\") te dice qu\\xE9 lo despierta. No se carga al iniciar sesi\\xF3n \\u2014 \",(0,e.jsx)(a.code,{children:\"RunAtLoad\"}),\" est\\xE1 en false. Se inicia por eventos:\"]}),`\n`,(0,e.jsxs)(a.ul,{children:[`\n`,(0,e.jsxs)(a.li,{children:[\"Flujos de Biome para \",(0,e.jsx)(a.code,{children:\"missedCall\"}),\", \",(0,e.jsx)(a.code,{children:\"unreadMessage\"}),\", \",(0,e.jsx)(a.code,{children:\"readMessage\"}),\", \",(0,e.jsx)(a.code,{children:\"location\"}),\", \",(0,e.jsx)(a.code,{children:\"dndAvailability\"}),\", \",(0,e.jsx)(a.code,{children:\"screenTimeRequest\"}),\", \",(0,e.jsx)(a.code,{children:\"askToBuyRequest\"}),\" y \",(0,e.jsx)(a.code,{children:\"childState\"})]}),`\n`,(0,e.jsxs)(a.li,{children:[\"Dos notificaciones del sistema: \",(0,e.jsx)(a.code,{children:\"__ABDataBaseChangedByOtherProcessNotification\"}),\" (la agenda cambi\\xF3) y \",(0,e.jsx)(a.code,{children:\"_CalDatabaseChangedNotification\"}),\" (el calendario cambi\\xF3)\"]}),`\n`]}),`\n`,(0,e.jsxs)(a.p,{children:[\"As\\xED que cada llamada perdida, cada mensaje, cada edici\\xF3n de contacto y cada cambio de calendario despierta a \",(0,e.jsx)(a.code,{children:\"peopled\"}),\". \\xBFY qu\\xE9 hace cuando se despierta? Las cadenas en su binario lo responden directamente. Entre los nombres de clase de Swift:\"]}),`\n`,(0,e.jsx)(e.Fragment,{children:(0,e.jsx)(a.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)(a.code,{children:[(0,e.jsx)(a.span,{className:\"line\",children:(0,e.jsx)(a.span,{children:\"_TtC7peopled15WidgetSuggester\"})}),`\n`,(0,e.jsx)(a.span,{className:\"line\",children:(0,e.jsx)(a.span,{children:\"_TtC7peopled18CallHistoryFetcher\"})}),`\n`,(0,e.jsx)(a.span,{className:\"line\",children:(0,e.jsx)(a.span,{children:\"_TtC7peopled25WidgetConfigurationReader\"})})]})})}),`\n`,(0,e.jsx)(a.p,{children:\"y entre sus plantillas de mensajes de log:\"}),`\n`,(0,e.jsx)(e.Fragment,{children:(0,e.jsx)(a.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)(a.code,{children:[(0,e.jsx)(a.span,{className:\"line\",children:(0,e.jsx)(a.span,{children:\"Event triggered widget refresh: %{private}s, %s\"})}),`\n`,(0,e.jsx)(a.span,{className:\"line\",children:(0,e.jsx)(a.span,{children:\"Last widget suggestion date is older 24 hours, suggest widgets\"})}),`\n`,(0,e.jsx)(a.span,{className:\"line\",children:(0,e.jsx)(a.span,{children:\"Last widget suggestion date is within 24 hours, do not suggest widgets\"})}),`\n`,(0,e.jsx)(a.span,{className:\"line\",children:(0,e.jsx)(a.span,{children:\"error reading widgets configurations: %s\"})}),`\n`,(0,e.jsx)(a.span,{className:\"line\",children:(0,e.jsx)(a.span,{children:\"Failed to suggest widgets with error: %s\"})})]})})}),`\n`,(0,e.jsx)(a.p,{children:\"Enlaza el Contacts framework, el CallHistory framework y dos frameworks de Biome. Su prop\\xF3sito, seg\\xFAn lo describe su propio c\\xF3digo, es decidir a qu\\xE9 personas mostrar en el widget de Contactos y en las sugerencias relacionadas con personas, usando tus llamadas y mensajes recientes como se\\xF1al.\"}),`\n`,(0,e.jsx)(a.p,{children:\"Eso es lo que hace que el fallo tenga sentido: un daemon que se despierta con cada llamada y mensaje, cuyo trabajo es refrescar un widget, y que necesita leer el historial de llamadas para hacerlo.\"}),`\n`,(0,e.jsx)(a.p,{children:(0,e.jsx)(a.img,{alt:\"Dentro del daemon peopled en 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)(a.h2,{id:\"por-qu\\xE9-entra-en-bucle\",children:\"Por qu\\xE9 entra en bucle\"}),`\n`,(0,e.jsx)(a.p,{children:\"Pon las piezas del hilo comunitario junto a lo que dice el binario.\"}),`\n`,(0,e.jsxs)(a.p,{children:[(0,e.jsx)(a.code,{children:\"peopled\"}),\" se ejecuta dentro de un sandbox. Su perfil, en \",(0,e.jsx)(a.code,{children:\"/System/Library/Sandbox/Profiles/com.apple.peopled.sb\"}),\", empieza con \",(0,e.jsx)(a.code,{children:\"(deny default)\"}),\" y luego abre puertas espec\\xEDficas. Dos de ellas:\"]}),`\n`,(0,e.jsx)(e.Fragment,{children:(0,e.jsx)(a.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)(a.code,{children:[(0,e.jsx)(a.span,{className:\"line\",children:(0,e.jsx)(a.span,{children:'(home-subpath \"/Library/CallHistoryDB/\")'})}),`\n`,(0,e.jsx)(a.span,{className:\"line\",children:(0,e.jsx)(a.span,{children:'(home-subpath \"/Library/Logs/CallHistory\")'})})]})})}),`\n`,(0,e.jsxs)(a.p,{children:[\"As\\xED que tiene permiso para leer \",(0,e.jsx)(a.code,{children:\"~/Library/Application Support/CallHistoryDB/\"}),\", donde macOS guarda la base de datos de llamadas hechas y recibidas a trav\\xE9s de tu iPhone v\\xEDa Continuity. Esa carpeta tambi\\xE9n est\\xE1 protegida por TCC \\u2014 en nuestro Mac, un \",(0,e.jsx)(a.code,{children:\"ls\"}),\" sobre ella desde Terminal devuelve \",(0,e.jsx)(a.code,{children:\"Operation not permitted\"}),\" hasta que Terminal tiene Acceso Total al Disco \\u2014 que es por lo que las soluciones de abajo necesitan ese permiso.\"]}),`\n`,(0,e.jsxs)(a.p,{children:[\"Ahora los reportes. El 21 de abril, un usuario en el \",(0,e.jsx)(a.a,{href:\"https://discussions.apple.com/thread/256271160\",children:\"hilo comunitario de Apple\"}),\" cit\\xF3 el mensaje del kernel que encontr\\xF3 en Console mientras \",(0,e.jsx)(a.code,{children:\"peopled\"}),\" estaba girando:\"]}),`\n`,(0,e.jsxs)(a.blockquote,{children:[`\n`,(0,e.jsx)(a.p,{children:\"Sandbox: peopled \\u2026 deny(1) file-read-data ~/Library/Application Support/CallHistoryDB\"}),`\n`]}),`\n`,(0,e.jsx)(a.p,{children:\"Y el 20 de mayo otro cit\\xF3:\"}),`\n`,(0,e.jsxs)(a.blockquote,{children:[`\n`,(0,e.jsx)(a.p,{children:\"failed to open /Users/[user]/Library/Application Support/CallHistoryDB: 1 (Operation not permitted)\"}),`\n`]}),`\n`,(0,e.jsxs)(a.p,{children:[\"La lectura que encaja con todo esto: hay un widget de Contactos instalado, as\\xED que se le pide a \",(0,e.jsx)(a.code,{children:\"peopled\"}),\" que lo refresque; refrescar significa obtener el historial de llamadas; la obtenci\\xF3n es denegada \\u2014 porque la carpeta ha adquirido un atributo \",(0,e.jsx)(a.code,{children:\"com.apple.quarantine\"}),\", o por alguna otra raz\\xF3n de permisos que los reportes no han logrado precisar \\u2014 el refresco falla, y el siguiente evento (o el reintento) lo dispara de nuevo. Un daemon que deber\\xEDa ejecutarse durante milisegundos tras una llamada perdida se ejecuta continuamente en su lugar.\"]}),`\n`,(0,e.jsx)(a.p,{children:\"Queremos ser precisos sobre qu\\xE9 est\\xE1 y qu\\xE9 no est\\xE1 establecido aqu\\xED. Los nombres de clase, las reglas de sandbox y los mensajes de log son directamente observables; los le\\xEDmos. Que el bucle sea \\xABrefresco de widget, lectura denegada, reintento\\xBB es una inferencia que encaja con cada reporte que hemos visto y con ambas soluciones que funcionan. Apple no ha confirmado el mecanismo, y podr\\xEDa haber un segundo disparador \\u2014 un usuario reporta que el bucle empez\\xF3 tras reorganizar el Centro de Control sin ning\\xFAn widget de Contactos presente en absoluto.\"}),`\n`,(0,e.jsx)(a.h2,{id:\"conf\\xEDrmalo-antes-de-cambiar-nada\",children:\"Conf\\xEDrmalo antes de cambiar nada\"}),`\n`,(0,e.jsx)(a.p,{children:\"Dos minutos de observaci\\xF3n ahorran una hora de conjeturas, y el patr\\xF3n del uso de CPU te dice qu\\xE9 soluci\\xF3n elegir.\"}),`\n`,(0,e.jsxs)(a.p,{children:[(0,e.jsx)(a.strong,{children:\"Observa la forma del uso.\"}),\" En Monitor de Actividad, selecciona el proceso y mira el historial de CPU en el pie de la ventana, o desde Terminal:\"]}),`\n`,(0,e.jsx)(e.Fragment,{children:(0,e.jsx)(a.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)(a.code,{children:(0,e.jsx)(a.span,{className:\"line\",children:(0,e.jsx)(a.span,{children:\"top -stats pid,command,cpu,time -o cpu -n 5\"})})})})}),`\n`,(0,e.jsxs)(a.p,{children:[\"Un \",(0,e.jsx)(a.code,{children:\"peopled\"}),\" que se mantiene plano en 70\\u201380% es el bucle del widget. Un \",(0,e.jsx)(a.code,{children:\"contactsd\"}),\" que sube, cae a cero, y sube de nuevo un minuto despu\\xE9s es el bucle de sincronizaci\\xF3n. CPU sostenida en los tres daemons a la vez es la variante de cuentas.\"]}),`\n`,(0,e.jsxs)(a.p,{children:[(0,e.jsx)(a.strong,{children:\"Comprueba cu\\xE1nto lleva ejecut\\xE1ndose.\"}),\" \",(0,e.jsx)(a.code,{children:\"peopled\"}),\" normalmente vive durante segundos. En nuestro Mac (sano) lleva 41 d\\xEDas residente al 0.0% de CPU \\u2014 residente pero inactivo est\\xE1 bien. Lo que buscas es residente \",(0,e.jsx)(a.em,{children:\"y\"}),\" ocupado:\"]}),`\n`,(0,e.jsx)(e.Fragment,{children:(0,e.jsx)(a.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)(a.code,{children:(0,e.jsx)(a.span,{className:\"line\",children:(0,e.jsx)(a.span,{children:'ps -axo pid,etime,pcpu,comm | grep -E \"peopled|contactsd|accountsd\"'})})})})}),`\n`,(0,e.jsxs)(a.p,{children:[(0,e.jsx)(a.strong,{children:\"Busca la denegaci\\xF3n.\"}),\" Esta es la prueba decisiva. Abre una segunda ventana de Terminal y transmite el log del daemon mientras est\\xE1 girando:\"]}),`\n`,(0,e.jsx)(e.Fragment,{children:(0,e.jsx)(a.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)(a.code,{children:(0,e.jsx)(a.span,{className:\"line\",children:(0,e.jsx)(a.span,{children:`log stream --predicate 'process == \"peopled\"' --info`})})})})}),`\n`,(0,e.jsx)(a.p,{children:\"y, en la primera ventana, busca en los \\xFAltimos minutos la l\\xEDnea de sandbox que citan los reportes comunitarios:\"}),`\n`,(0,e.jsx)(e.Fragment,{children:(0,e.jsx)(a.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)(a.code,{children:(0,e.jsx)(a.span,{className:\"line\",children:(0,e.jsx)(a.span,{children:`log show --last 10m --predicate 'eventMessage CONTAINS \"Sandbox: peopled\"'`})})})})}),`\n`,(0,e.jsxs)(a.p,{children:[\"Si ves \",(0,e.jsx)(a.code,{children:\"deny(1) file-read-data\"}),\" contra \",(0,e.jsx)(a.code,{children:\"CallHistoryDB\"}),\", tienes la variante de CallHistoryDB y la Soluci\\xF3n 2 es la que funcionar\\xE1. Si ves \",(0,e.jsx)(a.code,{children:\"Event triggered widget refresh\"}),\" repiti\\xE9ndose sin una denegaci\\xF3n, empieza con la Soluci\\xF3n 1. Si el log est\\xE1 en silencio y la CPU est\\xE1 alta, el bucle est\\xE1 en c\\xF3digo que no registra en el nivel por defecto; prueba las soluciones en orden de todos modos.\"]}),`\n`,(0,e.jsxs)(a.p,{children:[(0,e.jsx)(a.strong,{children:\"Observa el sistema de archivos, si quieres certeza.\"}),\" \",(0,e.jsx)(a.code,{children:\"fs_usage\"}),\" muestra cada operaci\\xF3n de archivo que intenta un proceso, incluidas las que fallan:\"]}),`\n`,(0,e.jsx)(e.Fragment,{children:(0,e.jsx)(a.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)(a.code,{children:(0,e.jsx)(a.span,{className:\"line\",children:(0,e.jsx)(a.span,{children:\"sudo fs_usage -w -f filesys peopled\"})})})})}),`\n`,(0,e.jsxs)(a.p,{children:[\"Una pantalla llena de intentos sobre \",(0,e.jsx)(a.code,{children:\"CallHistoryDB\"}),\" devolviendo errores es el bucle, visible en tiempo real.\"]}),`\n`,(0,e.jsx)(a.h2,{id:\"soluci\\xF3n-1-eliminar-el-widget-de-contactos\",children:\"Soluci\\xF3n 1: eliminar el widget de Contactos\"}),`\n`,(0,e.jsx)(a.p,{children:\"Esta es la soluci\\xF3n con m\\xE1s confirmaciones, y es la que hay que probar primero porque es reversible y no necesita Terminal.\"}),`\n`,(0,e.jsx)(a.p,{children:\"El detalle es que hay tres lugares donde puede vivir un widget en un Mac con Tahoe, y tiene que desaparecer de los tres.\"}),`\n`,(0,e.jsx)(a.h3,{id:\"escritorio\",children:\"Escritorio\"}),`\n`,(0,e.jsxs)(a.p,{children:[\"Haz clic secundario en el fondo de pantalla y elige \",(0,e.jsx)(a.strong,{children:\"Editar widgets\"}),\". Cualquier widget de Contactos en el escritorio muestra un bot\\xF3n de eliminar (el signo menos en la esquina) mientras editas; haz clic en \\xE9l. Alternativamente, haz clic secundario en el propio widget y elige \",(0,e.jsx)(a.strong,{children:\"Eliminar widget\"}),\". Haz clic en \",(0,e.jsx)(a.strong,{children:\"Listo\"}),\".\"]}),`\n`,(0,e.jsx)(a.h3,{id:\"centro-de-notificaciones\",children:\"Centro de Notificaciones\"}),`\n`,(0,e.jsxs)(a.p,{children:[\"Haz clic en la fecha y hora de la barra de men\\xFAs para abrir el Centro de Notificaciones, despl\\xE1zate hasta el final, haz clic en \",(0,e.jsx)(a.strong,{children:\"Editar widgets\"}),\". Elimina cualquier widget de Contactos ah\\xED de la misma forma \\u2014 clic secundario y \",(0,e.jsx)(a.strong,{children:\"Eliminar widget\"}),\", u Option-clic en su bot\\xF3n de eliminar.\"]}),`\n`,(0,e.jsx)(a.h3,{id:\"centro-de-control\",children:\"Centro de Control\"}),`\n`,(0,e.jsxs)(a.p,{children:[\"Este es el que la gente se salta, porque Tahoe traslad\\xF3 los widgets al Centro de Control y la personalizaci\\xF3n no est\\xE1 en Ajustes del Sistema. Haz clic en el icono del Centro de Control en la barra de men\\xFAs, elige \",(0,e.jsx)(a.strong,{children:\"Editar controles\"}),\", y arrastra cualquier elemento de Contactos fuera del Centro de Control. Haz clic en \",(0,e.jsx)(a.strong,{children:\"Listo\"}),\".\"]}),`\n`,(0,e.jsxs)(a.p,{children:[\"Luego \",(0,e.jsx)(a.strong,{children:\"reinicia\"}),\" \\u2014 no solo cierres sesi\\xF3n. Varias soluciones confirmadas en el hilo se\\xF1alan que la CPU solo baj\\xF3 tras un reinicio completo.\"]}),`\n`,(0,e.jsx)(a.p,{children:\"Una advertencia adicional del mismo hilo, reportada el 31 de julio: para algunos usuarios el bucle volvi\\xF3 despu\\xE9s de abrir de nuevo la galer\\xEDa de widgets, incluso sin a\\xF1adir el widget de Contactos. Si has tenido este problema, trata el editor de widgets como algo que evitar hasta que Apple arregle el daemon.\"}),`\n`,(0,e.jsx)(a.h2,{id:\"soluci\\xF3n-2-eliminar-el-indicador-de-cuarentena-en-callhistorydb\",children:\"Soluci\\xF3n 2: eliminar el indicador de cuarentena en CallHistoryDB\"}),`\n`,(0,e.jsx)(a.p,{children:\"Para Macs sin ning\\xFAn widget de Contactos en ninguna parte, o donde eliminarlo no ayud\\xF3, esta es la soluci\\xF3n a la que lleg\\xF3 el reporte t\\xE9cnicamente m\\xE1s detallado del hilo el 20 de mayo, y que al menos otros dos usuarios confirmaron (\\xABel proceso peopled est\\xE1 ahora en 0% de consumo de CPU\\xBB, escribi\\xF3 uno el 26 de junio).\"}),`\n`,(0,e.jsx)(a.h3,{id:\"paso-1-da-a-terminal-acceso-total-al-disco\",children:\"Paso 1: da a Terminal Acceso Total al Disco\"}),`\n`,(0,e.jsxs)(a.p,{children:[\"Ajustes del Sistema > Privacidad y Seguridad > Acceso Total al Disco, a\\xF1ade Terminal, y act\\xEDvalo. Sin esto, cada comando de abajo falla con \\xABOperation not permitted\\xBB \\u2014 que, da la casualidad, es el mismo error que est\\xE1 teniendo \",(0,e.jsx)(a.code,{children:\"peopled\"}),\". Reinicia Terminal despu\\xE9s de conceder el permiso.\"]}),`\n`,(0,e.jsx)(a.h3,{id:\"paso-2-mira-la-carpeta\",children:\"Paso 2: mira la carpeta\"}),`\n`,(0,e.jsx)(e.Fragment,{children:(0,e.jsx)(a.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)(a.code,{children:(0,e.jsx)(a.span,{className:\"line\",children:(0,e.jsx)(a.span,{children:'ls -lan@ \"$HOME/Library/Application Support/CallHistoryDB\"'})})})})}),`\n`,(0,e.jsxs)(a.p,{children:[\"La opci\\xF3n \",(0,e.jsx)(a.code,{children:\"@\"}),\" muestra los atributos extendidos. Lo que buscas es \",(0,e.jsx)(a.code,{children:\"com.apple.quarantine\"}),\" en la carpeta o en los archivos \",(0,e.jsx)(a.code,{children:\"CallHistory.storedata\"}),\" dentro de ella. Cuarentena es el indicador que macOS pone en los archivos descargados; no tiene ning\\xFAn motivo para estar en una base de datos del sistema, y c\\xF3mo llega ah\\xED no se sabe \\u2014 una restauraci\\xF3n desde una copia de seguridad y una migraci\\xF3n desde otro Mac son las dos rutas plausibles.\"]}),`\n`,(0,e.jsx)(a.h3,{id:\"paso-3-elim\\xEDnalo\",children:\"Paso 3: elim\\xEDnalo\"}),`\n`,(0,e.jsx)(e.Fragment,{children:(0,e.jsx)(a.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)(a.code,{children:(0,e.jsx)(a.span,{className:\"line\",children:(0,e.jsx)(a.span,{children:'xattr -dr com.apple.quarantine \"$HOME/Library/Application Support/CallHistoryDB\"'})})})})}),`\n`,(0,e.jsxs)(a.p,{children:[(0,e.jsx)(a.code,{children:\"-d\"}),\" borra el atributo, \",(0,e.jsx)(a.code,{children:\"-r\"}),\" recorre la carpeta de forma recursiva.\"]}),`\n`,(0,e.jsx)(a.h3,{id:\"paso-4-reinicia-los-daemons\",children:\"Paso 4: reinicia los daemons\"}),`\n`,(0,e.jsx)(e.Fragment,{children:(0,e.jsx)(a.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)(a.code,{children:(0,e.jsx)(a.span,{className:\"line\",children:(0,e.jsx)(a.span,{children:\"sudo killall -9 peopled CallHistorySyncHelper\"})})})})}),`\n`,(0,e.jsx)(a.p,{children:\"Ambos se relanzar\\xE1n bajo demanda. Observa Monitor de Actividad durante unos minutos.\"}),`\n`,(0,e.jsx)(a.h3,{id:\"si-el-indicador-vuelve\",children:\"Si el indicador vuelve\"}),`\n`,(0,e.jsx)(a.p,{children:\"Un usuario en el hilo report\\xF3 el 17 de julio que la soluci\\xF3n funcion\\xF3 y el indicador de cuarentena \\xABreapareci\\xF3\\xBB durante la noche. Si te pasa esto, algo est\\xE1 volviendo a poner en cuarentena la carpeta, y los candidatos son una herramienta de copia de seguridad o sincronizaci\\xF3n que la trata como datos nuevos. Comprueba qu\\xE9 se ejecuta de noche. Alternativamente, y de forma m\\xE1s contundente, el enfoque de otro usuario fue eliminar la base de datos y dejar que macOS la recree:\"}),`\n`,(0,e.jsx)(e.Fragment,{children:(0,e.jsx)(a.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)(a.code,{children:(0,e.jsx)(a.span,{className:\"line\",children:(0,e.jsx)(a.span,{children:\"rm -rf ~/Library/Application\\\\ Support/CallHistoryDB\"})})})})}),`\n`,(0,e.jsx)(a.p,{children:\"Pierdes la copia del Mac de tu historial de llamadas. Se repuebla desde el iPhone a trav\\xE9s de Continuity. Este es un martillo m\\xE1s grande que eliminar un atributo, y nosotros probar\\xEDamos primero el atributo.\"}),`\n`,(0,e.jsx)(a.h2,{id:\"soluci\\xF3n-3-alternar-contactos-de-icloud\",children:\"Soluci\\xF3n 3: alternar Contactos de iCloud\"}),`\n`,(0,e.jsx)(a.p,{children:\"Ajustes del Sistema > [tu nombre] > iCloud > Guardado en iCloud > Contactos, desact\\xEDvalo. Espera un minuto, observa la CPU. Si baja, vuelve a activarlo y comprueba si se mantiene bajo.\"}),`\n`,(0,e.jsxs)(a.p,{children:[\"Esto funciona para un subconjunto de usuarios y es el consejo est\\xE1ndar en los hilos hermanos m\\xE1s antiguos del mismo tema, que se remontan a\\xF1os atr\\xE1s. Tambi\\xE9n tiene un modo de fallo que un usuario encontr\\xF3 el 11 de mayo: el interruptor no se desactivaba en absoluto. Si te pasa esto, cierra sesi\\xF3n de iCloud por completo (conservando una copia de los datos cuando se te pregunte), reinicia, vuelve a iniciar sesi\\xF3n. Ten en cuenta que el usuario de V2EX con la variante de \",(0,e.jsx)(a.code,{children:\"accountsd\"}),\" prob\\xF3 exactamente esto y la CPU volvi\\xF3 de inmediato tras iniciar sesi\\xF3n de nuevo.\"]}),`\n`,(0,e.jsx)(a.p,{children:(0,e.jsx)(a.img,{alt:\"Eliminando el widget de Contactos y limpiando la cuarentena de CallHistoryDB en 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)(a.h2,{id:\"si-es-contactsd-y-tienes-una-cuenta-de-exchange-o-google\",children:[\"Si es \",(0,e.jsx)(a.code,{children:\"contactsd\"}),\" y tienes una cuenta de Exchange o Google\"]}),`\n`,(0,e.jsx)(a.p,{children:\"Este caso es anterior a Tahoe y tiene un mecanismo m\\xE1s claro.\"}),`\n`,(0,e.jsxs)(a.p,{children:[(0,e.jsx)(a.code,{children:\"contactsd\"}),\" es el daemon del Contacts framework: posee la base de datos de la agenda y la reconcilia con cada cuenta que sincroniza contactos. Tambi\\xE9n hace tareas de mantenimiento programadas \\u2014 su trabajo de launchd registra una tarea diaria \",(0,e.jsx)(a.code,{children:\"validate-cache\"}),\" que solo se ejecuta con alimentaci\\xF3n externa mientras est\\xE1s inactivo, y una actividad repetitiva \",(0,e.jsx)(a.code,{children:\"accounts.cleanup\"}),\". Un uso de CPU ocasional y breve de \",(0,e.jsx)(a.code,{children:\"contactsd\"}),\" es normal.\"]}),`\n`,(0,e.jsxs)(a.p,{children:[\"Lo que no es normal es un pico cada minuto aproximadamente. Un desarrollador \",(0,e.jsx)(a.a,{href:\"https://developer.apple.com/forums/thread/809986\",children:\"document\\xF3 exactamente esto\"}),\" en los foros de Apple Developer en diciembre de 2025: en un M1 Max con Tahoe 26.1, una cuenta de Office 365 con Contactos activado llev\\xF3 \",(0,e.jsx)(a.code,{children:\"AddressBookManager\"}),\" al 81% y \",(0,e.jsx)(a.code,{children:\"contactsd\"}),\" al 22\\u201359% en un patr\\xF3n repetido cada 60\\u201390 segundos \\u2014 incluso con la carpeta de contactos de Exchange vaciada en el servidor, y reproducible en una instalaci\\xF3n limpia. La misma cuenta y datos no lo hicieron en un Mac M4 ni en iOS. Nadie de Apple respondi\\xF3.\"]}),`\n`,(0,e.jsxs)(a.p,{children:[\"Su soluci\\xF3n alternativa es la que funciona: elimina la cuenta de Exchange en Ajustes del Sistema > Cuentas de Internet, y si la necesitas, usa Outlook, que no pasa por el Contacts framework. Un reporte de febrero en el foro comunitario con \",(0,e.jsx)(a.code,{children:\"contactsd\"}),\" en un MacBook Pro de 2024 con 26.3 recibi\\xF3 el consejo equivalente \\u2014 dejar de sincronizar contactos desde Exchange y Google y probar \\u2014 y si tienes tanto iCloud como una cuenta de Google sincronizando contactos, prueba a eliminar Google primero.\"]}),`\n`,(0,e.jsxs)(a.h2,{id:\"la-variante-accountsd\",children:[\"La variante \",(0,e.jsx)(a.code,{children:\"accountsd\"})]}),`\n`,(0,e.jsxs)(a.p,{children:[\"Los reportes m\\xE1s severos \\u2014 \",(0,e.jsx)(a.code,{children:\"accountsd\"}),\" al 180% con \",(0,e.jsx)(a.code,{children:\"contactsd\"}),\" e \",(0,e.jsx)(a.code,{children:\"itunescloudd\"}),\" a la zaga, en un MacBook Air M5 con 26.5.2, \",(0,e.jsx)(a.a,{href:\"https://www.v2ex.com/t/1226043\",children:\"descrito en V2EX en julio\"}),\" \\u2014 no tienen una soluci\\xF3n confirmada. El autor del reporte se\\xF1al\\xF3 que empezaba a la misma hora cada ma\\xF1ana, lo cual apunta a una tarea programada m\\xE1s que a un evento de widget. Cerrar sesi\\xF3n y volver a iniciarla no ayud\\xF3.\"]}),`\n`,(0,e.jsxs)(a.p,{children:[\"Lo que podemos a\\xF1adir: \",(0,e.jsx)(a.code,{children:\"accountsd\"}),\" es el daemon del Accounts framework y se invoca cada vez que algo necesita una credencial para una cuenta con sesi\\xF3n iniciada, e \",(0,e.jsx)(a.code,{children:\"itunescloudd\"}),\" es el daemon de la biblioteca de iTunes Cloud (Apple Music / Store). Los tres a la vez significan que algo est\\xE1 pidiendo credenciales de cuenta repetidamente y fallando. Si tienes esta variante, las soluciones anteriores siguen valiendo la pena probarlas en orden, y si ninguna funciona, merece la pena comprobar si una sola cuenta \\u2014 un inicio de sesi\\xF3n antiguo de Google o Exchange, una contrase\\xF1a espec\\xEDfica de aplicaci\\xF3n caducada \\u2014 est\\xE1 fallando la autenticaci\\xF3n en Ajustes del Sistema > Cuentas de Internet. Elimina cualquiera que muestre un distintivo de advertencia.\"]}),`\n`,(0,e.jsx)(a.h2,{id:\"por-qu\\xE9-tahoe-y-por-qu\\xE9-un-widget\",children:\"Por qu\\xE9 Tahoe, y por qu\\xE9 un widget\"}),`\n`,(0,e.jsx)(a.p,{children:\"Los widgets han existido en el Mac durante a\\xF1os, as\\xED que es justo preguntar por qu\\xE9 esto empez\\xF3 con 26.4. Dos cosas cambiaron a la vez.\"}),`\n`,(0,e.jsx)(a.p,{children:\"La primera es d\\xF3nde viven los widgets. Tahoe puso los widgets en el Centro de Control junto al escritorio y el Centro de Notificaciones, y un widget de Contactos en el Centro de Control se refresca con una cadencia distinta a uno que est\\xE1 en el escritorio \\u2014 las propias plantillas de log del daemon distinguen un paso diario de \\xABsugerir widgets\\xBB (\\xABLast widget suggestion date is older 24 hours\\xBB) de los refrescos disparados por eventos (\\xABEvent triggered widget refresh\\xBB). M\\xE1s superficies, m\\xE1s solicitudes de refresco, m\\xE1s ocasiones para que un intento fallido se reintente.\"}),`\n`,(0,e.jsx)(a.p,{children:\"La segunda es que el manejo de errores del daemon parece reintentar en lugar de retroceder. Esa es nuestra inferencia a partir del comportamiento, no algo que podamos leer en el binario, y es el bug real: una lectura denegada deber\\xEDa registrarse una vez y el refresco abandonarse hasta el siguiente evento genuino. En cambio, se vuelve a intentar, y los eventos siguen llegando.\"}),`\n`,(0,e.jsx)(a.p,{children:\"Ninguna de las dos cosas es algo que puedas cambiar. Lo que s\\xED puedes cambiar es si el widget existe y si la lectura es denegada, que es lo que hacen las tres soluciones.\"}),`\n`,(0,e.jsx)(a.h2,{id:\"una-vez-solucionado\",children:\"Una vez solucionado\"}),`\n`,(0,e.jsx)(a.p,{children:\"Unas cuantas cosas lo mantienen solucionado.\"}),`\n`,(0,e.jsxs)(a.p,{children:[(0,e.jsx)(a.strong,{children:\"Deja el Acceso Total al Disco de Terminal como est\\xE1\"}),\" si usaste la Soluci\\xF3n 2, o rev\\xF3calo deliberadamente \\u2014 cualquiera de las dos opciones est\\xE1 bien, pero ten claro cu\\xE1l hiciste, porque Terminal con Acceso Total al Disco es un permiso amplio.\"]}),`\n`,(0,e.jsxs)(a.p,{children:[(0,e.jsx)(a.strong,{children:\"Evita la galer\\xEDa de widgets\"}),\" durante un tiempo. El reporte del 31 de julio en el hilo es espec\\xEDfico en que abrirla \\u2014 no a\\xF1adir nada \\u2014 reinici\\xF3 el bucle. Si quieres a\\xF1adir otros widgets, hazlo, y luego comprueba Monitor de Actividad despu\\xE9s.\"]}),`\n`,(0,e.jsxs)(a.p,{children:[(0,e.jsx)(a.strong,{children:\"Tras la siguiente actualizaci\\xF3n de macOS, revisa de nuevo.\"}),\" Las actualizaciones puntuales han vuelto a a\\xF1adir elementos por defecto al Centro de Control para algunos usuarios, y que un widget de Contactos regrese silenciosamente es la raz\\xF3n m\\xE1s probable de que el problema vuelva.\"]}),`\n`,(0,e.jsxs)(a.p,{children:[(0,e.jsx)(a.strong,{children:\"Presenta el reporte.\"}),\" Feedback Assistant, categor\\xEDa macOS, adjunta un sysdiagnose tomado mientras la CPU est\\xE1 alta (\",(0,e.jsx)(a.code,{children:\"sudo sysdiagnose\"}),\" desde Terminal, o May\\xFAsculas-Control-Option-Comando-Punto), y pega la l\\xEDnea de denegaci\\xF3n del sandbox. Cinco meses de hilos en el foro no han movido esto; unos cientos de reportes de Feedback con la misma l\\xEDnea de log podr\\xEDan hacerlo.\"]}),`\n`,(0,e.jsx)(a.h2,{id:\"est\\xE1-ya-solucionado\",children:\"\\xBFEst\\xE1 ya solucionado?\"}),`\n`,(0,e.jsxs)(a.p,{children:[\"No, hasta donde se puede saber. Revisamos las \",(0,e.jsx)(a.a,{href:\"https://support.apple.com/en-us/122868\",children:\"notas de actualizaci\\xF3n de Apple para Tahoe\"}),\": 26.4.1 \\xABincluye correcciones de errores\\xBB, 26.5 \\xABincluye mejoras, correcciones de errores y actualizaciones de seguridad\\xBB, 26.6 optimiza el \\xEDndice de Spotlight, y 26.6.1 y 26.6.2 son versiones de seguridad. Ninguna menciona Contactos, widgets o CPU. En el hilo comunitario, los reportes contin\\xFAan en 26.5 (\\xABEl problema todav\\xEDa existe en Tahoe 26.5. Apple necesita arreglar esto cuanto antes\\xBB, el 15 de mayo) y hasta julio. No hemos visto ning\\xFAn reporte en un sentido u otro para 26.6.2, que se lanz\\xF3 el 17 de agosto.\"]}),`\n`,(0,e.jsxs)(a.p,{children:[\"Si est\\xE1s en la beta de macOS 27 y has visto esto o no, el \",(0,e.jsx)(a.a,{href:\"/blog/should-you-install-macos-27-golden-gate-developer-beta-known-issues-2026\",children:\"resumen de problemas conocidos de la beta\"}),\" es donde lo seguimos.\"]}),`\n`,(0,e.jsx)(a.h2,{id:\"qu\\xE9-no-merece-la-pena-probar\",children:\"Qu\\xE9 no merece la pena probar\"}),`\n`,(0,e.jsxs)(a.p,{children:[(0,e.jsx)(a.strong,{children:\"Restablecer la NVRAM o la SMC.\"}),\" Ninguna de las dos tiene nada que ver con los permisos de archivo de un daemon en espacio de usuario. S\\xE1ltatelo.\"]}),`\n`,(0,e.jsxs)(a.p,{children:[(0,e.jsxs)(a.strong,{children:[(0,e.jsx)(a.code,{children:\"tccutil reset All\"}),\".\"]}),\" Un usuario lo prob\\xF3; no ayud\\xF3, y elimina todos los permisos de privacidad de todas las apps del Mac, lo que luego te cuesta toda una tarde volver a conceder. No hay raz\\xF3n para pensar que TCC sea la capa responsable \\u2014 la denegaci\\xF3n en los logs es el sandbox, no TCC.\"]}),`\n`,(0,e.jsxs)(a.p,{children:[(0,e.jsx)(a.strong,{children:\"Modo Seguro.\"}),\" Arrancar en Modo Seguro y volver limpia algunas cach\\xE9s y dio a algunos usuarios un alivio temporal. Es un reinicio con pasos adicionales y no aborda la causa.\"]}),`\n`,(0,e.jsxs)(a.p,{children:[(0,e.jsxs)(a.strong,{children:[\"Desactivar \",(0,e.jsx)(a.code,{children:\"peopled\"}),\" con \",(0,e.jsx)(a.code,{children:\"launchctl\"}),\".\"]}),\" Puedes hacer \",(0,e.jsx)(a.code,{children:\"launchctl disable\"}),\" del agente, y dejar\\xE1 de consumir CPU porque dejar\\xE1 de ejecutarse. Tambi\\xE9n detendr\\xE1 el widget de Contactos, las sugerencias de personas, la infraestructura de \\xABpedir permiso para comprar\\xBB de Screen Time y cualquier otra cosa que dependa de \\xE9l, y en un Mac con protecci\\xF3n de integridad del sistema el cambio puede no sobrevivir a una actualizaci\\xF3n. No recomendado salvo como diagn\\xF3stico de \\xFAltimo recurso.\"]}),`\n`,(0,e.jsx)(a.h2,{id:\"soluci\\xF3n-de-problemas-comunes\",children:\"Soluci\\xF3n de problemas comunes\"}),`\n`,(0,e.jsxs)(a.h3,{id:\"monitor-de-actividad-muestra-veinte-copias-de-contactsd\",children:[\"Monitor de Actividad muestra veinte copias de \",(0,e.jsx)(a.code,{children:\"contactsd\"})]}),`\n`,(0,e.jsxs)(a.p,{children:[\"Vimos esto nosotros mismos mientras escrib\\xEDamos: una r\\xE1faga de veinte procesos \",(0,e.jsx)(a.code,{children:\"contactsd\"}),\" con PID consecutivos, todos hijos de launchd, todos al 0% de CPU, desaparecidos en un minuto. Eso es launchd generando instancias por cliente bajo demanda, y no es el bug. El bug es un proceso con CPU alta que se queda.\"]}),`\n`,(0,e.jsxs)(a.h3,{id:\"el-widget-de-contactos-ha-desaparecido-pero-peopled-sigue-al-80\",children:[\"El widget de Contactos ha desaparecido pero \",(0,e.jsx)(a.code,{children:\"peopled\"}),\" sigue al 80%\"]}),`\n`,(0,e.jsx)(a.p,{children:\"Comprueba las tres ubicaciones \\u2014 escritorio, Centro de Notificaciones, Centro de Control \\u2014 y luego pasa a la Soluci\\xF3n 2. Si nunca tuviste un widget de Contactos, ve directamente a la Soluci\\xF3n 2.\"}),`\n`,(0,e.jsxs)(a.h3,{id:\"xattr-dice-no-such-xattr-comapplequarantine\",children:[(0,e.jsx)(a.code,{children:\"xattr\"}),\" dice \\xABNo such xattr: com.apple.quarantine\\xBB\"]}),`\n`,(0,e.jsx)(a.p,{children:\"La carpeta no est\\xE1 en cuarentena, as\\xED que ese no es tu disparador. Prueba la Soluci\\xF3n 3, y comprueba si tienes una cuenta de Exchange o Google sincronizando contactos.\"}),`\n`,(0,e.jsxs)(a.h3,{id:\"ls-en-callhistorydb-dice-operation-not-permitted-incluso-con-sudo\",children:[(0,e.jsx)(a.code,{children:\"ls\"}),\" en CallHistoryDB dice \\xABOperation not permitted\\xBB incluso con sudo\"]}),`\n`,(0,e.jsxs)(a.p,{children:[(0,e.jsx)(a.code,{children:\"sudo\"}),\" no salta TCC. Terminal necesita Acceso Total al Disco, concedido en Ajustes del Sistema, y luego relanzarse.\"]}),`\n`,(0,e.jsx)(a.h3,{id:\"volvi\\xF3-despu\\xE9s-de-una-actualizaci\\xF3n-de-macos\",children:\"Volvi\\xF3 despu\\xE9s de una actualizaci\\xF3n de macOS\"}),`\n`,(0,e.jsx)(a.p,{children:\"Las actualizaciones pueden volver a a\\xF1adir el widget a la disposici\\xF3n por defecto del Centro de Control. Comprueba las tres ubicaciones de nuevo.\"}),`\n`,(0,e.jsx)(a.h2,{id:\"preguntas-frecuentes\",children:\"Preguntas frecuentes\"}),`\n`,(0,e.jsxs)(a.h3,{id:\"es-peopled-malware\",children:[\"\\xBFEs \",(0,e.jsx)(a.code,{children:\"peopled\"}),\" malware?\"]}),`\n`,(0,e.jsxs)(a.p,{children:[\"No. Es un daemon de Apple firmado en \",(0,e.jsx)(a.code,{children:\"/System/Library/PrivateFrameworks/People.framework/peopled\"}),\" en el volumen del sistema sellado. Un proceso con ese nombre ejecut\\xE1ndose desde cualquier otro sitio s\\xED merecer\\xEDa investigarse; este es de Apple.\"]}),`\n`,(0,e.jsx)(a.h3,{id:\"puedo-simplemente-matarlo\",children:\"\\xBFPuedo simplemente matarlo?\"}),`\n`,(0,e.jsxs)(a.p,{children:[(0,e.jsx)(a.code,{children:\"sudo killall peopled\"}),\" lo detiene hasta que el siguiente evento lo despierte, que en un Mac ocupado son segundos. Es \\xFAtil como diagn\\xF3stico \\u2014 si la CPU se mantiene baja tras matarlo, el disparador ha desaparecido \\u2014 no como soluci\\xF3n.\"]}),`\n`,(0,e.jsx)(a.h3,{id:\"eliminar-el-widget-hace-que-pierda-algo\",children:\"\\xBFEliminar el widget hace que pierda algo?\"}),`\n`,(0,e.jsxs)(a.p,{children:[\"Solo el widget. Contactos, el historial de llamadas y las sugerencias en Spotlight y Mensajes siguen funcionando todos; \",(0,e.jsx)(a.code,{children:\"peopled\"}),\" sigue ejecut\\xE1ndose cuando se necesita. Simplemente deja de que se le pida refrescar algo que no puede refrescar.\"]}),`\n`,(0,e.jsx)(a.h3,{id:\"por-qu\\xE9-la-carpeta-callhistorydb-necesita-acceso-total-al-disco-para-leerse\",children:\"\\xBFPor qu\\xE9 la carpeta CallHistoryDB necesita Acceso Total al Disco para leerse?\"}),`\n`,(0,e.jsx)(a.p,{children:\"Contiene tu registro de llamadas, que macOS trata como datos personales sensibles y protege con TCC igual que Mensajes y Mail. Esa protecci\\xF3n es la raz\\xF3n por la que Terminal necesita el permiso, y tambi\\xE9n es la raz\\xF3n por la que un indicador de cuarentena inesperado en ella resulta tan disruptivo: el daemon tiene una \\xFAnica v\\xEDa estrecha y en sandbox hacia los datos, y cualquier cosa que bloquee esa v\\xEDa lo bloquea por completo.\"}),`\n`,(0,e.jsx)(a.h3,{id:\"lo-arreglar\\xE1-macos-27\",children:\"\\xBFLo arreglar\\xE1 macOS 27?\"}),`\n`,(0,e.jsx)(a.p,{children:\"Desconocido. Apple no ha reconocido el problema, y no hay nada en las notas de la beta al respecto. Si el mecanismo es el que sugiere la evidencia, la soluci\\xF3n es peque\\xF1a \\u2014 fallar una vez y dejar de reintentar \\u2014 y podr\\xEDa llegar en cualquier versi\\xF3n puntual sin ser mencionada.\"}),`\n`,(0,e.jsx)(a.h2,{id:\"conclusi\\xF3n\",children:\"Conclusi\\xF3n\"}),`\n`,(0,e.jsx)(a.p,{children:\"Un Mac que se calienta sin hacer nada casi siempre tiene un proceso en bucle, y el bucle casi siempre tiene una causa mundana. Este es un daemon cuyo trabajo es mantener fresco un widget, que se despierta con cada llamada y mensaje, y que no puede leer la \\xFAnica base de datos que necesita. Elimina el widget y las solicitudes se detienen; arregla los permisos de la carpeta y las lecturas tienen \\xE9xito. Cualquiera de las dos rompe el bucle.\"}),`\n`,(0,e.jsxs)(a.p,{children:[\"Si tienes \",(0,e.jsx)(a.code,{children:\"peopled\"}),\" en lo m\\xE1s alto de Monitor de Actividad, trabaja las tres soluciones en orden y reinicia entre ellas. Si es \",(0,e.jsx)(a.code,{children:\"contactsd\"}),\" con una cuenta de Exchange o Google, elimina la cuenta. Y si son los tres con \",(0,e.jsx)(a.code,{children:\"accountsd\"}),\" al frente, prueba todo lo anterior, elimina cualquier cuenta que muestre una advertencia, y \\u2014 porque Apple ha guardado silencio sobre esto durante cinco meses \\u2014 presenta el reporte de Feedback, con la l\\xEDnea de log del sandbox, que podr\\xEDa finalmente conseguir que se arregle.\"]}),`\n`,(0,e.jsx)(a.p,{children:(0,e.jsxs)(a.em,{children:[\"Lectura relacionada: \",(0,e.jsx)(a.a,{href:\"/blog/mac-hot-battery-drain-after-macos-26-6-spotlight-siri-index-rebuild-fix-2026\",children:\"Mac caliente y con la bater\\xEDa dren\\xE1ndose tras macOS 26.6\"}),\", \",(0,e.jsx)(a.a,{href:\"/blog/windowserver-high-cpu-macos-tahoe-26-5-liquid-glass-multi-display-fix-2026\",children:\"CPU de WindowServer en 26.5 con Liquid Glass\"}),\", \",(0,e.jsx)(a.a,{href:\"/blog/contacts-app-not-working-macos-tahoe-ghost-numbers-crashes-wont-save-fix-2026\",children:\"la app Contactos que no funciona en Tahoe\"}),\", \",(0,e.jsx)(a.a,{href:\"/blog/mac-activity-monitor-complete-guide-2025\",children:\"Monitor de Actividad desde cero\"}),\", y \",(0,e.jsx)(a.a,{href:\"/blog/macos-tahoe-widgets-customization-complete-guide-2025\",children:\"personalizar los widgets en Tahoe\"}),\".\"]})})]})}function u(n={}){let{wrapper:a}=n.components||{};return a?(0,e.jsx)(a,{...n,children:(0,e.jsx)(t,{...n})}):t(n)}return f(q);})();\n;return Component;","toc":[{"title":"Puntos clave","url":"#puntos-clave","depth":2},{"title":"Qué proceso, exactamente","url":"#qué-proceso-exactamente","depth":2},{"title":"Qué hace realmente peopled","url":"#qué-hace-realmente-peopled","depth":2},{"title":"Por qué entra en bucle","url":"#por-qué-entra-en-bucle","depth":2},{"title":"Confírmalo antes de cambiar nada","url":"#confírmalo-antes-de-cambiar-nada","depth":2},{"title":"Solución 1: eliminar el widget de Contactos","url":"#solución-1-eliminar-el-widget-de-contactos","depth":2},{"title":"Escritorio","url":"#escritorio","depth":3},{"title":"Centro de Notificaciones","url":"#centro-de-notificaciones","depth":3},{"title":"Centro de Control","url":"#centro-de-control","depth":3},{"title":"Solución 2: eliminar el indicador de cuarentena en CallHistoryDB","url":"#solución-2-eliminar-el-indicador-de-cuarentena-en-callhistorydb","depth":2},{"title":"Paso 1: da a Terminal Acceso Total al Disco","url":"#paso-1-da-a-terminal-acceso-total-al-disco","depth":3},{"title":"Paso 2: mira la carpeta","url":"#paso-2-mira-la-carpeta","depth":3},{"title":"Paso 3: elimínalo","url":"#paso-3-elimínalo","depth":3},{"title":"Paso 4: reinicia los daemons","url":"#paso-4-reinicia-los-daemons","depth":3},{"title":"Si el indicador vuelve","url":"#si-el-indicador-vuelve","depth":3},{"title":"Solución 3: alternar Contactos de iCloud","url":"#solución-3-alternar-contactos-de-icloud","depth":2},{"title":"Si es contactsd y tienes una cuenta de Exchange o Google","url":"#si-es-contactsd-y-tienes-una-cuenta-de-exchange-o-google","depth":2},{"title":"La variante accountsd","url":"#la-variante-accountsd","depth":2},{"title":"Por qué Tahoe, y por qué un widget","url":"#por-qué-tahoe-y-por-qué-un-widget","depth":2},{"title":"Una vez solucionado","url":"#una-vez-solucionado","depth":2},{"title":"¿Está ya solucionado?","url":"#está-ya-solucionado","depth":2},{"title":"Qué no merece la pena probar","url":"#qué-no-merece-la-pena-probar","depth":2},{"title":"Solución de problemas comunes","url":"#solución-de-problemas-comunes","depth":2},{"title":"Monitor de Actividad muestra veinte copias de contactsd","url":"#monitor-de-actividad-muestra-veinte-copias-de-contactsd","depth":3},{"title":"El widget de Contactos ha desaparecido pero peopled sigue al 80%","url":"#el-widget-de-contactos-ha-desaparecido-pero-peopled-sigue-al-80","depth":3},{"title":"xattr dice «No such xattr: com.apple.quarantine»","url":"#xattr-dice-no-such-xattr-comapplequarantine","depth":3},{"title":"ls en CallHistoryDB dice «Operation not permitted» incluso con sudo","url":"#ls-en-callhistorydb-dice-operation-not-permitted-incluso-con-sudo","depth":3},{"title":"Volvió después de una actualización de macOS","url":"#volvió-después-de-una-actualización-de-macos","depth":3},{"title":"Preguntas frecuentes","url":"#preguntas-frecuentes","depth":2},{"title":"¿Es peopled malware?","url":"#es-peopled-malware","depth":3},{"title":"¿Puedo simplemente matarlo?","url":"#puedo-simplemente-matarlo","depth":3},{"title":"¿Eliminar el widget hace que pierda algo?","url":"#eliminar-el-widget-hace-que-pierda-algo","depth":3},{"title":"¿Por qué la carpeta CallHistoryDB necesita Acceso Total al Disco para leerse?","url":"#por-qué-la-carpeta-callhistorydb-necesita-acceso-total-al-disco-para-leerse","depth":3},{"title":"¿Lo arreglará macOS 27?","url":"#lo-arreglará-macos-27","depth":3},{"title":"Conclusión","url":"#conclusión","depth":2}],"estimatedTime":22}