lighthouse 13.1.0 → 13.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (118) hide show
  1. package/cli/bin.js +5 -0
  2. package/cli/cli-flags.js +2 -2
  3. package/cli/test/smokehouse/lighthouse-runners/bundle.js +7 -3
  4. package/cli/test/smokehouse/lighthouse-runners/cli.js +5 -1
  5. package/cli/test/smokehouse/lighthouse-runners/devtools-mcp.js +7 -3
  6. package/cli/test/smokehouse/lighthouse-runners/devtools.js +4 -1
  7. package/cli/test/smokehouse/smokehouse.js +7 -2
  8. package/core/audits/accessibility/autocomplete-valid.d.ts +10 -0
  9. package/core/audits/accessibility/autocomplete-valid.js +44 -0
  10. package/core/audits/accessibility/presentation-role-conflict.d.ts +10 -0
  11. package/core/audits/accessibility/presentation-role-conflict.js +46 -0
  12. package/core/audits/accessibility/svg-img-alt.d.ts +10 -0
  13. package/core/audits/accessibility/svg-img-alt.js +44 -0
  14. package/core/audits/agentic/agent-accessibility-tree.d.ts +19 -0
  15. package/core/audits/agentic/agent-accessibility-tree.js +115 -0
  16. package/core/audits/agentic/llms-txt.d.ts +20 -0
  17. package/core/audits/agentic/llms-txt.js +111 -0
  18. package/core/audits/insights/insight-audit.d.ts +2 -2
  19. package/core/audits/insights/insight-audit.js +16 -6
  20. package/core/audits/layout-shifts.js +1 -1
  21. package/core/audits/server-response-time.js +3 -3
  22. package/core/audits/webmcp-form-coverage.d.ts +16 -0
  23. package/core/audits/webmcp-form-coverage.js +90 -0
  24. package/core/audits/webmcp-registered-tools.d.ts +21 -0
  25. package/core/audits/webmcp-registered-tools.js +149 -0
  26. package/core/audits/webmcp-schema-validity.d.ts +22 -0
  27. package/core/audits/webmcp-schema-validity.js +141 -0
  28. package/core/computed/document-urls.js +0 -1
  29. package/core/computed/main-resource.js +0 -2
  30. package/core/computed/metrics/lantern-metric.js +4 -4
  31. package/core/computed/metrics/lcp-breakdown.js +1 -1
  32. package/core/computed/metrics/time-to-first-byte.js +1 -1
  33. package/core/computed/navigation-insights.js +2 -1
  34. package/core/computed/network-analysis.js +0 -1
  35. package/core/config/agentic-browsing-config.d.ts +12 -0
  36. package/core/config/agentic-browsing-config.js +73 -0
  37. package/core/config/default-config.js +51 -0
  38. package/core/gather/gatherers/accessibility.js +5 -1
  39. package/core/gather/gatherers/agentic/llms-txt.d.ts +10 -0
  40. package/core/gather/gatherers/agentic/llms-txt.js +28 -0
  41. package/core/gather/gatherers/inputs.js +2 -0
  42. package/core/gather/gatherers/meta-elements.js +1 -1
  43. package/core/gather/gatherers/trace-elements.js +1 -1
  44. package/core/gather/gatherers/webmcp-schema.d.ts +25 -0
  45. package/core/gather/gatherers/webmcp-schema.js +105 -0
  46. package/core/gather/gatherers/webmcp.d.ts +58 -0
  47. package/core/gather/gatherers/webmcp.js +159 -0
  48. package/core/lib/baseline/web-features-metadata.json +1 -1
  49. package/core/lib/cdt/generated/SourceMap.js +2 -2
  50. package/core/lib/deprecations-strings.d.ts +26 -20
  51. package/core/lib/deprecations-strings.js +7 -0
  52. package/core/lib/navigation-error.js +0 -6
  53. package/core/lib/network-request.js +0 -1
  54. package/core/lib/page-functions.d.ts +3 -3
  55. package/core/lib/page-functions.js +11 -4
  56. package/core/lib/tracehouse/trace-processor.d.ts +5 -4
  57. package/core/lib/tracehouse/trace-processor.js +85 -19
  58. package/core/runner.js +3 -0
  59. package/core/scoring.d.ts +1 -0
  60. package/dist/report/bundle.esm.js +1 -1
  61. package/dist/report/flow.js +3 -3
  62. package/dist/report/standalone.js +1 -1
  63. package/flow-report/src/summary/category.tsx +1 -1
  64. package/package.json +11 -11
  65. package/report/renderer/category-renderer.js +1 -1
  66. package/report/renderer/report-utils.d.ts +2 -1
  67. package/report/renderer/report-utils.js +7 -2
  68. package/shared/localization/locales/ar-XB.json +72 -36
  69. package/shared/localization/locales/ar.json +72 -36
  70. package/shared/localization/locales/bg.json +72 -36
  71. package/shared/localization/locales/ca.json +72 -36
  72. package/shared/localization/locales/cs.json +72 -36
  73. package/shared/localization/locales/da.json +74 -38
  74. package/shared/localization/locales/de.json +72 -36
  75. package/shared/localization/locales/el.json +73 -37
  76. package/shared/localization/locales/en-GB.json +74 -38
  77. package/shared/localization/locales/en-US.json +263 -17
  78. package/shared/localization/locales/en-XL.json +263 -17
  79. package/shared/localization/locales/es-419.json +72 -36
  80. package/shared/localization/locales/es.json +73 -37
  81. package/shared/localization/locales/fi.json +72 -36
  82. package/shared/localization/locales/fil.json +74 -38
  83. package/shared/localization/locales/fr.json +162 -126
  84. package/shared/localization/locales/he.json +74 -38
  85. package/shared/localization/locales/hi.json +73 -37
  86. package/shared/localization/locales/hr.json +72 -36
  87. package/shared/localization/locales/hu.json +73 -37
  88. package/shared/localization/locales/id.json +74 -38
  89. package/shared/localization/locales/it.json +72 -36
  90. package/shared/localization/locales/ja.json +72 -36
  91. package/shared/localization/locales/ko.json +72 -36
  92. package/shared/localization/locales/lt.json +72 -36
  93. package/shared/localization/locales/lv.json +72 -36
  94. package/shared/localization/locales/nl.json +73 -37
  95. package/shared/localization/locales/no.json +72 -36
  96. package/shared/localization/locales/pl.json +72 -36
  97. package/shared/localization/locales/pt-PT.json +72 -36
  98. package/shared/localization/locales/pt.json +74 -38
  99. package/shared/localization/locales/ro.json +72 -36
  100. package/shared/localization/locales/ru.json +72 -36
  101. package/shared/localization/locales/sk.json +72 -36
  102. package/shared/localization/locales/sl.json +72 -36
  103. package/shared/localization/locales/sr-Latn.json +73 -37
  104. package/shared/localization/locales/sr.json +73 -37
  105. package/shared/localization/locales/sv.json +75 -39
  106. package/shared/localization/locales/ta.json +73 -37
  107. package/shared/localization/locales/te.json +72 -36
  108. package/shared/localization/locales/th.json +73 -37
  109. package/shared/localization/locales/tr.json +72 -36
  110. package/shared/localization/locales/uk.json +72 -36
  111. package/shared/localization/locales/vi.json +74 -38
  112. package/shared/localization/locales/zh-HK.json +72 -36
  113. package/shared/localization/locales/zh-TW.json +74 -38
  114. package/shared/localization/locales/zh.json +75 -39
  115. package/types/artifacts.d.ts +33 -0
  116. package/types/config.d.ts +1 -0
  117. package/types/internal/smokehouse.d.ts +7 -1
  118. package/types/lhr/lhr.d.ts +11 -0
