@easy1staking/cip113-sdk-ts 0.4.0 → 0.6.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.
Files changed (32) hide show
  1. package/README.md +2 -0
  2. package/blueprints/substandards/dummy/v0.2.0/UPSTREAM_PIN.json +8 -6
  3. package/blueprints/substandards/freeze-and-seize/v0.1.0/UPSTREAM_PIN.json +3 -2
  4. package/dist/core/evo-utils.d.ts +9 -0
  5. package/dist/core/evo-utils.d.ts.map +1 -1
  6. package/dist/core/evo-utils.js +13 -0
  7. package/dist/core/evo-utils.js.map +1 -1
  8. package/dist/core/provenance.d.ts +87 -0
  9. package/dist/core/provenance.d.ts.map +1 -0
  10. package/dist/core/provenance.js +123 -0
  11. package/dist/core/provenance.js.map +1 -0
  12. package/dist/index.d.ts +4 -2
  13. package/dist/index.d.ts.map +1 -1
  14. package/dist/index.js +11 -2
  15. package/dist/index.js.map +1 -1
  16. package/dist/standard/scripts.d.ts +54 -1
  17. package/dist/standard/scripts.d.ts.map +1 -1
  18. package/dist/standard/scripts.js +5 -6
  19. package/dist/standard/scripts.js.map +1 -1
  20. package/dist/substandards/dummy/index.d.ts.map +1 -1
  21. package/dist/substandards/dummy/index.js +27 -0
  22. package/dist/substandards/dummy/index.js.map +1 -1
  23. package/dist/substandards/freeze-and-seize/index.d.ts.map +1 -1
  24. package/dist/substandards/freeze-and-seize/index.js +31 -0
  25. package/dist/substandards/freeze-and-seize/index.js.map +1 -1
  26. package/dist/substandards/freeze-and-seize/scripts.d.ts +2 -1
  27. package/dist/substandards/freeze-and-seize/scripts.d.ts.map +1 -1
  28. package/dist/substandards/freeze-and-seize/scripts.js +7 -6
  29. package/dist/substandards/freeze-and-seize/scripts.js.map +1 -1
  30. package/dist/substandards/interface.d.ts +18 -0
  31. package/dist/substandards/interface.d.ts.map +1 -1
  32. package/package.json +3 -2
package/README.md CHANGED
@@ -103,6 +103,8 @@ Each script is standalone — run them sequentially to walk through the complete
103
103
 
104
104
  ## Documentation
105
105
 
106
+ - [Provenance: CIP-171 and blueprint pins](docs/provenance.md) — what ships, how to build a record, and why `compilerVersion` must come from the artefact
107
+
106
108
  - [Getting Started](docs/getting-started.md) — prerequisites, setup, first token
107
109
  - [API Reference](docs/api-reference.md) — all types, methods, utilities
108
110
  - [Freeze-and-Seize](docs/substandards/freeze-and-seize.md) — compliance substandard
@@ -11,19 +11,20 @@
11
11
  "upstream": {
12
12
  "repo": "https://github.com/cardano-foundation/cip113-programmable-tokens-platform",
13
13
  "path": "src/substandards/dummy",
14
- "commit": "013c11544839754d462e0603de59f4bbf1769479",
15
- "note": "SOURCE LOCATED. The v0.1.0 pin recorded repo: null / provenance: UNKNOWN because nobody had recorded where this came from. It is the `dummy` substandard in cardano-foundation/cip113-programmable-tokens-platform. The blueprint's own preamble still says 'wsc-poc/aiken-policy' — that is the aiken.toml project name inside that directory, not a separate repository, which is precisely why it looked orphaned."
14
+ "commit": "e63fa0af433ee39b2069521c2dd7579e1c919f89",
15
+ "note": "REACHABLE from origin/main, verified with `git merge-base --is-ancestor` after a fetch — not inferred from a PR being merged. Merged and reachable are different claims. ⚠ THIS PIN HAS NAMED AN ORPHAN TWICE. First 013c1154, a commit on no branch anywhere. Then 2e067fe, the PR branch head — GitHub SQUASHED PR #11, so the branch head became unreachable the moment it merged and b169255 with it. A sha that resolves locally, or that you watched being pushed, tells you nothing about whether anyone can fetch it. Full 40-char sha recorded deliberately: an abbreviation is one more thing that can drift.",
16
+ "ref": "main"
16
17
  },
17
18
  "blueprint_reproduced": true,
18
- "provenance": "UNVERIFIED",
19
+ "provenance": "VERIFIED",
19
20
  "reproduce": {
20
21
  "requires": "Aiken v1.1.21+42babe5",
21
22
  "command": "cd src/substandards/dummy && aiken build",
22
23
  "note": "aiken.toml pins v1.1.21. ⚠ aiken BUILDS ANYWAY on a mismatched compiler, emitting only a warning — a blueprint built on the wrong toolchain is indistinguishable from a correct one by inspection. Check the preamble's compiler field, do not trust the environment."
23
24
  },
24
25
  "verified": {
25
- "date": "2026-08-25",
26
- "method": "BUILT FROM LOCATED SOURCE",
26
+ "date": "2026-08-27",
27
+ "method": "REBUILT FROM THE PINNED REACHABLE COMMIT",
27
28
  "findings": [
28
29
  "OBSERVED: adds `transfer.issue.publish` and `transfer.transfer.publish`, which v0.1.0 lacked entirely. Without them the stake credentials of these two withdraw-0 validators CANNOT BE REGISTERED (a Conway RegCert runs the script under the PUBLISH purpose and falls through to `else`), so the substandard could not register, mint or transfer at all under CIP-113 0.5.x.",
29
30
  "OBSERVED: byte-identical across two clean rebuilds with the pinned compiler.",
@@ -31,6 +32,7 @@
31
32
  "The publish handlers permit REGISTRATION ONLY (RegisterCredential -> True, everything else -> False). Deregistration is refused deliberately: an unregistered credential cannot be withdrawn against, so a permissive publish handler would let any third party disable every token governed by this substandard. Same shape as upstream's core validators.",
32
33
  "v0.1.0 is retained alongside, unchanged. It is the artifact this SDK shipped and its provenance record is part of the history; it is also now known non-functional against 0.5.x.",
33
34
  "For the record, v0.1.0 did NOT match this source project's own committed blueprint either: v0.1.0 is sha256 42d95e76… built with Aiken v1.1.19, while the platform repo's committed copy at 61374e3 is sha256 6574d840… built with v1.1.21. The SDK was shipping an artifact older than the source project's own."
34
- ]
35
+ ],
36
+ "reproduction": "Cloned the platform repo at e63fa0af433ee39b2069521c2dd7579e1c919f89 (verified an ancestor of origin/main), ran `aiken build` in src/substandards/dummy with Aiken v1.1.21 as aiken.toml pins. Resulting plutus.json sha256 c75e41f6ff3f71c278ac4765741ea6cf1e222fa24d5601d85e5e3a25bb15ed0f — byte-identical to this vendored artefact. preamble.compiler read FROM THE REBUILT ARTEFACT: Aiken v1.1.21+42babe5. The machine's own toolchain was v1.1.9 before and after; it was borrowed for the build and restored."
35
37
  }
