[M1: Audit 2: L-08]: CIP112: Document that provider accounts depend on the provider for every owner exit path

Open Beginner friendly
#92 0 comments 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

Nobody has claimed this yet.

Assessment

Difficulty
2/5
Estimated time
1-3 hours
Newbie friendliness
82/100
Issue type
Documentation
Clarity
Clearly specified
Activity status
Active
Domain
documentation

Research direction

Read packages/token/token-cip112-v1/README.md and integration-guide.md, then ARCHITECTURE.md for the existing provider-account guidance and design rationale. Update them to document the owner-and-provider requirement for every listed exit path, the admin expiry path after expiresAt, and the provider-availability commitment. Done when the three documents consistently cover these requirements.

Written by the indexing model from the issue text.

Description

Addresses L-08

Changes

Documentation:

  • the security caveat in the token-cip112-v1 README.md should cover more than TokenHolding_OwnerUnlock. On an account with a separate provider, these actions need both the owner and the provider: accepting, rejecting and withdrawing a transfer, withdrawing an allocation, unlocking a holding, and spending change. If the provider stops responding, the owner cannot do any of these alone, while executors can still settle. The caveat should say that funds come back only through the admin's expiry path after expiresAt, and that deployments using provider accounts need the provider to commit to being available for every return path.
  • the integration-guide.md should state the same requirement wherever it explains how to open or use provider accounts.
  • the joint owner-and-provider authorization should be recorded in ARCHITECTURE.md as a deliberate design decision.
Dominant language
Haskell
Stars
5
Forks
0
Avg merge
1d 36m
Merged PRs (30d)
11

Getting set up

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from OpenZeppelin/canton-contracts

All issues in OpenZeppelin/canton-contracts

Similar issues

More Haskell issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.