OnlyDust Wave 2: Help Us Make Escrows Observable
technical

OnlyDust Wave 2: Help Us Make Escrows Observable

2025-07-22

onlydustopen-sourceindexingstellarsorobantrustlesswork

🚨 Wave 2 is LIVE.
🔎 This time, we’re indexing escrows.
🧪 7 spikes. 3 networks. Real experience. Join the campaign.


🔥 OnlyDust Wave 2 is Here

After a killer first wave where we shipped contract upgrades, dashboards, and explorer tools — we’re back with Wave 2 on OnlyDust.

This time, the theme is data:

Make escrow activity observable, searchable, and composable.

We’ve launched 7 open spikes focused on indexing the full lifecycle of an escrow on Stellar + Soroban — using SubQuery, The Graph, and Goldsky.

If you're a builder, Rust dev, indexer hacker, or just curious about the Stellar data layer...

This is for you.


🧠 Why Indexing?

Trustless Work is non-custodial escrow infrastructure — but smart contracts alone aren’t enough.

To support dashboards, explorers, and composable integrations, we need:

  • Soroban events emitted by the contract
  • Stellar effects (like account_credited) tracked off-chain
  • Indexers that stream, store, and expose that data

We’re building that observability layer — and Wave 2 is your chance to help shape it.


🔁 Same Data, Three Networks

Each of the 7 spikes tackles the same challenge: indexing escrow activity.
What changes? The tool.

Here’s how each indexing tool maps:

  • SubQuery

    • ✅ Event indexing via EventHandler
    • ✅ Effect indexing via EffectHandler
  • The Graph (with Substreams)

    • ✅ Streams events from Soroban into subgraphs
    • ✅ Parses ledger data for balance effects
  • Goldsky

    • ✅ No-code event listener with GraphQL
    • ✅ No-code effect tracker for direct funding

It’s a learning playground for anyone building with Stellar, Soroban, or Web3 data infra.


🛠️ The 7 Spikes (Open Now)

Each task is scoped and ready on GitHub and OnlyDust:

📦 Contract Layer

1. Emit Events in Smart Escrow
Add env.events().publish(...) at key points: init_esc, fund_esc, release.

Enables all event-based indexing going forward.


⚙️ SubQuery Indexing

2. Index Events with SubQuery
Parse Soroban logs into Postgres with SubQuery’s EventHandler.

3. Detect Direct Funding via Effects
Catch account_credited when users skip fund_escrow().

Real-time contract monitoring — even without events.


🧬 The Graph

4. Index Events via Substreams
Stream event data with Rust → map into subgraph with AssemblyScript.

5. Detect Direct Funding via Substreams
Use low-level Stellar data to catch escrow USDC transfers.

Fully decentralized indexing flow.


⚡ Goldsky

6. Track Events via Goldsky
GraphQL endpoint for contract logs like init_esc.

7. Detect Direct Funding via Goldsky
Configure an effect listener for external USDC transfers into escrows.

Fastest path to working queries.


✨ Learn by Building

This is open-source work designed to also be a sandbox for learning:

  • How Stellar effects work
  • How to index Soroban events
  • How Substreams, SubQuery, and Goldsky differ
  • How escrow flows get composable and auditable

You’ll walk away with real repo PRs, deep indexing knowledge, and a clearer understanding of Web3 observability.


👉 How to Join

🛠 Claim a bounty:
Go to OnlyDust → Trustless Work and apply.

🌐 Explore the Product Repo for more Spikes:
GitHub – Open-source and testnet-ready

📘 Learn the smart escrow flow:
Docs – Role logic, lifecycle, API, and config


Let’s build the data layer for programmable trust.
Let’s make smart escrows observable.
Pura Vida!

🧠💥