36
38
  }
@@ -11,8 +11,9 @@
11
11
  "upstream": {
12
12
  "repo": "https://github.com/cardano-foundation/cip113-programmable-tokens-platform",
13
13
  "path": "src/substandards/freeze-and-seize",
14
- "commit": "013c11544839754d462e0603de59f4bbf1769479",
15
- "note": "SOURCE LOCATED. The previous pin recorded repo: null / provenance: UNKNOWN because nobody had written it down — it is the `freeze-and-seize` substandard in the platform repo, alongside `dummy`. The preamble title 'cip113/freeze-unfreeze' is that directory's aiken.toml project name, not a separate repository."
14
+ "commit": "12637c7c8c7b2bbd08b59100bf7ff714401618da",
15
+ "note": "⚠ THIS PIN PREVIOUSLY NAMED 013c11544839754d462e0603de59f4bbf1769479 — AN ORPHAN, reachable from no ref, while the provenance field said VERIFIED. The registry caught what our own guard did not: it cloned and failed with `fatal: reference is not a tree`, and the record went to FAILED. A `provenance: VERIFIED` field is a CLAIM; reachability is a FACT, and they had diverged. Now 12637c7c8c7b2bbd08b59100bf7ff714401618da, verified an ancestor of origin/main, whose src/substandards/freeze-and-seize/plutus.json is sha256 9514852e… — byte-identical to this vendored artefact.",
16
+ "ref": "main"
16
17
  },
17
18
  "blueprint_reproduced": true,
18
19
  "provenance": "VERIFIED",
@@ -29,6 +29,15 @@ export declare function scriptAddress(networkId: number, scriptHash: ScriptHash)
29
29
  /**
30
30
  * Build a reward (staking) address from a script hash.
31
31
  */
32
+ /**
33
+ * Build a reward (staking) address from a KEY hash.
34
+ *
35
+ * The script-hash variant below covers protocol credentials; this one covers a
36
+ * wallet's own stake key — the upgrade authority, for instance, whose
37
+ * registration survives across deployments and therefore has to be CHECKED
38
+ * rather than assumed.
39
+ */
40
+ export declare function rewardAddressFromKeyHash(networkId: number, keyHash: HexString): string;
32
41
  export declare function rewardAddress(networkId: number, scriptHash: ScriptHash): string;
33
42
  /**
34
43
  * Build a base address with script payment credential and user's staking credential.
@@ -1 +1 @@
1
- {"version":3,"file":"evo-utils.d.ts","sourceRoot":"","sources":["../../src/core/evo-utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"evo-utils.d.ts","sourceRoot":"","sources":["../../src/core/evo-utils.ts"],"names":[],"mappings":"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"}
@@ -58,6 +58,19 @@ export function scriptAddress(networkId, scriptHash) {
58
58
  /**
59
59
  * Build a reward (staking) address from a script hash.
60
60
  */
