From bd38a7153280e7e0e6f9015ce92730d59fceaebd Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Mon, 2 Mar 2026 06:52:09 +0000 Subject: [PATCH 1/2] Initial plan From a4e16b1a3bffb91a86b261661f707133af70134a Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Mon, 2 Mar 2026 06:57:57 +0000 Subject: [PATCH 2/2] Update mint validator to require redeemer equal to tx_id and set redeemer in mint.ts Co-authored-by: SynthLuvr <131367121+SynthLuvr@users.noreply.github.com> --- src/mint.ts | 1 + validators/mint.ak | 8 ++++++-- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/mint.ts b/src/mint.ts index f02e221..5b53420 100644 --- a/src/mint.ts +++ b/src/mint.ts @@ -130,6 +130,7 @@ const program = new Command() .newTx() .mintAssets({ assets: Assets.fromRecord({ [token]: amount }), + redeemer: TransactionHash.toBytes(ref.transactionId), }) .readFrom({ referenceInputs: [refScript] }) .collectFrom({ inputs: [ref] }) diff --git a/validators/mint.ak b/validators/mint.ak index c7fcd57..f058ed8 100644 --- a/validators/mint.ak +++ b/validators/mint.ak @@ -6,11 +6,15 @@ use cardano/assets.{PolicyId, Value} use cardano/transaction.{Input, NoDatum, Output, OutputReference, Transaction} validator mint(tx_id: Hash, index: Int) { - mint(_redeemer, policy: PolicyId, self: Transaction) { + mint( + redeemer: Hash, + policy: PolicyId, + self: Transaction, + ) { let reference = OutputReference { transaction_id: tx_id, output_index: index } let Transaction { inputs, mint, .. } = self - mint_validator(policy, reference, inputs, mint) + redeemer == tx_id && mint_validator(policy, reference, inputs, mint) } else(_) {