docs(contracts): document contract immutability as a deliberate security property - #591
Conversation
|
@olu-cmd is attempting to deploy a commit to the Collins' projects Team on Vercel. A member of the Team first needs to authorize it. |
|
@olu-cmd Great news! 🎉 Based on an automated assessment of this PR, the linked Wave issue(s) no longer count against your application limits. You can now already apply to more issues while waiting for a review of this PR. Keep up the great work! 🚀 |
collinsezedike
left a comment
There was a problem hiding this comment.
@olu-cmd I need a few changes before this can merge:
- The title (
feat: doc added) doesn't matchCONTRIBUTING.md's Commit Convention: it becomes the squash commit message, so it needs the right type (docs:for a docs-only change) and an imperative subject ("document" not "added"). Read the Commit Convention section for the exact format. - The PR body needs to follow
CONTRIBUTING.md's required template (## Summary/## Test plan), not justClose #574and a one-line note. docs/contracts.md:11uses em dashes ("None of Meridian's contracts — vault or adapters — expose an"). Please rewrite as plain sentences without them.
The content itself is accurate and well-placed, this is about form, not substance.
collinsezedike
left a comment
There was a problem hiding this comment.
Verified both factual claims directly against the contract source: no adapter or vault exposes an upgrade entry point, and migrate_adapter genuinely moves the whole vault-wide position atomically with a slippage bound, matching what's documented. Fixed the PR title (feat: doc added, wrong type and non-descriptive, and squash merge makes it the permanent commit message) to docs(contracts): document contract immutability as a deliberate security property. Merging now.
Summary
docs/contracts.mdas a deliberate security property, not an omission: no vault or adapter contract exposes anupdate_current_contract_wasmentry point.upgrade()was considered and rejected, and how redeployment friction is already handled by existing tooling (deploy-testnet.shfor redeployment,migrate_adapterfor moving live positions without a manual withdraw-then-deposit cycle per user).Closes #574