fix(dlv): the policy-digest derivation is an AMM statement, and the docs now say so - #763
Merged
Merged
Conversation
Remove the duplicate clippy allow on DLVManager::prepare_vault. Clarify that only AMM DLV policy digests are derived from ReleasePolicy/FeePolicy. Non-AMM DLVs still carry caller-supplied 32-byte digests that are creator-signed, with tighter semantics left as follow-up debt.
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.
Summary
Documentation and refusal-message accuracy only. Two commits, cherry-picked unchanged from a parked branch, correcting a claim
#760left too broad: the DLV-policy digest is derived for AMM vaults, and non-AMM vaults still supply 32 caller-chosen but creator-signed bytes. Main currently states the derivation without that caveat.No behaviour change. No proto field, number or type changes — the proto edits are comments, and the regenerated TypeScript carries those comments through.
What was inaccurate
#760madeDlvSpecV1.policy_digesta derived view of the vault's release and fee policy and refused any other supplied value. That is true for AMM vaults, which have aReleasePolicy/FeePolicyobject to derive from. Non-AMM DLVs have no such object, so their 32 bytes remain caller-supplied — now folded intoparameters_hashand therefore creator-signed, but not derived. The changelog entry, the derivation doc comment, the vault field doc and the create/publish refusal messages all described the AMM case as if it were the only case.Changes
CHANGELOG.md[Unreleased]entry scopes the contract change to AMM DLVs and names the non-AMM gap as follow-up debtdsm/src/ccb/mod.rsdsm/src/vault/limbo_vault.rscreate_draftparameter comment does the samedsm/src/vault/dlv_manager.rs#[allow(clippy::too_many_arguments)]removeddlv_routes.rs,route_routes.rs,vault_rehydration.rsproto/dsm_app.proto,dsm_app_pb.tsDevDlvScreen.tsxNot in this PR
The source-map document from the same parked branch. It stays parked unless it is meant to become maintained repository documentation, which is a separate decision. This PR is deliberately kept out of the economic-proof transport work.
Proof
make lintci/production_safety_checks.shPASS (pinned 1.98.0, incl. TLA+);scripts/ci_scan.shPASS — all at branch head1b82d843with a clean working treethe_advertised_policy_digest_is_the_records_never_the_requestsrenamed to..._amm_policy_digest...