Skip to content

Commit 194b07e

Browse files
committed
fix regression caused by CSL serializing TransactionWitnessSet fields out of order
1 parent 830a176 commit 194b07e

File tree

2 files changed

+58
-60
lines changed

2 files changed

+58
-60
lines changed

conway-cddl/yaml/conway.yaml

Lines changed: 8 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -866,7 +866,6 @@ PreBabbageTransactionOutput:
866866
type: DataHash
867867
optional: true
868868

869-
870869
# script_data_hash = $hash32
871870
# ; This is a hash of data which may affect evaluation of a script.
872871
# ; This data consists of:
@@ -1714,22 +1713,22 @@ TransactionWitnessSet:
17141713
name: plutus_scripts_v1
17151714
type: PlutusScripts
17161715
optional: true
1717-
- id: 4
1718-
name: inner_plutus_data
1719-
type: PlutusSet
1720-
optional: true
17211716
- id: 6
17221717
name: plutus_scripts_v2
17231718
type: PlutusScripts
17241719
optional: true
1725-
- id: 5
1726-
name: redeemers
1727-
type: Redeemers
1728-
optional: true
17291720
- id: 7
17301721
name: plutus_scripts_v3
17311722
type: PlutusScripts
17321723
optional: true
1724+
- id: 4
1725+
name: inner_plutus_data
1726+
type: PlutusSet
1727+
optional: true
1728+
- id: 5
1729+
name: redeemers
1730+
type: Redeemers
1731+
optional: true
17331732
methods:
17341733
new: null
17351734
extra_methods: |
@@ -2541,7 +2540,6 @@ PlutusMap:
25412540
return ret;
25422541
}
25432542
2544-
25452543
PlutusMapValues:
25462544
type: array
25472545
item: PlutusData

src/generated.ts

Lines changed: 50 additions & 50 deletions
Original file line numberDiff line numberDiff line change
@@ -17960,29 +17960,29 @@ export class TransactionWitnessSet {
1796017960
private _native_scripts: NativeScripts | undefined;
1796117961
private _bootstraps: BootstrapWitnesses | undefined;
1796217962
private _plutus_scripts_v1: PlutusScripts | undefined;
17963-
private _inner_plutus_data: PlutusSet | undefined;
1796417963
private _plutus_scripts_v2: PlutusScripts | undefined;
17965-
private _redeemers: Redeemers | undefined;
1796617964
private _plutus_scripts_v3: PlutusScripts | undefined;
17965+
private _inner_plutus_data: PlutusSet | undefined;
17966+
private _redeemers: Redeemers | undefined;
1796717967

1796817968
constructor(
1796917969
vkeys: Vkeywitnesses | undefined,
1797017970
native_scripts: NativeScripts | undefined,
1797117971
bootstraps: BootstrapWitnesses | undefined,
1797217972
plutus_scripts_v1: PlutusScripts | undefined,
17973-
inner_plutus_data: PlutusSet | undefined,
1797417973
plutus_scripts_v2: PlutusScripts | undefined,
17975-
redeemers: Redeemers | undefined,
1797617974
plutus_scripts_v3: PlutusScripts | undefined,
17975+
inner_plutus_data: PlutusSet | undefined,
17976+
redeemers: Redeemers | undefined,
1797717977
) {
1797817978
this._vkeys = vkeys;
1797917979
this._native_scripts = native_scripts;
1798017980
this._bootstraps = bootstraps;
1798117981
this._plutus_scripts_v1 = plutus_scripts_v1;
17982-
this._inner_plutus_data = inner_plutus_data;
1798317982
this._plutus_scripts_v2 = plutus_scripts_v2;
17984-
this._redeemers = redeemers;
1798517983
this._plutus_scripts_v3 = plutus_scripts_v3;
17984+
this._inner_plutus_data = inner_plutus_data;
17985+
this._redeemers = redeemers;
1798617986
}
1798717987

1798817988
vkeys(): Vkeywitnesses | undefined {
@@ -18017,14 +18017,6 @@ export class TransactionWitnessSet {
1801718017
this._plutus_scripts_v1 = plutus_scripts_v1;
1801818018
}
1801918019

18020-
inner_plutus_data(): PlutusSet | undefined {
18021-
return this._inner_plutus_data;
18022-
}
18023-
18024-
set_inner_plutus_data(inner_plutus_data: PlutusSet | undefined): void {
18025-
this._inner_plutus_data = inner_plutus_data;
18026-
}
18027-
1802818020
plutus_scripts_v2(): PlutusScripts | undefined {
1802918021
return this._plutus_scripts_v2;
1803018022
}
@@ -18033,14 +18025,6 @@ export class TransactionWitnessSet {
1803318025
this._plutus_scripts_v2 = plutus_scripts_v2;
1803418026
}
1803518027

18036-
redeemers(): Redeemers | undefined {
18037-
return this._redeemers;
18038-
}
18039-
18040-
set_redeemers(redeemers: Redeemers | undefined): void {
18041-
this._redeemers = redeemers;
18042-
}
18043-
1804418028
plutus_scripts_v3(): PlutusScripts | undefined {
1804518029
return this._plutus_scripts_v3;
1804618030
}
@@ -18049,6 +18033,22 @@ export class TransactionWitnessSet {
1804918033
this._plutus_scripts_v3 = plutus_scripts_v3;
1805018034
}
1805118035

18036+
inner_plutus_data(): PlutusSet | undefined {
18037+
return this._inner_plutus_data;
18038+
}
18039+
18040+
set_inner_plutus_data(inner_plutus_data: PlutusSet | undefined): void {
18041+
this._inner_plutus_data = inner_plutus_data;
18042+
}
18043+
18044+
redeemers(): Redeemers | undefined {
18045+
return this._redeemers;
18046+
}
18047+
18048+
set_redeemers(redeemers: Redeemers | undefined): void {
18049+
this._redeemers = redeemers;
18050+
}
18051+
1805218052
static deserialize(
1805318053
reader: CBORReader,
1805418054
path: string[],
@@ -18081,29 +18081,29 @@ export class TransactionWitnessSet {
1808118081
break;
1808218082
}
1808318083

18084-
case 4: {
18085-
const new_path = [...path, "PlutusSet(inner_plutus_data)"];
18086-
fields.inner_plutus_data = PlutusSet.deserialize(r, new_path);
18087-
break;
18088-
}
18089-
1809018084
case 6: {
1809118085
const new_path = [...path, "PlutusScripts(plutus_scripts_v2)"];
1809218086
fields.plutus_scripts_v2 = PlutusScripts.deserialize(r, new_path);
1809318087
break;
1809418088
}
1809518089

18096-
case 5: {
18097-
const new_path = [...path, "Redeemers(redeemers)"];
18098-
fields.redeemers = Redeemers.deserialize(r, new_path);
18099-
break;
18100-
}
18101-
1810218090
case 7: {
1810318091
const new_path = [...path, "PlutusScripts(plutus_scripts_v3)"];
1810418092
fields.plutus_scripts_v3 = PlutusScripts.deserialize(r, new_path);
1810518093
break;
1810618094
}
18095+
18096+
case 4: {
18097+
const new_path = [...path, "PlutusSet(inner_plutus_data)"];
18098+
fields.inner_plutus_data = PlutusSet.deserialize(r, new_path);
18099+
break;
18100+
}
18101+
18102+
case 5: {
18103+
const new_path = [...path, "Redeemers(redeemers)"];
18104+
fields.redeemers = Redeemers.deserialize(r, new_path);
18105+
break;
18106+
}
1810718107
}
1810818108
}, path);
1810918109

