Skip to content

feat: add gasless to default preinstalled petals - #146

Open
0xdewy wants to merge 7 commits into
masterfrom
feat/gasless-default-petal
Open

feat: add gasless to default preinstalled petals#146
0xdewy wants to merge 7 commits into
masterfrom
feat/gasless-default-petal

Conversation

@0xdewy

@0xdewy 0xdewy commented Aug 4, 2026

Copy link
Copy Markdown
Contributor

Summary

Adds gasless as a default preinstalled petal alongside polymarket and near-intents.

Gasless is a clean single-purpose Relay EIP-3009 permit petal (5 routes, 13/13 tests). The legacy Hyperliquid deposit module was removed — all chain pairs including Hyperliquid flow through the canonical generic transactions/<wallet>/<id>.json route.

Catalog pin: bloom-petal-gasless v0.1.0, commit 727765f, hash d597058a

Changes:

  • github_source.rs: GASLESS_RELEASE_COMMIT + PREINSTALLED_GASLESS catalog entry + "gasless" match arm
  • config.rs: default_preinstalled_petals() = ["polymarket", "near-intents", "gasless"] + 4 test assertions

Tests: 42/42 bloom tests pass, 32/32 config tests pass.

Depends on: bloom-petal-gasless v0.1.0 release (✅ published)

Checklist

  • Tests added or updated for behavior changes — test assertions added in config.rs for the new default petal
  • Architecture docs (docs/architecture/) updated if contracts or behavior changed — N/A (config-only change, no contract/behavior change)
  • Sealed Approval invariants respected (no signing outside a grant or bounded capability, no PRF/grant persistence, execution from sealed bytes) — N/A (no signing logic touched)
  • Agent Documentation updated (crates/bloom-vfs/src/docs/agent-guidance.md and affected Petal READMEs) — N/A (no agent-facing behavior change)

0xdewy added 4 commits August 6, 2026 23:23
Wire gasless Relay petal into bloom core as a default preinstalled petal:

- Add PREINSTALLED_GASLESS catalog entry in github_source.rs
  (repo bloom-directory/bloom-petal-gasless, pinned to audit-fixes
  commit bef056f, release v0.1.0, hash 545cf8d2...)
- Add 'gasless' to preinstalled_petal() match resolver
- Add 'gasless' to default_preinstalled_petals() in config.rs
- Update config validation allow-list and all test assertions

The gasless petal enables EIP-3009 permit-based gasless transfers and
swaps via Relay across 6 chains (ethereum, base, arbitrum, optimism,
polygon, avalanche). Signing uses the generic petal:* attestation
path — no auth-api changes needed.
After deleting the legacy Hyperliquid module (1,612 lines, 7 route files),
the petal has 5 routes instead of 13 and a new package hash. Update the
catalog pin:

- commit: bef056f → 727765f (audit-fixes HEAD after legacy removal)
- hash: 545cf8d2 → d597058a (rebuilt, verified deterministic)
- signing intents: gasless.deposit removed (petal.toml already clean)
Pin gasless to commit 73ccf05 / release v0.1.1. Includes comprehensive
agent-facing documentation (state machine, token reference table,
self-documenting status.json) and removes the now-unused
GASLESS_RELEASE_COMMIT constant.
Match the polymarket/near-intents pattern: define a GASLESS_RELEASE_COMMIT
constant with the full 40-char SHA, reference it from the PreinstalledPetal
struct. Also fixes the v0.1.1 petal-release.json to include all required
schema fields (archive_sha256, source_repository, tooling_commit, etc).
@0xdewy
0xdewy force-pushed the feat/gasless-default-petal branch from 2d55baf to be6bf79 Compare August 6, 2026 20:24
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