Files
pezkuwi-subxt/polkadot/roadmap/implementers-guide
Marcin S 0940cdd1d7 PVF: Don't dispute on missing artifact (#7011)
* PVF: Don't dispute on missing artifact

A dispute should never be raised if the local cache doesn't provide a certain
artifact. You can not dispute based on this reason, as it is a local hardware
issue and not related to the candidate to check.

Design:

Currently we assume that if we prepared an artifact, it remains there on-disk
until we prune it, i.e. we never check again if it's still there.

We can change it so that instead of artifact-not-found triggering a dispute, we
retry once (like we do for AmbiguousWorkerDeath, except we don't dispute if it
still doesn't work). And when enqueuing an execute job, we check for the
artifact on-disk, and start preparation if not found.

Changes:

- [x] Integration test (should fail without the following changes)
- [x] Check if artifact exists when executing, prepare if not
- [x] Return an internal error when file is missing
- [x] Retry once on internal errors
- [x] Document design (update impl guide)

* Add some context to wasm error message (it is quite long)

* Fix impl guide

* Add check for missing/inaccessible file

* Add comment referencing Substrate issue

* Add test for retrying internal errors

---------

Co-authored-by: parity-processbot <>
2023-04-20 13:38:31 +00:00
..
2020-07-07 10:10:36 -04:00
2022-11-23 08:20:25 -05:00

The Polkadot Parachain Host Implementers' Guide

The implementers' guide is compiled from several source files with mdBook.

Hosted build

This is available here.

Local build

To view it locally from the repo root:

Ensure graphviz is installed:

brew install graphviz # for macOS
sudo apt-get install graphviz # for Ubuntu/Debian

Then install and build the book:

cargo install mdbook mdbook-linkcheck mdbook-graphviz mdbook-mermaid mdbook-last-changed
mdbook serve roadmap/implementers-guide

and in a second terminal window run:

open http://localhost:3000

Specification

See also the Polkadot specification hosted, and its source.