# 第三者ライセンス確認（2026-10-14）

対象はネイティブWindows β版と製品サイトです。旧Python/Web版は今回のZIP・コンテナに含めません。これは技術的な確認記録であり、正式販売時の法的判断を保証するものではありません。

## 主な構成

自作C#エンジン版のWindows ZIPからはOR-Toolsとその関連ライブラリを除外しました。
以下のOR-Tools関連の説明とライセンス原文は旧配布版・比較用ツールの記録です。
新ZIPにはそれらの実行バイナリ・対応ソースアーカイブを同梱しません。
現在の実行時依存はアプリの `SchoolTools.Desktop.deps.json` で確認できます。

| 対象 | ライセンス | 対応 |
| --- | --- | --- |
| .NET / WPF / Microsoft.Data.Sqlite / Open XML SDK | MIT、同梱の第三者通知 | 著作権表示・通知を同梱 |
| ClosedXML / Parser / ExcelNumberFormat / RBush | MIT | 実際の版のLICENSEを取得 |
| OR-Tools / Abseil / SCIP / SoPlex / SQLitePCLRaw | Apache-2.0 | LICENSE・作者情報とビルド元を同梱 |
| Protobuf / RE2 / UTF8 Range / HiGHS / bzip2 / zlib / Boost | BSD系、MIT、zlib、BSL等 | 個別の原文を同梱 |
| Eigen 3.4.0 | MPL-2.0 | ライセンスと対応ソースを同梱 |
| COIN-OR Cbc / Clp / Cgl / Osi / CoinUtils | EPL-2.0 | ライセンスと使用するfork/tagのソースを同梱 |
| SixLabors.Fonts 1.0.0 | Apache-2.0 | 1.0.0の原文で確認。現行最新版のSplit Licenseとは混同しない |
| Three.js | MIT | サイトにライセンス全文を配置 |
| Lucide | ISC（Feather由来部分はMIT） | 同梱LICENSEの帰属表示を維持 |
| BIZ UDPゴシック | SIL OFL 1.1 | 未改変のフォントとOFL.txtを維持、フォント単体販売はしない |
| bcryptjs | BSD-3-Clause | パスワード設定・ローカル検証の開発用。製品のブラウザーJSには含めない |
| Nginx / Nodeのベースイメージ | 各公式イメージのライセンス | 公式イメージの通知を保持、第三者イメージを独自ソフトとして扱わない |

実際のNuGet依存・版・作者・リポジトリは `nuget/nuget-inventory.json`、原文は `upstream/` と `nuget/` にあります。ビルド時にZIPへコピーします。

## ネイティブライブラリの追加確認

配布対象OR-Toolsの実行時検査で、CBC 2.10.12、CLP 1.17.10、SCIP 10.0.0、SoPlex 8.0.0を確認しました。GLPKはリンクされていません。Gurobi/Xpressの別製品を同梱・利用する構成ではありません。公式ビルド定義ではSCIP/SoPlexのGMP、MPFR、PAPILO等は無効です。

EPL/MPLの対象コードについて、ライセンスだけで済ませず、該当するソースアーカイブとOR-Toolsのビルド定義・パッチをZIPの `Licenses/Sources/` に入れます。各アーカイブのURL・SHA-256も同梱します。該当コンポーネントの改変・再ビルドでは対応ソースと通知を再確認してください。

MIT/Apache等は有償・限定配布を直ちに禁止するものではありませんが、通知保持などの条件があります。アプリ固有の配布条件で、第三者ライセンスが認める権利を制限しないようにしています。正式販売前には配布構成と利用規約を専門家に確認してください。

EPL-2.0には商用配布に関する責任・補償条項もあります。将来の販売時はその条件を確認し、必要なら未使用COIN-ORソルバーを外したOR-Tools構成への再ビルドも検討してください。単に「全部MITだから問題ない」とは扱っていません。

## セキュリティと未完了事項

- SQLitePCLRaw 2.1.6の既知の脆弱性を検出し、2.1.14へ更新。再検査でNuGetの既知の脆弱性は検出されませんでした。検査は未知の問題を否定するものではありません。
- 同梱.NETは9.0.21。Microsoftの.NET 9サポート終了は2026-11-10です。終了前に.NET 10 LTS等への移行・再配布を行う必要があります。同梱ランタイムは利用者PCの自動更新だけでは更新されません。
- OR-Tools DLLはMSVCP140.dll、VCRUNTIME140.dll、VCRUNTIME140_1.dllに依存します。Visual C++ランタイムの再配布権は.NETのMITと同一ではないため、今回そのDLLをSystem32からコピーしたり、非公式パッケージで同梱したりしていません。必要な場合のMicrosoft公式入手先を案内します。
- デジタル署名、クリーンWindows実機、印刷実機の最終確認は未完了です。

## 一次資料

- https://github.com/google/or-tools/tree/v9.15
- https://github.com/google/or-tools/blob/v9.15/cmake/dependencies/CMakeLists.txt
- https://github.com/SixLabors/Fonts/blob/v1.0.0/LICENSE
- https://dotnet.microsoft.com/en-us/platform/support/policy/dotnet-core
- https://learn.microsoft.com/en-us/cpp/windows/latest-supported-vc-redist
- https://github.com/advisories/GHSA-2m69-gcr7-jv3q

ライブラリを更新したら `inspect_licenses.py`、原文取得、脆弱性検査、ソースアーカイブ確認を再実施してください。