61
+ /**
62
+ * Build a reward (staking) address from a KEY hash.
63
+ *
64
+ * The script-hash variant below covers protocol credentials; this one covers a
65
+ * wallet's own stake key — the upgrade authority, for instance, whose
66
+ * registration survives across deployments and therefore has to be CHECKED
67
+ * rather than assumed.
68
+ */
69
+ export function rewardAddressFromKeyHash(networkId, keyHash) {
70
+ const cred = new KeyHash.KeyHash({ hash: Bytes.fromHex(keyHash) });
71
+ const addr = new RewardAccount.RewardAccount({ networkId, stakeCredential: cred });
72
+ return AddressEras.toBech32(addr);
73
+ }
61
74
  export function rewardAddress(networkId, scriptHash) {
62
75
  const cred = new EvoScriptHash.ScriptHash({ hash: Bytes.fromHex(scriptHash) });
63
76
  const addr = new RewardAccount.RewardAccount({ networkId, stakeCredential: cred });
@@ -1 +1 @@
1
- {"version":3,"file":"evo-utils.js","sourceRoot":"","sources":["../../src/core/evo-utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"evo-utils.js","sourceRoot":"","sources":["../../src/core/evo-utils.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,87 @@
1
+ /**
2
+ * Assemble a CIP-171 record from a bundled blueprint's provenance pin.
3
+ *
4
+ * WHY THIS EXISTS. A record needs three things a consumer usually cannot get:
5
+ * the source repo, the exact commit, and the compiler that built the artefact.
6
+ * Those live in the `UPSTREAM_PIN.json` shipped beside each blueprint in this
7
+ * package — and a backend that serves a blueprint over an API typically strips
8
+ * the `preamble`, so the compiler is gone by the time the caller sees it.
9
+ *
10
+ * ⛔ THE ALTERNATIVE IS WORSE THAN IT LOOKS. Copying the repo/commit/compiler
11
+ * triple into a consumer is not a shortcut, it is a SECOND COPY THAT DRIFTS
12
+ * SILENTLY: the day this package ships a new blueprint, the copied triple still
13
+ * encodes, still publishes, and still VERIFIES — against the wrong source. A
14
+ * provenance record that is wrong and verifies is the worst artefact in this
15
+ * whole area, because nothing downstream can detect it.
16
+ *
17
+ * ⇒ So the encoding lives where the knowledge lives.
18
+ *
19
+ * Browser-safe: reads no files, takes both inputs as arguments. Import the pin
20
+ * as JSON via the `./blueprints/*` export path.
21
+ */
22
+ import type { HexString, PlutusBlueprint } from "../types.js";
23
+ import type { Cip171Record } from "./cip171.js";
24
+ import type { Data } from "@evolution-sdk/evolution";
25
+ /** The shape of an `UPSTREAM_PIN.json` shipped beside a blueprint. */
26
+ export interface UpstreamPin {
27
+ sha256: string;
28
+ provenance: "VERIFIED" | "UNVERIFIED" | "UNKNOWN";
29
+ upstream: {
30
+ repo: string;
31
+ commit?: string | null;
32
+ path?: string;
33
+ env?: string;
34
+ };
35
+ declares?: {
36
+ title?: string;
37
+ compiler?: string;
38
+ validators?: number;
39
+ };
40
+ }
41
+ /** One parameterisation, as recorded by a script factory's `onParameterize`. */
42
+ export interface ParameterizedScript {
43
+ rawScriptHash: HexString;
44
+ params: Data.Data[];
45
+ }
46
+ /**
47
+ * Provenance fields for a blueprint, GATED on the pin actually describing it.
48
+ *
49
+ * ⚠ THE GATE IS THE POINT. A pin and a blueprint that have drifted apart
50
+ * produce a record that is well-formed, verifiable, and about the wrong
51
+ * artefact. These checks are cheap, synchronous and need no network:
52
+ *
53
+ * - the pin must be `VERIFIED` — a permanent public claim should not be made
54
+ * from a source nobody can reproduce
55
+ * - it must name a full 40-character commit — an abbreviation is one more
56
+ * thing that can drift, and a missing one names nothing fetchable
57
+ * - the blueprint's OWN `preamble.compiler` must match what the pin declares
58
+ * - the blueprint's title and validator count must match too
59
+ *
60
+ * ⛔ What this CANNOT check, stated rather than implied: that the commit is
61
+ * still REACHABLE upstream. That needs the network, and a `provenance` field is
62
+ * a claim while reachability is a fact. Assert it separately before publishing
63
+ * — a squash-merge can orphan a commit that was reachable when the pin was
64
+ * written, and the registry will fail with `reference is not a tree`.
65
+ */
66
+ export declare function provenanceFromPin(blueprint: PlutusBlueprint, pin: UpstreamPin): {
67
+ sourceUrl: string;
68
+ commitHash: HexString;
69
+ sourcePath: string;
70
+ compilerVersion: string;
71
+ env: string;
72
+ };
73
+ /**
74
+ * Build a complete CIP-171 record from a blueprint, its pin, and the
75
+ * parameterisations that produced its deployed scripts.
76
+ *
77
+ * Feed `scripts` from a script factory's `onParameterize` recorder so the
78
+ * record is DERIVED from the calls that actually parameterised, rather than
79
+ * transcribed beside them — the map is keyed by the UNAPPLIED hash and its
80
+ * values are in APPLICATION order, and both are properties of those calls.
81
+ *
82
+ * ⚠ Only scripts THIS deployment uses belong here. A validator the deployment
83
+ * has no value for is legitimately absent; the registry reports it `PARTIAL`
84
+ * because it enumerates every validator in the repo, not because you erred.
85
+ */
86
+ export declare function buildCip171RecordFromPin(blueprint: PlutusBlueprint, pin: UpstreamPin, scripts: readonly ParameterizedScript[]): Cip171Record;
87
+ //# sourceMappingURL=provenance.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"provenance.d.ts","sourceRoot":"","sources":["../../src/core/provenance.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,OAAO,KAAK,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAGhD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAC;AAErD,sEAAsE;AACtE,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,UAAU,GAAG,YAAY,GAAG,SAAS,CAAC;IAClD,QAAQ,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAChF,QAAQ,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CACvE;AAED,gFAAgF;AAChF,MAAM,WAAW,mBAAmB;IAClC,aAAa,EAAE,SAAS,CAAC;IACzB,MAAM,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC;CACrB;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,iBAAiB,CAC/B,SAAS,EAAE,eAAe,EAC1B,GAAG,EAAE,WAAW,GACf;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,SAAS,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,eAAe,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CA4DxG;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,wBAAwB,CACtC,SAAS,EAAE,eAAe,EAC1B,GAAG,EAAE,WAAW,EAChB,OAAO,EAAE,SAAS,mBAAmB,EAAE,GACtC,YAAY,CA4Cd"}
@@ -0,0 +1,123 @@
1
+ import { CompilerType, cip171Param } from "./cip171.js";
2
+ import { computeScriptHash } from "./evo-utils.js";
3
+ /**
4
+ * Provenance fields for a blueprint, GATED on the pin actually describing it.
5
+ *
6
+ * ⚠ THE GATE IS THE POINT. A pin and a blueprint that have drifted apart
7
+ * produce a record that is well-formed, verifiable, and about the wrong
8
+ * artefact. These checks are cheap, synchronous and need no network:
9
+ *
10
+ * - the pin must be `VERIFIED` — a permanent public claim should not be made
11
+ * from a source nobody can reproduce
12
+ * - it must name a full 40-character commit — an abbreviation is one more
13
+ * thing that can drift, and a missing one names nothing fetchable
14
+ * - the blueprint's OWN `preamble.compiler` must match what the pin declares
15
+ * - the blueprint's title and validator count must match too
16
+ *
17
+ * ⛔ What this CANNOT check, stated rather than implied: that the commit is
18
+ * still REACHABLE upstream. That needs the network, and a `provenance` field is
19
+ * a claim while reachability is a fact. Assert it separately before publishing
20
+ * — a squash-merge can orphan a commit that was reachable when the pin was
21
+ * written, and the registry will fail with `reference is not a tree`.
22
+ */
23
+ export function provenanceFromPin(blueprint, pin) {
24
+ const where = pin.upstream?.path ? `${pin.upstream.repo}/${pin.upstream.path}` : pin.upstream?.repo;
25
+ if (pin.provenance !== "VERIFIED") {
26
+ throw new Error(`CIP-171 REFUSED: ${where} is pinned "${pin.provenance}", not VERIFIED. A record is a ` +
27
+ `permanent, public claim that these scripts came from a named commit; unlike a file, a ` +
28
+ `metadatum cannot be deleted.`);
29
+ }
30
+ const commit = pin.upstream?.commit;
31
+ if (typeof commit !== "string" || !/^[0-9a-f]{40}$/i.test(commit)) {
32
+ throw new Error(`CIP-171 REFUSED: ${where} pins commit ${JSON.stringify(commit)}, not a full 40-character ` +
33
+ `sha. An abbreviation can drift; a missing commit names nothing a verifier can fetch.`);
34
+ }
35
+ const declared = pin.declares ?? {};
36
+ const actualCompiler = blueprint?.preamble?.compiler;
37
+ const actualCompilerStr = actualCompiler
38
+ ? `${actualCompiler.name} ${actualCompiler.version}`
39
+ : undefined;
40
+ if (declared.compiler && actualCompilerStr && declared.compiler !== actualCompilerStr) {
41
+ throw new Error(`CIP-171 REFUSED: this blueprint was built by "${actualCompilerStr}" but the pin describes ` +
42
+ `"${declared.compiler}". The pin and the artefact have drifted — a record built from ` +
43
+ `them would be well-formed, would verify, and would describe the wrong source.`);
44
+ }
45
+ if (declared.title && blueprint?.preamble?.title && declared.title !== blueprint.preamble.title) {
46
+ throw new Error(`CIP-171 REFUSED: blueprint title "${blueprint.preamble.title}" does not match the pin's ` +
47
+ `"${declared.title}". Wrong pin for this blueprint.`);
48
+ }
49
+ const n = blueprint?.validators?.length;
50
+ if (typeof declared.validators === "number" && typeof n === "number" && declared.validators !== n) {
51
+ throw new Error(`CIP-171 REFUSED: blueprint has ${n} validator entries, the pin describes ` +
52
+ `${declared.validators}. The pin and the artefact have drifted.`);
53
+ }
54
+ if (!actualCompiler?.version) {
55
+ throw new Error(`CIP-171 REFUSED: this blueprint has no preamble.compiler.version. Take the compiler from ` +
56
+ `the ARTEFACT — never from the locally installed toolchain, which is frequently a ` +
57
+ `different version and would make the record a false provenance claim.`);
58
+ }
59
+ return {
60
+ sourceUrl: pin.upstream.repo,
61
+ commitHash: commit.toLowerCase(),
62
+ sourcePath: pin.upstream.path ?? "",
63
+ // From the artefact, never from the environment.
64
+ compilerVersion: actualCompiler.version,
65
+ env: pin.upstream.env ?? "",
66
+ };
67
+ }
68
+ /**
69
+ * Build a complete CIP-171 record from a blueprint, its pin, and the
70
+ * parameterisations that produced its deployed scripts.
71
+ *
72
+ * Feed `scripts` from a script factory's `onParameterize` recorder so the
73
+ * record is DERIVED from the calls that actually parameterised, rather than
74
+ * transcribed beside them — the map is keyed by the UNAPPLIED hash and its
75
+ * values are in APPLICATION order, and both are properties of those calls.
76
+ *
77
+ * ⚠ Only scripts THIS deployment uses belong here. A validator the deployment
78
+ * has no value for is legitimately absent; the registry reports it `PARTIAL`
79
+ * because it enumerates every validator in the repo, not because you erred.
80
+ */
81
+ export function buildCip171RecordFromPin(blueprint, pin, scripts) {
82
+ const p = provenanceFromPin(blueprint, pin);
83
+ // ⛔ CONTENT GATE: every recorded script must EXIST IN THE BLUEPRINT THIS PIN
84
+ // DESCRIBES.
85
+ //
86
+ // The identity checks above compare title, compiler and validator count —
87
+ // enough to catch a wrong pin, NOT enough to catch a blueprint that shares a
88
+ // preamble and differs in its compiled code. That case is the dangerous one:
89
+ // the record would name the caller's real script hashes alongside OUR commit,
90
+ // and it would verify against source that never produced them.
91
+ //
92
+ // ⇒ Pass the blueprint BUNDLED WITH THIS PACKAGE (import it via the
93
+ // "./blueprints/*" path). Then a script parameterised from any other artefact
94
+ // fails to appear here and is refused. Comparing file bytes is not an option:
95
+ // an API that serves a blueprint typically strips the preamble, so the
96
+ // original bytes cannot be reconstructed by the caller even in principle.
97
+ const known = new Set();
98
+ for (const v of blueprint?.validators ?? []) {
99
+ if (v?.compiledCode)
100
+ known.add(computeScriptHash(v.compiledCode).toLowerCase());
101
+ }
102
+ const foreign = scripts
103
+ .map((s) => s.rawScriptHash.toLowerCase())
104
+ .filter((h) => !known.has(h));
105
+ if (foreign.length > 0) {
106
+ throw new Error(`CIP-171 REFUSED: ${foreign.length} recorded script(s) are NOT in the blueprint this pin ` +
107
+ `describes — ${foreign.slice(0, 3).join(", ")}. They were parameterised from a different ` +
108
+ `artefact, so a record naming this commit would verify against source that never ` +
109
+ `produced them. Pass the blueprint bundled with this package.`);
110
+ }
111
+ return {
112
+ compilerType: CompilerType.AIKEN,
113
+ ...p,
114
+ scripts: scripts.map((s) => ({
115
+ rawScriptHash: s.rawScriptHash,
116
+ // Bytestring-wrapped, NOT inline PlutusData. Inline is not rejected — the
117
+ // registry reads `.bytes`, gets nothing, and stores a record whose
118
+ // parameters have silently vanished while it still verifies.
119
+ params: s.params.map((d) => cip171Param(d)),
120
+ })),
121
+ };
122
+ }
123
+ //# sourceMappingURL=provenance.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"provenance.js","sourceRoot":"","sources":["../../src/core/provenance.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -96,13 +96,15 @@ export declare const CIP113: {
96
96
  };
97
97
  export type { EvoClient, SubstandardPlugin, SubstandardFactory, SubstandardContext, RegisterParams, MintParams, BurnParams, TransferParams, FreezeParams, UnfreezeParams, SeizeParams, InitComplianceParams, UnsignedTx, CIP68MetadataInput, } from "./substandards/interface.js";
98
98
  export type { DeploymentParams, PlutusBlueprint, PlutusScript, TxInput, UTxO, Network, PolicyId, ScriptHash, HexString, Assets, } from "./types.js";
99
- export { buildEvoScript, computeScriptHash, parameterizeScript, scriptAddress, rewardAddress, baseAddress, stakingCredentialHash, paymentCredentialHash, getInlineDatum, REGISTRY_NODE_MIN_ADA, stringToHex, MAX_NEXT, voidData, outputReference, scriptCredential, keyCredential, labeledAssetName, stripCIP67Label, hasCIP67Label, buildCIP68FTDatum, } from "./core/evo-utils.js";
99
+ export { buildEvoScript, computeScriptHash, parameterizeScript, scriptAddress, rewardAddress, rewardAddressFromKeyHash, baseAddress, stakingCredentialHash, paymentCredentialHash, getInlineDatum, REGISTRY_NODE_MIN_ADA, stringToHex, MAX_NEXT, voidData, outputReference, scriptCredential, keyCredential, labeledAssetName, stripCIP67Label, hasCIP67Label, buildCIP68FTDatum, } from "./core/evo-utils.js";
100
100
  export { sortTxInputs, findRefInputIndex } from "./core/registry.js";
101
101
  export { mintAssetsFromMap, outputAssets } from "./core/evo-utils.js";
102
102
  export { registryNodeDatum, decodeRegistryNode, registryInitRedeemer, registryInsertRedeemer, mintingProofRefInput, mintingProofOutputIndex, protocolParamsDatum, decodeProtocolParams, } from "./core/evo-utils.js";
103
103
  export type { RegistryNodeData, ProtocolParamsData, Cip113Credential, } from "./core/evo-utils.js";
104
104
  export { assertDeploymentScripts, DeploymentMismatchError, createStandardScripts, type ScriptHashCheck, type StandardScripts, } from "./standard/scripts.js";
105
- export { CIP171_METADATA_LABEL, CIP171_MAX_CHUNK_BYTES, CompilerType, buildCip171PlutusData, buildCip171Metadatum, chunkBytes, decodeCip171Metadatum, decodeCip171PlutusData, } from "./core/cip171.js";
105
+ export { CIP171_METADATA_LABEL, CIP171_MAX_CHUNK_BYTES, CompilerType, buildCip171PlutusData, buildCip171Metadatum, chunkBytes, decodeCip171Metadatum, decodeCip171PlutusData, cip171Param, } from "./core/cip171.js";
106
+ export { provenanceFromPin, buildCip171RecordFromPin, } from "./core/provenance.js";
107
+ export type { UpstreamPin, ParameterizedScript } from "./core/provenance.js";
106
108
  export type { Cip171Record, Cip171ScriptEntry, } from "./core/cip171.js";
107
109
  export { addressHexToBech32 } from "./provider/address-utils.js";
108
110
  export { assembleSignedTx } from "./provider/tx-utils.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,eAAe,EAAY,MAAM,YAAY,CAAC;AAC9E,OAAO,KAAK,EACV,SAAS,EACT,iBAAiB,EACjB,cAAc,EACd,UAAU,EACV,UAAU,EACV,cAAc,EACd,wBAAwB,EACxB,YAAY,EACZ,cAAc,EACd,WAAW,EACX,oBAAoB,EACpB,UAAU,EACX,MAAM,6BAA6B,CAAC;AAErC,OAAO,EAA0B,KAAK,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAM7F,MAAM,WAAW,YAAY;IAC3B,6DAA6D;IAC7D,MAAM,EAAE,SAAS,CAAC;IAElB,sCAAsC;IACtC,QAAQ,EAAE;QACR,SAAS,EAAE,eAAe,CAAC;QAC3B,UAAU,EAAE,gBAAgB,CAAC;KAC9B,CAAC;IAEF,sCAAsC;IACtC,YAAY,CAAC,EAAE,iBAAiB,EAAE,CAAC;IAEnC,wGAAwG;IACxG,sBAAsB,CAAC,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IAEpE;;;;;;OAMG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAMD,MAAM,WAAW,cAAc;IAC7B,uDAAuD;IACvD,QAAQ,CAAC,OAAO,EAAE,uBAAuB,CAAC;IAE1C,gCAAgC;IAChC,QAAQ,CAAC,UAAU,EAAE,gBAAgB,CAAC;IAEtC,+BAA+B;IAC/B,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC;IAI3B,wCAAwC;IACxC,QAAQ,CAAC,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IAE7E,6BAA6B;IAC7B,IAAI,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IAE9C,kBAAkB;IAClB,IAAI,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IAE9C,sBAAsB;IACtB,QAAQ,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IAEtD;;;;;;OAMG;IACH,kBAAkB,CAAC,MAAM,EAAE,wBAAwB,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IAI1E,UAAU,EAAE;QACV,6DAA6D;QAC7D,IAAI,CAAC,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,oBAAoB,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;QAE/E,wBAAwB;QACxB,MAAM,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;QAElD,0BAA0B;QAC1B,QAAQ,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;QAEtD,mBAAmB;QACnB,KAAK,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;KACjD,CAAC;IAIF,mDAAmD;IACnD,mBAAmB,CAAC,MAAM,EAAE,iBAAiB,GAAG,IAAI,CAAC;IAErD,yCAAyC;IACzC,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,iBAAiB,GAAG,SAAS,CAAC;IAE1D,0CAA0C;IAC1C,gBAAgB,IAAI,MAAM,EAAE,CAAC;CAC9B;AAMD,eAAO,MAAM,MAAM;IACjB;;;;;OAKG;iBACU,YAAY,GAAG,cAAc;CAsL3C,CAAC;AAMF,YAAY,EACV,SAAS,EACT,iBAAiB,EACjB,kBAAkB,EAClB,kBAAkB,EAClB,cAAc,EACd,UAAU,EACV,UAAU,EACV,cAAc,EACd,YAAY,EACZ,cAAc,EACd,WAAW,EACX,oBAAoB,EACpB,UAAU,EACV,kBAAkB,GACnB,MAAM,6BAA6B,CAAC;AACrC,YAAY,EACV,gBAAgB,EAChB,eAAe,EACf,YAAY,EACZ,OAAO,EACP,IAAI,EACJ,OAAO,EACP,QAAQ,EACR,UAAU,EACV,SAAS,EACT,MAAM,GACP,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,cAAc,EACd,iBAAiB,EACjB,kBAAkB,EAClB,aAAa,EACb,aAAa,EACb,wBAAwB,EACxB,WAAW,EACX,qBAAqB,EACrB,qBAAqB,EACrB,cAAc,EACd,qBAAqB,EACrB,WAAW,EACX,QAAQ,EACR,QAAQ,EACR,eAAe,EACf,gBAAgB,EAChB,aAAa,EACb,gBAAgB,EAChB,eAAe,EACf,aAAa,EACb,iBAAiB,GAClB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACrE,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACtE,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAClB,oBAAoB,EACpB,sBAAsB,EACtB,oBAAoB,EACpB,uBAAuB,EACvB,mBAAmB,EACnB,oBAAoB,GACrB,MAAM,qBAAqB,CAAC;AAC7B,YAAY,EACV,gBAAgB,EAChB,kBAAkB,EAClB,gBAAgB,GACjB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,uBAAuB,EACvB,uBAAuB,EACvB,qBAAqB,EACrB,KAAK,eAAe,EACpB,KAAK,eAAe,GACrB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,qBAAqB,EACrB,sBAAsB,EACtB,YAAY,EACZ,qBAAqB,EACrB,oBAAoB,EACpB,UAAU,EACV,qBAAqB,EACrB,sBAAsB,EAItB,WAAW,GACZ,MAAM,kBAAkB,CAAC;AAM1B,OAAO,EACL,iBAAiB,EACjB,wBAAwB,GACzB,MAAM,sBAAsB,CAAC;AAC9B,YAAY,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAC7E,YAAY,EACV,YAAY,EACZ,iBAAiB,GAClB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,YAAY,EAAE,mBAAmB,EAAE,MAAM,0CAA0C,CAAC;AAGpF,OAAO,EACL,OAAO,IAAI,YAAY,EACvB,OAAO,IAAI,YAAY,EACvB,OAAO,IAAI,YAAY,EACvB,OAAO,IAAI,UAAU,EACrB,MAAM,IAAI,SAAS,EACnB,eAAe,IAAI,kBAAkB,EACrC,WAAW,IAAI,cAAc,EAC7B,qBAAqB,IAAI,wBAAwB,EACjD,IAAI,IAAI,OAAO,GAChB,MAAM,0BAA0B,CAAC;AAGlC,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAClD,eAAO,MAAM,SAAS,6EAAc,CAAC;AAMrC,OAAO,EACL,eAAe,EACf,qBAAqB,EACrB,qBAAqB,EACrB,kBAAkB,EAClB,iBAAiB,EACjB,YAAY,EACZ,iBAAiB,EACjB,gBAAgB,EAChB,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,wBAAwB,CAAC;AAChC,YAAY,EAAE,aAAa,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC"}
package/dist/index.js CHANGED
@@ -177,12 +177,21 @@ export const CIP113 = {
177
177
  };
178
178
  },
