The SysML2.0 specification body example, Annex sample, and SysMLv2 GitHub examples are inconsistent in this regard.
Some examples such as the following from the SysMLv2 GitHub redefine ports to provide "clean" binding targets for directed item features:
Webel's recommendation is that although it may not be strictly necessary (TBD) it's best to follow the above example and (although tedious and bit WET) do redefine ports and parameters (or their directed features as necessary) as done in the example above.
However, in alignment with the Webel "Trust the Type" i/o recipe, the Type of any redefined port, parameter, or directed feature SHOULD be included (and even if that's also tedious and a bit WET) so that the concise and legible Webel "Trust the Type" display modes work.
The following from the SysMLv2 GitHub shows an example where redefinition to provide clean targets is NOT performed (a flow is made between inherited ports):
