Skip to content

Releases: dp-web4/web4

Web4 v0.2.0 — package family release

Choose a tag to compare

@dp-web4 dp-web4 released this 16 May 01:26

First coordinated release closing the publish-vs-main gap flagged by Nova 2026-05-15. Brings the package family up to the body of work accumulated since v0.1.1 (April 28) — 66 commits over 17 days of substantive spec, SDK, conformance, and documentation work.

Published

Package Version Registry Status
web4-sdk 0.27.0 PyPI First publish under renamed name (was web4 — PyPI name held by an unrelated dormant project)
web4-core 0.2.0 PyPI Refresh from 0.1.1
web4-trust 0.2.0 PyPI Refresh from 0.1.1
web4-core 0.2.0 crates.io Refresh from 0.1.1
web4-trust-core 0.2.0 crates.io Refresh from 0.1.1
web4-trust-core 0.2.0 npm (WASM) First-ever publish to npm

Install

# Python SDK (high-level API)
pip install web4-sdk

# Python core primitives + trust
pip install web4-core web4-trust

# Rust crates
cargo add web4-core
cargo add web4-trust-core

# Web (WASM bundles via webpack/rollup/etc)
npm install web4-trust-core

Import path unchanged for web4-sdk: from web4 import T3, V3, LCT, ... works as documented.

Spec additions since v0.1.1

  • Inter-society protocol (core-spec/inter-society-protocol.md): society genesis, three-option first-contact protocol, ATP reification sovereignty, secession/dissolution, witnesses-as-encompassing-society notaries.
  • Society roles (core-spec/society-roles.md): three-tier role taxonomy, fractal composability semantics, audit implications.
  • MCP protocol amendments (core-spec/mcp-protocol.md §1.1, §7.3–§7.7): MCP as inter-society interface; MCP actions as R7 transactions; cross-society LCT envelope, witnessing, reputation propagation, and (WIP) referent-grounded exchange rate negotiation.

SDK additions

  • Society Roles module: SocietyRole, RoleAssignment, bootstrap_society_roles
  • Cross-society types: CrossSocietyContext, ReputationEnvelope, MCPContextResource
  • Constraint dataclass aligned with Rust (threshold + hard) — cross-language parity
  • Conformance test runner: 35 vectors, 39 tests, 8 documented xfailed gaps
  • 23 modules, 390 exports, 2709 tests

Cross-language parity

  • T3/V3 specs ↔ schemas ↔ Python ↔ Rust alignment complete
  • web4-core Rust: 38 tests; web4-trust-core Rust: 57 tests
  • WASM bindings published to npm for Society, SocietyRole, RoleAssignment, ATPAccount, R7Action

Documentation discipline

  • README "Findings vs Framings" split (quantitative findings vs theoretical framings/positions)
  • Whitepaper refactor matching the discipline (Appendix J: Authorship & Methodology, Findings/Framings table)
  • Linux/GNU/distribution framing replaces TCP/IP analogy

Packaging notes

  • PyPI rename: the Python SDK is now web4-sdk (previously the in-repo name was web4 but that PyPI name is held by an unrelated dormant project at v0.0.1). Import path is unchanged.
  • First-time crates.io / PyPI / npm publishes consolidated alongside the version bump — closing several "tagged but never published" gaps from v0.1.x.
  • Per-package tags: web4-core-rust-v0.2.0, web4-trust-core-rust-v0.2.0, web4-core-py-v0.2.0, web4-trust-py-v0.2.0, web4-sdk-py-v0.27.0, web4-trust-core-npm-v0.2.0.