From 30834cd794efa030ebf0751a83c010392e03c676 Mon Sep 17 00:00:00 2001 From: cproudlock Date: Thu, 20 Aug 2026 10:50:38 -0400 Subject: [PATCH] Say plainly that one registry value covers every device family The phase 3 section named the key and left the scope to be inferred from the fact that deviceid is one field. Spelling it out: DeviceId is a single value, not a key per device type, and the pc-type decides which sync consumes it - so CMM, Keyence, Genspect, wax-trace and part markers all read the same value, and a family declared later through subordinatedevice_ is covered the day it is declared. Also records what the value REPLACES per family, which differs: for a CMM it replaces cmmid.txt as identity only, for a part marker it replaces minting from the hostname, and for the other three it replaces nothing because they never had an identity at all. --- docs/proposals/device-identity.md | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/docs/proposals/device-identity.md b/docs/proposals/device-identity.md index c94b718..e97de87 100644 --- a/docs/proposals/device-identity.md +++ b/docs/proposals/device-identity.md @@ -120,6 +120,21 @@ and no new read path: the collector already opens `HKLM:\SOFTWARE\GE\ShopDB` (and the `WOW6432Node` variant) for `BaseUrl` and `ApiToken`, and `Install-GEEnforce.ps1` already writes that key. +**One value, every family.** `DeviceId` is a single registry value, not a key +per device type. The client sends one field and the pc-type decides which sync +consumes it, exactly as `asset-id.txt` works in phase 1, so: + +| Bay | `DeviceId` holds | Replaces | +|---|---|---| +| CMM | the instrument's `assetnumber` | `cmmid.txt` as IDENTITY only | +| Keyence | the instrument's `assetnumber` | nothing; had none | +| Genspect | the instrument's `assetnumber` | nothing; had none | +| wax-trace | the instrument's `assetnumber` | nothing; had none | +| part marker | the marker's `assetnumber` | minting from the hostname | + +A device family added later through `subordinatedevice_` is covered on +the day it is declared, with no client change and no new registry value. + Resolution order after phase 3: 1. `HKLM:\SOFTWARE\GE\ShopDB\DeviceId`