Pređi na sadržaj
Showcase projekatBlockchain i Web3
  • 223 testova
  • 100 % pokrivenost
  • analizirano Slither-om

Milestone Escrow

Escrow po fazama za frilens i agencijski rad, u ETH-u ili bilo kom standardnom ERC-20 tokenu

Solidity 0.8.28OpenZeppelin v5ETH / ERC-20Foundry

Šta je to

MilestoneEscrow je jedan on-chain escrow ugovor koji drži proizvoljan broj međusobno nezavisnih poslova. Naručilac pri kreiranju posla uplaćuje ceo budžet, podeljen na najviše 50 faza, pa frilenser pre početka rada vidi da je novac obezbeđen.

Sredstva se pomeraju samo kada naručilac oslobodi fazu, kada neutralni arbitar reši spor deleći neisplaćena sredstva u baznim poenima ili kada se posao otkaže i naručiocu se vrati novac. Mala naknada protokola — strogo ograničena na 5% i fiksirana po poslu — odbija se od isplata frilenseru; povraćaji se nikada ne naplaćuju.

Poslovni problem

Rad na daljinu između strana koje se ne poznaju nailazi na jaz u poverenju: naručioci ne žele da plate unapred, a frilenseri ne žele da isporuče pre nego što budu plaćeni. Platforme premošćuju taj jaz, ali naplaćuju znatne naknade, mogu da zamrznu naloge i rešavaju sporove na način koji stranama nije vidljiv.

Kako funkcioniše

  1. 1

    Kreiranje: naručilac poziva createJob(freelancer, arbiter, token, amounts[]) i uplaćuje ceo iznos u ETH-u ili ERC-20 tokenu. Trenutna naknada se fiksira u poslu.

  2. 2

    Isporuka: frilenser poziva requestRelease(jobId, i) da bi javio da je faza i završena.

  3. 3

    Isplata: naručilac poziva releaseMilestone(jobId, i). Frilenser prima iznos umanjen za naknadu; kada su sve faze isplaćene, posao je završen.

  4. 4

    Spor (opciono): bilo koja strana može da pokrene spor, čime se posao zamrzava. Arbitar deli svaku neisplaćenu fazu između frilensera i naručioca u baznim poenima.

  5. 5

    Otkazivanje (opciono): naručilac može da otkaže uz pun povraćaj pre nego što je bilo koji rad zatražen ili isplaćen; arbitar može da otkaže dok je posao otvoren.

Bezbednosne mere

  • nonReentrant na svakoj funkciji koja pomera vrednost; stanje se finalizuje pre eksternih poziva (checks-effects-interactions)
  • ETH isplate otporne na griefing: neuspele push uplate se knjiže za kasnije podizanje
  • Tokeni sa naknadom pri transferu (fee-on-transfer) odbijaju se proverom salda pre i posle transfera
  • Gornja granica naknade (5%) i fiksiranje naknade po poslu — vlasnik ne može da poveća naknade na već finansiranim poslovima
  • Ograničene petlje (najviše 50 faza) i tri odvojene uloge
  • Ownable2Step; administrator nikada ne može da dira sredstva poslova
  • Invarijanta solventnosti proverena fuzzingom: saldo ugovora jednak je zbiru neisplaćenih faza

Funkcije

  • Proizvoljan broj poslova u jednom ugovoru
  • Finansiranje u ETH-u ili ERC-20 tokenu
  • Do 50 faza po poslu
  • Zahtevi za isplatu i sporovi sa podelom arbitra u baznim poenima
  • Otkazivanje i povraćaj
  • Fiksirana naknada protokola, ograničena na 5%

Tipični slučajevi upotrebe

  • Frilens tržišta i agencijske platforme sa plaćanjima bez kastodije
  • B2B ugovori o uslugama sa naplatom po fazama
  • Programi grantova sa isplatom u tranšama i komisijom kao arbitrom

Poznata ograničenja

Od arbitra se očekuje neutralnost — u produkciji je to multisig, DAO ili decentralizovani sud. Rebasing tokeni nisu podržani.

Ostali showcase ugovori

Showcase

Token + Vesting + Staking

ERC-20 sa gornjom granicom i odobrenjima bez plaćanja gasa, planovi vestinga sa cliffom za tim i investitore i nagrade za staking po uzoru na Synthetix.

ERC-20EIP-2612OpenZeppelin v5

223 testova · 100 % pokrivenost · analizirano Slither‑om

Showcase

SigmaNFT Collection

Pošteno lansiranje NFT-a: allowlist i javna faza, ograničenja po novčaniku, nepromenljiva maksimalna ponuda, ERC-2981 tantijeme i odloženo otkrivanje.

ERC-721ERC-2981Merkle proofs

223 testova · 100 % pokrivenost · analizirano Slither‑om

Showcase

Gold-Backed Token (RWA)

Pokriće postaje preduslov kovanja: tokeni mogu da se kuju samo ako prijavljena zlatna rezerva pokriva novu ukupnu ponudu.

ERC-20AccessControlProof of reserve

223 testova · 100 % pokrivenost · analizirano Slither‑om

Standardi: Solidity 0.8.x, OpenZeppelin, Foundry testovi sa fuzzingom, Slither statička analiza, verifikovan izvorni kod. 223 testova · 100 % pokrivenost · analizirano Slither-om.

Imate projekat na umu?

Recite nam šta razvijate. Dobićete iskrenu procenu, jasan obim i ponudu po fiksnoj ceni ili po fazama – obično u roku od nekoliko radnih dana.

Radije biste prvo pisali? Pišite nam