@@ -1835,6 +1835,9 @@
1835
1835
  "flow-report/src/i18n/ui-strings.js | title": {
1836
1836
  "message": "Informe del flujo de usuarios de Lighthouse"
1837
1837
  },
1838
+ "node_modules/@paulirish/trace_engine/generated/Deprecation.js | AttributionReporting": {
1839
+ "message": "Attribution Reporting ya no está disponible, por lo que se quitará. Para obtener más información, visita https://goo.gle/ps-status."
1840
+ },
1838
1841
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | AuthorizationCoveredByWildcard": {
1839
1842
  "message": "El símbolo comodín (*) no cubrirá la autorización en el controlador Access-Control-Allow-Headers de CORS."
1840
1843
  },
@@ -1856,9 +1859,6 @@
1856
1859
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | ChromeLoadTimesWasAlternateProtocolAvailable": {
1857
1860
  "message": "chrome.loadTimes() ya no está disponible. En su lugar, usa la API estandarizada: nextHopProtocol en Navigation Timing 2."
1858
1861
  },
1859
- "node_modules/@paulirish/trace_engine/generated/Deprecation.js | CookieWithTruncatingChar": {
1860
- "message": "Se rechazarán las cookies que incluyan un carácter \\(0|r|n) en lugar de truncarse."
1861
- },
1862
1862
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | CrossOriginAccessBasedOnDocumentDomain": {
1863
1863
  "message": "La función para relajar la política del mismo origen mediante la configuración de document.domain ya no está disponible y se inhabilitará de forma predeterminada. Esta advertencia de baja es para un acceso de origen cruzado que se habilitó mediante la configuración de document.domain."
1864
1864
  },
@@ -1871,14 +1871,20 @@
1871
1871
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | DataUrlInSvgUse": {
1872
1872
  "message": "Compatibilidad con datos: Las URLs de SVGUseElement están obsoletas y se quitarán en el futuro."
1873
1873
  },
1874
+ "node_modules/@paulirish/trace_engine/generated/Deprecation.js | ExampleBrowserProcessDeprecation": {
1875
+ "message": "Este es un ejemplo para mostrar el código requerido para una baja informada de un proceso del navegador."
1876
+ },
1877
+ "node_modules/@paulirish/trace_engine/generated/Deprecation.js | Fledge": {
1878
+ "message": "La API de Protected Audience dejó de estar disponible y se quitará en una versión futura."
1879
+ },
1874
1880
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | GeolocationInsecureOrigin": {
1875
- "message": "getCurrentPosition() y watchPosition() ya no funcionan en orígenes inseguros. Para utilizar esta función, considera cambiar tu app a un origen seguro, como HTTPS. Para obtener más información, consulta https://goo.gle/chrome-insecure-origins."
1881
+ "message": "getCurrentPosition() y watchPosition() ya no funcionan en orígenes inseguros. Para utilizar esta función, considera cambiar tu app a un origen seguro, como HTTPS. Para obtener más información, visita https://www.chromium.org/Home/chromium-security/deprecating-powerful-features-on-insecure-origins/."
1876
1882
  },
