docs/plans/tcp-connection-validation.md (308 lines):
Plan to live-verify the RemoteTcpIntegrated and RemoteTcpCertificate
transports against an actual remote AVEVA Historian. The SDK's
HistorianWcfBindingFactory already builds all three bindings
(CreateMdasNetTcpBinding, CreateMdasNetTcpWindowsBinding,
CreateMdasNetTcpCertificateBinding) but only LocalPipe has been
exercised end-to-end. Wire format is identical across transports;
only WCF binding shape and credential negotiation differ.
Discovery workstreams A/B/C run in parallel (SPN discovery via static
IL + WCF probe; cert binding requirements via wcf-cert-probe; operator
preconditions checklist). D blocks on A. Verification tracks V1-V5 also
parallelize once V1 (ProbeAsync) confirms the transport is reachable.
Includes risks (SPN mismatch, cert chain validation, idle disconnect,
Open2 response delta, compression negotiation, time skew, false-positive
empty reads), success criteria, eight open questions, and explicit
out-of-scope items filed under the existing write-commands and
store-forward plans.
No code changes; no preconditions assumed met. Implementer must satisfy
§2 preconditions (reachable remote Historian, port 32568 open, test
account, SPN registered, etc.) before §4 discovery starts.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>