@easy1staking/cip113-sdk-ts 0.3.0 → 0.4.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 +20 -0
- package/blueprints/standard/v0.3.0/UPSTREAM_PIN.json +30 -0
- package/blueprints/standard/v0.5.0-alpha.2/UPSTREAM_PIN.json +33 -0
- package/blueprints/standard/v0.5.0-alpha.2/plutus.json +1010 -0
- package/blueprints/substandards/dummy/v0.1.0/UPSTREAM_PIN.json +29 -0
- package/blueprints/substandards/dummy/v0.2.0/UPSTREAM_PIN.json +36 -0
- package/blueprints/substandards/dummy/v0.2.0/plutus.json +84 -0
- package/blueprints/substandards/freeze-and-seize/v0.1.0/UPSTREAM_PIN.json +35 -0
- package/dist/core/cip171.d.ts +149 -0
- package/dist/core/cip171.d.ts.map +1 -0
- package/dist/core/cip171.js +284 -0
- package/dist/core/cip171.js.map +1 -0
- package/dist/core/evo-utils.d.ts +125 -17
- package/dist/core/evo-utils.d.ts.map +1 -1
- package/dist/core/evo-utils.js +149 -21
- package/dist/core/evo-utils.js.map +1 -1
- package/dist/core/ledger-order.d.ts +109 -0
- package/dist/core/ledger-order.d.ts.map +1 -0
- package/dist/core/ledger-order.js +185 -0
- package/dist/core/ledger-order.js.map +1 -0
- package/dist/core/registry.d.ts +16 -3
- package/dist/core/registry.d.ts.map +1 -1
- package/dist/core/registry.js +18 -9
- package/dist/core/registry.js.map +1 -1
- package/dist/index.d.ts +27 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +55 -17
- package/dist/index.js.map +1 -1
- package/dist/standard/blueprint.d.ts +48 -1
- package/dist/standard/blueprint.d.ts.map +1 -1
- package/dist/standard/blueprint.js +71 -5
- package/dist/standard/blueprint.js.map +1 -1
- package/dist/standard/scripts.d.ts +76 -27
- package/dist/standard/scripts.d.ts.map +1 -1
- package/dist/standard/scripts.js +177 -49
- package/dist/standard/scripts.js.map +1 -1
- package/dist/substandards/dummy/index.d.ts.map +1 -1
- package/dist/substandards/dummy/index.js +443 -26
- 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 +283 -41
- package/dist/substandards/freeze-and-seize/index.js.map +1 -1
- package/dist/substandards/interface.d.ts +93 -1
- package/dist/substandards/interface.d.ts.map +1 -1
- package/dist/types.d.ts +87 -4
- package/dist/types.d.ts.map +1 -1
- package/package.json +4 -1
package/README.md
CHANGED
|
@@ -60,6 +60,26 @@ await client.awaitTx(txHash);
|
|
|
60
60
|
|
|
61
61
|
## Examples
|
|
62
62
|
|
|
63
|
+
> ### ⚠ The examples do not currently run. Do not follow this section yet.
|
|
64
|
+
>
|
|
65
|
+
> Two things are wrong with it, both known and neither hidden:
|
|
66
|
+
>
|
|
67
|
+
> 1. **The scripts target a superseded protocol.** They are written against a CIP-113 **0.3.x**
|
|
68
|
+
> deployment on preprod. This SDK now targets **0.5.0-alpha.2**, in which
|
|
69
|
+
> `programmable_logic_global` no longer exists and `DeploymentParams` has a different shape.
|
|
70
|
+
> The scripts cannot work against that deployment, and the deployment cannot be represented
|
|
71
|
+
> by this SDK.
|
|
72
|
+
> 2. **`.env.example` does not exist.** The `cp` below has never worked.
|
|
73
|
+
>
|
|
74
|
+
> **Nothing here is covered by CI** — `examples/` is a separate package, outside the root
|
|
75
|
+
> typecheck and outside the test suite, so neither defect can fail a build.
|
|
76
|
+
>
|
|
77
|
+
> Choosing a replacement target is an open decision (a local devnet, or a freshly deployed
|
|
78
|
+
> preprod instance); it is tracked in `PLAN.md` under workstream **W-E, slice S-7**. Until it is
|
|
79
|
+
> made, the working end-to-end reference is the **devnet suite** — `npm run test:devnet` — which
|
|
80
|
+
> exercises bootstrap, register, mint, transfer, third-party transfer and an in-place upgrade
|
|
81
|
+
> against a live chain. See `docs/devnet.md`.
|
|
82
|
+
|
|
63
83
|
The `examples/` directory contains runnable scripts for the full token lifecycle:
|
|
64
84
|
|
|
65
85
|
```bash
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
{
|
|
2
|
+
"artifact": "plutus.json",
|
|
3
|
+
"sha256": "b4f54412c84dc8d6c1e03892a9c45750d0e7da2669e0150d95e8f0fa38274284",
|
|
4
|
+
"declares": {
|
|
5
|
+
"title": "iohk/programmable-tokens",
|
|
6
|
+
"version": "0.3.0",
|
|
7
|
+
"compiler": "Aiken v1.1.21+42babe5",
|
|
8
|
+
"validators": 16
|
|
9
|
+
},
|
|
10
|
+
"upstream": {
|
|
11
|
+
"repo": "https://github.com/cardano-foundation/cip113-programmable-tokens",
|
|
12
|
+
"note": "Same repository; it was named iohk/programmable-tokens until the 0.3.0 -> 0.4.0 bump (renamed between 2026-04-28 and 2026-06-24). Not a separate protocol lineage.",
|
|
13
|
+
"commit": null
|
|
14
|
+
},
|
|
15
|
+
"blueprint_reproduced": false,
|
|
16
|
+
"provenance": "UNVERIFIED",
|
|
17
|
+
"verified": {
|
|
18
|
+
"date": "2026-08-14",
|
|
19
|
+
"findings": [
|
|
20
|
+
"This file matches NO commit in upstream's plutus.json history, searched across every commit touching that path on all refs fetched locally (main, pull/99/head, pull/102/head). It is not any upstream release or intermediate commit.",
|
|
21
|
+
"Scope caveat: unfetched upstream PR branches were not searched. The defensible claim is unverifiable provenance, NOT that the file was fabricated.",
|
|
22
|
+
"It IS internally consistent with the deployment this repo ships: all 6 derivable script hashes reproduce examples/shared/deployment-preprod.ts exactly (see assertDeploymentScripts). The artifact is unattested, not wrong.",
|
|
23
|
+
"For contrast, the abandoned dev/bafin-substandard branch carried a different plutus.json under this same v0.3.0 directory name, byte-identical to upstream commit 81438534f83550789e13961db17b59d606cf8a8e. Four of eight validator hashes differ between the two."
|
|
24
|
+
]
|
|
25
|
+
},
|
|
26
|
+
"reproduce": {
|
|
27
|
+
"requires": "Aiken v1.1.21+42babe5",
|
|
28
|
+
"note": "The installed toolchain is machine-global and currently v1.1.22 (needed for upstream 0.5.0-alpha.1). Reproducing this artifact requires a toolchain switch, which is arbitrated - do not run aikup unilaterally."
|
|
29
|
+
}
|
|
30
|
+
}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
{
|
|
2
|
+
"artifact": "plutus.json",
|
|
3
|
+
"sha256": "bd297f36e9e955d814fb3a67fbc7e51c2344b54d952d38b03ef9f32c1d43b9ad",
|
|
4
|
+
"declares": {
|
|
5
|
+
"title": "cardano-foundation/cip113-programmable-tokens",
|
|
6
|
+
"version": "0.5.0-alpha.2",
|
|
7
|
+
"compiler": "Aiken v1.1.23+8949565",
|
|
8
|
+
"validators": 27
|
|
9
|
+
},
|
|
10
|
+
"upstream": {
|
|
11
|
+
"repo": "https://github.com/cardano-foundation/cip113-programmable-tokens",
|
|
12
|
+
"commit": "9db7e0629a1509cc9d41d069f0ef0ed251601173",
|
|
13
|
+
"ref": "main",
|
|
14
|
+
"note": "PINNED TO THE COMMIT, NOT THE VERSION STRING. Upstream publishes NO git tags at all (`git ls-remote --tags` returns nothing); \"0.5.0-alpha.2\" is a `version` field inside plutus.json on a MOVING branch, so it will eventually name two different programs. The commit is the identity; the version string is a label. See PLAN.md D-11."
|
|
15
|
+
},
|
|
16
|
+
"blueprint_reproduced": true,
|
|
17
|
+
"provenance": "VERIFIED",
|
|
18
|
+
"reproduce": {
|
|
19
|
+
"requires": "Aiken v1.1.23+8949565",
|
|
20
|
+
"command": "git clone https://github.com/cardano-foundation/cip113-programmable-tokens && git checkout 9db7e0629a1509cc9d41d069f0ef0ed251601173 && aikup install v1.1.23 && aiken build",
|
|
21
|
+
"note": "`aikup install v1.1.23` with the version explicit, never bare `aikup install`, which follows latest and will stop reproducing this artifact the moment v1.1.24 ships."
|
|
22
|
+
},
|
|
23
|
+
"verified": {
|
|
24
|
+
"date": "2026-08-24",
|
|
25
|
+
"method": "REPRODUCED FROM SOURCE",
|
|
26
|
+
"findings": [
|
|
27
|
+
"OBSERVED: `aiken build` at upstream commit 9db7e06, with Aiken v1.1.23+8949565, produced a plutus.json BYTE-IDENTICAL to the one upstream commits at that same commit. Both sha256 bd297f36e9e955d814fb3a67fbc7e51c2344b54d952d38b03ef9f32c1d43b9ad, both 114406 bytes, `cmp` clean. The build ran in an isolated extraction (`git archive`), not in a working tree that already contained the artifact; upstream's committed copy was moved aside before the build so it could not be mistaken for output.",
|
|
28
|
+
"This is the first blueprint this repository ships whose provenance is OBSERVED rather than asserted. Contrast blueprints/standard/v0.3.0, pinned UNVERIFIED with commit null: it matches NO commit in upstream's plutus.json history.",
|
|
29
|
+
"OBSERVED: the toolchain requirement is exact, not a floor. The machine-global Aiken was v1.1.22+39d6b04 and was moved to v1.1.23+8949565 to perform this build (reversible: `aikup install v1.1.22`). The artifact's own preamble declares v1.1.23+8949565.",
|
|
30
|
+
"DERIVED: because the pin is keyed to a commit on a moving branch, re-running `aiken build` against `main` at a LATER date will legitimately produce a different artifact. That is not drift in this pin — it is a new pin. Do not update this file's sha256 to make a newer build pass; add a new directory."
|
|
31
|
+
]
|
|
32
|
+
}
|
|
33
|
+
}
|