PX4 AI 辅助贡献规范:作者身份、披露与提交合规指南

发布时间:2026/9/23 18:14:39

PX4 AI 辅助贡献规范:作者身份、披露与提交合规指南 嵌入式物联网机器人自动驾驶智能硬件【免费下载链接】PX4-AutopilotPX4 Autopilot Software项目地址https://gitcode.com/gh_mirrors/px/PX4-Autopilot点击查看免费下载本指南围绕 PX4-Autopilot 仓库中的 AI 辅助贡献官方政策系统讲解使用 AI 编码助手参与 PX4 开发时的硬性规则作者身份与责任边界、Signed-off-by与开发者来源证书DCO的签署规则、BSD 3-clause 许可合规、必须携带的Assisted-by披露 trailer以及项目对测试声明、批量改动、问题报告和代码评审的具体期望。结合仓库内的 CONTRIBUTING.md、AGENTS.md、CLAUDE.md、Makefile 与 CI 校验脚本读者可以完整掌握用 AI 写 PX4 代码且合规地提交的完整工作流。一、适用范围与核心立场PX4 欢迎 AI 辅助贡献但官方立场非常明确AI 编码助手AI coding assistant只是开发工具与编译器、静态分析器处于同一地位。借助 AI 产出的贡献与任何其他贡献接受完全相同的质量标准必须遵守编码规范Google C 风格 PX4 少量调整make format/make check_format强制执行必须遵循提交消息约定Conventional Commitstype(scope): description格式必须满足测试要求必须经过与普通 PR 完全相同的评审流程。该政策的全部附加规则都服务于一个目的让作者身份authorship、责任归属accountability和许可合规licensing保持清晰无歧义同时让维护者的评审负担可控。政策开篇有一句需要反复强调的提示使用 AI 工具是可选的披露 AI 的使用不是。也就是说是否用 AI 帮助写代码是个人自由但一旦使用就必须按本文所述规则披露。二、作者身份与责任人类提交者是唯一作者2.1 你必须能为每一行代码负责提交贡献的人类开发者是该贡献的作者这意味着理解每一行你提交的每一行代码都必须理解能够解释并且在评审中被问到时要能辩护责任不可转移正确性、安全性、许可合规和测试的责任永远不会转移给工具。PX4 是安全关键型safety-critical飞行软件会驱动真实飞行器AI 写的the AI wrote it在评审中永远不是可接受的回答AI 不是作者AI 工具永远不能成为作者或共同作者不要添加命名 AI 工具的Co-Authored-By标签。仓库根目录的 AGENTS.md 与 CLAUDE.md 也印证了这一点它们明确要求代理agent不得在 PR 描述中附加Generated with …之类的署名 footer例如 CLAUDE.md 中的规则——No Claude attribution — noCo-Authored-By: Claude, no Generated with Claude Code footer并强调要使用实际的助手身份即你在运行哪个客户端就是哪个身份而不是套用默认模型名。2.2 与普通贡献的标准对齐这条政策的本质是同一标准、不降级AI 辅助贡献不是低配贡献不会因为用了工具而获得更宽松的对待也不会因为工具自动生成代码而免除审查。因此代码风格、提交格式、测试证据缺一不可。三、Signed-off-by 与开发者来源证书DCO3.1 签署的语义Signed-off-by标签是人类作者依据开发者来源证书Developer Certificate of Origin作出的认证。其核心约束是AI 工具永远不是贡献的作者绝不能出现在Signed-off-by标签中在你指示下工作的工具包括 AI 代理可以机械地应用你的签署——这与git commit -s的行为完全一致。签署的认证责任仍然在你自己身上通过签署你证明自己已亲自审查该贡献并有权依据项目许可证提交它。绝不允许你的签署被应用到未经你审查的改动上。3.2 与仓库现有提交约定的关系在 docs/en/contribute/code.md 的提交与提交消息一节中项目推荐所有提交使用git commit -s自动添加签名行git commit -s签名行以Signed-off-by: Your Name youremail.com的形式作为提交消息的最后一行出现。AI 辅助场景下该签名行仍然且只能代表人类提交者本人AI 代理可以像git commit -s一样代你机械添加签名但这不改变认证的归属。一个典型的合规提交消息示例同时体现 Conventional Commits 与签名feat(ekf2): add height fusion timeout. Fixes #1234 The previous implementation did not handle the case where height fusion data stops arriving mid-flight. This adds a configurable timeout that falls back to barometric height. Tested in SITL with simulated sensor dropout. Signed-off-by: Your Name youremail.com四、许可合规BSD 3-clause 与生成式 AI 政策4.1 项目许可底线所有代码贡献必须与 BSD 3-clause 许可证兼容并且不得施加任何额外限制。这是 PX4 全项目的硬性底线AI 生成的代码也不例外。4.2 使用 AI 工具时的额外责任使用 AI 工具时你还对 Linux Foundation 生成式 AI 政策Linux Foundation Generative AI Policy所规定的条件负责具体体现在两点服务条款不得与项目许可冲突你使用的 AI 工具的服务条款不得与项目采用的 BSD 3-clause 许可证相冲突。例如若工具条款主张对输出内容的专有权或附加限制性许可则该工具不适合用于 PX4 贡献第三方版权材料的合规如果工具的输出包含来自第三方的既有版权材料你必须拥有提交它的权利并且必须包含所需的声明notice、署名attribution和许可信息。这一条在实践中意味着提交前应检查 AI 生成内容是否与仓库中已有代码高度雷同可能意味着训练数据中的版权代码被原样复现一旦复现了第三方代码片段就需要像手动复制代码一样处理其许可证与署名义务。五、披露要求Assisted-by 提交尾注必选5.1 格式与示例每一个包含 AI 生成或 AI 辅助内容代码、文档或提交消息文本的提交都必须在提交消息正文中携带披露尾注disclosure trailerAssisted-by: NAME:MODEL其中NAME标识使用的工具MODEL标识具体使用的模型。官方文档给出的示例Assisted-by: Claude:claude-fable-5 Assisted-by: Copilot:gpt-5这条 trailer 与Signed-off-by一样位于提交消息正文的末尾属于可以机读解析的 trailer 区。它让维护者在评审时能够了解该提交的技术背景也保留了日后追溯的线索。5.2 不需要披露的工具传统开发工具不属于本文所指的 AI 辅助无需披露编译器compiler格式化工具formatter如make format静态分析器 / lintergit 本身经典编辑器自动补全classic editor autocomplete。换句话说只有生成式 AI性质的辅助生成代码、文档或提交消息文本才触发披露义务格式化、静态检查等确定性工具不在此列。仓库中对应的格式化工作流见 Makefilecheck_format: # astyle 检查 git diff --check format: # astyle 全量格式化 format_changed: # 仅格式化变更文件--diff-only5.3 善意原则与追溯后果披露机制建立在**善意good faith**基础上评审者无法可靠地检测 AI 使用情况也不会尝试去检测。但——事后发现的未披露 AI 使用将被视为虚假陈述misrepresentation并构成撤销revert该贡献的理由。这条设计非常关键它不是抓作弊机制而是一个信任契约。维护者把诚实披露当作默认前提一旦发现隐瞒代价是整个贡献被回滚。六、期望与行为边界这些规则是为了让评审工作可持续sustainable。无视这些规则的贡献维护者可能不做详细评审直接关闭closed。具体期望包括四类6.1 测试声明必须真实测试要求原样适用必须准确说明你运行了什么SITL 仿真、台架测试、真机飞行测试并在适用时提供日志。规则强调绝不让工具描述并未发生的测试——例如AI 可能生成Tested in SITL之类的字样但如果你没有真正跑过就不能保留AI 不可能替你飞过飞行器任何涉及真机飞行的测试声明都必须由人类实际执行并提供飞行日志佐证。这与 CONTRIBUTING.md 的Test your changes章节一致新功能必须有单元测试make tests和/或 SITL 集成测试test/mavsdk_tests/硬件相关改动需要台架或飞行测试证据评审者会在批准前核实测试存在。6.2 禁止未经请求的大规模改动不要提交无人要求的大规模 AI 生成重构、风格清扫style sweep或清理cleanupPR这类想法应先在 issue 或开发者电话会议dev call中讨论获得社区共识后再动手。原因在于大规模机械改写会产生海量 diff淹没真实的功能变更消耗评审者大量时间而价值存疑。6.3 Issue 与安全报告必须人工验证提交问题报告前自己先复现问题未经验证的 AI 生成发现unverified AI-generated findings会浪费维护者的真实时间并侵蚀信任。6.4 评审讨论发生在人类之间用 AI 工具帮助你理解评审意见是完全可以接受的但把你自己都不理解的模型输出作为回复贴出来则不可以AI 辅助评审AI-assisted review在被明确标注为 AI 辅助时是允许的把未披露的 AI 评审当作你自己的阅读结论呈现则不被允许。七、仓库中的配套落地从政策到工具链政策不是孤立的文档PX4 仓库从多个层面提供了配套支撑7.1 CONTRIBUTING.md 中的政策摘要CONTRIBUTING.md 专门设有 AI-assisted contributions 一节浓缩了政策要点你是作者、AI 不是作者也不出现在Signed-off-by中、每个含 AI 内容的提交必须携带Assisted-by: NAME:MODELtrailer、所有许可/测试/评审要求原样适用且绝不声称未发生的测试。该节直接链接回 docs/en/contribute/ai_assistants.md。7.2 面向 AI 代理的仓库级指令仓库根目录的 AGENTS.md 与 CLAUDE.md 是直接写给运行在仓库中的 AI 代理的指令文件可作为政策落地的第一手例证提交使用$commit//commit技能遵循 Conventional Commitstype(scope): descriptionPR使用$pr技能署名使用实际助手身份绝不冒用 Claude 的身份PR 描述中不加生成 footer风格提交前对改动的 C/C 运行make formatCI 通过make check_format强制执行作用域指引编辑或评审前只需阅读.github/instructions/下applyTo模式匹配受影响路径的*.instructions.md文件仓库中已有 board-addition、code-review、control、drivers、estimation、messages、simulation、system、docs.en 等主题的指令文件以及路径上的嵌套 AGENTS.md。这展示了 PX4 如何把AI 是工具的立场具体化为代理可执行的工作流约束。7.3 CI 对提交消息的机器校验政策强调披露 trailer 的规范性而仓库 CI 对提交消息本身已有机器校验Tools/ci/check_commit_messages.py 会在 PR 上检查每个提交阻塞性错误blocking未合并的fixup!/squash!/amend!提交、过短消息 5 字符、单字丢弃式消息fix、update、wip、oops、cleanup等、调试残留如tmate警告warning评审回应式提交apply suggestions from code review、仅格式化提交do make format 等、缺少 Conventional Commits 格式。这意味着即使使用了 AI提交消息也必须先通过这套校验AI 生成的提交消息同样要遵循type(scope): description结构。该脚本既验证了提交规范的可执行性也说明了提交消息文本若由 AI 生成同样需要披露为何重要——因为它是 PR 被接受的前提之一。八、实操清单AI 辅助贡献的合规提交流程综合全文一个合规的 AI 辅助贡献流程应包含以下步骤动手前若是大规模重构/清理类改动先在 issue 或 dev call 中提出并获得讨论确认改动聚焦、非无人要求的清扫写作时把 AI 当作编译器级别的工具对每一行生成代码进行人工审查、理解并准备辩护检查是否有第三方版权材料复现必要时补充声明与许可信息格式化对改动的 C/C 运行make format或make format_changed仅格式化改动文件确保make check_format通过提交遵循 Conventional Commits 格式type(scope): description使用git commit -s添加自己的Signed-off-by在提交消息正文中为所有含 AI 内容的提交追加Assisted-by: NAME:MODELtrailer测试真实运行单元测试、SITL 或台架/飞行测试准确记录所运行的测试并提供日志不要让 AI 代写未发生的测试声明问题报告自己复现后再提交 issue 或安全报告评审用 AI 帮助理解评审意见可以但回复必须是你自己理解的内容若做 AI 辅助评审明确标注发布 PR标题同样遵循type(scope): description格式squash 合并时 PR 标题会成为提交消息附上测试说明与飞行日志链接。九、小结PX4 对 AI 辅助贡献的政策可以用一句话概括欢迎工具但责任在人。作者身份、Signed-off-by、许可合规与Assisted-by披露共同构成了一个可追溯、可问责的贡献体系——AI 可以代劳代码生成但理解、测试、签署与披露的最终责任永远属于人类提交者。对于安全关键型的飞行控制软件而言这不是保守而是让开源协作在生成式 AI 时代继续保持可持续评审的必要前提。相关文档与源码延伸阅读AI 辅助贡献政策原文、编码规范、许可说明、贡献指南含 AI 章节与测试要求、代理指令 AGENTS.md、CLAUDE.md、Makefile 格式化目标、CI 提交消息校验脚本。赞分享嵌入式物联网机器人自动驾驶智能硬件【免费下载链接】PX4-AutopilotPX4 Autopilot Software项目地址https://gitcode.com/gh_mirrors/px/PX4-Autopilot点击查看免费下载相关推荐Ray 的 AI 辅助贡献规范与实践读懂 AGENTS.md正确提交 AI 协作 PRRay 的 AI 辅助贡献规范与实践读懂 AGENTS.md正确提交 AI 协作 PR Ray 是一个高流量、多语言混合的 AI 计算引擎仓库C 核心人工智能分布式训练强化学习任务调度模型推理服务后端PicoClaw 贡献开发全指南从 Fork 到合入的协作流程与 AI 辅助贡献规范PicoClaw 贡献开发全指南从 Fork 到合入的协作流程与 AI 辅助贡献规范 PicoClaw 是一个社区驱动的开源个人 AI 助手项目目标是构建人工智能AI 应用AI Agent交互助手工具调用MCP ClientsAgent 记忆Gradle 构建工具的 AI 辅助贡献政策人机协作边界、披露规则与审查实践Gradle 构建工具的 AI 辅助贡献政策人机协作边界、披露规则与审查实践 本篇指南围绕 Gradle 仓库根目录的 AI_POLICY.md https:构建工具开发工具创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
延伸阅读

更多相关文章

2026/9/23 18:14:39

上海专升本-家长反复问的一句话:你们机构背后到底是谁?

一句话结论:孩子备考专升本要花两三年,家长首先要核实的一件事是机构背后是谁、有没有平台与师资保障。上海临港产业大学(指尖专升本)由临港集团与临港五校共同发起设立的平台大学承载升学服务,作为校企服务部的学历提…

2026/9/23 18:14:39

面试被问Windows7正式版原理答不上?手写实现3个核心坑

面试被问Windows7正式版原理答不上?手写实现3个核心坑 面试时被问“Windows 7正式版底层内存管理怎么优化”,我卡壳了。不是不会,是没搞懂 手写实现 底层逻辑时,那些看似简单的API背后藏着多少坑。后来在 掘金技术社区…

2026/9/23 19:24:44

基于LSTM的MIDI音乐生成:从数据准备到旋律采样

简介:一份以长短期记忆网络(LSTM)与Python实现的音乐生成器完整工程,面向对深度学习、序列建模及AI音乐创作感兴趣的开发者和学生。压缩包共56个文件,大小仅723KB,包含46个midi格式音乐数据、4个Python脚本…

2026/9/23 19:24:44

雷达的原理原理详解

面试被问雷达原理答不上来?3步搞懂核心逻辑保姆级教程 上周陪一个做嵌入式的朋友面测,面试官轻飘飘问了一句:“说说雷达的原理。”他愣了三秒,张嘴想说“发射电磁波反射回来”,结果被追问“那多普勒效应怎么体现的?距离怎么算的?”直接卡壳,挂了。…