1877
1883
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | GeolocationInsecureOriginDeprecatedNotRemoved": {
1878
- "message": "getCurrentPosition() y watchPosition() ya no están disponibles en orígenes inseguros. Para utilizar esta función, considera cambiar tu app a un origen seguro, como HTTPS. Para obtener más información, consulta https://goo.gle/chrome-insecure-origins."
1884
+ "message": "getCurrentPosition() y watchPosition() ya no están disponibles en orígenes inseguros. Para utilizar esta función, considera cambiar tu app a un origen seguro, como HTTPS. Para obtener más información, visita https://www.chromium.org/Home/chromium-security/deprecating-powerful-features-on-insecure-origins/."
1879
1885
  },
1880
1886
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | GetUserMediaInsecureOrigin": {
1881
- "message": "getUserMedia() ya no funciona en orígenes inseguros. Para utilizar esta función, considera cambiar tu app a un origen seguro, como HTTPS. Para obtener más información, consulta https://goo.gle/chrome-insecure-origins."
1887
+ "message": "getUserMedia() ya no funciona en orígenes inseguros. Para utilizar esta función, considera cambiar tu app a un origen seguro, como HTTPS. Para obtener más información, visita https://www.chromium.org/Home/chromium-security/deprecating-powerful-features-on-insecure-origins/."
1882
1888
  },
1883
1889
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | HostCandidateAttributeGetter": {
1884
1890
  "message": "RTCPeerConnectionIceErrorEvent.hostCandidate ya no está disponible. En su lugar, usa RTCPeerConnectionIceErrorEvent.address o RTCPeerConnectionIceErrorEvent.port."
@@ -1895,20 +1901,35 @@
1895
1901
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | IntlV8BreakIterator": {
1896
1902
  "message": "Intl.v8BreakIterator ya no está disponible. En su lugar, utiliza Intl.Segmenter."
1897
1903
  },
1898
- "node_modules/@paulirish/trace_engine/generated/Deprecation.js | LocalCSSFileExtensionRejected": {
1899
- "message": "No se puede cargar CSS desde las URLs de file: a no ser que terminen en una extensión de archivo .css."
1904
+ "node_modules/@paulirish/trace_engine/generated/Deprecation.js | LanguageModelParams": {
1905
+ "message": "LanguageModel.params() es obsoleto y ahora solo está disponible en el contexto de extensiones. Los campos relacionados “topK” y “temperature” de su resultado también dejaron de estar disponibles."
1906
+ },
1907
+ "node_modules/@paulirish/trace_engine/generated/Deprecation.js | LanguageModelTemperature": {
1908
+ "message": "El parámetro o atributo “temperature” de LanguageModel dejó de estar disponible. Solo funciona en extensiones y es posible que se quite en el futuro."
1909
+ },
1910
+ "node_modules/@paulirish/trace_engine/generated/Deprecation.js | LanguageModelTopK": {
1911
+ "message": "El parámetro o atributo “topK” de LanguageModel dejó de estar disponible. Solo funciona en extensiones y es posible que se quite en el futuro."
1912
+ },
1913
+ "node_modules/@paulirish/trace_engine/generated/Deprecation.js | LanguageModel_InputQuota": {
1914
+ "message": "LanguageModel.inputQuota dejó de estar disponible. En su lugar, usa LanguageModel.contextWindow. Este alias solo está disponible en las extensiones."
1915
+ },
1916
+ "node_modules/@paulirish/trace_engine/generated/Deprecation.js | LanguageModel_InputUsage": {
1917
+ "message": "LanguageModel.inputUsage dejó de estar disponible. En su lugar, usa LanguageModel.contextUsage. Este alias solo está disponible en las extensiones."
1900
1918
  },
1901
- "node_modules/@paulirish/trace_engine/generated/Deprecation.js | MediaSourceAbortRemove": {
1902
- "message": "El uso de SourceBuffer.abort() a fin de anular la eliminación del rango asíncrono de remove() ya no está disponible debido a cambios de especificación. En el futuro, se quitará la compatibilidad. En su lugar, debes escuchar el evento updateend. abort() está pensado únicamente para anular el proceso de adjuntar contenido multimedia asíncrono o para restablecer el estado del analizador."
1919
+ "node_modules/@paulirish/trace_engine/generated/Deprecation.js | LanguageModel_MeasureInputUsage": {
1920
+ "message": "LanguageModel.measureInputUsage() dejó de estar disponible. En su lugar, usa LanguageModel.measureContextUsage(). Este alias solo está disponible en las extensiones."
1903
1921
  },
1904
- "node_modules/@paulirish/trace_engine/generated/Deprecation.js | MediaSourceDurationTruncatingBuffered": {
1905
- "message": "La función para configurar MediaSource.duration bajo la marca de tiempo de presentación más alta de cualquier marco que tenga códigos con búfer ya no está disponible debido a cambios de especificación. La compatibilidad para la eliminación implícita de contenido multimedia con búfer truncado se quitará en el futuro. En su lugar, debes realizar de forma explícita remove(newDuration, oldDuration) en todos los sourceBuffers, donde newDuration < oldDuration."
1922
+ "node_modules/@paulirish/trace_engine/generated/Deprecation.js | LanguageModel_OnQuotaOverflow": {
1923
+ "message": "LanguageModel.onquotaoverflow dejó de estar disponible. En su lugar, usa LanguageModel.oncontextoverflow. El alias LanguageModel.onquotaoverflow solo está disponible en las extensiones."
1924
+ },
1925
+ "node_modules/@paulirish/trace_engine/generated/Deprecation.js | LocalCSSFileExtensionRejected": {
1926
+ "message": "No se puede cargar CSS desde las URLs de file: a no ser que terminen en una extensión de archivo .css."
1906
1927
  },
1907
1928
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | NoSysexWebMIDIWithoutPermission": {
1908
1929
  "message": "MIDI web solicitará permiso para usar, incluso si no se especifica el valor de sysex en MIDIOptions."
1909
1930
  },
1910
1931
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | NotificationInsecureOrigin": {
1911
- "message": "Es posible que la API de Notification deje de usarse en orígenes inseguros. Deberías cambiar tu app a un origen seguro, como HTTPS. Para obtener más información, consulta https://goo.gle/chrome-insecure-origins."
1932
+ "message": "Es posible que la API de Notification deje de usarse en orígenes inseguros. Deberías cambiar tu app a un origen seguro, como HTTPS. Para obtener más información, visita https://www.chromium.org/Home/chromium-security/deprecating-powerful-features-on-insecure-origins/."
1912
1933
  },
1913
1934
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | NotificationPermissionRequestedIframe": {
1914
1935
  "message": "Es posible que ya no se soliciten los permisos para la API de notificaciones desde un iframe de origen cruzado. Puedes solicitar permiso desde un marco de nivel superior, o bien abrir una nueva ventana."
@@ -1961,9 +1982,6 @@
1961
1982
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | PrefixedVideoSupportsFullscreen": {
1962
1983
  "message": "HTMLVideoElement.webkitSupportsFullscreen dejó de estar disponible. En su lugar, usa Document.fullscreenEnabled."
1963
1984
  },
