用途:将依赖许可证扫描报告转化为可审计的工程合规分诊结论,核心是减少误报,同时不把证据不足伪装成合规通过。适用于开发者、发布负责人、合规工程师与审查人员。
主要能力:处理 Maven、Gradle、npm、Cargo 等依赖清单的许可证归一化与分诊;识别多许可证表达式的可选分支,定位粗粒度关键字扫描的误报;按 group:name:version 或等价坐标核验证据、记录例外、检查版本漂移;输出工程门禁建议、证据缺口、分发义务与替换/升级建议。
使用方式:先确定策略语义,把目标写成可观察的政策问题(是否允许商用、是否允许闭源分发、依赖是原样独立分发还是静态合并或修改等),不要从固定白名单开始。分诊流程为:确认输入真实性与发布物范围;保留原始许可证声明并记录 SPDX 映射理由;解析 OR/AND 表达式语义;按完整坐标核验证据(优先固定版本官方 POM、LICENSE/NOTICE、上游固定 tag/commit);结合使用方式判定义务;给出“通过/有条件通过/需补证据/阻断/不在发布物”五类结论;反向统计误报;用最小测试验证门禁。输出先给政策口径与结论摘要,再给逐项表格,字段包括 coordinate、scope、declared_expression、selected_license、usage_mode、decision、evidence、obligations、rationale、action,结尾列出原始命中数、确认误报数、真实阻断数、未决数、门禁验证证据与剩余风险。
限制:不替代律师或法务意见,输出应标注“工程合规分诊”;不凭许可证名称批准商标、专利、出口管制、隐私或制裁合规;未经授权不修改依赖、CI、策略文件或发布物;不把漏洞、供应链来源或维护状态混入许可证结论。只有许可证名称时需补充包坐标与版本;弱 copyleft 或 Classpath Exception 场景需说明链接方式、是否修改与交付形态;自定义、商业或 Unknown 许可证需官方正文或供应商条款;验证真实发布物需 SBOM、许可证报告与最终分发包。依赖报告可能含私有包名、仓库 URL、客户名称或令牌,展示前应脱敏,证据链接不得携带 token,不要上传私有 SBOM 到外部服务。
参考资料:references/decision-model.md、references/anti-patterns.md、references/faq-deep.md。