2026/9/23 19:24:44

别被坑了!Poloniex API接入保姆级教程,3步搞定实盘数据

别被坑了!Poloniex API接入保姆级教程,3步搞定实盘数据 学了一堆Python语法,却连个K线图都拉不下来?这种“会写代码不会搭项目”的尴尬,在量化交易圈太常见了。很多转行搞金融科技的伙伴,卡在API对接这一步,看着文档头大,甚至…

2026/9/23 19:24:44

3分钟搞懂dailymed源码解析 告别文档焦虑

3分钟搞懂dailymed源码解析 告别文档焦虑 官方文档往往厚得像砖头,翻了三页还没搞懂核心逻辑,这种痛苦应届生和转行者太懂了。别被那些晦涩的术语劝退,今天我们直接切入dailymed的源码解析,用最直白的方式带你跑通第一个项目。…

2026/9/23 19:19:43

手写实现静电干扰滤波:性能优化实战

手写实现静电干扰滤波:性能优化实战 面试被问“如何消除高频噪声”时,你是否只能答出“加个电容”? 面试官追问“为什么加在输入端效果不好”,你瞬间大脑一片空白。 手写实现 一个高效的数字滤波算法,才是证明你懂原理的硬通货。…

2026/9/23 12:07:00

GAMP 5 基于风险的计算机化系统验证:软件分类与审计追踪实践