1964
- "node_modules/@paulirish/trace_engine/generated/Deprecation.js | PrivacySandboxExtensionsAPI": {
1965
- "message": "La API de chrome.privacy.websites.privacySandboxEnabled dejará de estar disponible, aunque permanecerá activa para brindar retrocompatibilidad hasta la versión M113. En su lugar, usa chrome.privacy.websites.topicsEnabled, chrome.privacy.websites.fledgeEnabled y chrome.privacy.websites.adMeasurementEnabled. Consulta https://developer.chrome.com/docs/extensions/reference/privacy/#property-websites-privacySandboxEnabled."
1966
- },
1967
1985
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | RTCConstraintEnableDtlsSrtpFalse": {
1968
1986
  "message": "Se quitó la restricción DtlsSrtpKeyAgreement. Especificaste un valor false para esta restricción, lo que se interpreta como un intento de usar el método SDES key negotiation que se quitó. Se quitó esta funcionalidad; en su lugar, usa un servicio compatible con DTLS key negotiation."
1969
1987
  },
@@ -1976,6 +1994,9 @@
1976
1994
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | RangeExpand": {
1977
1995
  "message": "Range.expand() dejó de estar disponible. En su lugar, usa Selection.modify()."
1978
1996
  },
1997
+ "node_modules/@paulirish/trace_engine/generated/Deprecation.js | RelatedWebsiteSets": {
1998
+ "message": "Related Website Sets ya no está disponible y se quitará. Para obtener más detalles, consulta https://privacysandbox.com/news/update-on-plans-for-privacy-sandbox-technologies/."
1999
+ },
1979
2000
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | RequestedSubresourceWithEmbeddedCredentials": {
1980
2001
  "message": "Las solicitudes de los subrecursos cuyas URLs contienen credenciales incorporadas (p. ej. https://user:pass@host/) están bloqueadas."
1981
2002
  },
@@ -1985,26 +2006,41 @@
1985
2006
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | SharedArrayBufferConstructedWithoutIsolation": {
1986
2007
  "message": "SharedArrayBuffer requerirá aislamiento de origen cruzado. Para obtener más información, consulta https://developer.chrome.com/blog/enabling-shared-array-buffer/."
1987
2008
  },
2009
+ "node_modules/@paulirish/trace_engine/generated/Deprecation.js | SharedStorage": {
2010
+ "message": "La API de Shared Storage dejó de estar disponible y se quitará en una versión futura."
2011
+ },
2012
+ "node_modules/@paulirish/trace_engine/generated/Deprecation.js | StorageAccessAPI_requestStorageAccessFor_Method": {
2013
+ "message": "document.requestStorageAccessFor ya no está disponible y se quitará. Para obtener más detalles, consulta https://privacysandbox.com/news/update-on-plans-for-privacy-sandbox-technologies/."
2014
+ },
1988
2015
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | TextToSpeech_DisallowedByAutoplay": {
1989
2016
  "message": "speechSynthesis.speak() sin activación del usuario ya no está disponible y se quitará."
1990
2017
  },
2018
+ "node_modules/@paulirish/trace_engine/generated/Deprecation.js | Topics": {
2019
+ "message": "La API de Topics dejó de estar disponible y se quitará en una versión futura."
2020
+ },
1991
2021
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | UnloadHandler": {
1992
2022
  "message": "Los objetos de escucha de eventos de descarga están obsoletos y se quitarán."
1993
2023
  },
