← Home

expo-modules-autolinking

48
Versions
License
No
Install Scripts
Missing
Provenance

Supply chain provenance

Status for the latest visible version.

No SLSA provenance npm registry signatures gitHead linked

Without SLSA provenance there is no cryptographic link between this tarball and the public source — the axios compromise (March 2026) relied on exactly this gap.

Maintainers

idebrentvatneevanbaconexpoadminexponentbycedrickudochienalanhughestsapetaexpo-botphilplwschurman

Keywords

expoexpo-moduleautolinkingunimodules

Accepted risks

Findings the reviewer chose to accept rather than block on.

SourceRuleReasonAccepted byWhen
semgrep semgrep:child-process-import AI (semgrep): Build-time autolinking scripts legitimately use child_process; stable pattern across all versions of this package. ai
semgrep semgrep:env-spread AI (semgrep): Occurs only in e2e test helper, not shipped runtime code; no secret exfiltration risk. ai
semgrep semgrep:dynamic-require AI (semgrep): Used to load module config JSON files by path — core autolinking functionality, not arbitrary code execution. ai

Versions (showing 48 of 48)

Version Deps Published
56.0.14 4 / 2
56.0.13 4 / 2
56.0.12 4 / 2
56.0.10 4 / 2
56.0.9 4 / 2
56.0.8 4 / 2
56.0.7 4 / 2
56.0.6 4 / 2
56.0.5 4 / 2
56.0.4 4 / 2
56.0.3 4 / 2
56.0.2 4 / 2
56.0.1 4 / 2
56.0.0 4 / 2
55.0.24 4 / 2
55.0.23 4 / 2
55.0.22 4 / 2
55.0.21 4 / 2
55.0.20 4 / 2
55.0.19 4 / 2
55.0.18 4 / 2
55.0.17 4 / 2
55.0.16 4 / 2
55.0.15 4 / 2
55.0.14 4 / 2
55.0.13 4 / 2
55.0.12 4 / 2
55.0.11 4 / 2
55.0.10 4 / 2
55.0.9 4 / 2
55.0.8 4 / 2
55.0.7 4 / 2
55.0.6 4 / 2
55.0.5 4 / 2
55.0.4 4 / 2
55.0.3 5 / 2
55.0.2 5 / 2
55.0.1 5 / 2
55.0.0 5 / 2
3.0.26 5 / 2
3.0.25 5 / 2
3.0.24 5 / 2
3.0.23 5 / 2
3.0.22 5 / 3
3.0.21 5 / 3
3.0.20 5 / 3
2.1.15 7 / 2
2.1.10 7 / 2

v56.0.14

2 findings
LOW No provenance attestation provenance

Package was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.

INFO Publisher changed: alanhughes → kudochien (on 2026-05-28, known maintainer) provenance

This version was published by a different npm account (kudochien) than the most recent previously approved version (alanhughes) on 2026-05-28, but kudochien is listed as a maintainer on prior approved versions (matched on name). This looks like a manual publish by a known maintainer rather than a publisher change. Recorded as INFO for audit trail.

v56.0.13

1 finding
LOW No provenance attestation provenance

Package was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.

v56.0.12

1 finding
LOW No provenance attestation provenance

Package was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.

v56.0.10

1 finding
LOW No provenance attestation provenance

Package was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.

v56.0.9

1 finding
LOW No provenance attestation provenance

Package was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.

v56.0.8

1 finding
LOW No provenance attestation provenance

Package was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.

v56.0.7

1 finding
LOW No provenance attestation provenance

Package was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.

v56.0.6

2 findings
HIGH Publisher changed: alanhughes → brentvatne (on 2026-05-14) provenance

This version was published by a different npm account than previous versions on 2026-05-14. This could indicate a legitimate maintainer transition or an account compromise.

LOW No provenance attestation provenance

Package was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.

v56.0.5

1 finding
LOW No provenance attestation provenance

Package was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.

v56.0.4

1 finding
LOW No provenance attestation provenance

