Skip to content

Residual 413s on git-receive-pack for a 13.6MB repo even with --body-limit 200MB #561

Description

@melvincarvalho

Problem

With --body-limit 200MB set (verified identical behavior via the flag and via JSS_BODY_LIMIT=200MB), pushing solid-chat/app (13.6MB repo) via jss install still produces 413 responses on some of the git-receive-pack POSTs (jss 0.0.207):

"url":"/public/apps/chat/git-receive-pack","statusCode":200   (×2)
"url":"/public/apps/chat/git-receive-pack","statusCode":413   (×2)

A 13.6MB pack should never trip a 200MB cap, so something else is rejecting those POSTs. Candidates worth checking:

  • size-string parsing of the limit ("200MB"parseSize) silently failing for some path and falling back to a smaller route-level cap
  • a per-route/route-config bodyLimit on the git handler that doesn't inherit the global override
  • git's multi-POST behavior (probe + pack, or per-branch packs in the dual-push) where one POST hits a different limit

Despite the 413s, the working tree extracts and the app serves — which turns this into a misleading-failure UX (see companion issue on jss install reporting).

Also noticed: jss start --print-config doesn't include bodyLimit, which made diagnosing this harder — worth adding while in here.

Repro: fresh pod jss start --port 5778 --root /tmp/x --idp --single-user --single-user-password me --git --body-limit 200MB, then mkdir -p /tmp/x/public/apps and jss install --pod http://localhost:5778 "solid-chat/app=chat".

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions