Skip to content

test: add xdr benchmarks, fuzzing engine, connection telemetry, event monitor - #923

Merged
0xVida merged 2 commits into
0xVida:mainfrom
Ogstevyn:vitest-benchmark
Jun 1, 2026
Merged

0xVida merged 2 commits into
0xVida:mainfrom
Ogstevyn:vitest-benchmark

Conversation

@Ogstevyn

@Ogstevyn Ogstevyn commented Jun 1, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Adds a Vitest benchmark suite (ide/src/test/benchmarks/xdr.bench.ts) covering XDR decode throughput, transformLedgerEntry, filterByKeyType, searchEntries, and state-diff operations across 100-and 1000-entry payloads (closes [Testing] Benchmarks for XDR Parsing Logic #842)
  • Introduces ide/src/lib/test/FuzzingEngine.ts — a SorobanValueGenerator that produces randomised values (with targeted edge cases) for every Soroban primitive and compound type, plus a FuzzingEngine orchestrator that runs N iterations against a pluggable simulate function and reports panics and errors (closes [Testing] Fuzzing Engine for Contract Invocations #845)
  • Adds frontend/src/components/sharing/ConnectionTelemetry.tsx, a self-contained React component that manages a WebSocket connection, measures round-trip latency via ping/pong, tracks peer count, and renders a micro-animated telemetry bar with a degraded/disconnected warning overlay (closes [Frontend] Live Sharing Connection Telemetry Status #888)
  • Introduces extension/src/services/EventMonitor.ts, a VS Code service that polls the Soroban RPC getEvents endpoint on a configurable interval, writes formatted event logs (type, ledger, contract ID, topic, value preview) to a dedicated "Stellar Kit — Contract Events" output channel, and supports live filter updates by contract ID or event type (closes [Extension] VS Code View for Contract Events #874)

Test plan

  • Run cd ide && npx vitest bench --run and confirm all benchmark groups pass with numeric output
  • Instantiate FuzzingEngine with a mock simulate function and call run(), verify the returned FuzzReport contains panics and errors arrays
  • Render <ConnectionTelemetry /> in the frontend dev server — confirm the telemetry bar mounts, the pulsing indicator is visible, and the warning overlay appears when wsUrl is omitted
  • In the extension, call new EventMonitor(rpcUrl).start() and confirm the "Stellar Kit — Contract Events" output channel opens and begins logging

@vercel

vercel Bot commented Jun 1, 2026

Copy link
Copy Markdown

@Ogstevyn is attempting to deploy a commit to the vidatg's projects Team on Vercel.

A member of the Team first needs to authorize it.

@drips-wave

drips-wave Bot commented Jun 1, 2026

Copy link
Copy Markdown

@Ogstevyn Great news! 🎉 Based on an automated assessment of this PR, the linked Wave issue(s) no longer count against your application limits.

You can now already apply to more issues while waiting for a review of this PR. Keep up the great work! 🚀

Learn more about application limits

@0xVida
0xVida merged commit 003c57e into 0xVida:main Jun 1, 2026
2 of 6 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

2 participants