Skip to content

release(3.1.x): security hardening + full agentic wallet - #35

Merged
1lystore merged 3 commits into
mainfrom
release/security-wallet-3.1.x
Jul 23, 2026
Merged

release(3.1.x): security hardening + full agentic wallet#35
1lystore merged 3 commits into
mainfrom
release/security-wallet-3.1.x

Conversation

@1lystore

Copy link
Copy Markdown
Owner

Post-consolidation work on top of #31: telegram/relay/core/vault security hardening, full 14-tool cloud-agent wallet parity, swap v0/ALT decode fix, tx-history cursor fix. Publishes wallet-core 3.1.1, core 3.1.1, vault 3.1.3, relay 3.1.1. Tests green (wallet-core 87, core 228, vault 145).

1lystore added 3 commits July 24, 2026 01:35
Layers the post-consolidation work on top of the wallet-core merge (#31):

Security hardening
- telegram: TOFU /register, signed approvals/unlink, verified vault requests
- relay: RFC 8252 loopback redirect_uri, pinned pairing phrase vector
- core: fail-closed budget on non-finite/negative, consent binding to amount+dest
- vault: owner-token gate on /activity, own-scope sign_message

Agentic wallet
- full 14-tool parity for cloud-connect agents (transfer/swap/balances/history/status/search)
- swap decode fix for v0/ALT transactions (Jupiter routes now validate + sign)
- tx-history empty-cursor RPC fix

Publishes: wallet-core 3.1.1, core 3.1.1, vault 3.1.3, relay 3.1.1, agent 3.1.0.
All package tests green (wallet-core 87, core 228, vault 145).
…high)

CodeQL flagged the signed /register, /api/approvals/*, and /api/pair unlink
routes as authorization-without-rate-limiting. They verify Ed25519 vault
signatures (auth can't be forged), but had no HTTP-level request cap — a DoS
surface on the public service. Register @fastify/rate-limit globally (240/min
per IP, tunable via DCP_TELEGRAM_RATE_LIMIT), matching the relay's pattern.
…s/missing-rate-limiting)

Global @fastify/rate-limit registration wasn't linked to the class-method route
handlers by CodeQL's dataflow. Add explicit per-route config.rateLimit to each
authenticated route so the limit is visible per handler.
@1lystore
1lystore merged commit b32a94e into main Jul 23, 2026
4 checks 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