@@ -18115,23 +18115,23 @@ export class TransactionWitnessSet {
1811518115

1811618116
let plutus_scripts_v1 = fields.plutus_scripts_v1;
1811718117

18118-
let inner_plutus_data = fields.inner_plutus_data;
18119-
1812018118
let plutus_scripts_v2 = fields.plutus_scripts_v2;
1812118119

18122-
let redeemers = fields.redeemers;
18123-
1812418120
let plutus_scripts_v3 = fields.plutus_scripts_v3;
1812518121

18122+
let inner_plutus_data = fields.inner_plutus_data;
18123+
18124+
let redeemers = fields.redeemers;
18125+
1812618126
return new TransactionWitnessSet(
1812718127
vkeys,
1812818128
native_scripts,
1812918129
bootstraps,
1813018130
plutus_scripts_v1,
18131-
inner_plutus_data,
1813218131
plutus_scripts_v2,
18133-
redeemers,
1813418132
plutus_scripts_v3,
18133+
inner_plutus_data,
18134+
redeemers,
1813518135
);
1813618136
}
1813718137

@@ -18141,10 +18141,10 @@ export class TransactionWitnessSet {
1814118141
if (this._native_scripts === undefined) len -= 1;
1814218142
if (this._bootstraps === undefined) len -= 1;
1814318143
if (this._plutus_scripts_v1 === undefined) len -= 1;
18144-
if (this._inner_plutus_data === undefined) len -= 1;
1814518144
if (this._plutus_scripts_v2 === undefined) len -= 1;
18146-
if (this._redeemers === undefined) len -= 1;
1814718145
if (this._plutus_scripts_v3 === undefined) len -= 1;
18146+
if (this._inner_plutus_data === undefined) len -= 1;
18147+
if (this._redeemers === undefined) len -= 1;
1814818148
writer.writeMapTag(len);
1814918149
if (this._vkeys !== undefined) {
1815018150
writer.writeInt(0n);
@@ -18162,22 +18162,22 @@ export class TransactionWitnessSet {
1816218162
writer.writeInt(3n);
1816318163
this._plutus_scripts_v1.serialize(writer);
1816418164
}
18165-
if (this._inner_plutus_data !== undefined) {
18166-
writer.writeInt(4n);
18167-
this._inner_plutus_data.serialize(writer);
18168-
}
1816918165
if (this._plutus_scripts_v2 !== undefined) {
1817018166
writer.writeInt(6n);
1817118167
this._plutus_scripts_v2.serialize(writer);
1817218168
}
18173-
if (this._redeemers !== undefined) {
18174-
writer.writeInt(5n);
18175-
this._redeemers.serialize(writer);
18176-
}
1817718169
if (this._plutus_scripts_v3 !== undefined) {
1817818170
writer.writeInt(7n);
1817918171
this._plutus_scripts_v3.serialize(writer);
1818018172
}
18173+
if (this._inner_plutus_data !== undefined) {
18174+
writer.writeInt(4n);
18175+
this._inner_plutus_data.serialize(writer);
18176+
}
18177+
if (this._redeemers !== undefined) {
18178+
writer.writeInt(5n);
18179+
this._redeemers.serialize(writer);
18180+
}
1818118181
}
1818218182

1818318183
// no-op

0 commit comments

Comments
 (0)