Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Epic] 5.1: Standardise contracts repository #31

Open
11 of 23 tasks
mfw78 opened this issue Dec 18, 2023 · 0 comments
Open
11 of 23 tasks

[Epic] 5.1: Standardise contracts repository #31

mfw78 opened this issue Dec 18, 2023 · 0 comments
Assignees
Labels
E:5.1 Standardise contracts repository See https://github.com/cowprotocol/pm/issues/31 for details epic Tracks a yearly team epic (only for cowprotocol/pm repo)

Comments

@mfw78
Copy link
Contributor

mfw78 commented Dec 18, 2023

Epic label: E:5.1: Standardise contracts repository
Planned start date: 2023-01-27
Due date: 2024-01-07

Summary

Following on from lessons learned with the loot and clogs repositories, establish a standard repository layout and methodology for smart contracts within CoW Protocol.

Acceptance Criteria

Establish a concise, thorough repository standard to which all smart contract repositories will be created from, or migrated to (in the case of existing smart contract repositories).

To be accepted, this Epic must:

  • Have a smart contract framework in which to develop for a post-Dencun environment
  • Enforce strict logical separations between contracts, and their utilities (e.g. hardhat tasks in contracts would be moved to another repo, with hardhat being deprecated)
  • Formalise rigorous internal standards for review and testing
  • Actively favour dependency minimisation

Tasks

  • chore: github specific
    • chore: contracts team as admin
    • chore: contracts team as CODEOWNER
    • chore: main branch src solidity require 2x reviews
  • chore: devcontainer
    • feat: foundry (forge, anvil, cast, chisel) (refer above)
    • feat: foundry.toml for solc and --via-ir
  • chore: ci/cd
    • chore: automatic testing (fail CI/CD < 100% coverage)
    • chore: check formatting
    • chore: gas profiling and gas snapshot assessment
  • chore: repo documentation
    • chore: issue templates
    • chore: readme / contributing / security
  • chore: npm layout
    • chore: scope packages within npm folder
  • chore: smart contract review checklist
    • docs: compact checklist per PR
    • docs: extended checklist for epic completion
@mfw78 mfw78 added the epic Tracks a yearly team epic (only for cowprotocol/pm repo) label Dec 18, 2023
@mfw78 mfw78 added this to the Contract Evolution milestone Dec 18, 2023
@mfw78 mfw78 self-assigned this Dec 18, 2023
@mfw78 mfw78 added the E:5.1 Standardise contracts repository See https://github.com/cowprotocol/pm/issues/31 for details label Dec 18, 2023
@mfw78 mfw78 changed the title [Epic] 5.1: Standardise contracts repository [Epic] 5.1 Standardise contracts repository Apr 12, 2024
@mfw78 mfw78 changed the title [Epic] 5.1 Standardise contracts repository [Epic] 5.1: Standardise contracts repository Apr 12, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
E:5.1 Standardise contracts repository See https://github.com/cowprotocol/pm/issues/31 for details epic Tracks a yearly team epic (only for cowprotocol/pm repo)
Projects
None yet
Development

No branches or pull requests

1 participant