179
179
  };
180
- export { buildEvoScript, computeScriptHash, parameterizeScript, scriptAddress, rewardAddress, baseAddress, stakingCredentialHash, paymentCredentialHash, getInlineDatum, REGISTRY_NODE_MIN_ADA, stringToHex, MAX_NEXT, voidData, outputReference, scriptCredential, keyCredential, labeledAssetName, stripCIP67Label, hasCIP67Label, buildCIP68FTDatum, } from "./core/evo-utils.js";
180
+ export { buildEvoScript, computeScriptHash, parameterizeScript, scriptAddress, rewardAddress, rewardAddressFromKeyHash, baseAddress, stakingCredentialHash, paymentCredentialHash, getInlineDatum, REGISTRY_NODE_MIN_ADA, stringToHex, MAX_NEXT, voidData, outputReference, scriptCredential, keyCredential, labeledAssetName, stripCIP67Label, hasCIP67Label, buildCIP68FTDatum, } from "./core/evo-utils.js";
181
181
  export { sortTxInputs, findRefInputIndex } from "./core/registry.js";
182
182
  export { mintAssetsFromMap, outputAssets } from "./core/evo-utils.js";
183
183
  export { registryNodeDatum, decodeRegistryNode, registryInitRedeemer, registryInsertRedeemer, mintingProofRefInput, mintingProofOutputIndex, protocolParamsDatum, decodeProtocolParams, } from "./core/evo-utils.js";
