1+ <!-- SPDX-License-Identifier: MIT -->
12> [ !NOTE]
23> This repository is the ecosystem contribution workspace for Sub Rosa,
34> created specifically for participation in the Stellar Wave program. The main
1112
1213** 1st Place — Hack Privacy Track, Build On Stellar Hackathon — IBW 2026**
1314
14- ** Verifiable allocation infrastructure for Stellar grants, hackathons,
15- bounties, RFPs, and sealed auctions.** Participants submit sealed scores, bids,
16- or allocation decisions now; a public, unbiased Drand round unseals them later,
17- verifiably and all at once. The protocol — not the operator — owns fairness.
15+ ** Escrow-backed sealed auction infrastructure for Stellar.** Bidders lock
16+ Stellar assets, submit bids that stay unreadable until a public Drand reveal,
17+ and Soroban settles the winner payment and loser refunds deterministically.
1818
1919> Built on what's proven. Sealed by math, not by trust.
2020
2121Sub Rosa is now evolving from a hackathon-winning privacy demo into reusable
22- allocation infrastructure for Stellar apps: a Soroban primitive, TypeScript
23- SDK, keeper service, and integration templates for teams that need sealed
24- judging, scoring, bidding, or allocation without building cryptography from
25- scratch.
22+ auction infrastructure for Stellar apps: a Soroban primitive, TypeScript SDK,
23+ tlock package, keeper service, and integration templates for teams that need
24+ sealed bids with on-chain settlement.
2625
27- Target next milestone: ** Stellar Community Fund Build Award ** . The goal is to
28- turn the current proof into production-ready developer infrastructure:
29- ` @sub-rosa/sdk ` , optional React hooks/components, hosted keeper/reveal
30- operations, hardened contracts, and mainnet launch .
26+ Target next milestone: a focused ** ecosystem build/funding award ** resubmission.
27+ The next application should include a named sealed-auction pilot or design
28+ partner, public testnet round receipts, an external funds-handling review
29+ milestone, and a capped mainnet beta path .
3130
3231Licensed under [ MIT] ( ./LICENSE ) .
3332
@@ -49,16 +48,17 @@ See [docs/LIMITATIONS.md](./docs/LIMITATIONS.md) for honest scope (mainnet ≠ f
4948
5049## Pilot plan
5150
52- Sub Rosa's first pilot will run with ** OverBlock ** as an internal
53- builder/community environment for sealed judging, bounty allocation, and
54- grant-style scoring workflows .
51+ Sub Rosa's next pilot target is a ** sealed auction or competitive bid round **
52+ with a named Stellar ecosystem team, marketplace, asset issuer, or
53+ auction platform .
5554
56- Beyond OverBlock, we are actively preparing external pilot conversations with
57- Stellar ecosystem teams, hackathon organizers, DAOs, and grant/RFP programs
58- that need sealed scoring, sealed bidding, or verifiable allocation workflows .
55+ The pilot should prove more than "the code works": it should publish round IDs,
56+ participant count, total escrow, settlement/refund receipts, partner feedback,
57+ and a go/no-go decision for a capped mainnet beta .
5958
60- See [ docs/PILOT_PLAYBOOK.md] ( ./docs/PILOT_PLAYBOOK.md ) for the pilot scope,
61- SCF-style demo narrative, and outreach message.
59+ See [ docs/PILOT_PLAYBOOK.md] ( ./docs/PILOT_PLAYBOOK.md ) for pilot scope and
60+ outreach, and [ docs/FUNDING_STRATEGY.md] ( ./docs/FUNDING_STRATEGY.md ) for the
61+ funding/resubmission strategy.
6262
6363---
6464
@@ -94,8 +94,9 @@ const sealed = await sealBid({
9494await client .commit ({ roundId , sealed , escrow });
9595```
9696
97- The app layer can be a DAO tool, grants platform, auction UI, RFP workflow, or
98- allocation dashboard. Sub Rosa supplies the sealed round state machine.
97+ The first app layer should be an auction or competitive bid UI. Other workflows
98+ can still embed the sealed round primitive later, but they no longer lead the
99+ core story.
99100
100101---
101102
@@ -130,15 +131,17 @@ pnpm mainnet:micro # dry-run checklist; --execute needs MAINNET_CONFIR
130131
131132## The idea
132133
133- Public ledgers are transparent by default, which quietly breaks fair allocation
134- when participants or judges can see each other's inputs too early. That affects
135- grant scoring, hackathon judging, bounty allocation, RFPs, and sealed auctions.
136- The usual "fix" trusts the operator. Sub Rosa removes the operator from the
137- trust path entirely:
134+ Public ledgers are transparent by default, which breaks sealed auctions when
135+ bidders can see the current clearing price before close. The usual "fix" is to
136+ collect bids off-chain and trust the operator. Sub Rosa removes that operator
137+ from the trust path:
138138
139139- ** Seal** each bid with Drand timelock encryption (` tlock ` ) to a future round R.
140140- ** Force-open** at R: BLS12-381 verified ** on-chain** — simultaneous reveal.
141- - ** Settle** deterministically. Identities disclosed only to the auditor.
141+ - ** Settle** deterministically: winner escrow pays the operator; losers are
142+ refunded.
143+ - ** Disclose selectively:** bid values become public after reveal; identities
144+ can remain auditor-only.
142145
143146See ** [ ARCHITECTURE.md] ( ./ARCHITECTURE.md ) ** for the system map, lifecycle, trust boundaries, and monorepo layout.
144147
@@ -172,8 +175,11 @@ pnpm mainnet:verify # mainnet read-only proof
172175| Doc | Purpose |
173176| --- | --- |
174177| ** [ ARCHITECTURE.md] ( ./ARCHITECTURE.md ) ** | System overview, lifecycle, trust boundaries, repo map |
175- | [ docs/SCF_PLAN.md] ( ./docs/SCF_PLAN.md ) | SCF Build framing, tranches, deliverables, ecosystem value |
176- | [ docs/PILOT_PLAYBOOK.md] ( ./docs/PILOT_PLAYBOOK.md ) | OverBlock pilot scope, external pilot outreach, SCF-style demo narrative |
178+ | [ docs/PLATFORM_PLAN.md] ( ./docs/PLATFORM_PLAN.md ) | Partner-ready protocol, SDK, template, and pilot delivery plan |
179+ | [ docs/BUILD_PLAN.md] ( ./docs/BUILD_PLAN.md ) | Focused build/funding framing for sealed auction infrastructure |
180+ | [ docs/GRANT_SUBMISSION.md] ( ./docs/GRANT_SUBMISSION.md ) | Grant submission narrative for the sealed auction product |
181+ | [ docs/FUNDING_STRATEGY.md] ( ./docs/FUNDING_STRATEGY.md ) | Reviewer feedback response and resubmission strategy |
182+ | [ docs/PILOT_PLAYBOOK.md] ( ./docs/PILOT_PLAYBOOK.md ) | Sealed auction pilot scope, outreach, and report template |
177183| [ docs/INTEGRATION.md] ( ./docs/INTEGRATION.md ) | How another Stellar app embeds Sub Rosa |
178184| [ docs/TECH_DESIGN.md] ( ./docs/TECH_DESIGN.md ) | Cryptography, storage, settlement rails |
179185| [ docs/THREAT_MODEL.md] ( ./docs/THREAT_MODEL.md ) | Adversaries, mitigations, honest limits |
@@ -195,19 +201,17 @@ pnpm mainnet:verify # mainnet read-only proof
195201- [x] Jury UI — one canonical testnet trace (status, bidders, R, auditor blobs, session keys)
196202- [x] Watch-mode keeper (` pnpm keeper:watch ` )
197203
198- ## SCF roadmap
204+ ## Funding roadmap
199205
200206| Tranche | Goal | Deliverables |
201207| --- | --- | --- |
202- | 1 | Developer infrastructure | Publish-ready ` @sub-rosa/sdk ` , integration docs, contract hardening, test vectors |
203- | 2 | Testnet pilots | Hosted keeper, reusable UI hooks/components, partner pilot templates, testnet dashboards |
204- | 3 | Mainnet launch | Audited/open-source contracts, mainnet deployment, production keeper ops, launch docs |
208+ | 1 | Auction integration package | Publish-ready ` @sub-rosa/sdk ` , sealed auction docs, contract hardening, test vectors |
209+ | 2 | Named testnet pilot | Hosted keeper, operator dashboard, public pilot report, partner feedback |
210+ | 3 | Capped mainnet beta | Reviewed contracts, production keeper ops, capped real-asset round , launch docs |
205211
206212## Cryptographic design (Privacy track)
207213
208214- ** Seal:** Drand tlock IBE, ` bls-unchained-g1-rfc9380 `
209215- ** Binding:** ` H = sha256(value‖nonce) `
210216- ** Unlock:** round-R BLS verified on-chain before reveal
211217- ** Selective disclosure:** values public post-R; identities auditor-encrypted
212-
213- all done
0 commit comments