From 3b92b7cc83980da1252eb2e56370f8226af7b3b7 Mon Sep 17 00:00:00 2001 From: Joseph Doherty Date: Fri, 24 Jul 2026 13:43:23 -0400 Subject: [PATCH] docs(mtconnect): record TrakHound-vs-hand-rolled client decision (Task 0) --- docs/plans/2026-07-24-mtconnect-driver.md | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/docs/plans/2026-07-24-mtconnect-driver.md b/docs/plans/2026-07-24-mtconnect-driver.md index 4118028b..87aa9ea6 100644 --- a/docs/plans/2026-07-24-mtconnect-driver.md +++ b/docs/plans/2026-07-24-mtconnect-driver.md @@ -48,6 +48,27 @@ git add docs/plans/2026-07-24-mtconnect-driver.md git commit -m "docs(mtconnect): record TrakHound-vs-hand-rolled client decision (Task 0)" ``` +**DECISION (verified 2026-07-24): TrakHound path.** All three checks passed against real nuget.org. +(1) `dotnet package search MTConnect.NET-Common --exact-match` and `...-HTTP --exact-match` both list +versions `3.2.0` through `6.9.0.2` on `nuget.org`, confirming `6.9.0.2` is the current top-of-list +version for both package ids (no version mismatch between the two). (2) A throwaway `net10.0` console +project in the scratchpad (outside the repo, so unaffected by this repo's `packageSourceMapping`) ran +`dotnet add package MTConnect.NET-Common -v 6.9.0.2` + `...-HTTP -v 6.9.0.2` + `dotnet restore` — both +restored cleanly with no source-mapping or compatibility errors; `project.assets.json` resolved +`MTConnect.NET-Common`, `MTConnect.NET-HTTP`, and the transitive `MTConnect.NET-TLS` (all `6.9.0.2`) +against the `net10.0` target framework, and each package's `lib/` folder contains a `netstandard2.0` +build (alongside `net6.0`–`net9.0`, `net461`–`net472`, `net47`, `net48`), so net10.0 resolves via the +in-box compatibility mapping. (3) The pinned version carries **no embedded LICENSE file** in the +`.nupkg` (`unzip -l` shows no `LICENSE*` entry in either package) — instead both nuspecs declare the +modern SPDX license-expression form `MIT` + +`https://licenses.nuget.org/MIT`, which nuget.org validates against the SPDX +list at push time and surfaces on the package page (confirmed live: the nuget.org page for +`MTConnect.NET-Common` `6.9.0.2` displays "MIT license" linked to `licenses.nuget.org/MIT`) — a +structurally stronger guarantee than a free-text embedded file for this specific version, so the +absence of a physical `LICENSE` file is not a fail. Task 1 adds +`PackageReference MTConnect.NET-Common 6.9.0.2` + `PackageReference MTConnect.NET-HTTP 6.9.0.2` to +`Driver.MTConnect.csproj`; the hand-roll fallback is not needed. + --- ## Task 1: Scaffold the two driver projects + the test project