Summary
Introduces the canonical byte-level R derivation alongside a cardano-api-compatible application path. The validator's parameter is now applied as a single UPLC Constant Data term — matching cardano-api's applyArguments semantics — and the applied script bytes can be reconstructed by any implementation with bytestring concatenation and blake2b-224 from two pinned normative artifacts plus the canonical PlutusData CBOR of the parameter.
R is executable on-chain using only standard Plutus V3 builtins: appendByteString, consByteString, lengthOfByteString, serialiseData, blake2b_224.
New normative artifacts
validators/FLAT_PREFIX_TOA_V1.bin— 528 bytes, blake2b-2566ab7ef002cda6f7e3c60e5975fce175c6e56a91b51b7d488d2ae69af23520235.validators/FLAT_SUFFIX_TOA_V1.bin— 1 byte (0x01), blake2b-256ee155ace9c40292074cb6aff8c9ccdd273c81648ff1149ef36bcea6ebb8a3e25.validators/R-CONSTANTS.md— sizes, hex, blake2b-256, recipe.validators/R-verify-output.txt— captured verifier output for the release run.
New / updated code
Onchain.Derivation.R(Plinth,onchain-lib) — on-chain R derivation.TxBuilding.Toa.DerivationR(offchain-lib) — pure-Haskell mirror.toa-verify-reconstruction(new executable) — empirically verifies (a) byte-aligned decomposition of applied UPLC, (b) encoder identity withserialiseData, (c) end-to-end hash match between R reassembly andapply_params + serialiseUPLC + blake2b_224.
Updated artifacts
validators/ToaV1.uplc— 529 bytes, blake2b-25660e2e90cd3b48b3daab28a409b257cfa0554bd24b4c552b985df9aee654fbda0. Template hashb4e7310faacb77c9e5a68f325eb348a93d2025ecf472bc43007d5e1c.test-vectors/toa-v1.json— everyexpected_script_hashandexpected_address_*is different from 0.1.1;params_cbor_hexUNCHANGED. New per-vector fieldflat_body_length.
Breaking change
Every derived TOA address differs from 0.1.1. TOA v1 status is Proposed; no production mainnet deployments exist beyond the en7angled/toa demo, so the address change is in-scope.