Skip to content

feat(vibenet): add Validity demo for conditional inclusion - #106

Draft
BrianBland wants to merge 6 commits into
mainfrom
validity-demo
Draft

feat(vibenet): add Validity demo for conditional inclusion#106
BrianBland wants to merge 6 commits into
mainfrom
validity-demo

Conversation

@BrianBland

@BrianBland BrianBland commented Aug 27, 2026

Copy link
Copy Markdown

Summary

  • Add a Vibenet demo at /vibenet/demos/validity that attaches storage and block predicates to a swap so the sequencer includes it only while those conditions hold.
  • Drive a simulated 0% fee AMM so the conditions are visible on a moving mid, with 5s / 15s / 60s expiry and replacement fee bumps.
  • Point the proxy at public Vibenet RPC and fund the demo EOA through the existing faucet (no unauthenticated funder drip).

Note: this depends on Vibenet supporting validity transactions. All testing so far has been done on Zeronet instead.

Test plan

  • npx vitest run app/vibenet/demos/validity app/api/vibenet/validity app/vibenet/demos/catalogue.test.ts
  • Open /vibenet/demos/validity, confirm faucet funds an empty EOA, then Deploy pool
  • Submit a ±0% and an offset conditional swap; confirm it lands or expires and the submitted JSON matches the tx
  • Confirm explorer links for filled txs go to /vibenet/explorer/tx/...
  • Confirm no VALIDITY_DEMO_FUNDER_KEY is required (and the drip route is absent)
image image

@vercel

vercel Bot commented Aug 27, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
omni-ui Ready Ready Preview Aug 28, 2026 11:42pm

Request Review

@cb-heimdall

Copy link
Copy Markdown
Collaborator

🟡 Heimdall Review Status

Requirement Status More Info
Reviews 🟡 0/1
Denominator calculation
Show calculation
1 if user is bot 0
1 if user is external 0
2 if repo is sensitive 0
From .codeflow.yml 1
Additional review requirements
Show calculation
Max 0
0
From CODEOWNERS 0
Global minimum 0
Max 1
1
1 if commit is unverified 0
Sum 1

1 similar comment
@cb-heimdall

Copy link
Copy Markdown
Collaborator

🟡 Heimdall Review Status

Requirement Status More Info
Reviews 🟡 0/1
Denominator calculation
Show calculation
1 if user is bot 0
1 if user is external 0
2 if repo is sensitive 0
From .codeflow.yml 1
Additional review requirements
Show calculation
Max 0
0
From CODEOWNERS 0
Global minimum 0
Max 1
1
1 if commit is unverified 0
Sum 1

BrianBland and others added 5 commits August 28, 2026 13:44
Show how a swap can wait on storage and block predicates, then land or expire on a simulated AMM, using Vibenet RPC and the existing faucet.

Co-authored-by: Cursor <cursoragent@cursor.com>
Unwidened artifact ABIs so parseEventLogs can see Swap/Sync/PairCreated args, and include side on occupying-order picks so replacement analytics typecheck.

Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Pair each submitted JSON field with a meaning column so address, slot, mask, and bounds read as reserve and block checks.

Co-authored-by: Cursor <cursoragent@cursor.com>
Denim is 200ms, so predicates and the tape need that clock. Nonceless 8130
lets several conditions sit in the Vibenet mempool without replacing each other.

Co-authored-by: Cursor <cursoragent@cursor.com>
Use the Account engine for the trader and makers, subscribe to Vibenet
/ws for heads and pair logs, and keep validity submits on HTTP.

Co-authored-by: Cursor <cursoragent@cursor.com>
}
if (body.method === 'eth_subscription') {
const id = body.params?.subscription;
if (id) listeners.get(id)?.(body.params?.result);
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.

3 participants