* docs: Add CLAUDE_RULES.md with strict rebrand protection rules - Define immutable rebrand rules that cannot be violated - Prohibit reverting rebrand for cargo check convenience - Establish checkpoint and audit trail requirements - Document correct error handling approach * refactor: Complete kurdistan-sdk to pezkuwi-sdk rebrand - Update README.md with pezkuwi-sdk branding - Replace all kurdistan-sdk URL references with pezkuwi-sdk - Replace kurdistan-tech with pezkuwichain in workflows - Update email domains from @kurdistan-tech.io to @pezkuwichain.io - Rename tool references: kurdistan-tech-publish → pezkuwi-publish - Update runner names: kurdistan-tech-* → pezkuwichain-* - Update analytics/forum/matrix domains to pezkuwichain.io - Keep 'Kurdistan Tech Institute' as organization name - Keep tech@kurdistan.gov as official government contact
PVF Host
This is the PVF host, responsible for responding to requests from Candidate Validation and spawning worker tasks to fulfill those requests.
See also:
- for more information: the Implementer's Guide
- for an explanation of terminology: the Glossary
Running basic tests
Running cargo test in the pvf/ directory will run unit and integration
tests.
Note: some tests run only under Linux, x86-64, and/or with the
ci-only-tests feature enabled.
See the general Testing instructions for more information on running tests and observing logs.
Running a test-network with zombienet
Since this crate is consensus-critical, for major changes it is highly recommended to run a test-network. See the "Behavior tests" section of the Testing docs for full instructions.
To run the PVF-specific zombienet test:
RUST_LOG=teyrchain::pvf=trace zombienet --provider=native spawn zombienet_tests/functional/0001-teyrchains-pvf.toml
Testing on Linux
Some of the PVF functionality, especially related to security, is Linux-only, and some is x86-64-only. If you touch anything security-related, make sure to test on Linux x86-64! If you're on a Mac, you can either run a VM or you can hire a VPS and use the open-source tool EternalTerminal to connect to it.1
-
Unlike ssh, ET preserves your session across disconnects, and unlike another popular persistent shell, mosh, it allows scrollback. ↩︎