Re-pin linear_vesting (mainnet and preview) to the bytestring-keyed assetAmount lookup#238
Merged
Conversation
…ng-keyed assetAmount lookup (d078652) Update the Plinth_1.65.0.0_Unisay default and its _preview counterpart to plinth-cape-submissions @d078652. assetAmount now reads the vesting-token quantity with lookupBytesE (comparing unwrapped CurrencySymbol/TokenName keys via equalsByteString) instead of comparing whole Value keys with equalsData, with a re-swept inliner budget. Happy-path total_fee 59048->58343 mainnet (-1.2%) and 49805->48971 preview (-1.7%); all 29 outcomes hold.
There was a problem hiding this comment.
Pull request overview
This PR updates the linear_vesting Plinth 1.65.0.0 mainnet and preview submissions to a newer upstream pin, switching the vesting-token quantity lookup to a bytestring-keyed map lookup in the generated UPLC, and re-recording the corresponding metrics/metadata.
Changes:
- Re-pins both
Plinth_1.65.0.0_Unisay(mainnet) andPlinth_1.65.0.0_Unisay_previewto upstream commitd078652…, updatinglinear_vesting.uplc. - Updates
metrics.jsonandmetadata.jsonto reflect the new artifact shape and re-measured costs. - Refreshes
source/README.mdin both submissions to point to the new source commit and updated reproduction instructions.
Reviewed changes
Copilot reviewed 7 out of 8 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| submissions/linear_vesting/Plinth_1.65.0.0_Unisay/source/README.md | Updates source pin and reproduction notes for the mainnet submission. |
| submissions/linear_vesting/Plinth_1.65.0.0_Unisay/metrics.json | Updates measured CPU/memory/fees and related aggregates for the new artifact. |
| submissions/linear_vesting/Plinth_1.65.0.0_Unisay/metadata.json | Updates submission date, source commit hash, and implementation notes. |
| submissions/linear_vesting/Plinth_1.65.0.0_Unisay/linear_vesting.uplc | Updates the compiled UPLC (notably the bytestring-keyed asset amount lookup path). |
| submissions/linear_vesting/Plinth_1.65.0.0_Unisay_preview/source/README.md | Updates source pin and reproduction notes for the preview submission. |
| submissions/linear_vesting/Plinth_1.65.0.0_Unisay_preview/metrics.json | Updates measured CPU/memory/fees and related aggregates for the new preview artifact. |
| submissions/linear_vesting/Plinth_1.65.0.0_Unisay_preview/metadata.json | Updates submission date, source commit hash, and implementation notes for preview. |
| submissions/linear_vesting/Plinth_1.65.0.0_Unisay_preview/linear_vesting.uplc | Updates the compiled preview UPLC to the new upstream pin/lookup strategy. |
Contributor
🚀 PR Preview DeployedPreview URL: https://intersectmbo.github.io/UPLC-CAPE/pr-238/ The preview site is automatically updated on every push to this PR and will be removed when the PR is closed. |
- submissions/linear_vesting/Plinth_1.65.0.0_Unisay/source/README.md — restore produced-UPLC output path in the reproduce section (#238 (comment)) - submissions/linear_vesting/Plinth_1.65.0.0_Unisay_preview/source/README.md — same (#238 (comment))
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Updates the linear_vesting
Plinth_1.65.0.0_Unisaydefault and itsPlinth_1.65.0.0_Unisay_previewcounterpart to plinth-cape-submissionsd078652(current main HEAD). The change reads the vesting-token quantity with a bytestring-keyed map lookup (lookupBytesE, comparing the unwrappedCurrencySymbolandTokenNamekeys withequalsByteString) instead of comparing wholeValuekeys withequalsData, and re-sweeps the inliner budget for the new shape.Result
Happy-path
total_fee_lovelace, measured againstscenarios/linear_vesting/cape-tests.json:The saving is small because the win is on the compare path (
cpu.sumdrops about 7.5% mainnet and 10% preview), which the fee only partly reflects.What changed
Both submissions are updated in place: the
.uplc,metrics.json,metadata.json, andsource/README.md. The source pin moves tod078652; the compiler (Plinth 1.65.0.0, commitb2db5126) is unchanged. The mainnet default keeps its["Plinth"]flags, and the preview keeps["Plinth", "BuiltinCasing"]withmin_plutus_version = 1.65.0.0(its preview-onlydropListdecoder step is retained on top of this change). The retainedPlinth_1.65.0.0_Unisay_plainvariant is untouched.Source and verification
The mainnet artifact is re-measured with the
measureevaluator (changPV, PlutusTx.Eval 1.45.0.0); the preview withmeasure-preview(van Rossem / PV11), since the default verifier rejects preview submissions by design. Both keep all 29 expected evaluation outcomes. Both JSON files validate against the repo schemas, and all eight changed files aretreefmtclean.