Conversation
crates/miden-standards/asm/account_components/auth/guarded_multisig.masm
Show resolved
Hide resolved
| @@ -1,19 +1,19 @@ | |||
| # The MASM code of the Multi-Signature Authentication Component with Private State Manager. | |||
| # The MASM code of the Multi-Signature Authentication Component with Guardian. | |||
There was a problem hiding this comment.
Related to the above comment, I'd probably write this as: "The MASM code of the Multi-Signature Authentication component integrated with a state guardian."
In general, I think when we use the term in conversational context, I'd use "state guardian" as I think this makes the concept a bit more self-explanatory. But in the code, for brevity, using guardian is probably fine.
cc @Dominik1999 @guelowrd @BrianSeong99, in case you guys disagree.
bobbinth
left a comment
There was a problem hiding this comment.
Looks good! Thank you! I left some comments inline - but these are mostly comment nits.
| @@ -0,0 +1,157 @@ | |||
| # Guardian account component. | |||
There was a problem hiding this comment.
nit: I would say "State Guardian account component" here.
| # This component is composed into account auth flows especially for multisig and adds | ||
| # an extra signature check by a dedicated guardian signer. | ||
| # | ||
| # A guardian can help coordinate state availability for private accounts. |
There was a problem hiding this comment.
Similar nit here: I'd say "A state guardian can help ..."
| # - `update_guardian_public_key` rotates the guardian public key and corresponding scheme id using the fixed | ||
| # map key `GUARDIAN_MAP_KEY`. |
There was a problem hiding this comment.
nit: we usually wrap comments after 100 chars.
| # Map entries: [GUARDIAN_MAP_KEY] => [GUARDIAN_PUBLIC_KEY] | ||
| const GUARDIAN_PUBLIC_KEYS_SLOT = word("miden::standards::auth::guardian::pub_key") | ||
|
|
||
| # The slot in this component's storage layout where the scheme id for the corresponding guardian public key map is stored. |
There was a problem hiding this comment.
nit: we usually wrap comments after 100 chars.
CHANGELOG.md
Outdated
| - [BREAKING] Renamed the multisig PSM auth component, procedures, storage paths, and related APIs from `psm` to `guardian`. | ||
| - [BREAKING] Renamed the guarded multisig component-facing APIs from `multisig_guardian` / `AuthMultisigGuardian` to `guarded_multisig` / `AuthGuardedMultisig`, while retaining the `guardian` auth namespace and guardian-specific procedures. | ||
| - Migrated to miden-vm v0.22 and miden-crypto v0.23 ([#2644](https://github.com/0xMiden/protocol/pull/2644)). | ||
| - [BREAKING] Renamed `AccountComponent::get_procedures()` to `procedures()`, returning `impl Iterator<Item = (AccountProcedureRoot, bool)>` ([#2597](https://github.com/0xMiden/protocol/pull/2597)). | ||
| - [BREAKING] Removed `NoteAssets::add_asset`; `OutputNoteBuilder` now accumulates assets in a `Vec` and computes the commitment only when `build()` is called, avoiding rehashing on every asset addition. ([#2577](https://github.com/0xMiden/protocol/pull/2577)) | ||
| - [BREAKING] Made `supported_types` a required parameter of `AccountComponentMetadata::new()`; removed `with_supported_type`, `with_supported_types`, `with_supports_all_types`, and `with_supports_regular_types` builder methods; added `AccountType::all()` and `AccountType::regular()` helpers ([#2554](https://github.com/0xMiden/protocol/pull/2554)). | ||
| - [BREAKING] Migrated to miden-vm 0.21 and miden-crypto 0.22 ([#2508](https://github.com/0xMiden/miden-base/pull/2508)). | ||
| - [BREAKING] The stack orientation changed from big-endian to little-endian - see PR description ([#2508](https://github.com/0xMiden/miden-base/pull/2508)). | ||
| - [BREAKING] The native hash function changed from RPO256 to Poseidon2 - see PR description ([#2508](https://github.com/0xMiden/miden-base/pull/2508)). | ||
| - Introduced `StorageMapKey` and `StorageMapKeyHash` Word wrappers for type-safe storage map key handling ([#2431](https://github.com/0xMiden/miden-base/pull/2431)). |
There was a problem hiding this comment.
I think some of these are not relevant to this PR. The relevant entries should be moved into the v0.15.0 section.
| } | ||
|
|
||
| /// An [`AccountComponent`] implementing a multisig authentication with a private state manager. | ||
| /// An [`AccountComponent`] implementing guarded multisig authentication with a guardian. |
There was a problem hiding this comment.
nit: I'd write this as: "An [AccountComponent] implementing multisig authentication integrated with a state guardian."
Summary
This PR renames the multisig
psmauth surface toguardianrelated to #2665