Skip to content

macOS: artifact-tool import fails because skia.node and node_repl have different Team IDs #35055

Description

@jekalih

Summary

The approved ChatGPT/Codex desktop spreadsheet runtime cannot import @oai/artifact-tool on macOS because its bundled native skia.node module has an incompatible signing identity with the OpenAI-signed hardened execution host.

In-product feedback was also submitted without logs. Feedback thread ID: 019f9175-e903-7473-8905-3990e8bc3bfa.

Environment

  • ChatGPT/Codex app version: 26.715.70719
  • App build: 5650
  • Workspace runtime bundle: 26.715.12143
  • node_repl hardened runtime: 26.5.0
  • @oai/artifact-tool: 2.8.24
  • skia-canvas: 3.0.8
  • Mac architecture: ARM64

Execution host

/Applications/ChatGPT.app/Contents/Resources/cua_node/bin/node_repl

  • OpenAI Team ID: 2DC432GLL2
  • Hardened runtime enabled
  • Signature verification passes
  • Does not contain the com.apple.security.cs.disable-library-validation entitlement

Failing native module

/Users/scorcher/.cache/codex-runtimes/codex-primary-runtime/dependencies/node/node_modules/.pnpm/@oai+artifact-tool@file+local-deps+-oai-artifact-tool-oai-artifact_tool-2.8.24.tgz/node_modules/@oai/artifact-tool/node_modules/skia-canvas/lib/skia.node

  • Identifier: libskia_canvas.dylib
  • Ad-hoc/linker-signed
  • No Team ID
  • Signature verification passes independently

Reproduction

Run inside the required node_repl host after registering the approved workspace dependency node_modules directory:

var approvedArtifactToolImport = await import("@oai/artifact-tool");

macOS reports:

code signature ... not valid for use in process: mapping process and mapped file (non-platform) have different Team IDs

The complete dlopen error identifies the skia.node path above and repeats the different-Team-IDs failure for both attempted non-Cryptex paths.

Verified exclusions

  • Architecture mismatch: ruled out; host and module are ARM64
  • Damaged signature: ruled out; strict signature verification passes
  • Quarantine: ruled out
  • Missing dependency: ruled out
  • Corrupted installation: no evidence
  • Reinstalling the official app restored the same affected app and runtime versions and produced the identical failure

Relevant hashes

  • node_repl SHA-256: b2ccfc60722ef09569b2038e60bcef8fef7240fd550651a9d808c6a12a354618
  • skia.node SHA-256: 05721a911d979194b5346d7f80b0809f2d16d74de5ffc3831da4e67e2ca6eef9

Expected resolution

Please route this to the desktop/Codex runtime engineering team. It appears to require an official runtime package where skia.node is signed compatibly with OpenAI Team ID 2DC432GLL2, or another officially supported packaging correction. Please confirm when a corrected desktop build or workspace runtime bundle is available.

Metadata

Metadata

Assignees

No one assigned

    Labels

    appIssues related to the Codex desktop appbugSomething isn't workingsandboxIssues related to permissions or sandboxing

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions