← Home

@tanstack/start-server-core

17
Versions
License
No
Install Scripts
Verified
Provenance

Supply chain provenance

Status for the latest visible version.

SLSA provenance attestation npm registry signatures No source commit

Maintainers

tannerlinsleyalemtuzlakkevinvandy

Keywords

reactlocationrouterroutingasyncasync routertypescript

Accepted risks

Findings the reviewer chose to accept rather than block on.

SourceRuleReasonAccepted byWhen
phantom-deps phantom-dep:isbot AI (phantom-deps): Used in config files, not a direct import; stable false positive. ai
maintainer-change maintainer-removed AI (maintainer-change): TanStack publishes via GitHub Actions CI; individual maintainer list changes are expected org hygiene, not takeover signals. ai
publish-pattern new-deps-added AI (publish-pattern): fetchdts is a legitimate TS utility dep; package has SLSA provenance and strong ecosystem trust. ai
dependencies unvetted-dep:fetchdts AI (dependencies): fetchdts is a type-fetching utility with no runtime execution risk; TanStack publisher context makes supply-chain concern low. ai
maintainer-change maintainer-added AI (maintainer-change): lachlancollins is a known TanStack contributor; adding maintainers to a major ecosystem project is routine. ai
provenance publisher-changed AI (provenance): Transition from personal npm publish (tannerlinsley) to GitHub Actions CI/CD with SLSA provenance. This is the expected modern publishing pattern for TanStack packages. ai
publish-pattern dormant-publish AI (publish-pattern): Package has 417 versions, 5.7M weekly downloads, and SLSA provenance. Dormancy signal is a false positive for this actively maintained TanStack sub-package. ai
dependencies unvetted-dep:h3-v2 AI (dependencies): h3-v2 is a deliberate npm alias for [email protected], a known HTTP framework used intentionally by TanStack Start. This aliasing pattern is stable for this package. ai
bogus-package bogus-package AI (bogus-package): TanStack packages intentionally have minimal READMEs pointing to tanstack.com docs. This is a stable pattern across all TanStack packages, not a spam/phishing indicator. ai

Versions (showing 17 of 17)

Version Deps Published
1.169.17 7 / 4
1.167.20 6 / 6
1.132.38 7 / 3
1.132.16 7 / 3
1.132.7 7 / 3
1.131.34 9 / 4
1.131.17 9 / 4
1.130.9 9 / 4
1.128.3 8 / 4
1.121.34 9 / 5
1.120.19 8 / 3
1.120.10 8 / 3
1.120.7 8 / 3
1.120.4 8 / 3
1.120.3 8 / 3
1.119.0 8 / 3
1.117.1 8 / 3

v1.169.17

1 finding
INFO Has SLSA provenance attestation provenance

Published via CI/CD with Sigstore attestation (predicate: https://slsa.dev/provenance/v1). This is the strongest supply chain integrity signal.

v1.167.20

3 findings
HIGH GHSA-9m65-766c-r333: TanStack Start - Server Core: Inbound server-function request deserialization could invoke a sibling client-referenced server function osv

[Reject — re-review on republish] (prior reject: AI (osv): Affects all versions <1.167.30; generalizes to every pre-fix release.) ### Summary A type-confusion bug in seroval ≤ 1.5.2 ([upstream advisory](https://github.com/lxsmnsyc/seroval/security/advisories)) allowed a crafted JSON body sent to one TanStack Start server function to trigger invocation of a different client-referenced server function as a side effect of deserializing the request payload. This is not an authentication bypass and not remote code execution. The mechanism only invokes server functions that the same client could already reach directly via /_serverFn/<id>, and the target function's full middleware chain — including any user-supplied authentication, authorization, and inputValidator — runs as it would on a direct call. ### Impact To be exploitable in any meaningful sense, an application would need to expose a client-referenced server function that: - [ ] Performs a privileged side effect, and - [ ] Has no authentication/authorization middleware, and - [ ] Has no input validation A function meeting all three is already directly callable by any unauthenticated client at its own endpoint, so the practical impact on correctly-written applications is nil. The residual concerns are: A request to function A could cause function B to also execute, which may surprise observability/audit logging that keys off the request URL. Request-level middleware (as opposed to per-function middleware) does not re-run for the inner invocation. Server-only functions (isClientReferenced: false) cannot be reached through this mechanism. ### Patches Upgrade to @tanstack/start-server-core ≥ 1.167.30 (or the equivalent dated release of @tanstack/react-start / @tanstack/solid-start). The fix bumps seroval to ≥ 1.5.3 and adds defense-in-depth to the serialization adapter plugin shape so adapter payloads cannot be confused with internal seroval node types. ### Workarounds If you cannot upgrade immediately, ensure every createServerFn(...) exposed to the client has both an .inputValidator(...) and authentication/authorization middleware via .middleware([...]). This is recommended regardless of this advisory. ### Credits - [Mufeed VH](https://x.com/mufeedvh) of [Winfunc Research](https://winfunc.com/) - Upstream fix coordinated with Seroval maintainers https://github.com/lxsmnsyc/seroval

INFO Has SLSA provenance attestation provenance

Published via CI/CD with Sigstore attestation (predicate: https://slsa.dev/provenance/v1). This is the strongest supply chain integrity signal.

INFO Publisher changed: tannerlinsley → GitHub Actions (on 2026-04-24) provenance

[Accepted risk] This version was published by a different npm account than previous versions on 2026-04-24. This could indicate a legitimate maintainer transition or an account compromise.