新的功能都是从一个新的问题开始的,这个问题可能是某个用户提出的 Issue,也有可能是某些业内都会面临的难题。
新的问题的 Issue 需要被标记为 issue
。
如果 Kraken Team 的成员某个问题很感兴趣,可以基于这个问题来设计对应的提案。
提案的文档格式将基于 GitHub flavored Markdown format 编写,同时文件也必须以 .md
为结尾。
新的功能在提出之后,都需要链接到原先提出问题的地方。
新的提案文档需要放置在 working 目录下。
新的提案在实施之前,需要经过 Kraken TSC 进行投票。
当票数超过一半以上的时候,这个提案将被通过,从而进入下一个阶段。
详细设计将对提案内容做更加详细的补充,包括但不限于 API,伪代码,以及设计改动的影响面等部分。如果这个提案所设计的功能比较复杂,可以邀请其他的 TSC 成员一块来共同参与。
新实现的功能的 PR 都需要链接到问题的 Issue 和提案的 Issue。
新的功能必须要有对应的测试,包括但不限于 API 功能的测试,性能测试。这个测试并不需要彻底覆盖各种条件,但是需要覆盖所有核心的功能。
当新的功能被发布之后,整个团队将继续完成以下事情:
- 帮助其他的成员了解这个功能
- 对外进行新功能的宣发
- 更新文档
- 发布新的版本
已经成功发布的文档需要移动到 accepted 目录下。