184
184
  export { assertDeploymentScripts, DeploymentMismatchError, createStandardScripts, } from "./standard/scripts.js";
185
- export { CIP171_METADATA_LABEL, CIP171_MAX_CHUNK_BYTES, CompilerType, buildCip171PlutusData, buildCip171Metadatum, chunkBytes, decodeCip171Metadatum, decodeCip171PlutusData, } from "./core/cip171.js";
185
+ export { CIP171_METADATA_LABEL, CIP171_MAX_CHUNK_BYTES, CompilerType, buildCip171PlutusData, buildCip171Metadatum, chunkBytes, decodeCip171Metadatum, decodeCip171PlutusData,
186
+ // Serialises one PlutusData parameter to the bytestring-wrapped hex the
187
+ // format requires. Cip171ScriptEntry's own docs direct callers here, so it
188
+ // was public API in intent already.
189
+ cip171Param, } from "./core/cip171.js";
190
+ // Provenance: assemble a CIP-171 record from a bundled blueprint's pin.
191
+ // Import the pin itself as JSON via the "./blueprints/*" export path — a
192
+ // consumer that COPIES the repo/commit/compiler triple instead gets a second
193
+ // copy that drifts silently and still verifies.
194
+ export { provenanceFromPin, buildCip171RecordFromPin, } from "./core/provenance.js";
186
195
  export { addressHexToBech32 } from "./provider/address-utils.js";