1994
2024
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | V8SharedArrayBufferConstructedInExtensionWithoutIsolation": {
1995
2025
  "message": "Las extensiones deben habilitar el aislamiento de origen cruzado a fin de seguir utilizando SharedArrayBuffer. Consulta https://developer.chrome.com/docs/extensions/mv3/cross-origin-isolation/."
1996
2026
  },
2027
+ "node_modules/@paulirish/trace_engine/generated/Deprecation.js | WebBluetoothRemoteCharacteristicWriteValue": {
2028
+ "message": "BluetoothRemoteGATTCharacteristic.writeValue() ya no está disponible. En su lugar, usa writeValueWithResponse() o writeValueWithoutResponse()."
2029
+ },
1997
2030
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | XHRJSONEncodingDetection": {
1998
2031
  "message": "UTF-16 no es compatible con el archivo json de respuesta de XMLHttpRequest"
1999
2032
  },
2000
2033
  "node_modules/@paulirish/trace_engine/generated/Deprecation.js | XMLHttpRequestSynchronousInNonWorkerOutsideBeforeUnload": {
2001
2034
  "message": "El objeto XMLHttpRequest síncrono ya no está disponible en el subproceso principal porque produce efectos nocivos en la experiencia del usuario final. Para obtener ayuda, revisa https://xhr.spec.whatwg.org/."
2002
2035
  },
2036
+ "node_modules/@paulirish/trace_engine/generated/Deprecation.js | XSLT": {
2037
+ "message": "XSLTProcessor y las instrucciones de procesamiento de XSLT dejaron de estar disponibles en todos los navegadores. Estas funciones se quitarán de este navegador pronto."
2038
+ },
2003
2039
  "node_modules/@paulirish/trace_engine/models/trace/insights/CLSCulprits.js | animation": {
2004
2040
  "message": "Animación"
2005
2041
  },
2006
2042
  "node_modules/@paulirish/trace_engine/models/trace/insights/CLSCulprits.js | description": {
2007
- "message": "Los cambios de diseño ocurren cuando los elementos se mueven sin interacción del usuario. [Investiga las causas de los cambios de diseño](https://web.dev/articles/optimize-cls), como elementos que se agregan o quitan, o bien cambios en sus fuentes a medida que se carga la página."
2043
+ "message": "Los cambios de diseño ocurren cuando los elementos se mueven sin interacción del usuario. [Investiga las causas de los cambios de diseño](https://developer.chrome.com/docs/performance/insights/cls-culprit), como elementos que se agregan o quitan, o bien cambios en sus fuentes a medida que se carga la página."
2008
2044
  },
2009
2045
  "node_modules/@paulirish/trace_engine/models/trace/insights/CLSCulprits.js | injectedIframe": {
2010
2046
  "message": "iframe insertado"
@@ -2040,7 +2076,7 @@
2040
2076
  "message": "TTL en caché"
2041
2077
  },
2042
2078
  "node_modules/@paulirish/trace_engine/models/trace/insights/Cache.js | description": {
2043
- "message": "La duración en caché por un período prolongado puede acelerar la carga de la página cuando el usuario la visita de manera repetida. [Obtén más información](https://web.dev/uses-long-cache-ttl/)."
2079
+ "message": "La duración en caché por un período prolongado puede acelerar la carga de la página cuando el usuario la visita de manera repetida. [Obtén más información sobre el almacenamiento en caché](https://developer.chrome.com/docs/performance/insights/cache)."
2044
2080
  },
2045
2081
  "node_modules/@paulirish/trace_engine/models/trace/insights/Cache.js | noRequestsToCache": {
2046
2082
  "message": "No hay solicitudes con políticas de caché ineficientes"
@@ -2055,7 +2091,7 @@
2055
2091
  "message": "Usa tiempos de almacenamiento en caché eficientes"
2056
2092
  },
2057
2093
  "node_modules/@paulirish/trace_engine/models/trace/insights/DOMSize.js | description": {
2058
- "message": "Los DOM de gran tamaño pueden aumentar la duración de los cálculos de estilo y los reprocesamientos del diseño, lo que afecta la responsividad de la página. Un DOM de gran tamaño también aumentará el uso de memoria. [Obtén más información para evitar un tamaño de DOM excesivo](https://developer.chrome.com/docs/lighthouse/performance/dom-size/)."
2094
+ "message": "Los DOM de gran tamaño pueden aumentar la duración de los cálculos de estilo y los reprocesamientos del diseño, lo que afecta la responsividad de la página. Un DOM de gran tamaño también aumentará el uso de memoria. [Obtén más información para evitar un tamaño de DOM excesivo](https://developer.chrome.com/docs/performance/insights/dom-size)."
2059
2095
  },
2060
2096
  "node_modules/@paulirish/trace_engine/models/trace/insights/DOMSize.js | duration": {
2061
2097
  "message": "Duración"
@@ -2091,7 +2127,7 @@
2091
2127
  "message": "Valor"
2092
2128
  },
2093
2129
  "node_modules/@paulirish/trace_engine/models/trace/insights/DocumentLatency.js | description": {
2094
- "message": "Tu primera solicitud de red es la más importante. Para reducir la latencia, evita las redirecciones, garantiza una respuesta rápida del servidor y habilita la compresión de texto."
2130
+ "message": "Tu primera solicitud de red es la más importante. [Para reducir la latencia](https://developer.chrome.com/docs/performance/insights/document-latency), evita las redirecciones, garantiza una respuesta rápida del servidor y habilita la compresión de texto."
2095
2131
  },
