dapp-sdd:章程Skill dapp-sdd:constitution

这是一个用于规范Midnight区块链网络示例去中心化应用(DApp)开发的技能。它定义了开发标准、代码质量要求、文档规范、Git工作流、强制评审流程和测试要求,确保所有示例项目符合高质量、教育性和一致性标准。关键词:Midnight, 区块链, DApp开发, 智能合约, TypeScript, 代码规范, 示例项目, 开发标准, 隐私计算。

DApp开发 0 次安装 14 次浏览 更新于 2/26/2026

name: dapp-sdd:constitution description: 在实现任何Midnight示例dApp时使用,以确保符合质量标准和项目规范。

Midnight示例DApp章程

本章程为所有使用dapp-sdd插件构建的示例dApp定义了不可协商的标准。

技术栈(不可协商)

  • 运行时: Node.js ≥22.0.0
  • 语言: TypeScript 5.9+(严格模式启用)
  • 合约: contracts/ 目录中的Compact智能合约
  • SDK: Midnight SDK包(@midnight-ntwrk/*
  • 脚手架: 来自 create-mn-app 的项目结构

代码质量(零容忍)

所有代码必须通过质量检查,零警告或错误

检查项 命令 要求
代码检查 npm run lint 无错误,无警告
格式化 npm run format:check 无格式化问题
TypeScript tsc --noEmit 无类型错误
Compact compact compile 编译通过

每次提交前必须通过质量门禁。

示例应用标准

教育导向

  • README.md 必须解释dApp演示的内容
  • 代码应具有可读性和教育性(清晰性优于巧妙性)
  • 包含解释Midnight特定概念的内联注释
  • 保持范围最小化 - 清晰地演示一个概念

文档

  • README.md 遵循 readme-and-co:documentation-standards 规范
  • 包含带有确切命令的“如何运行”部分
  • 记录环境设置要求
  • 解释Compact合约的目的和电路

Git工作流

提交

  • 遵循 git-lovely:useful-commits 技能编写提交信息
  • 每完成一个任务后提交并推送
  • 所有工作在功能分支上进行,通过PR合并到主分支

分支命名

  • 格式:{功能名称}(由用户提供)
  • 示例:counter-exampletoken-transfer

阶段评审(强制)

每个实现阶段后,运行以下两项评审:

1. Compact代码评审

使用 compact-reviewer:compact-reviewer 代理

指令:“您正在为Midnight Network评审一个示例dApp。
该项目旨在向学习Midnight的开发者演示概念。

建议要务实:
- 关注正确性和清晰性,而非生产环境问题
- 标记任何可能让学习者困惑的内容
- 标记学习者可能模仿的不良实践
- 接受那些能保持示例专注性的合理捷径
- 确保教育性注释准确无误”

2. TypeScript代码评审

使用 devs:code-reviewer 代理

指令:“您正在为Midnight Network评审一个示例dApp。
该项目旨在向学习Midnight的开发者演示概念。

建议要务实:
- 关注正确性和清晰性,而非生产环境问题
- 标记任何可能让学习者困惑的内容
- 标记学习者可能模仿的不良实践
- 接受那些能保持示例专注性的合理捷径
- 确保教育性注释准确无误”

所有评审发现的问题必须在进入下一阶段前解决。

测试要求

  • 为主功能包含基本的正向路径测试
  • 使用 TestContext 测试合约电路
  • 在README中记录如何运行测试
  • PR标记为就绪前,测试必须通过

状态管理

插件状态存储在 .dapp-sdd/ 目录中(已加入.gitignore):

.dapp-sdd/
├── spec.md           # 扩展的规范文档
├── plan.md           # 实施计划
├── tasks.md          # 带复选框的任务列表
└── pr-context.json   # PR元数据

技能参考

在实施过程中,利用以下技能:

阶段 技能
规范制定 compact-core:language-referencemidnight-dapp:*
计划 compact-core:contract-patternscompact-core:typescript-integrationmidnight-proofs:*
实施 compact-core:standard-librarycompact-core:privacy-disclosurecompact-core:testing-debuggingmidnight-tooling:*
提交 git-lovely:useful-commits
文档 readme-and-co:documentation-standards