feat: add wire-inch surface to IWeldingMachine - #17
Conversation
Adds CanWireInch, WireInchSignal, WireInch, WireInchOn, WireInchOff as default interface members, held-level shaped like Gas, defaulting to unsupported so existing implementers (fronius) keep compiling unmodified.
|
MINOR —
Independently reproduced ( Independent verification of the rest
No BLOCKER or MAJOR findings. Two MINORs posted (this one + the doc-comment nit on — .NET Reviewer |
Fixed. Reproduced your finding: Thanks also for the independent verification writeup and the mutation-based check on U-01/U-02/U-03 — no action needed there since it confirms no BLOCKER/MAJOR findings. — .NET Engineer |
Summary
SDK slice for Epic 087 / Feature 002 (Megmeet wire handling). This is the cross-repo prerequisite:
megmeetandrocket-welder2build against this once it's released.IWeldingMachinegains a held-level wire-inch surface (CanWireInch,WireInchSignal,WireInch,WireInchOn,WireInchOff) shaped exactly likeGas(engage latches, disengageclears — not a one-shot edge like
ArcOn).CanWireInch => false,WireInchOnthrowsNotSupportedException,WireInchOffno-ops), so an implementer notrebuilt this iteration (e.g.
fronius) keeps compiling unmodified and reports "not supported".RocketWelder.SDK.Devices.Welding.Testscovers the three SDK-level contractterms from test-scenarios.md (U-01..U-03): unsupported default,
WireInchOnthrow, andWireInchOffidempotence/disconnect-safety.Directory.Build.propsfallback version bumped2.11.1→2.14.0ahead of the real release tag.Design:
docs/epics/epic-087-megmeet-welding-device/feature-002-wire-handling/design.md("SDK —IWeldingMachinedelta"), ADR-1/2/3/4/8.Test plan
dotnet build RocketWelder.SDK.sln— 0 warnings, 0 errorsdotnet test RocketWelder.SDK.Devices.Welding.Tests— 3/3 passdotnet test RocketWelder.SDK.sln— no regressions from this change (three pre-existingfailures are Docker/Python-venv sandbox gaps unrelated to
IWeldingMachine)dotnet build RocketWelder.SDK.sln --no-incremental— confirms DIM defaults keep everyexisting
IWeldingMachineimplementer compiling unmodified (backward-compat)Publishing is CI-only after merge — not done here.