• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

decentraland / atlas-server / 32498039887
42%
master: 41%

Build:
Build:
LAST BUILD BRANCH: fix/trade-status-v3-semantics
DEFAULT BRANCH: master
Ran 21 Aug 2026 03:32PM UTC
Jobs 1
Files 39
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

21 Aug 2026 03:31PM UTC coverage: 41.554% (+0.06%) from 41.494%
32498039887

Pull #144

github

LautaroPetaccio
fix: apply the V3 trade status semantics to the map query

atlas-server is the second consumer of squid_trades and its query carried
every defect just fixed in marketplace-server. Since getActiveTrades feeds
the map, the symptom is parcels and estates showing as for sale when they are
not.

Cancellations counted any row regardless of who cancelled. cancelSignature
takes no signer check, and the contract scopes the flag to
keccak256(caller, digest) while settlement reads keccak256(signer, digest),
so a stranger cancelling is a no-op on chain - anyone could grief a listing
off the map while it stayed settleable.

Cancellations were matched only on keccak256(signature bytes), so V3, which
keys them on the trade's EIP-712 digest, would never have resolved and
cancelled V3 land would have stayed on the map indefinitely.

The signer index was matched on address alone. A row's identity is
address + contract + network, so that returned several rows and split one
trade into several GROUP BY groups with contradictory statuses - and because
this query keeps only status = open, the stale group survived.

The contract index was a hardcoded list holding only the Ethereum V1 address,
joined by network, so it never described the marketplace a trade targets.

Executed fills were counted per joined asset row rather than per indexer row,
so a multi-use listing read sold early.
Pull Request #144: fix: apply the V3 trade status semantics to the map query

298 of 412 branches covered (72.33%)

Branch coverage included in aggregate %.

30 of 30 new or added lines in 1 file covered. (100.0%)

1488 of 3886 relevant lines covered (38.29%)

11.95 hits per line

Jobs
ID Job ID Ran Files Coverage
1 32498039887.1 21 Aug 2026 03:32PM UTC 78
40.06
GitHub Action Run
Source Files on build 32498039887
  • Tree
  • List 39
  • Changed 37
  • Source Changed 1
  • Coverage Changed 37
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #32498039887
  • Pull Request #144
  • PR Base - master (#28556936904)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc