@easy1staking/cip113-sdk-ts 0.7.0 → 0.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +118 -2
- package/blueprints/standard/v0.5.0-alpha.3/UPSTREAM_PIN.json +35 -0
- package/blueprints/standard/v0.5.0-alpha.3/plutus.json +1126 -0
- package/blueprints/standard/v0.5.0-alpha.4/UPSTREAM_PIN.json +36 -0
- package/blueprints/standard/v0.5.0-alpha.4/plutus.json +1434 -0
- package/dist/core/evo-utils.d.ts +357 -39
- package/dist/core/evo-utils.d.ts.map +1 -1
- package/dist/core/evo-utils.js +513 -27
- package/dist/core/evo-utils.js.map +1 -1
- package/dist/core/ledger-order.d.ts +204 -18
- package/dist/core/ledger-order.d.ts.map +1 -1
- package/dist/core/ledger-order.js +385 -28
- package/dist/core/ledger-order.js.map +1 -1
- package/dist/index.d.ts +6 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +15 -4
- package/dist/index.js.map +1 -1
- package/dist/standard/blueprint.d.ts +129 -29
- package/dist/standard/blueprint.d.ts.map +1 -1
- package/dist/standard/blueprint.js +245 -47
- package/dist/standard/blueprint.js.map +1 -1
- package/dist/standard/scripts.d.ts +189 -75
- package/dist/standard/scripts.d.ts.map +1 -1
- package/dist/standard/scripts.js +454 -123
- package/dist/standard/scripts.js.map +1 -1
- package/dist/substandards/dummy/index.d.ts +19 -0
- package/dist/substandards/dummy/index.d.ts.map +1 -1
- package/dist/substandards/dummy/index.js +322 -73
- package/dist/substandards/dummy/index.js.map +1 -1
- package/dist/substandards/freeze-and-seize/index.d.ts.map +1 -1
- package/dist/substandards/freeze-and-seize/index.js +455 -117
- package/dist/substandards/freeze-and-seize/index.js.map +1 -1
- package/dist/types.d.ts +161 -48
- package/dist/types.d.ts.map +1 -1
- package/package.json +2 -1
|
@@ -1,58 +1,147 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Standard script parameterization — CIP-113 0.5.0-alpha.
|
|
2
|
+
* Standard script parameterization — CIP-113 0.5.0-alpha.4
|
|
3
|
+
* (upstream 7e8a63198c5b240135f1aa2f043ce5d7c046b2c4).
|
|
3
4
|
*
|
|
4
5
|
* Uses Evolution SDK directly for UPLC.applyParamsToScript and ScriptHash.
|
|
5
6
|
*
|
|
6
|
-
* Dependency graph.
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
* `params_policy` in parallel instead of in series.
|
|
7
|
+
* Dependency graph. It is NOT a single chain: `programmable_logic_base` hangs
|
|
8
|
+
* off the params-NFT policy, so everything downstream of it fans out in
|
|
9
|
+
* parallel rather than in series.
|
|
10
10
|
*
|
|
11
|
-
* always_fail(nonce) -> hash (issuance side only
|
|
12
|
-
*
|
|
13
|
-
* protocol_params_mint(utxo_ref, coord_hash) -> policy == params_policy
|
|
11
|
+
* always_fail(nonce) -> hash (issuance side only)
|
|
12
|
+
* protocol_params(utxo_ref) -> policy == params_policy
|
|
14
13
|
* |
|
|
15
|
-
* +-- programmable_logic_base(params_policy)
|
|
16
|
-
*
|
|
17
|
-
* +--
|
|
18
|
-
* +--
|
|
19
|
-
* +--
|
|
14
|
+
* +-- programmable_logic_base(params_policy) -> hash == plb
|
|
15
|
+
* | |
|
|
16
|
+
* | +-- transfer(Script(plb), registry_node_cs, max_inline) -> hash
|
|
17
|
+
* | +-- third_party(Script(plb), registry_node_cs, max_inline) -> hash
|
|
18
|
+
* | +-- unfracking(Script(plb), registry_node_cs, max_inline) -> hash
|
|
19
|
+
* | +-- issuance_logic(Script(plb), registry_node_cs,
|
|
20
|
+
* | params_policy, max_inline) -> hash NEW in alpha.4
|
|
21
|
+
* |
|
|
22
|
+
* +-- issuance_mint(Script(minting_logic), params_policy) -> policy
|
|
23
|
+
*
|
|
24
|
+
* programmable_logic_global(transfer_hash, third_party_hash, unfracking_hash)
|
|
25
|
+
* -> hash (built LAST)
|
|
26
|
+
*
|
|
27
|
+
* issuance_cbor_hex_mint(utxo_ref, always_fail_hash) -> policy
|
|
28
|
+
* registry(utxo_ref, issuance_cbor_hex_cs) -> policy
|
|
20
29
|
*
|
|
21
|
-
*
|
|
22
|
-
* registry_mint(utxo_ref, issuance_cbor_hex_cs, registry_spend_cred) -> policy
|
|
23
|
-
* issuance_mint(PLB_cred, registry_node_cs, minting_logic_cred, params_policy)
|
|
24
|
-
* upgrade_multisig(signers, threshold) -> hash (independent)
|
|
30
|
+
* upgrade_multisig(utxo_ref) -> hash (independent one-shot)
|
|
25
31
|
*
|
|
26
32
|
* ⚠ PARAMETER TYPES ARE NOT INTERCHANGEABLE and TypeScript cannot tell them
|
|
27
33
|
* apart — every one of these is a hex string at the call site. `params_policy`
|
|
28
|
-
*
|
|
29
|
-
* Credentials (
|
|
30
|
-
*
|
|
31
|
-
*
|
|
34
|
+
* and `registry_node_cs` are PolicyIds (bare ByteArrays); `minting_logic_cred`
|
|
35
|
+
* and `programmable_logic_base` are Credentials (constructor-wrapped
|
|
36
|
+
* Script/VerificationKey). `scriptCredential()` wraps; `Data.bytearray()` does
|
|
37
|
+
* not. Passing a policy where a credential belongs produces a valid script with
|
|
38
|
+
* the wrong hash.
|
|
39
|
+
*
|
|
40
|
+
* ⛔ alpha.4 makes that sharper: `issuance_logic` takes TWO ADJACENT PolicyId
|
|
41
|
+
* parameters — `registry_node_cs` then `params_policy`. They are the same type,
|
|
42
|
+
* the same length, and both are `string` here. Swapping them yields a script
|
|
43
|
+
* that builds, hashes and deploys, and nothing before the ledger will say so.
|
|
44
|
+
*
|
|
45
|
+
* The types below come from the blueprint's own parameter schemas, not from
|
|
32
46
|
* upstream's prose docs — see the hazard note in blueprint.ts.
|
|
33
47
|
*/
|
|
34
48
|
import { Data } from "@evolution-sdk/evolution";
|
|
35
49
|
import type { DeploymentParams, HexString, PlutusBlueprint, PlutusScript, PolicyId, ScriptHash, TxInput } from "../types.js";
|
|
36
50
|
export interface StandardScripts {
|
|
37
51
|
alwaysFail(nonce: HexString): PlutusScript;
|
|
38
|
-
/**
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
52
|
+
/**
|
|
53
|
+
* `protocol_params` — mint AND spend in one validator (#118).
|
|
54
|
+
*
|
|
55
|
+
* ⚑ ITS HASH IS BOTH THE PARAMS-NFT POLICY ID AND THE PARAMS ADDRESS'S
|
|
56
|
+
* PAYMENT CREDENTIAL. The mint handler locks the NFT at `Script(own_policy)`
|
|
57
|
+
* — the minting policy naming itself. Callers that used to derive the policy
|
|
58
|
+
* from `protocol_params_mint` and the address from `protocol_params_spend`
|
|
59
|
+
* must collapse to this one derivation.
|
|
60
|
+
*
|
|
61
|
+
* ⚠ NO NONCE, and no lock-target parameter. `protocol_params_mint` took
|
|
62
|
+
* `(utxo_ref, coordination_hash)` and `coordination_spend` took `(nonce)`;
|
|
63
|
+
* both are gone. The ordering cycle they created is dissolved with them.
|
|
64
|
+
*/
|
|
65
|
+
protocolParams(utxoRef: TxInput): PlutusScript;
|
|
66
|
+
/** Takes the params-NFT POLICY — which is now also the params address. */
|
|
43
67
|
programmableLogicBase(paramsPolicy: PolicyId): PlutusScript;
|
|
44
|
-
/**
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
68
|
+
/**
|
|
69
|
+
* The three withdraw-0 delegates. Arity 1 -> 3 in alpha.3, SAME TITLES.
|
|
70
|
+
*
|
|
71
|
+
* ⚠ `progLogicCred` is programmable_logic_base's hash, NOT the dispatcher's.
|
|
72
|
+
* The dispatcher is parameterised BY these three, so pointing them at it
|
|
73
|
+
* would be a parameter cycle: a value derived from your own script hash can
|
|
74
|
+
* never be your own parameter.
|
|
75
|
+
*/
|
|
76
|
+
transfer(progLogicCred: ScriptHash, registryPolicy: PolicyId, maxInlineDatumBytes: number | bigint): PlutusScript;
|
|
77
|
+
thirdParty(progLogicCred: ScriptHash, registryPolicy: PolicyId, maxInlineDatumBytes: number | bigint): PlutusScript;
|
|
78
|
+
unfracking(progLogicCred: ScriptHash, registryPolicy: PolicyId, maxInlineDatumBytes: number | bigint): PlutusScript;
|
|
79
|
+
/**
|
|
80
|
+
* `programmable_logic_global` — the dispatcher, reintroduced by #117.
|
|
81
|
+
*
|
|
82
|
+
* Carries the three delegate hashes as compile-time parameters, so replacing
|
|
83
|
+
* ONE delegate requires deploying a new dispatcher too. Must be built AFTER
|
|
84
|
+
* all three delegates.
|
|
85
|
+
*
|
|
86
|
+
* ⚠ Its parameters are bare ScriptHashes, not Credentials — unlike
|
|
87
|
+
* `issuance_mint`'s, which wrap the same 28 bytes in a Credential
|
|
88
|
+
* constructor. Same bytes, different encoding, no type to tell them apart.
|
|
89
|
+
*/
|
|
90
|
+
programmableLogicGlobal(transferHash: ScriptHash, thirdPartyHash: ScriptHash, unfrackingHash: ScriptHash): PlutusScript;
|
|
91
|
+
/**
|
|
92
|
+
* `upgrade_multisig` — a ONE-SHOT in alpha.4: `(signers, threshold)` are gone
|
|
93
|
+
* and a single `utxo_ref` takes their place.
|
|
94
|
+
*
|
|
95
|
+
* ⚑ ONE VALUE, THREE ROLES. Its hash is the config NFT's POLICY ID, the
|
|
96
|
+
* config UTxO's ADDRESS payment credential, AND the withdraw-0 CREDENTIAL the
|
|
97
|
+
* upgrade authority is satisfied by. Do not derive any of the three
|
|
98
|
+
* separately — that is the dual-hash collapse of `protocol_params` and
|
|
99
|
+
* `registry` again, with one more role attached.
|
|
100
|
+
*
|
|
101
|
+
* The signer set moved OFF the parameters and INTO a `MultisigScript` tree in
|
|
102
|
+
* the config UTxO's datum, so rotating signers no longer changes the hash.
|
|
103
|
+
* Build those trees with `multisigScriptDatum` in `src/core/evo-utils.ts`
|
|
104
|
+
* (T-F02-1), which enforces upstream's `well_formed`.
|
|
105
|
+
*/
|
|
106
|
+
upgradeMultisig(utxoRef: TxInput): PlutusScript;
|
|
50
107
|
issuanceCborHexMint(utxoRef: TxInput, alwaysFailHash: ScriptHash): PlutusScript;
|
|
51
|
-
/**
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
108
|
+
/**
|
|
109
|
+
* `registry` — mint AND spend in one validator (#117).
|
|
110
|
+
*
|
|
111
|
+
* ⚑ ONE HASH FOR POLICY AND ADDRESS, exactly as `protocolParams`. Arity
|
|
112
|
+
* dropped 3 -> 2: `registry_spend_cred` is gone, and so is the params-policy
|
|
113
|
+
* parameter the old spend side took — the registry no longer depends on the
|
|
114
|
+
* protocol-params chain at all and can be built immediately after
|
|
115
|
+
* `issuanceCborHexMint`.
|
|
116
|
+
*/
|
|
117
|
+
registry(utxoRef: TxInput, issuanceCborHexPolicy: PolicyId): PlutusScript;
|
|
118
|
+
/**
|
|
119
|
+
* `issuance_mint` — arity 4 -> 2 in alpha.4.
|
|
120
|
+
*
|
|
121
|
+
* ⚠ `programmable_logic_base` and `registry_node_cs` are GONE from its
|
|
122
|
+
* parameters. It reads the delegate credentials out of the params datum at
|
|
123
|
+
* runtime instead, which is why `params_policy` survives and the other two do
|
|
124
|
+
* not. Its POLICY ID therefore CHANGES for the same minting logic — see
|
|
125
|
+
* {@link ResolvedStandardScripts.buildIssuanceMint}.
|
|
126
|
+
*/
|
|
127
|
+
issuanceMint(mintingLogicHash: ScriptHash, paramsPolicy: PolicyId): PlutusScript;
|
|
128
|
+
/**
|
|
129
|
+
* `issuance_logic` — NEW in alpha.4. The replaceable half of issuance: the
|
|
130
|
+
* params datum's field 1 names its credential, and its withdraw-0 rides on
|
|
131
|
+
* EVERY mint and burn.
|
|
132
|
+
*
|
|
133
|
+
* ⛔ ONE CREDENTIAL, THEN TWO BARE POLICIES, AND THE TWO POLICIES ARE NOT
|
|
134
|
+
* INTERCHANGEABLE. `progLogicCred` is constructor-wrapped by
|
|
135
|
+
* `scriptCredential()`; `registryPolicy` and `paramsPolicy` are bare
|
|
136
|
+
* ByteArrays applied in THAT ORDER (`registry_node_cs`, then
|
|
137
|
+
* `params_policy`). Both are `string` at the call site and nothing — not the
|
|
138
|
+
* compiler, not the parameteriser, not the hash — can tell a swap from the
|
|
139
|
+
* intended order.
|
|
140
|
+
*
|
|
141
|
+
* ⚠ `progLogicCred` is programmable_logic_base's hash, NOT the dispatcher's,
|
|
142
|
+
* exactly as for the three delegates.
|
|
143
|
+
*/
|
|
144
|
+
issuanceLogic(progLogicCred: ScriptHash, registryPolicy: PolicyId, paramsPolicy: PolicyId, maxInlineDatumBytes: number | bigint): PlutusScript;
|
|
56
145
|
}
|
|
57
146
|
/**
|
|
58
147
|
* Create standard script builders from a blueprint.
|
|
@@ -109,44 +198,56 @@ export interface ScriptHashCheck {
|
|
|
109
198
|
/** Hash recorded in DeploymentParams */
|
|
110
199
|
deployed: ScriptHash;
|
|
111
200
|
}
|
|
112
|
-
/**
|
|
201
|
+
/**
|
|
202
|
+
* Thrown when a deployment record and the blueprint do not describe the same
|
|
203
|
+
* protocol instance.
|
|
204
|
+
*
|
|
205
|
+
* ⛔ IT IS THE CLASS CONSUMERS CATCH, so every refusal from this module must
|
|
206
|
+
* be one. The documented consumer shape is
|
|
207
|
+
* `catch (e) { if (e instanceof DeploymentMismatchError) … }`; a bare `Error`
|
|
208
|
+
* thrown beside it drops silently into whatever generic handler comes next,
|
|
209
|
+
* which is how a refusal that names a field ends up reported as "something went
|
|
210
|
+
* wrong".
|
|
211
|
+
*
|
|
212
|
+
* ⚠ `mismatches` IS EMPTY FOR REFUSALS THAT ARE NOT HASH COMPARISONS, and the
|
|
213
|
+
* emptiness is the signal rather than an oversight: nothing derived disagreed
|
|
214
|
+
* with anything recorded — the record was malformed, or held a value that was
|
|
215
|
+
* never a legal choice. Those pass their own `detail` message, because the
|
|
216
|
+
* composed "N script hash(es) differ" text would describe a comparison that
|
|
217
|
+
* never happened.
|
|
218
|
+
*/
|
|
113
219
|
export declare class DeploymentMismatchError extends Error {
|
|
114
220
|
readonly mismatches: ScriptHashCheck[];
|
|
115
|
-
constructor(mismatches: ScriptHashCheck[], blueprintTitle: string);
|
|
221
|
+
constructor(mismatches: ScriptHashCheck[], blueprintTitle: string, detail?: string);
|
|
116
222
|
}
|
|
117
223
|
/**
|
|
118
|
-
*
|
|
119
|
-
*
|
|
120
|
-
*
|
|
121
|
-
*
|
|
122
|
-
*
|
|
123
|
-
*
|
|
124
|
-
*
|
|
125
|
-
*
|
|
126
|
-
*
|
|
127
|
-
*
|
|
128
|
-
*
|
|
129
|
-
*
|
|
130
|
-
*
|
|
131
|
-
*
|
|
132
|
-
*
|
|
133
|
-
*
|
|
134
|
-
*
|
|
135
|
-
*
|
|
136
|
-
*
|
|
137
|
-
*
|
|
138
|
-
*
|
|
139
|
-
*
|
|
140
|
-
*
|
|
141
|
-
*
|
|
142
|
-
*
|
|
143
|
-
* name, with 4 of 8 validator hashes moved.
|
|
144
|
-
*
|
|
145
|
-
* It proves NOTHING at bootstrap time. A deployment script derives the hashes,
|
|
146
|
-
* populates DeploymentParams from those same values, and then asserts against
|
|
147
|
-
* them — a tautology that cannot fail. Do not read a passing assertion inside a
|
|
148
|
-
* bootstrap as evidence that the deployment is correct; assert on LOAD instead.
|
|
224
|
+
* The `unfracking_hash` a dispatcher is compiled against when the deployment
|
|
225
|
+
* wants unfracking DEPLOYED BUT UNREACHABLE: 28 zero bytes.
|
|
226
|
+
*
|
|
227
|
+
* ⚠ IT IS BAKED INTO THE DISPATCHER'S HASH, so two deployments that chose
|
|
228
|
+
* differently are DIFFERENT PROTOCOLS. Same category as `maxInlineDatumBytes`
|
|
229
|
+
* (see `types.ts`): a deployment CHOICE, recoverable from no hash, which is why
|
|
230
|
+
* `DeploymentParams.programmableLogicGlobal.unfrackingParameter` records the
|
|
231
|
+
* value itself rather than a flag.
|
|
232
|
+
*
|
|
233
|
+
* ⚠ WHY 28 BYTES AND NOT `#""`. The Aiken parameter is a bare `ScriptHash`
|
|
234
|
+
* — a `ByteArray` with no length constraint, not an `Option`, so there is no
|
|
235
|
+
* "none" to reach for. `#""` is type-legal, but NOBODY HERE CAN READ THE
|
|
236
|
+
* COMPILED VALIDATOR'S BODY: whether it asserts a length, or builds an address
|
|
237
|
+
* out of this parameter, is unknown. A 28-byte value is structurally identical
|
|
238
|
+
* to a real script hash, so every path behaves normally.
|
|
239
|
+
* ⇒ Choose a value that cannot reach code we cannot read, rather than reason
|
|
240
|
+
* about what that code probably does.
|
|
241
|
+
*
|
|
242
|
+
* ⚠ NOTHING HASHES TO IT. At 2^224 that is an impossibility, not a low risk,
|
|
243
|
+
* so the sentinel can never collide with a real `unfracking` deployment. Zeros
|
|
244
|
+
* rather than `FF…FF`, which reads as a mask or a placeholder.
|
|
245
|
+
*
|
|
246
|
+
* ⛔ IT LIVES HERE AND NOWHERE ELSE. The platform must IMPORT it. A
|
|
247
|
+
* platform-side copy is a second place to disagree about a value that
|
|
248
|
+
* determines a script hash.
|
|
149
249
|
*/
|
|
250
|
+
export declare const UNFRACKING_DISABLED: string;
|
|
150
251
|
export declare function assertDeploymentScripts(blueprint: PlutusBlueprint, deployment: DeploymentParams): ScriptHashCheck[];
|
|
151
252
|
/**
|
|
152
253
|
* Build resolved standard scripts from deployment params.
|
|
@@ -158,17 +259,30 @@ export declare function assertDeploymentScripts(blueprint: PlutusBlueprint, depl
|
|
|
158
259
|
*/
|
|
159
260
|
export declare function buildDeploymentScripts(blueprint: PlutusBlueprint, deployment: DeploymentParams): ResolvedStandardScripts;
|
|
160
261
|
export interface ResolvedStandardScripts {
|
|
161
|
-
|
|
162
|
-
|
|
262
|
+
/** Mint AND spend in one script; its hash is both policy and address. */
|
|
263
|
+
protocolParams: PlutusScript;
|
|
163
264
|
programmableLogicBase: PlutusScript;
|
|
164
|
-
/**
|
|
265
|
+
/** Withdraw-0 delegates. Parameterised (plb, registryPolicy, maxInlineDatumBytes). */
|
|
165
266
|
transfer: PlutusScript;
|
|
166
267
|
/** Seize / clawback. */
|
|
167
268
|
thirdParty: PlutusScript;
|
|
168
269
|
unfracking: PlutusScript;
|
|
270
|
+
/** The dispatcher every programmable transaction withdraws through. */
|
|
271
|
+
programmableLogicGlobal: PlutusScript;
|
|
169
272
|
issuanceCborHexMint: PlutusScript;
|
|
170
|
-
|
|
171
|
-
|
|
273
|
+
/** Mint AND spend in one script; its hash is both policy and address. */
|
|
274
|
+
registry: PlutusScript;
|
|
275
|
+
/**
|
|
276
|
+
* The replaceable half of issuance (alpha.4). Its withdraw-0 rides on every
|
|
277
|
+
* mint and burn, and its credential must be REGISTERED to do so.
|
|
278
|
+
*/
|
|
279
|
+
issuanceLogic: PlutusScript;
|
|
280
|
+
/**
|
|
281
|
+
* The reference upgrade authority. ⚑ Its hash is the config NFT policy, the
|
|
282
|
+
* config UTxO's address payment credential, AND the withdraw-0 credential —
|
|
283
|
+
* one value, three roles.
|
|
284
|
+
*/
|
|
285
|
+
upgradeMultisig: PlutusScript;
|
|
172
286
|
/** Build issuance_mint for a specific minting logic — NOT cached */
|
|
173
287
|
buildIssuanceMint(mintingLogicHash: ScriptHash): PlutusScript;
|
|
174
288
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scripts.d.ts","sourceRoot":"","sources":["../../src/standard/scripts.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"scripts.d.ts","sourceRoot":"","sources":["../../src/standard/scripts.ts"],"names":[],"mappings":"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"}
|