Skip to main content

Alberta Buck core platform (Python): the ChainSession API over anvil/testnets/pyrevm with expectation journaling, and the Foundry artifact loader

Project description

alberta-buck-core

The Python side of the Alberta Buck platform: one testing API over every EVM backend, with expectation checking and journaling.

  • Web3Session -- the ChainSession API. Send, call and deploy against anvil, a public testnet, or in-process pyrevm with the same code. Every state-changing operation declares whether it is expected to succeed or revert, so expectation mismatches are first-class results rather than surprises.
  • Journal -- an append-only JSONL record of every operation: tag, op, sender, expectation, outcome, gas, tx hash, block, error. Journals are auditable, diffable across backends and across languages (the JavaScript platform writes the same schema), and replayable.
  • load_artifact -- contract artifacts from a repo checkout's out/ when there is one, falling back to the installed alberta-buck-contracts otherwise, so an installed package can deploy a world with no checkout.

Install

pip install alberta-buck-core

The distribution is prefixed; the import is not:

from buck_core import Web3Session, Expect, load_artifact

The compiled kernels are optional

buck_core.buck_math, buck_core.buck_identity, buck_core.buck_wallet and buck_core.buck_registry are shims that delegate to alberta-buck-kernel when it is installed. This package is deliberately a pure-Python wheel: keeping the binaries out means depending on the session API does not drag a per-platform wheel matrix behind it.

In a repo checkout the built .so sits beside the shim and CPython prefers the extension, so a freshly rebuilt kernel takes effect immediately.

Status

0.1.0, prototype. Unaudited software for a monetary system, published so the simulation and identity work can be reproduced and built on.

Licence

CAL-1.0 (Cryptographic Autonomy License v1.0). Beyond the usual copyleft, CAL requires that anyone you provide this software's functionality to receives their own data and is not locked out of it by cryptographic or technical means. See LICENSING.md.

Repository: https://github.com/alberta-buck/alberta-buck

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

alberta_buck_core-0.1.0.tar.gz (17.4 kB view details)

Uploaded Source

Built Distribution

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

alberta_buck_core-0.1.0-py3-none-any.whl (11.4 kB view details)

Uploaded Python 3

File details

Details for the file alberta_buck_core-0.1.0.tar.gz.

File metadata

  • Download URL: alberta_buck_core-0.1.0.tar.gz
  • Upload date:
  • Size: 17.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for alberta_buck_core-0.1.0.tar.gz
Algorithm Hash digest
SHA256 ffa6047519866730287a3194b296c3f9ae2bf0af47703c6b8ca21c1a11d2dd19
MD5 74ca1d8541d398b30d198ec9623538e9
BLAKE2b-256 83fbbc719b267d9fa1626be66224b54e9b682d684347306fca3dfafebcab8707

See more details on using hashes here.

Provenance

The following attestation bundles were made for alberta_buck_core-0.1.0.tar.gz:

Publisher: release-pypi.yml on alberta-buck/alberta-buck

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file alberta_buck_core-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for alberta_buck_core-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 bf566fb6bf8fdb3db94b974112ce4afe1cf6faf54e24bdaf4ac8ba39ffaf2498
MD5 6dac5ae11c042354cc44a18b6257526b
BLAKE2b-256 5ae8aa97c9ca3a8d1842cb5fe05cde8f547d973c2b669acc53fca38554772ff5

See more details on using hashes here.

Provenance

The following attestation bundles were made for alberta_buck_core-0.1.0-py3-none-any.whl:

Publisher: release-pypi.yml on alberta-buck/alberta-buck

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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