Skip to main content

No project description provided

Project description

Python client for Tread contracts

Getting started

This project is using the following tools:

You can install these as follows:

> brew install pipx
> pipx ensurepath
> pipx install poetry
> poetry completions bash >> ~/.bash_completion

With poetry, you can install dependencies as follows. Note that if you do not have a virtual env active, poetry will automatically create and manage one for you, specific to this project.

> poetry install

Run tests

You can run simple tests as follows. These will run on the Sepolia Base testnet by default.

# Note: Make sure the poetry virtualenv is active, e.g. `source .venv/bin/activate`.
#
# Run with Gelato meta-transactions (enabled by default).
> python -m test_client.main auto
# Run with meta-transactions disabled.
> python -m test_client.main auto false

Publish to PyPI

Make sure the version field in pyproject.toml is updated as needed.

poetry publish --build

Example transactions

Trader ID

Reading a record or writing an attestations requires a trader ID. We are using 0xABCD as a mock trader ID for these examples.

Contract read example

> python -m test_client.main read-info

Attestations contract 0xB4f9A1f1347b7D8eb97dC70672576BB96E0510e0:
  data group members: 0x64D8672534A169B0340fA10F6340CE45aE36d0e7
  epoch length: 600 seconds
  epoch zero start: 0 (1969-12-31 19:00:00 local)
  Current epoch number: 2880124
  Current epoch 2880124 starts at 1728074400 (2024-10-04 16:40:00 local) and ends at 1728075000 (2024-10-04 16:50:00 local)

Data attestation write example

> python -m test_client.main write-data 0xABCD 0 0x1234 mock-cid

Submitted transaction 0x2280079a88ae3af1923feeb40e0938862d7f141c1c87d31d5da0ca189c1010c7. Waiting for confirmation...
Transaction confirmed in block 16153093

Data attestation read example

> python -m test_client.main read-data 0xABCD 0

Consensus for epoch 0:
  Merkle root: 0x0000000000000000000000000000000000000000000000000000000000001234

Risk end-to-end example

>  python -m test_client.main create-group 0x64D8672534A169B0340fA10F6340CE45aE36d0e7 1

Submitting and waiting for transaction...
Created risk group 1

> python -m test_client.main read-group 1

Risk group 1:
  members: ['0x64D8672534A169B0340fA10F6340CE45aE36d0e7']
  threshold: 1

> python -m test_client.main create-parameter mock-name mock-desc

Submitting and waiting for transaction...
Created risk parameter 0

> python -m test_client.main read-parameter 0

Risk parameter 0:
  name: mock-name
  description: mock-desc

> python -m test_client.main write-risk 0xABCD 0 0 1 123

Submitted transaction 0xb9d1ae7fd71d43a456a62fcffba7aae0542671e66eef410136be547d803c7205. Waiting for confirmation...
Transaction confirmed in block 16153127

> python -m test_client.main read-risk 0xABCD 0 0 1

Consensus for epoch 0:
  Risk value: 1234

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tread_contracts-0.1.6.tar.gz (12.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

tread_contracts-0.1.6-py3-none-any.whl (14.2 kB view details)

Uploaded Python 3

File details

Details for the file tread_contracts-0.1.6.tar.gz.

File metadata

  • Download URL: tread_contracts-0.1.6.tar.gz
  • Upload date:
  • Size: 12.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.0.1 CPython/3.13.1 Darwin/24.3.0

File hashes

Hashes for tread_contracts-0.1.6.tar.gz
Algorithm Hash digest
SHA256 f0c6a41f710983edc430917853eed44be411a4d4edb6d10f4dbd4b371443f53d
MD5 858e869533c6df7ae45ea0bf8f202636
BLAKE2b-256 c93ba12019a9921fdf5606790002ff7d775b23bf3df4b586af29ee9373631eaf

See more details on using hashes here.

File details

Details for the file tread_contracts-0.1.6-py3-none-any.whl.

File metadata

  • Download URL: tread_contracts-0.1.6-py3-none-any.whl
  • Upload date:
  • Size: 14.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.0.1 CPython/3.13.1 Darwin/24.3.0

File hashes

Hashes for tread_contracts-0.1.6-py3-none-any.whl
Algorithm Hash digest
SHA256 4fdafc6604bd9127e1bc3e81bd9219ca22f09bac21370df3e0c2b89f6f2e2c07
MD5 b11bfca9c1dca3005a212e6e26a1c184
BLAKE2b-256 32aaa4eb76c1d57a29af28e7c9c4fd8986c4d1cb147665e492839e033623ec27

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page