Skip to content

chore: bump tempo.ts to 0.14.2 and remove blockSignTransaction middleware#718

Merged
struong merged 5 commits intomainfrom
chore/bump-tempo-ts-fee-payer
Mar 14, 2026
Merged

chore: bump tempo.ts to 0.14.2 and remove blockSignTransaction middleware#718
struong merged 5 commits intomainfrom
chore/bump-tempo-ts-fee-payer

Conversation

@struong
Copy link
Member

@struong struong commented Mar 14, 2026

motivation

The eth_signTransaction vulnerability (sponsor key misuse) was patched upstream in tempo-ts#148. Handler.feePayer now rejects eth_signTransaction at the library level, making the application-level blockSignTransactionMiddleware (added in #713) redundant.

Additionally, Handler.feePayer in 0.14.1 had a bug where it only accepted 0x76-prefixed transactions, but withFeePayer from viem/tempo sends 0x78-prefixed (fee-payer format) transactions. This was fixed upstream in tempo-ts#151 and released as 0.14.2.

changes

  • tempo.ts bumped to ^0.14.2 in the workspace catalog
  • blockSignTransactionMiddleware removed — deleted file and its import/usage in index.ts
  • Rate-limit middleware hardenedparams[0] is now checked with typeof === "string" before calling .startsWith(), and accepts both 0x76 and 0x78 prefixes
  • Tests updated — the e2e test for eth_signTransaction rejection now asserts the library-level error instead of the old middleware 403; the rate-limit test for the removed middleware is deleted

testing

  • pnpm --filter fee-payer test — all 9 tests pass
  • pnpm check and pnpm check:types pass
  • CI fully green

@github-actions
Copy link

github-actions bot commented Mar 14, 2026

Bundle Size Report

Metric Size Δ Change
Total 5.1 MB +294.7 KB (+6.0%)
Gzip 1.4 MB +144.2 KB (+10.8%)
Brotli 1.2 MB +120.6 KB (+10.5%)
Chunk changes (>1KB)
Chunk Change
assets/KeyManager.js (removed) -477.4 KB
assets/QueryBuilder.js (removed) -423.4 KB
assets/Intro.js (removed) -66.0 KB
assets/createSsrRpc.js (removed) -43.8 KB
assets/Hash.js (removed) -31.0 KB
assets/_layout.js -21.4 KB
assets/stringify.js (removed) -19.7 KB
assets/isAddressEqual.js -18.4 KB
assets/address.js -14.1 KB
assets/Address.js -13.1 KB
assets/base.js (removed) -12.8 KB
assets/token.server.js (removed) -9.8 KB
assets/tx.js -9.7 KB
assets/utils.js -7.6 KB
assets/validators.js (removed) -5.9 KB
assets/sha3.js (removed) -5.5 KB
assets/TxEventDescription.js -2.3 KB
assets/useWatchBlockNumber.js (removed) -2.1 KB
assets/tty.js (removed) -1.8 KB
assets/tokens.server.js (removed) -1.8 KB
...and 26 more

Compared against main branch (baseline from 2/4/2026, 5:13:51 PM)

@struong struong changed the title fix: bump tempo.ts to 0.14.1 and remove blockSignTransaction middleware chore: bump tempo.ts to 0.14.1 and remove blockSignTransaction middleware Mar 14, 2026
@github-actions
Copy link

github-actions bot commented Mar 14, 2026

Cloudflare Deployments

App Environment Status Preview
explorer devnet [OK] Deployed View Preview
explorer mainnet [OK] Deployed View Preview
explorer testnet [OK] Deployed View Preview
fee-payer devnet [OK] Deployed View Preview
fee-payer moderato [OK] Deployed View Preview
fee-payer privy [OK] Deployed View Preview
og - [OK] Deployed View Preview
tokenlist - [OK] Deployed View Preview

…ware

tempo-ts 0.14.1 (tempoxyz/tempo-ts#148) patches eth_signTransaction
at the library level, making the application-level middleware (#713)
redundant.

Changes:
- Bump tempo.ts from ^0.14.0 to ^0.14.1 in workspace catalog
- Remove blockSignTransactionMiddleware (now handled by tempo.ts)
- Inline fee-payer handler directly in Hono instead of using
  Handler.feePayer from tempo.ts
- Accept both 0x76 and 0x78 Tempo transaction prefixes (0x78 is
  the fee-payer serialization format used by withFeePayer)
- Harden rate-limit middleware to handle non-string params
- Update tests to match library-level MethodNotSupportedError
@struong struong force-pushed the chore/bump-tempo-ts-fee-payer branch from 2ae2aa5 to 038391d Compare March 14, 2026 03:35
@struong struong changed the title chore: bump tempo.ts to 0.14.1 and remove blockSignTransaction middleware chore: bump tempo.ts to 0.14.2 and remove blockSignTransaction middleware Mar 14, 2026
@struong struong merged commit 5afc476 into main Mar 14, 2026
14 checks passed
@struong struong deleted the chore/bump-tempo-ts-fee-payer branch March 14, 2026 21:51
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