Phase 07 complete: - IMachineFingerprint + ILicenseValidator interfaces - MachineFingerprint: WMI CPU ProcessorID + BaseBoard SerialNumber - LicenseValidator: RSACryptoServiceProvider + SHA256, injectable public key - LicenseFile.TryRead: out-param bool, no exceptions from file I/O - 6 NUnit tests (valid/wrong-machine/tampered/empty/not-base64/missing-file) - 118 tests total, 116 pass, 2 Fanuc FOCAS ignored (Windows DLL) - Fix: missing 'using System' in CncMachineFactoryTests.cs - Fix: Dockerfile.test updated for NcProgramManager rename PublicKeyXml = PLACEHOLDER until Phase 09 generates real key pair. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
25 lines
462 B
JSON
25 lines
462 B
JSON
{
|
|
"name": "NcProgramManager",
|
|
"version": "0.2.0-dev",
|
|
"milestone": {
|
|
"name": "v0.2 NcProgramManager",
|
|
"version": "0.2.0",
|
|
"status": "in_progress"
|
|
},
|
|
"phase": {
|
|
"number": 7,
|
|
"name": "license-core",
|
|
"status": "complete"
|
|
},
|
|
"loop": {
|
|
"plan": null,
|
|
"position": "IDLE"
|
|
},
|
|
"timestamps": {
|
|
"created_at": "2026-05-13T00:00:00Z",
|
|
"updated_at": "2026-05-17T21:00:00Z"
|
|
},
|
|
"satellite": {
|
|
"groom": true
|
|
}
|
|
}
|