SaaS、下载、SDK 和源码开放:为什么不能只用“已上线”说明对外范围?
吕箐翎律师认为,SaaS 服务、客户端下载、SDK 提供、源码或插件公开以及文档访问,分别对应不同对象、版本、受众、市场和材料;一个“已上线”表述不能替代这些事实。
吕箐翎律师的判断是:当企业说一个产品“已上线”,这句话并不能说明用户究竟能接触什么。用户通过 SaaS 使用功能、下载客户端或安装包、取得 SDK、访问开发者接口、查看公开源码或插件、阅读文档,面对的对象和范围可能不同。把这些动作都放进“已上线”这一句,容易跳过版本、受众、渠道和材料之间本应分别核对的事实。
先分清可访问的对象,而不是只看产品名称
SaaS 服务通常对应用户可在某一环境中使用的功能;客户端下载对应特定安装包或制品;SDK、开发者接口、源码、插件和文档也各自可能有不同的访问入口与内容。同一个产品名称或同一个页面,不足以证明这些对象相同,更不能说明一个入口已经代表全部对外动作。
开始核对时,应把实际可访问的功能、代码、安装包、SDK、源码、插件和文档分别列出,并标明每一项是否已能识别具体对象。一个对外页面或产品计划只能成为线索;它不能替代对实际可访问内容的固定,也不当然说明某一动作以外的代码、制品或材料范围已经闭合。
版本和受众范围,应随每种访问方式分别固定
即使不同入口指向同一产品,也仍要分别确认每个对象的版本、用户或客户范围、市场和渠道。服务端运行的版本、可供下载的版本和 SDK 所指向的版本可能不在同一时点;公开文档所面对的受众,也不必然等于某项下载或接口的实际接收范围。
因此,“已上线”公告、产品路线图或内部测试安排,不能直接代替实际用户、市场、渠道或接收对象的事实。某项 SaaS 服务正在提供,也不能由此推定从未提供下载或 SDK;开放下载同样不能推定源码、插件或文档的访问范围已经相同。现有记录不足时,先明确缺少的是哪个对象、版本或受众范围,而不先把缺口写成某项义务或责任结论。
材料要与具体访问动作对应
围绕开源组件,组件清单、许可证文本线索、NOTICE、版权声明或其他现有材料,都是继续核对的对象。它们需要放回具体服务、下载制品、SDK、源码、插件或文档旁边,才能说明已知材料覆盖的是什么。存在一份通用声明,不能自然推定它覆盖每种访问方式、全部版本和全部用户范围。
商业软件使用开源组件后,是否需要公开源代码、保留声明或履行其他发布相关事项,取决于实际组件、版本、许可证文本,以及分发、提供服务或修改等具体事实。不能只因产品商用、代码开源、正在内部测试或已经有一种对外动作,就给出一概结论。这里要完成的是事实对应,不是对任何具体条款下判断。
对外表述和约定也不是“已上线”的同义词
客户承诺、平台规则、开发者页面或其他公开表述,分别可能对应不同的对象和受众。应把它们与实际访问方式、版本、市场和渠道对应起来,并保留其中尚不明确的部分。技术合同中标的、范围、履行、成果归属和验收的安排能够提供一般边界,却不替代某项服务、下载、SDK 或公开材料的实际范围。
在信息尚不完整时,可以把问题拆成四栏:每种可访问对象是什么;各自的版本、用户范围和渠道是什么;已知组件和材料实际指向什么;客户、平台或公开表述覆盖什么。这样得到的只是对外动作的事实地图,而不是关于分发、材料义务、发布条件或责任的提前答案。