feat(browse): Wave-0 Batch B — AbCip/TwinCAT/FOCAS opt into online discovery

Task 3/4/5: SupportsOnlineDiscovery => true on AbCipDriver, TwinCATDriver, FocasDriver
(their device enumeration is real, config-gated on EnableControllerBrowse / FixedTree.Enabled
which PatchForBrowse guarantees at open). One gate fact per driver test project.
This commit is contained in:
Joseph Doherty
2026-07-15 17:18:02 -04:00
parent 85776cf650
commit 679484ae78
7 changed files with 79 additions and 7 deletions
@@ -427,6 +427,12 @@ public sealed class FocasDriver : IDriver, IReadable, IWritable, ITagDiscovery,
// node set is non-empty and stable.
public DiscoveryRediscoverPolicy RediscoverPolicy => DiscoveryRediscoverPolicy.UntilStable;
/// <summary>The FixedTree device folder is real enumeration — config-gated on FixedTree.Enabled,
/// which the universal browser's PatchForBrowse turns on. FOCAS is the UntilStable driver: the
/// FixedTree cache fills a couple of seconds post-connect, so the browser's settle loop re-captures
/// until the node set is non-empty and stable.</summary>
public bool SupportsOnlineDiscovery => true;
/// <inheritdoc />
public Task DiscoverAsync(IAddressSpaceBuilder builder, CancellationToken cancellationToken)
{