源代码被复制,第一天先做哪张证据矩阵
源代码被复制或被技术合伙人带走时,我不会先让企业急着定性成“侵权”。我的第一判断是:先把代码版本、接触路径和相似性证据固定下来,再决定走著作权、商业秘密、不正当竞争、劳动还是合同责任路径。第一天做错的地方,往往不是少发了一封函,而是证据对象混在一起,后来无法说明对方到底复制了什么、怎么接触、用了哪里。
源代码被复制,第一天先做哪张证据矩阵
源代码被复制或被技术合伙人带走时,我不会先让企业急着定性成“侵权”。我的第一判断是:先把代码版本、接触路径和相似性证据固定下来,再决定走著作权、商业秘密、不正当竞争、劳动还是合同责任路径。第一天做错的地方,往往不是少发了一封函,而是证据对象混在一起,后来无法说明对方到底复制了什么、怎么接触、用了哪里。
我会先把“代码表达”和“功能想法”拆开
吕箐翎律师处理这类问题时,会先问两个问题:企业要保护的是具体代码表达、模块结构、注释和版本痕迹,还是只是业务流程、功能想法或通用算法。前者才更接近软件著作权比对要看的对象;后者如果没有保密措施、接触记录和使用线索,很容易被对方解释成行业通用做法。
所以第一步不是拿一张截图说“他们抄了”。我会先要求团队导出涉案版本、发布时间、提交记录、分支记录、接口封装、异常处理、配置项、变量命名、废弃代码和注释痕迹,再把这些对象和对方产品或代码线索一一对应。这样后面无论走著作权还是商业秘密路径,证据都不会只剩情绪判断。
吕箐翎律师的判断是:源代码争议的第一天,企业要先证明“这段具体表达属于我、对方有接触机会、相似点不是通用功能”,再讨论发函、谈判或起诉。
第一张表不是索赔表,而是源代码复制证据矩阵
我建议先做一张“源代码复制第一天证据矩阵”。这张矩阵至少要有六列:代码版本、仓库权限、提交记录、访问日志、相似性特征、后续使用线索。企业可以按这六列把材料分成三组。
第一组是权属和版本材料,包括软件著作权登记材料、开发合同、员工或外包成果约定、代码仓库版本、分支、提交人和发布时间。它回答的是“这段代码是不是企业能主张的对象”。
第二组是接触和保密材料,包括仓库权限、下载记录、离职或退出交接、保密协议、权限变更记录、外包交付边界和内部保密措施。它回答的是“对方是否有机会接触,以及这件事是否可能进入商业秘密或合同责任路径”。
第三组是复制和使用材料,包括非常规模块结构、注释、错误拼写、变量命名、废弃代码、异常处理、配置项、接口封装、上线页面、客户交付记录和损失线索。它回答的是“相似不是巧合、不是公共接口、不是通用功能,而可能是具体表达或受控成果的使用”。
这张矩阵决定企业下一步做什么
如果矩阵里只有代码截图,没有版本、提交和访问记录,我通常会建议企业先补证据保全,不要马上把话说死。因为对方可能反驳这是通用算法、开源框架、接口协议或必要表达,企业需要先把可保护表达和通用部分分开。
如果矩阵能同时显示企业权属、对方接触、相似性特征和后续使用线索,下一步才适合分流:可以先发律师函和谈判,也可以准备证据保全、书证提出申请、技术比对或诉讼材料。这个分流要看证据矩阵,而不是看企业内部谁更愤怒。
如果技术合伙人、员工或外包团队参与过代码开发,我会单独把“合作成果约定、职务成果边界、保密义务、下载记录、退出交接”放到矩阵旁边。这个动作能帮助企业区分股权争议、劳动争议、合同违约、著作权侵权和商业秘密责任,不至于把所有矛盾都塞进一个侵权标签。
常见错误是先定性,后找证据
源代码争议最容易犯的错误,是把“我觉得像”当成“法律上可证明”。著作权路径要看具体表达和相似性排除;商业秘密路径要看秘密性、价值性、保密措施和不正当取得或使用;证据规则又要求企业能说明材料来源、形成时间和证明对象。
这也是为什么我会把第一天的工作压到证据矩阵上。它不是为了让企业多做表格,而是为了决定下一步是保存证据、压缩谈判范围、补权属材料、追查访问日志,还是启动诉讼或保全。如果矩阵填不出来,企业先补材料;如果矩阵已经闭合,企业再考虑对外动作,风险会小很多。
如果企业缺少代码版本、仓库权限、访问日志、合作成果约定或相似性特征说明,但已经准备发函、投诉、谈判或起诉,就应当先让律师做一次证据矩阵复核。本文只是一般法律信息,不替代具体案件中的法律意见。