2096
2132
  "node_modules/@paulirish/trace_engine/models/trace/insights/DocumentLatency.js | failedRedirects": {
2097
2133
  "message": "Tuvo redireccionamientos ({PH1} redireccionamientos, +{PH2})"
@@ -2130,13 +2166,13 @@
2130
2166
  "message": "Fuente"
2131
2167
  },
2132
2168
  "node_modules/@paulirish/trace_engine/models/trace/insights/DuplicatedJavaScript.js | description": {
2133
- "message": "Quita de los paquetes los módulos de JavaScript que sean grandes y estén duplicados para reducir la cantidad de bytes que consume innecesariamente la actividad de red."
2169
+ "message": "Quita de los paquetes los [módulos de JavaScript que sean grandes y estén duplicados](https://developer.chrome.com/docs/performance/insights/duplicated-javascript) para reducir la cantidad de bytes que consume innecesariamente la actividad de red."
2134
2170
  },
2135
2171
  "node_modules/@paulirish/trace_engine/models/trace/insights/DuplicatedJavaScript.js | title": {
2136
2172
  "message": "JavaScript duplicado"
2137
2173
  },
2138
2174
  "node_modules/@paulirish/trace_engine/models/trace/insights/FontDisplay.js | description": {
2139
- "message": "Te recomendamos establecer [font-display](https://developer.chrome.com/blog/font-display) en swap o optional para garantizar que el texto aparezca de forma coherente. swap se puede optimizar aún más para mitigar los cambios de diseño con [anulaciones de métricas de fuentes](https://developer.chrome.com/blog/font-fallbacks)."
2175
+ "message": "Te recomendamos establecer [font-display](https://developer.chrome.com/docs/performance/insights/font-display) en swap o optional para garantizar que el texto aparezca de forma coherente. swap se puede optimizar aún más para mitigar los cambios de diseño con [anulaciones de métricas de fuentes](https://developer.chrome.com/blog/font-fallbacks)."
2140
2176
  },
2141
2177
  "node_modules/@paulirish/trace_engine/models/trace/insights/FontDisplay.js | fontColumn": {
2142
2178
  "message": "Fuente"
@@ -2151,10 +2187,10 @@
2151
2187
  "message": "(anónimas)"
2152
2188
  },
2153
2189
  "node_modules/@paulirish/trace_engine/models/trace/insights/ForcedReflow.js | description": {
2154
- "message": "Se produce un reprocesamiento forzado cuando JavaScript consulta propiedades geométricas (como offsetWidth) después de que los estilos se invalidan por un cambio en el estado del DOM. Esto puede reducir el rendimiento. Obtén más información sobre los [reprocesamientos forzados](https://developers.google.com/web/fundamentals/performance/rendering/avoid-large-complex-layouts-and-layout-thrashing#avoid-forced-synchronous-layouts) y sus posibles mitigaciones."
2190
+ "message": "Se produce un reprocesamiento forzado cuando JavaScript consulta propiedades geométricas (como offsetWidth) después de que los estilos se invalidan por un cambio en el estado del DOM. Esto puede reducir el rendimiento. Obtén más información sobre los [reprocesamientos forzados](https://developer.chrome.com/docs/performance/insights/forced-reflow) y sus posibles mitigaciones."
2155
2191
  },