简介:《A Risk-Based Approach to Compliant GxP Computerized Systems》即业内熟知的GAMP 5指南,面向制药企业质量与IT合规人员、验证工程师及计算机化系统管理者,用于解决GxP法规环境下系统合规性难以科学落地的问题。文档以风险管理为主线…

2026/9/23 12:06:55

安全托管MSSP实战:从静态防御到人机协同的攻防运营与应急响应

简介:这份PPT围绕互联网业务安全托管服务展开,面向企业安全负责人、IT运维人员及关注MSSP/MSS选型的读者,重点回应传统安全过度依赖人工、碎片化静态防御难以对抗产业化攻击等痛点。资源共1个pptx文件,包体约30.63MB,以…

2026/9/23 0:01:54

3个实战技巧搞定形式英语:从看教程到跑通性能优化

3个实战技巧搞定形式英语:从看教程到跑通性能优化 看了一堆教程还是不会写项目?别慌,这种“眼高手低”的困境在开发者圈子里太常见了。很多人以为卡点在语法,其实真正拦路虎是缺乏将知识点串联成完整链路的能力。今天咱们不聊虚的,直接拿【形式英语】这…

2026/9/22 16:34:32

USB Type-C PCB布局分区设计:电源、高速信号与PD协议全攻略

做硬件这行,Type-C接口算是典型的“看着简单,做起来全坑”的东西。光引脚就24个,高低速信号、电源、控制线全部塞在一个小小的连接器里,如果PCB布局不做规划,打样回来基本就是“插上没反应”、“高速掉线”、“静电一打…

2026/9/22 20:01:30

系统编程学习原型如何补齐稳定性边界

系统编程学习原型如何补齐稳定性边界预算有限时&#xff0c;我先优化明显多余的复制&#xff0c;而不是猜测性地换容器。用借用传递只读数据通常就能减少分配&#xff1a; fn parse(line: &str) -> Result<Item, Error> { /* ... */ }用基准确认热点确实在分配&am…

2026/9/22 13:25:41

雨花区哪家财务公司代理记账比较好?

在雨花区&#xff0c;企业处理财税事务常常面临诸多挑战&#xff0c;选择一家靠谱的财务公司至关重要。湖南巨勤财务管理咨询有限公司就是本地正规实体财税服务机构&#xff0c;深耕本地工商财税行业多年&#xff0c;熟悉当地工商局、税务局最新政策与申报流程。主营公司注册、…

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
咨询二维码