187
196
  export { assembleSignedTx } from "./provider/tx-utils.js";
188
197
  // Re-export Evolution SDK essentials so consumers don't need a direct dependency
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAiBH,OAAO,EAAE,yBAAyB,EAAE,MAAM,yBAAyB,CAAC;AACpE,OAAO,EAAE,sBAAsB,EAAgC,MAAM,uBAAuB,CAAC;AAiG7F,8EAA8E;AAC9E,OAAO;AACP,8EAA8E;AAE9E,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB;;;;;OAKG;IACH,IAAI,CAAC,MAAoB;QACvB,0DAA0D;QAC1D,yBAAyB,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QAErD,qEAAqE;QACrE,MAAM,OAAO,GAAG,sBAAsB,CACpC,MAAM,CAAC,QAAQ,CAAC,SAAS,EACzB,MAAM,CAAC,QAAQ,CAAC,UAAU,CAC3B,CAAC;QAEF,kCAAkC;QAClC,MAAM,YAAY,GAAG,IAAI,GAAG,EAA6B,CAAC;QAE1D,gCAAgC;QAChC,MAAM,kBAAkB,GAA6D;YACnF,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,eAAe,EAAE,OAAO;YACxB,UAAU,EAAE,MAAM,CAAC,QAAQ,CAAC,UAAU;YACtC,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;YAC7D,sBAAsB,EAAE,MAAM,CAAC,sBAAsB;SACtD,CAAC;QAEF,gDAAgD;QAChD,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC;YACxB,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC;gBACzC,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;gBAChC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;YACtC,CAAC;QACH,CAAC;QAED,+BAA+B;QAC/B,KAAK,UAAU,kBAAkB,CAC/B,SAAiB,EACjB,QAAgB,EAChB,EAAsD;YAEtD,IAAI,SAAkB,CAAC;YACvB,KAAK,MAAM,MAAM,IAAI,YAAY,CAAC,MAAM,EAAE,EAAE,CAAC;gBAC3C,IAAI,CAAC;oBACH,OAAO,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC;gBAC1B,CAAC;gBAAC,OAAO,CAAC,EAAE,CAAC;oBACX,SAAS,GAAG,CAAC,CAAC;oBACd,SAAS;gBACX,CAAC;YACH,CAAC;YACD,MAAM,IAAI,KAAK,CACb,6BAA6B,SAAS,eAAe,QAAQ,IAAI;gBACjE,eAAe,CAAC,GAAG,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK;gBACvD,eAAe,SAAS,YAAY,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI;gBACrF,6CAA6C,CAC9C,CAAC;QACJ,CAAC;QAED,SAAS,kBAAkB,CAAC,EAAU;YACpC,MAAM,MAAM,GAAG,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACpC,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,MAAM,IAAI,KAAK,CACb,gBAAgB,EAAE,gCAAgC,CAAC,GAAG,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CACxF,CAAC;YACJ,CAAC;YACD,OAAO,MAAM,CAAC;QAChB,CAAC;QAED,OAAO;YACL,OAAO;YACP,UAAU,EAAE,MAAM,CAAC,QAAQ,CAAC,UAAU;YACtC,MAAM,EAAE,MAAM,CAAC,MAAM;YAErB,KAAK,CAAC,QAAQ,CAAC,aAAa,EAAE,MAAM;gBAClC,OAAO,kBAAkB,CAAC,aAAa,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YAC5D,CAAC;YAED,KAAK,CAAC,kBAAkB,CAAC,MAAM;gBAC7B,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC;oBAC1B,MAAM,IAAI,KAAK,CACb,kFAAkF;wBAChF,6EAA6E;wBAC7E,6EAA6E,CAChF,CAAC;gBACJ,CAAC;gBACD,MAAM,MAAM,GAAG,kBAAkB,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;gBACxD,IAAI,CAAC,MAAM,CAAC,kBAAkB,EAAE,CAAC;oBAC/B,MAAM,IAAI,KAAK,CACb,gBAAgB,MAAM,CAAC,aAAa,4CAA4C;wBAC9E,kFAAkF;wBAClF,kFAAkF,CACrF,CAAC;gBACJ,CAAC;gBACD,OAAO,MAAM,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;YAC3C,CAAC;YAED,KAAK,CAAC,IAAI,CAAC,MAAM;gBACf,IAAI,MAAM,CAAC,aAAa,EAAE,CAAC;oBACzB,OAAO,kBAAkB,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBAC/D,CAAC;gBACD,OAAO,kBAAkB,CAAC,MAAM,EAAE,MAAM,CAAC,aAAa,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;YACjF,CAAC;YAED,KAAK,CAAC,IAAI,CAAC,MAAM;gBACf,IAAI,MAAM,CAAC,aAAa,EAAE,CAAC;oBACzB,OAAO,kBAAkB,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBAC/D,CAAC;gBACD,OAAO,kBAAkB,CAAC,MAAM,EAAE,MAAM,CAAC,aAAa,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;YACjF,CAAC;YAED,KAAK,CAAC,QAAQ,CAAC,MAAM;gBACnB,IAAI,MAAM,CAAC,aAAa,EAAE,CAAC;oBACzB,OAAO,kBAAkB,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;gBACnE,CAAC;gBACD,OAAO,kBAAkB,CAAC,UAAU,EAAE,MAAM,CAAC,aAAa,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;YACzF,CAAC;YAED,UAAU,EAAE;gBACV,KAAK,CAAC,IAAI,CAAC,aAAa,EAAE,MAAM;oBAC9B,MAAM,MAAM,GAAG,kBAAkB,CAAC,aAAa,CAAC,CAAC;oBACjD,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;wBAC3B,MAAM,IAAI,KAAK,CAAC,gBAAgB,aAAa,8CAA8C,CAAC,CAAC;oBAC/F,CAAC;oBACD,OAAO,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;gBACvC,CAAC;gBAED,KAAK,CAAC,MAAM,CAAC,MAAM;oBACjB,uEAAuE;oBACvE,oEAAoE;oBACpE,uEAAuE;oBACvE,uEAAuE;oBACvE,yDAAyD;oBACzD,MAAM,MAAM,GAAG,kBAAkB,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;oBACxD,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;wBACnB,MAAM,IAAI,KAAK,CACb,gBAAgB,MAAM,CAAC,aAAa,4BAA4B,CACjE,CAAC;oBACJ,CAAC;oBACD,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAC/B,CAAC;gBAED,KAAK,CAAC,QAAQ,CAAC,MAAM;oBACnB,uEAAuE;oBACvE,oEAAoE;oBACpE,uEAAuE;oBACvE,uEAAuE;oBACvE,yDAAyD;oBACzD,MAAM,MAAM,GAAG,kBAAkB,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;oBACxD,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;wBACrB,MAAM,IAAI,KAAK,CACb,gBAAgB,MAAM,CAAC,aAAa,8BAA8B,CACnE,CAAC;oBACJ,CAAC;oBACD,OAAO,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;gBACjC,CAAC;gBAED,KAAK,CAAC,KAAK,CAAC,MAAM;oBAChB,uEAAuE;oBACvE,oEAAoE;oBACpE,uEAAuE;oBACvE,uEAAuE;oBACvE,yDAAyD;oBACzD,MAAM,MAAM,GAAG,kBAAkB,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;oBACxD,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;wBAClB,MAAM,IAAI,KAAK,CACb,gBAAgB,MAAM,CAAC,aAAa,2BAA2B,CAChE,CAAC;oBACJ,CAAC;oBACD,OAAO,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;gBAC9B,CAAC;aACF;YAED,mBAAmB,CAAC,MAAM;gBACxB,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;gBAChC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;YACtC,CAAC;YAED,cAAc,CAAC,EAAE;gBACf,OAAO,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC9B,CAAC;YAED,gBAAgB;gBACd,OAAO,CAAC,GAAG,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC;YAClC,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC;AAkCF,OAAO,EACL,cAAc,EACd,iBAAiB,EACjB,kBAAkB,EAClB,aAAa,EACb,aAAa,EACb,WAAW,EACX,qBAAqB,EACrB,qBAAqB,EACrB,cAAc,EACd,qBAAqB,EACrB,WAAW,EACX,QAAQ,EACR,QAAQ,EACR,eAAe,EACf,gBAAgB,EAChB,aAAa,EACb,gBAAgB,EAChB,eAAe,EACf,aAAa,EACb,iBAAiB,GAClB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACrE,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACtE,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAClB,oBAAoB,EACpB,sBAAsB,EACtB,oBAAoB,EACpB,uBAAuB,EACvB,mBAAmB,EACnB,oBAAoB,GACrB,MAAM,qBAAqB,CAAC;AAM7B,OAAO,EACL,uBAAuB,EACvB,uBAAuB,EACvB,qBAAqB,GAGtB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,qBAAqB,EACrB,sBAAsB,EACtB,YAAY,EACZ,qBAAqB,EACrB,oBAAoB,EACpB,UAAU,EACV,qBAAqB,EACrB,sBAAsB,GACvB,MAAM,kBAAkB,CAAC;AAK1B,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAG1D,iFAAiF;AACjF,OAAO,EACL,OAAO,IAAI,YAAY,EACvB,OAAO,IAAI,YAAY,EACvB,OAAO,IAAI,YAAY,EACvB,OAAO,IAAI,UAAU,EACrB,MAAM,IAAI,SAAS,EACnB,eAAe,IAAI,kBAAkB,EACrC,WAAW,IAAI,cAAc,EAC7B,qBAAqB,IAAI,wBAAwB,EACjD,IAAI,IAAI,OAAO,GAChB,MAAM,0BAA0B,CAAC;AAElC,qDAAqD;AACrD,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAClD,MAAM,CAAC,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC;AAErC,8EAA8E;AAC9E,8CAA8C;AAC9C,8EAA8E;AAE9E,OAAO,EACL,eAAe,EACf,qBAAqB,EACrB,qBAAqB,EACrB,kBAAkB,EAClB,iBAAiB,EACjB,YAAY,EACZ,iBAAiB,EACjB,gBAAgB,EAChB,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,wBAAwB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,37 @@
1
+ /**
2
+ * Standard script parameterization — CIP-113 0.5.0-alpha.2 (upstream 9db7e06).
3
+ *
4
+ * Uses Evolution SDK directly for UPLC.applyParamsToScript and ScriptHash.
5
+ *
6
+ * Dependency graph. Note it is NO LONGER a single chain: upstream #110 removed
7
+ * programmable_logic_global, and PLB is now parameterised by the params-NFT
8
+ * policy rather than by PLG's credential, so everything downstream hangs off
9
+ * `params_policy` in parallel instead of in series.
10
+ *
11
+ * always_fail(nonce) -> hash (issuance side only now)
12
+ * coordination_spend(nonce) -> hash NEW: the lock target
13
+ * protocol_params_mint(utxo_ref, coord_hash) -> policy == params_policy
14
+ * |
15
+ * +-- programmable_logic_base(params_policy) -> hash
16
+ * +-- transfer(params_policy) -> hash (PLG's transfer arm, renamed)
17
+ * +-- third_party(params_policy) -> hash NEW: seize / clawback
18
+ * +-- unfracking(params_policy) -> hash
19
+ * +-- registry_spend(params_policy) -> hash
20
+ *
21
+ * issuance_cbor_hex_mint(utxo_ref, always_fail_hash) -> policy
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)
25
+ *
26
+ * ⚠ PARAMETER TYPES ARE NOT INTERCHANGEABLE and TypeScript cannot tell them
27
+ * apart — every one of these is a hex string at the call site. `params_policy`
28
+ * is a PolicyId (a bare ByteArray); `minting_logic_cred` and friends are
29
+ * Credentials (a constructor-wrapped Script/VerificationKey). Passing a policy
30
+ * where a credential belongs produces a valid script with the wrong hash. The
31
+ * types below come from the blueprint's own parameter schemas, not from
32
+ * upstream's prose docs — see the hazard note in blueprint.ts.
33
+ */
34
+ import { Data } from "@evolution-sdk/evolution";
1
35
  import type { DeploymentParams, HexString, PlutusBlueprint, PlutusScript, PolicyId, ScriptHash, TxInput } from "../types.js";
