1.代码与文档 (Code and Document)
OA-CD-10
【中】项目代码是易于找到的,并且能被公开访问。
【EN】The project's code is easily discoverable and publicly accessible.
OA-CD-20
【中】可以使用常用的标准工具对项目代码进行重复构建。
【EN】The code can be built in a reproducible way using widely available standard tools.
OA-CD-30
【中】应通过源代码管理系统保留项目代码的完整变更历史,所有已发布版本都可以被重新构建。
【EN】The full history of the project's code is available via a source code control system, in a way that allows any released version to be recreated.
OA-CD-40
【中】每一行代码必须由具备强认证机制的提交者通过源代码管理系统建立,当提交第三方贡献时,提交备注中要包含可靠的代码来源信息。
【EN】The provenance of each line of code is established via the source code control system, in a reliable way based on strong authentication of the committer. When third-party contributions are committed, commit messages provide reliable information about the code provenance.
OA-CD-50
【中】项目必须有最终用户文档,例如:API、CLI、仪表板、安装部署、配置等。
【EN】The project must have end-user docs in place such as API use, CLI use, Dashboard use, Deployment use, Configuration use.
OA-CD-60
【中】项目应具有可证实的用户支持历史,可以是在邮件列表或issue系统中的答复。
【EN】The project should have a proven history of providing user support,such as replies in mailing list or issue systems.
2.流程 (Process)
OA-PR-10
【中】项目需要有符合业界最佳实践的代码提交流程。
【EN】The project requires a code commit process that meets industry best practices.
OA-PR-20
【中】项目团队应该与营销团队一起确定合适的官方名称。
【EN】The project should have engaged with marketing team to check suitable official name.
OA-PR-30
【中】项目需要通过独立的第三方安全审计。
【EN】The project should have completed an independent and third party security audit.
OA-PR-40
【中】项目必须使用基金会基础设施团队认可的任务、缺陷和设计跟踪工具。
【EN】The project must use task, defect and design track tools that approved by infrastructure team of OpenAtom Foundation.
3.许可证与版权 (Licenses and Copyright)
OA-LC-10
【中】代码发布需要满足项目所采用开源许可证的合规性/兼容性要求,且符合开放原子开源基金会的知识产权政策。
【EN】The code is released under the open source license that project used, meets the compatibility requirements,and complies with OpenAtom Foundation's IPR policy.
4.发布 (Releases)
OA-RE-10
【中】发布要包含源代码,分发时需要采用标准开放的打包格式,以便长期保持可读性。
【EN】Releases consist of source code, distributed using standard and open archive formats that are expected to stay readable in the long term.
OA-RE-20
【中】发布由项目的项目管理委员会批准。
【EN】Releases are approved by the project's PMC (Project Management Committee).
OA-RE-30
【中】发布需要进行数字签名或带有哈希摘要,以校验下载包的完整可靠。
【EN】Releases are signed and/or distributed along with digests that can be reliably used to validate the downloaded archives.
OA-RE-40
【中】发布必须包含源代码,也可同时发布二进制文件。
【EN】Release must include source code; convenience binaries can be distributed alongside source code.
OA-RE-50
【中】发布过程必须有详细的文档说明,并且是可重复进行的。根据文档指引,任何人能够独立生成发布所需的所有制品。
【EN】The release process is documented and repeatable to the extent that anyone is able to independently generate the complete set of artifacts required for a release.
OA-RE-60
【中】项目必须有清晰的版本计划,并且必须制定至少2个常规的后续里程碑。
【EN】The project must have a clear roadmap and must have followed at least two common milestones.
5.质量 (Quality)
OA-QU-10
【中】项目对代码的质量要开放且诚实。
【EN】The project is open and honest about the quality of its code.
OA-QU-20
【中】项目的安全性是最高优先级的。
【EN】The project puts a very high priority on secure software.
OA-QU-30
【中】需要提供一套规范化的安全响应流程。
【EN】The project requires a standardized security response process.
OA-QU-40
【中】项目要重视兼容历史版本,尽可能将所有不兼容的变更文档化,并提供工具和使用说明帮助用户过渡到新的特性。
【EN】The project puts a high priority on backwards compatibility, aims to document any incompatible changes and provides tools and documentation to help users transition to new features.
OA-QU-50
【中】项目应该努力及时响应已上报的BUG。
【EN】The project strives to respond to documented bug reports in a timely manner.
OA-QU-60
【中】该项目必须具有合理的CI流程/工具、单元测试及测试代码覆盖率。
【EN】The project must have decent CI process/tools, unit test and test code coverage.
OA-QU-70
【中】项目对登记的issue应进行合理的分类、分级。
【EN】The project should have a decent record of triaging incoming issues.
6.社区 (Community)
OA-CO-10
【中】项目有一个众所周知的主页。
【EN】The project should have a well-known homepage.
OA-CO-20
【中】社区欢迎所有出自善意、行为受尊重、为项目增添价值的参与者的贡献。
【EN】The community welcomes contributions from anyone who acts in good faith and in a respectful manner and adds value to the project.
OA-CO-30
【中】贡献包含但不局限于源代码,也可以是文档、建设性的错误报告、建设性的讨论、市场推广或者其他任何会为项目增值的内容。
【EN】Contributions include not only source code, but also documentation, constructive bug reports, constructive discussions, marketing and generally anything that adds value to the project.
OA-CO-40
【中】社区要符合贤能治理的精神,随着时间的推移,为项目增值的贡献者会被赋予更多的权利和责任。
【EN】The community strives to be meritocratic and over time aims to give more rights and responsibilities to contributors who add value to the project.
OA-CO-50
【中】社区的运作基于具有决策权的成员的共识,避免一言堂。
【EN】The community operates based on consensus of its members who have decision power. Dictators, benevolent or not, are not welcome in projects.
OA-CO-60
【中】项目致力于及时解答用户的问题。
【EN】The project strives to answer user questions in a timely manner.
OA-CO-70
【中】项目需要在项目网站或Readme显示项目的孵化状态。
【EN】The project should list project’s incubation status prominently on website/readme.
OA-CO-80
【中】项目有一定数量的活跃提交者和相当规模的代码提交数量和合并数量。
【EN】The project should have a healthy number of committers, and demonstrate a substantial ongoing flow of commits and merged contributions.
OA-CO-90
【中】项目应明确定义项目治理和提交者的管理流程。
【EN】The project should explicitly define a project governance and committer process.
OA-CO-100
【中】项目应至少在主要代码仓库中提供公开的使用者列表(例如提供ADOPTERS.md,或在项目网站上展示采用者的Logo列表)。
【EN】The project should have a public list of project adopters for at least the primary repo (e.g., ADOPTERS.md or logos on the project website).
7.共识建立 (Consensus Building)
OA-CS-10
【中】该项目维护着具有决定权的贡献者的公开列表-项目管理委员会由这些贡献者组成。
【EN】The project maintains a public list of its contributors who have decision power -- the project's Project Management Committee consists of those contributors.
OA-CS-20
【中】决策由项目治理委员会成员的共识形成,并在主要的沟通渠道中记录。要考虑社区意见,如有异议,项目管理委员会拥有最终决定权。
【EN】Decisions are made by consensus among Project Management Committee members and are documented on the project's main communications channel. Community opinions are taken into account but the Project Management Committee has the final word if needed.
OA-CS-30
【中】无法通过讨论形成共识的情况下,可以使用文档化的投票规则来达成目标。在项目中,否决权只对代码提交有效,且否决要求有合理的技术性理由。
【EN】Documented voting rules are used to build consensus when discussion is not sufficient. In projects, vetoes are only valid for code commits and are justified by a technical explanation.
OA-CS-40
【中】所有重要的讨论都应该以书面形式在项目的主要沟通渠道上异步进行。对项目会产生影响的线下、面对面或私下的讨论也应在该渠道记录下来。
【EN】All important discussions happen asynchronously in written form on the project's main communications channel. Offline, face-to-face or private discussions that affect the project are also documented on that channel.
8.中立性 (Independence)
OA-IN-10
【中】项目独立于任何公司或组织。
【EN】The project is independent of any company or organization.
OA-IN-20
【中】项目必须有不少于三方的核心评审团队。
【EN】The project must have a diverse core reviewers team (at least 3).
OA-IN-30
【中】贡献者的社区角色权限不应受雇佣关系变化而影响。
【EN】The role & permissions of contributors in the community should not be affected when their employment relationship changes.
OA-IN-40
【中】项目毕业需要至少三位TOC成员提名进入毕业流程。
【EN】The project should require at least 3 TOC members to step forward as sponsors to enter graduation process.
9.成熟度 (Maturity)
OA-MA-10
【中】至少三个独立用户成功将项目用于生产环境,TOC根据质量和范围判定用户是否有效。
【EN】The project should be used successfully in production by at least 3 independent end users which, in the TOC‘s judgement, are of adequate quality and scope.
10.其它 (Others)
OA-OT-10
【中】项目毕业需获取全部TOC席位2/3的赞同票。
【英】To enter graduation, the project should receive the affirmative vote of two-thirds of the authorized TOC.
OA-OT-20
【中】上述指标由于项目的类型、范围和大小不同有一定的偏差,因此TOC对上述指标有一定的自由裁量权。