Preskoči na sadržaj
Showcase projektBlockchain i Web3
  • 223 testova
  • 100 % pokrivenost
  • analizirano Slitherom

Milestone Escrow

Escrow po etapama za freelance i agencijski rad, u ETH-u ili bilo kojem standardnom ERC-20 tokenu

Solidity 0.8.28OpenZeppelin v5ETH / ERC-20Foundry

Što je to

MilestoneEscrow jedan je on-chain escrow ugovor koji drži proizvoljan broj međusobno neovisnih poslova. Naručitelj pri stvaranju posla uplaćuje cijeli budžet, podijeljen na najviše 50 etapa, pa freelancer prije početka rada vidi da je novac osiguran.

Sredstva se pomiču samo kada naručitelj oslobodi etapu, kada neutralni arbitar riješi spor dijeleći neisplaćena sredstva u baznim bodovima ili kada se posao otkaže i naručitelju se vrati novac. Mala naknada protokola — strogo ograničena na 5% i fiksirana po poslu — odbija se od isplata freelanceru; povrati se nikada ne naplaćuju.

Poslovni problem

Rad na daljinu između strana koje se ne poznaju nailazi na jaz u povjerenju: naručitelji ne žele platiti unaprijed, a freelanceri ne žele isporučiti prije nego što budu plaćeni. Platforme premošćuju taj jaz, ali naplaćuju znatne naknade, mogu zamrznuti račune i rješavaju sporove na način koji stranama nije vidljiv.

Kako funkcionira

  1. 1

    Stvaranje: naručitelj poziva createJob(freelancer, arbiter, token, amounts[]) i uplaćuje cijeli iznos u ETH-u ili ERC-20 tokenu. Trenutačna naknada fiksira se u poslu.

  2. 2

    Isporuka: freelancer poziva requestRelease(jobId, i) kako bi javio da je etapa i završena.

  3. 3

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

  4. 4

    Spor (opcionalno): bilo koja strana može pokrenuti spor, čime se posao zamrzava. Arbitar dijeli svaku neisplaćenu etapu između freelancera i naručitelja u baznim bodovima.

  5. 5

    Otkazivanje (opcionalno): naručitelj može otkazati uz puni povrat prije nego što je ijedan rad zatražen ili isplaćen; arbitar može otkazati dok je posao otvoren.

Sigurnosne mjere

  • nonReentrant na svakoj funkciji koja pomiče vrijednost; stanje se finalizira prije vanjskih poziva (checks-effects-interactions)
  • ETH isplate otporne na griefing: neuspjele push uplate knjiže se za kasnije podizanje
  • Tokeni s naknadom pri prijenosu (fee-on-transfer) odbijaju se provjerom salda prije i nakon prijenosa
  • Gornja granica naknade (5%) i fiksiranje naknade po poslu — vlasnik ne može povećati naknade na već financiranim poslovima
  • Ograničene petlje (najviše 50 etapa) i tri odvojene uloge
  • Ownable2Step; administrator nikada ne može dirati sredstva poslova
  • Invarijanta solventnosti provjerena fuzzingom: saldo ugovora jednak je zbroju neisplaćenih etapa

Značajke

  • Proizvoljan broj poslova u jednom ugovoru
  • Financiranje u ETH-u ili ERC-20 tokenu
  • Do 50 etapa po poslu
  • Zahtjevi za isplatu i sporovi s podjelom arbitra u baznim bodovima
  • Otkazivanje i povrat
  • Fiksirana naknada protokola, ograničena na 5%

Tipični slučajevi upotrebe

  • Freelance tržnice i agencijske platforme s plaćanjima bez skrbništva
  • B2B ugovori o uslugama s naplatom po etapama
  • Programi potpora s isplatom u tranšama i povjerenstvom kao arbitrom

Poznata ograničenja

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

Ostali showcase ugovori

Showcase

Token + Vesting + Staking

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

ERC-20EIP-2612OpenZeppelin v5

223 testova · 100 % pokrivenost · analizirano Slitherom

Showcase

SigmaNFT Collection

Pošteno lansiranje NFT-a: allowlist i javna faza, ograničenja po novčaniku, nepromjenjiva najveća ponuda, ERC-2981 tantijeme i odgođeno otkrivanje.

ERC-721ERC-2981Merkle proofs

223 testova · 100 % pokrivenost · analizirano Slitherom

Showcase

Gold-Backed Token (RWA)

Pokriće postaje preduvjet kovanja: tokeni se mogu kovati samo ako prijavljena zlatna rezerva pokriva novu ukupnu ponudu.

ERC-20AccessControlProof of reserve

223 testova · 100 % pokrivenost · analizirano Slitherom

Standardi: Solidity 0.8.x, OpenZeppelin, Foundry testovi s fuzzingom, Slither statička analiza, verificirani izvorni kod. 223 testova · 100 % pokrivenost · analizirano Slitherom.

Imate projekt na umu?

Recite nam što gradite. Dobit ćete iskrenu procjenu, jasan opseg i ponudu s fiksnom cijenom ili po fazama – obično u roku od nekoliko radnih dana.

Radije biste prvo pisali? Pišite nam