2156
- "node_modules/@paulirish/trace_engine/models/trace/insights/ForcedReflow.js | relatedStackTrace": {
2157
- "message": "Seguimiento de pila"
2192
+ "node_modules/@paulirish/trace_engine/models/trace/insights/ForcedReflow.js | reflowCallFrames": {
2193
+ "message": "Marcos de llamadas que activan el reprocesamiento"
2158
2194
  },
2159
2195
  "node_modules/@paulirish/trace_engine/models/trace/insights/ForcedReflow.js | title": {
2160
2196
  "message": "Reprocesamiento forzado"
@@ -2169,7 +2205,7 @@
2169
2205
  "message": "[unattributed]"
2170
2206
  },
2171
2207
  "node_modules/@paulirish/trace_engine/models/trace/insights/INPBreakdown.js | description": {
2172
- "message": "Comienza a investigar con la subparte más larga. [Los retrasos se pueden minimizar](https://web.dev/articles/optimize-inp#optimize_interactions). Para reducir la duración del procesamiento, [optimiza los costos del subproceso principal](https://web.dev/articles/optimize-long-tasks), a menudo JS."
2208
+ "message": "Comienza a investigar [cómo mejorar el INP](https://developer.chrome.com/docs/performance/insights/inp-breakdown) mirando la subparte más larga."
2173
2209
  },
2174
2210
  "node_modules/@paulirish/trace_engine/models/trace/insights/INPBreakdown.js | duration": {
2175
2211
  "message": "Duración"
@@ -2193,7 +2229,7 @@
2193
2229
  "message": "Desglose de INP"
2194
2230
  },
2195
2231
  "node_modules/@paulirish/trace_engine/models/trace/insights/ImageDelivery.js | description": {
2196
- "message": "Reducir el tiempo de descarga de las imágenes puede mejorar el tiempo de carga percibido de la página y el LCP. [Más información para optimizar el tamaño de las imágenes](https://developer.chrome.com/docs/lighthouse/performance/uses-optimized-images/)"
2232
+ "message": "Reducir el tiempo de descarga de las imágenes puede mejorar el tiempo de carga percibido de la página y el LCP. [Más información para optimizar el tamaño de las imágenes](https://developer.chrome.com/docs/performance/insights/image-delivery)"
2197
2233
  },
2198
2234
  "node_modules/@paulirish/trace_engine/models/trace/insights/ImageDelivery.js | estimatedSavings": {
2199
2235
  "message": "{PH1} (Estimado: {PH2})"
@@ -2223,7 +2259,7 @@
2223
2259
  "message": "Usar formatos de video en lugar de GIFs puede mejorar el tamaño de descarga del contenido animado."
2224
2260
  },
2225
2261
  "node_modules/@paulirish/trace_engine/models/trace/insights/LCPBreakdown.js | description": {
2226
- "message": "Cada [subparte tiene estrategias de mejora específicas](https://web.dev/articles/optimize-lcp#lcp-breakdown). Lo ideal es que la mayor parte del tiempo de LCP se dedique a cargar los recursos, no a los retrasos."
2262
+ "message": "Cada [subparte tiene estrategias de mejora específicas](https://developer.chrome.com/docs/performance/insights/lcp-breakdown). Lo ideal es que la mayor parte del tiempo de LCP se dedique a cargar los recursos, no a los retrasos."
2227
2263
  },
2228
2264
  "node_modules/@paulirish/trace_engine/models/trace/insights/LCPBreakdown.js | duration": {
2229
2265
  "message": "Duración"
@@ -2253,7 +2289,7 @@
2253
2289
  "message": "Desglose de LCP"
2254
2290
  },
2255
2291
  "node_modules/@paulirish/trace_engine/models/trace/insights/LCPDiscovery.js | description": {
2256
- "message": "Para optimizar el LCP, haz que la imagen del LCP sea [detectable](https://web.dev/articles/optimize-lcp#1_eliminate_resource_load_delay) desde el HTML de inmediato y [evita la carga diferida](https://web.dev/articles/lcp-lazy-loading)"
2292
+ "message": "[Para optimizar el LCP](https://developer.chrome.com/docs/performance/insights/lcp-discovery), haz que la imagen del LCP sea detectable desde el HTML de inmediato y evita la carga diferida"
2257
2293
  },
2258
2294
  "node_modules/@paulirish/trace_engine/models/trace/insights/LCPDiscovery.js | fetchPriorityApplied": {
2259
2295
  "message": "Se aplicó fetchpriority=high"
@@ -2286,13 +2322,13 @@
2286
2322
  "message": "Bytes desperdiciados"
2287
2323
  },
2288
2324
  "node_modules/@paulirish/trace_engine/models/trace/insights/LegacyJavaScript.js | description": {
2289
- "message": "El complemento Polyfill y las transformaciones permiten que los navegadores más antiguos utilicen nuevas funciones de JavaScript. Sin embargo, la mayoría no es necesaria en los navegadores actualizados. Considera modificar tu proceso de compilación de JavaScript para que no se transpilen las funciones de [Baseline](https://web.dev/articles/baseline-and-polyfills), a menos que sepas que debes admitir navegadores más antiguos. [Descubre por qué la mayoría de los sitios pueden implementar código ES6+ sin transpilación.](https://philipwalton.com/articles/the-state-of-es5-on-the-web/)"
2325
+ "message": "El complemento Polyfill y las transformaciones permiten que los navegadores más antiguos utilicen nuevas funciones de JavaScript. Sin embargo, la mayoría no es necesaria en los navegadores actualizados. Considera modificar tu proceso de compilación de JavaScript para que no se transpilen las funciones de [Baseline](https://web.dev/articles/baseline-and-polyfills), a menos que sepas que debes admitir navegadores más antiguos. [Descubre por qué la mayoría de los sitios pueden implementar código ES6+ sin transpilación.](https://developer.chrome.com/docs/performance/insights/legacy-javascript)"
2290
2326
  },
2291
2327
  "node_modules/@paulirish/trace_engine/models/trace/insights/LegacyJavaScript.js | title": {
2292
2328
  "message": "JavaScript heredado"
2293
2329
  },
2294
2330
  "node_modules/@paulirish/trace_engine/models/trace/insights/ModernHTTP.js | description": {
2295
- "message": "HTTP/2 y HTTP/3 ofrecen más beneficios que HTTP/1.1, como la multiplexación. [Obtén más información para usar HTTP moderno](https://developer.chrome.com/docs/lighthouse/best-practices/uses-http2/)."
2331
+ "message": "HTTP/2 y HTTP/3 ofrecen más beneficios que HTTP/1.1, como la multiplexación. [Obtén más información para usar HTTP moderno](https://developer.chrome.com/docs/performance/insights/modern-http)."
2296
2332
  },
2297
2333
  "node_modules/@paulirish/trace_engine/models/trace/insights/ModernHTTP.js | noOldProtocolRequests": {
2298
2334
  "message": "Ninguna solicitud usó HTTP/1.1, o su uso actual de HTTP/1.1 no presenta una oportunidad de optimización significativa. Las solicitudes HTTP/1.1 solo se marcan si seis o más recursos estáticos provienen del mismo origen y no se publican desde un entorno de desarrollo local o una fuente externa."
@@ -2325,7 +2361,7 @@
2325
2361
  "message": "Conexión previa no utilizada. Comprueba que el atributo crossorigin se use correctamente."
2326
2362
  },
2327
2363
  "node_modules/@paulirish/trace_engine/models/trace/insights/NetworkDependencyTree.js | description": {
2328
- "message": "[Evita encadenar solicitudes críticas](https://developer.chrome.com/docs/lighthouse/performance/critical-request-chains) reduciendo la longitud de las cadenas, disminuyendo el tamaño de los recursos para la descarga o postergando la descarga de recursos innecesarios para mejorar la carga de la página."
2364
+ "message": "[Evita encadenar solicitudes críticas](https://developer.chrome.com/docs/performance/insights/network-dependency-tree) reduciendo la longitud de las cadenas, disminuyendo el tamaño de los recursos para la descarga o postergando la descarga de recursos innecesarios para mejorar la carga de la página."
2329
2365
  },
2330
2366
  "node_modules/@paulirish/trace_engine/models/trace/insights/NetworkDependencyTree.js | estSavingTableDescription": {
2331
2367
  "message": "Agrega sugerencias de [conexión previa](https://developer.chrome.com/docs/lighthouse/performance/uses-rel-preconnect/) a tus orígenes más importantes, pero intenta usar no más de 4."
@@ -2364,7 +2400,7 @@
2364
2400
  "message": "Para no encadenar solicitudes críticas, reduce la longitud de las cadenas, disminuye el tamaño de los recursos para la descarga o posterga la descarga de recursos innecesarios para mejorar la carga de la página."
2365
2401
  },
2366
2402
  "node_modules/@paulirish/trace_engine/models/trace/insights/RenderBlocking.js | description": {
2367
- "message": "Las solicitudes bloquean la renderización inicial de la página, lo que puede retrasar el LCP. [La aparición diferida o intercalada](https://web.dev/learn/performance/understanding-the-critical-path#render-blocking_resources) puede mover estas solicitudes de red fuera de la ruta crítica."
2403
+ "message": "Las solicitudes bloquean la renderización inicial de la página, lo que puede retrasar el LCP. [La aparición diferida o intercalada](https://developer.chrome.com/docs/performance/insights/render-blocking) puede mover estas solicitudes de red fuera de la ruta crítica."
2368
2404
  },
2369
2405
  "node_modules/@paulirish/trace_engine/models/trace/insights/RenderBlocking.js | duration": {
2370
2406
  "message": "Duración"
@@ -2379,7 +2415,7 @@
2379
2415
  "message": "Solicitudes de bloqueo de renderización"
2380
2416
  },
2381
2417
  "node_modules/@paulirish/trace_engine/models/trace/insights/SlowCSSSelector.js | description": {
2382
- "message": "Si los costos de recalcular el estilo siguen siendo altos, la optimización del selector puede reducirlos. [Optimiza los selectores](https://developer.chrome.com/docs/devtools/performance/selector-stats) con un tiempo transcurrido alto y un alto porcentaje de rutas lentas. Los selectores más simples, una cantidad menor de selectores, un DOM más pequeño y un DOM más superficial reducirán los costos de coincidencia."
2418
+ "message": "Si los costos de recalcular el estilo siguen siendo altos, la optimización del selector puede reducirlos. [Optimiza los selectores](https://developer.chrome.com/docs/performance/insights/slow-css-selector) con un tiempo transcurrido alto y un alto porcentaje de rutas lentas. Los selectores más simples, una cantidad menor de selectores, un DOM más pequeño y un DOM más superficial reducirán los costos de coincidencia."
2383
2419
  },
2384
2420
  "node_modules/@paulirish/trace_engine/models/trace/insights/SlowCSSSelector.js | elapsed": {
2385
2421
  "message": "Tiempo transcurrido"
@@ -2418,7 +2454,7 @@
2418
2454
  "message": "Tamaño de transferencia"
2419
2455
  },
2420
2456
  "node_modules/@paulirish/trace_engine/models/trace/insights/ThirdParties.js | description": {
2421
- "message": "El código de terceros puede reducir en gran medida el rendimiento de carga. [Reduce y aplaza la carga de código de terceros](https://web.dev/articles/optimizing-content-efficiency-loading-third-party-javascript/) para priorizar el contenido de tu página."
2457
+ "message": "El código de terceros puede reducir en gran medida el rendimiento de carga. [Reduce y aplaza la carga de código de terceros](https://developer.chrome.com/docs/performance/insights/third-parties) para priorizar el contenido de tu página."
2422
2458
  },
2423
2459
  "node_modules/@paulirish/trace_engine/models/trace/insights/ThirdParties.js | noThirdParties": {
2424
2460
  "message": "No se encontraron terceros"
@@ -2427,7 +2463,7 @@
2427
2463
  "message": "Terceros"
2428
2464
  },
2429
2465
  "node_modules/@paulirish/trace_engine/models/trace/insights/Viewport.js | description": {
2430
- "message": "Las interacciones de presión pueden [retrasarse hasta 300 ms](https://developer.chrome.com/blog/300ms-tap-delay-gone-away/) si el viewport no está optimizado para dispositivos móviles."
2466
+ "message": "Las interacciones de presión pueden [retrasarse hasta 300 ms](https://developer.chrome.com/docs/performance/insights/viewport) si el viewport no está optimizado para dispositivos móviles."
2431
2467
  },
2432
2468
  "node_modules/@paulirish/trace_engine/models/trace/insights/Viewport.js | mobileTapDelayLabel": {
2433
2469
  "message": "Retraso de toque en dispositivo móvil"