Package was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.

v56.0.3

1 finding
LOW No provenance attestation provenance

Package was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.

v56.0.2

1 finding
LOW No provenance attestation provenance

Package was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.

v56.0.1

1 finding
LOW No provenance attestation provenance

Package was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.

v56.0.0

1 finding
LOW No provenance attestation provenance

Package was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.

v55.0.24

1 finding
LOW No provenance attestation provenance

Package was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.

v55.0.23

1 finding
LOW No provenance attestation provenance

Package was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.

v55.0.22

1 finding
LOW No provenance attestation provenance

Package was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.

v55.0.21

1 finding
LOW No provenance attestation provenance

Package was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.

v55.0.20

1 finding
LOW No provenance attestation provenance

Package was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.

v55.0.19

1 finding
LOW No provenance attestation provenance

Package was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.

v55.0.18

1 finding
LOW No provenance attestation provenance

Package was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.

v55.0.17

1 finding
LOW No provenance attestation provenance

Package was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.

v55.0.16

1 finding
LOW No provenance attestation provenance

Package was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.

v55.0.15

1 finding
LOW No provenance attestation provenance

Package was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.

v55.0.14

1 finding
LOW No provenance attestation provenance

Package was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.

v55.0.13

1 finding
LOW No provenance attestation provenance

Package was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.

v55.0.12

1 finding
LOW No provenance attestation provenance

Package was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.

v55.0.11

1 finding
LOW No provenance attestation provenance

Package was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.

v55.0.10

1 finding
LOW No provenance attestation provenance

Package was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.

v55.0.9

1 finding
LOW No provenance attestation provenance

Package was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.

v55.0.8

1 finding
LOW No provenance attestation provenance

Package was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.

v55.0.7

1 finding
LOW No provenance attestation provenance

Package was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.

v55.0.6

1 finding
LOW No provenance attestation provenance

Package was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.

v55.0.5

1 finding
LOW No provenance attestation provenance

Package was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.

v55.0.4

1 finding
LOW No provenance attestation provenance

Package was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.

v55.0.3

1 finding
LOW No provenance attestation provenance

Package was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.

v55.0.2

1 finding
LOW No provenance attestation provenance

Package was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.

v55.0.1

1 finding
LOW No provenance attestation provenance

Package was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.

v55.0.0

1 finding
LOW No provenance attestation provenance

Package was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.

v3.0.26

2 findings
LOW No provenance attestation provenance

Package was published without Sigstore provenance. Consider requesting the maintainer enable provenance via CI/CD.

INFO Publisher changed: kudochien → alanhughes (on 2026-05-28, known maintainer) provenance

This version was published by a different npm account (alanhughes) than the most recent previously approved version (kudochien) on 2026-05-28, but alanhughes is listed as a maintainer on prior approved versions (matched on name). This looks like a manual publish by a known maintainer rather than a publisher change. Recorded as INFO for audit trail.

v3.0.25

2 findings
HIGH env-spread: e2e/TestUtils.ts:17 semgrep

Spreading entire process.env into an object — may capture all secrets Source: https://github.com/expo/expo/blob/dd4e87727c4ef32ac5d8a7b5a42fd80da254140f/e2e/TestUtils.ts#L17 15 | const promise = spawnAsync(AUTOLINKINNG_CLI, args, { 16 | ...options, > 17 | env: { ...process.env, EXPO_SHOULD_USE_LEGACY_PACKAGE_INTERFACE: '1' }, 18 | }); 19 |

LOW No provenance attestation provenance

Package was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.

v3.0.24

2 findings
HIGH env-spread: e2e/TestUtils.ts:17 semgrep

Spreading entire process.env into an object — may capture all secrets Source: https://github.com/expo/expo/blob/e615daa250a27c60da3cea1f0572dcde93df5b68/e2e/TestUtils.ts#L17 15 | const promise = spawnAsync(AUTOLINKINNG_CLI, args, { 16 | ...options, > 17 | env: { ...process.env, EXPO_SHOULD_USE_LEGACY_PACKAGE_INTERFACE: '1' }, 18 | }); 19 |

LOW No provenance attestation provenance

Package was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.

v3.0.23

2 findings
HIGH env-spread: e2e/TestUtils.ts:17 semgrep

Spreading entire process.env into an object — may capture all secrets Source: https://github.com/expo/expo/blob/e8b838828e5e985379c07294dc932dba66c89562/e2e/TestUtils.ts#L17 15 | const promise = spawnAsync(AUTOLINKINNG_CLI, args, { 16 | ...options, > 17 | env: { ...process.env, EXPO_SHOULD_USE_LEGACY_PACKAGE_INTERFACE: '1' }, 18 | }); 19 |

LOW No provenance attestation provenance

Package was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.

v3.0.22

2 findings
HIGH env-spread: e2e/TestUtils.ts:17 semgrep

Spreading entire process.env into an object — may capture all secrets Source: https://github.com/expo/expo/blob/6d7c221dc8a1994043c4f2ddcf33a16bf3e508dc/e2e/TestUtils.ts#L17 15 | const promise = spawnAsync(AUTOLINKINNG_CLI, args, { 16 | ...options, > 17 | env: { ...process.env, EXPO_SHOULD_USE_LEGACY_PACKAGE_INTERFACE: '1' }, 18 | }); 19 |

LOW No provenance attestation provenance

Package was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.

v3.0.21

2 findings
HIGH env-spread: e2e/TestUtils.ts:17 semgrep

Spreading entire process.env into an object — may capture all secrets Source: https://github.com/expo/expo/blob/d3e95a82fd9d48b0b751c4290216083244b360d2/e2e/TestUtils.ts#L17 15 | const promise = spawnAsync(AUTOLINKINNG_CLI, args, { 16 | ...options, > 17 | env: { ...process.env, EXPO_SHOULD_USE_LEGACY_PACKAGE_INTERFACE: '1' }, 18 | }); 19 |

LOW No provenance attestation provenance

Package was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.

v3.0.20

2 findings
HIGH env-spread: e2e/TestUtils.ts:17 semgrep

Spreading entire process.env into an object — may capture all secrets Source: https://github.com/expo/expo/blob/1bba12a43e14a442f2cf1c73fe21968e0ef097c1/e2e/TestUtils.ts#L17 15 | const promise = spawnAsync(AUTOLINKINNG_CLI, args, { 16 | ...options, > 17 | env: { ...process.env, EXPO_SHOULD_USE_LEGACY_PACKAGE_INTERFACE: '1' }, 18 | }); 19 |

LOW No provenance attestation provenance

Package was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.

v2.1.15

2 findings
HIGH env-spread: e2e/TestUtils.ts:17 semgrep

Spreading entire process.env into an object — may capture all secrets Source: https://github.com/expo/expo/blob/fddf49c6da4a33a7826db3fcba1292aafe03b1b1/e2e/TestUtils.ts#L17 15 | const promise = spawnAsync(AUTOLINKINNG_CLI, args, { 16 | ...options, > 17 | env: { ...process.env, EXPO_SHOULD_USE_LEGACY_PACKAGE_INTERFACE: '1' }, 18 | }); 19 |

LOW No provenance attestation provenance

Package was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.

v2.1.10

2 findings
HIGH env-spread: e2e/TestUtils.ts:17 semgrep

Spreading entire process.env into an object — may capture all secrets Source: https://github.com/expo/expo/blob/907224d194d100adb3dff522d4d7be91ee43be51/e2e/TestUtils.ts#L17 15 | const promise = spawnAsync(AUTOLINKINNG_CLI, args, { 16 | ...options, > 17 | env: { ...process.env, EXPO_SHOULD_USE_LEGACY_PACKAGE_INTERFACE: '1' }, 18 | }); 19 |

LOW No provenance attestation provenance

Package was published without Sigstore provenance. Only ~12% of npm packages have provenance, so this is common but not ideal.