Skip to content

docs(specs): add exact scheme for Tenzro chain (EVM/SVM/Canton façades)#135

Draft
hilarl wants to merge 1 commit intocoinbase:mainfrom
tenzro:exact-tenzro
Draft

docs(specs): add exact scheme for Tenzro chain (EVM/SVM/Canton façades)#135
hilarl wants to merge 1 commit intocoinbase:mainfrom
tenzro:exact-tenzro

Conversation

@hilarl
Copy link
Copy Markdown

@hilarl hilarl commented May 2, 2026

Description

Adds specs/schemes/exact/scheme_exact_tenzro.md — the exact scheme implementation spec for the Tenzro Network L1.

Tenzro hosts three execution-layer façades over shared state (EVM, SVM, and Canton/DAML) under a single CAIP-2 chain id. The spec covers all three:

  • EVM façade — reuses scheme_exact_evm.md unchanged (EIP-3009, Permit2, ERC-7710); only network differs.
  • SVM façade — reuses scheme_exact_svm.md with two notes on Tenzro's 9-decimal SPL truncation and shared token registry.
  • Canton façade — adds a CIP-56 holding-transfer payload and Canton-specific MUST checks for the facilitator.

Drafted because the existing CAIP-2 registration for the tenzro: namespace is still in review at ChainAgnostic/namespaces#184; the canonical reference may change before merge. The spec links to that PR for the network identifier definition.

No core types are redefined — PaymentRequirements, PaymentPayload, and SettlementResponse reuse the shapes from x402-specification.md and the per-VM scheme files.

Tests

Spec-only PR; no code changes. The Tenzro multi-VM dispatch (extra.facade → per-VM verification path) maps onto an existing facilitator implementation in tenzro/tenzro-network (crates/tenzro-payments/src/x402/), which currently exposes the EVM and SVM paths via Eip3009Backend/Permit2Backend/Erc7710Backend and a Tenzro-native scheme; the Canton path is the new addition this spec proposes.

AI assistance

This PR was drafted with AI assistance (Claude). The fields and façade dispatch were grounded in the existing Tenzro x402 implementation and the upstream EVM/SVM scheme files, not invented. Reviewer attention is most useful on:

  • Whether the extra.facade discriminator is the right place to dispatch, or whether per-façade network references would be cleaner.
  • Whether the Canton verification rules belong in this scheme file or in a separate scheme_exact_canton.md style overview.

Checklist

  • I have formatted and linted my code (docs-only)
  • All new and existing tests pass (no code changes)
  • My commits are signed (SSH signing)
  • Changelog fragment skipped — docs-only change

@cb-heimdall
Copy link
Copy Markdown

🟡 Heimdall Review Status

Requirement Status More Info
Reviews 🟡 0/1
Denominator calculation
Show calculation
1 if user is bot 0
1 if user is external 0
2 if repo is sensitive 0
From .codeflow.yml 1
Additional review requirements
Show calculation
Max 0
0
From CODEOWNERS 0
Global minimum 0
Max 1
1
1 if commit is unverified 0
Sum 1

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Development

Successfully merging this pull request may close these issues.

2 participants