Skip to content

Send only the file part on the Liskov upload path (v2.3.1) - #23

Merged
firegrass merged 1 commit into
mainfrom
agent/20261027-liskov-upload-file-only
Oct 27, 2026
Merged

firegrass merged 1 commit into
mainfrom
agent/20261027-liskov-upload-file-only

Conversation

@firegrass

Copy link
Copy Markdown
Contributor

Fixes the v2.3.0 default upload, which fails for every @v2 build without ipfs-endpoint.

PROOF's upload service accepts exactly one multipart file part and refuses any other field (liskov-ipfs-infra apps/upload-api/src/multipart.ts, fields: 0 → LIA4010 "Upload request includes unexpected non-file fields."). ipfs-pin sent pinataOptions and pinataMetadata on both paths. The canary run proof-computer/liskov-upload-canary 40512089049 got the intent issued, then failed at upload with exactly this error.

  • Liskov path: only file. The token already fixes CIDv0, matching the working Liskov-side uploader (liskov-rs ipfs_upload.rs:371).
  • Proxy path (ipfs-endpoint): unchanged, with the Pinata fields kept.
  • The test pins the Liskov form to ["file"] and was mutation-checked: it fails when the fields are re-added.
  • dist rebuilt. Locally on the worktree: pnpm install --frozen-lockfile, typecheck, test (79/79), compileall, check:dist all pass.
  • CHANGELOG: adds v2.3.1 and records v2.3.0's upload change.

After merge: tag v2.3.1 (release.yml moves v2), then re-run the canary.

Refs BKLG-20261006-tae2, BKLG-20260625-jws4, ADR-0180

🤖 Generated with Claude Code

https://claude.ai/code/session_0186u36T3mfv2Jwy8ubvqtuJ

PROOF's upload service accepts exactly one multipart `file` part and refuses
any other field (liskov-ipfs-infra apps/upload-api/src/multipart.ts, fields: 0,
LIA4010). v2.3.0's default path also sent pinataOptions/pinataMetadata, so
every @v2 build without ipfs-endpoint failed at the pin step (canary run
proof-computer/liskov-upload-canary 40512089049). The token already fixes
CIDv0. The proxy path keeps the Pinata fields. The Liskov test now pins the
form to ["file"]; it fails if the fields come back.

Also records v2.3.0's upload change in the CHANGELOG.

Refs BKLG-20261006-tae2, BKLG-20260625-jws4, ADR-0180

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0186u36T3mfv2Jwy8ubvqtuJ
@firegrass
firegrass merged commit 923ecb1 into main Oct 27, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant