mirror of
https://github.com/OPCFoundation/UA-.NETStandard.git
synced 2026-10-18 22:55:08 +08:00
55bd944609
# Description Adds the pure Types-side WoT Thing Description / Thing Model to NodeSet conversion: resolution, context, declarations, types, values, localization, URI/format handling, bounded hashing, plus supporting native XML codec, NodeSet alias/value helpers, RelativePathFormatter and a JsonElement equality polyfill. - Carrier-witness fix: a missing native event is accepted only when the owning preserved type declares it through a `GeneratesEvent` reference (directly or via its type/supertype chain) AND a bounded, validated selected EventType carrier identity equals the normalized authored native target. Native-present events get a full compare; an ambiguous native key and a missing map stay strict; a readable document is never archive authority. - Support-only dependencies: additive per-instance, non-serialized `WotDocument.IsSupportOnly(kind, name)` (ArgumentNullException guard). The resolver marks support-only after closure; explicit selection wins; the View builder excludes only true support-only members, so unit/actsOn dependencies stay in the JSON. Nested controls cover inner value-only projection under an outer value-only selection (unit kept, support-only) versus an outer explicit SelectAll (explicit, not support-only). - Documentation/XML comments and member-order only in commit 5c368d3a; no logic change. - Timeout repair on current head6957dd46: invocation-scoped `ArchiveDerivations` reuse removes repeated document-set derivation work without a global cache (functional files `WotNodeSetConverter.{Archive,ArchiveDerivations,Partitions,WoT}.cs`, plus `WotArchiveDerivationsTests` and `WotDocumentSetSharedValidationTests`). The original local full29 reproduction changed from 27 passed / 2 Refresh timeouts to 29 passed with unchanged limits; official CI on this head FAILED at three per-project time ceilings (see the evidence ledger). Temporary RF1 diagnostics were fully removed; the final tree differs from0f7b9a09only in the six functional files. - Test-only net48 compile repair in commitb838907(earlier head): official CI on5c368d3awas RED on the net48 build with CS1061 (see ledger); the fix adds `using System.Threading;` and an unqualified `CancellationTokenSource` in one test file. No production change. Defaults: DI default document budget 256 versus the sample's explicit 1024. Corpus: canonical 540-JSON inventory; the actual manifest is 535 entries = 394 TD + 141 TM (the roles of the other 5 are not claimed). Native Pumps assertions (9624 nodes / 339 partitions) are unchanged.