Base de datos de modelos de dispositivos (nombres amigables)

La app companion de macOS muestra nombres amigables de modelos de dispositivos Apple en la UI de Instancias mapeando identificadores de modelo de Apple (ej. iPad16,6, Mac16,6) a nombres legibles por humanos.

El mapeo está vendorizado como JSON bajo:

  • apps/macos/Sources/OpenClaw/Resources/DeviceModels/

Fuente de datos

Actualmente vendorizamos el mapeo del repositorio con licencia MIT:

  • kyle-seongwoo-jun/apple-device-identifiers

Para mantener builds deterministas, los archivos JSON están fijados a commits upstream específicos (registrados en apps/macos/Sources/OpenClaw/Resources/DeviceModels/NOTICE.md).

Actualizar la base de datos

  1. Elige los commits upstream a los que quieres fijar (uno para iOS, uno para macOS).
  2. Actualiza los hashes de commit en apps/macos/Sources/OpenClaw/Resources/DeviceModels/NOTICE.md.
  3. Vuelve a descargar los archivos JSON, fijados a esos commits:
IOS_COMMIT="<commit sha for ios-device-identifiers.json>"
MAC_COMMIT="<commit sha for mac-device-identifiers.json>"

curl -fsSL "https://raw.githubusercontent.com/kyle-seongwoo-jun/apple-device-identifiers/${IOS_COMMIT}/ios-device-identifiers.json" \
  -o apps/macos/Sources/OpenClaw/Resources/DeviceModels/ios-device-identifiers.json

curl -fsSL "https://raw.githubusercontent.com/kyle-seongwoo-jun/apple-device-identifiers/${MAC_COMMIT}/mac-device-identifiers.json" \
  -o apps/macos/Sources/OpenClaw/Resources/DeviceModels/mac-device-identifiers.json
  1. Asegúrate de que apps/macos/Sources/OpenClaw/Resources/DeviceModels/LICENSE.apple-device-identifiers.txt siga coincidiendo con upstream.
  2. Verifica que la app de macOS compile limpiamente:
swift build --package-path apps/macos