2
36
  export interface StandardScripts {
3
37
  alwaysFail(nonce: HexString): PlutusScript;
@@ -24,7 +58,26 @@ export interface StandardScripts {
24
58
  * Create standard script builders from a blueprint.
25
59
  * Uses Evolution SDK directly for parameterization and hashing.
26
60
  */
27
- export declare function createStandardScripts(blueprint: PlutusBlueprint): StandardScripts;
61
+ /**
62
+ * One parameterisation, as it happened. Emitted by {@link createStandardScripts}
63
+ * when a recorder is supplied.
64
+ *
65
+ * Exists so a CIP-171 record can be DERIVED from the same call path that
66
+ * actually parameterises the scripts, rather than hand-maintained alongside it.
67
+ * The record is keyed by the UNAPPLIED hash and its values are in APPLICATION
68
+ * order; both are properties of this call and of nothing else. A second list
69
+ * transcribed by hand would agree with the deployment right up until it did
70
+ * not, and the disagreement would surface as a hash that verifies to nothing.
71
+ */
72
+ export interface ParameterizationEvent {
73
+ /** Validator title as it appears in the blueprint. */
74
+ title: string;
75
+ /** Blake2b-224 of the UNAPPLIED compiled code — the CIP-171 map key. */
76
+ rawScriptHash: ScriptHash;
77
+ /** Arguments applied, in application order. */
78
+ params: Data.Data[];
79
+ }
80
+ export declare function createStandardScripts(blueprint: PlutusBlueprint, onParameterize?: (event: ParameterizationEvent) => void): StandardScripts;
28
81
  /** One derived-vs-deployed script hash comparison. */
29
82
  export interface ScriptHashCheck {
30
83
  /** Validator name, as it appears in the parameterization chain */