Summary
The branch introduces five new vector interfaces (IVector0 … IVector4) and the generator emits Magnitude(), Dot(...), and Cross(...) methods on vector quantities. None of this is exercised by tests.
Evidence
Semantics.Test/SemanticQuantityTests.cs only validates basic SemanticQuantity arithmetic; it does not test:
IVector0/IVector1/IVector2/IVector3/IVector4 interface contracts.
Magnitude() returning the correct V0 type, e.g. Velocity3D.Magnitude() -> Speed.
- Generated
Dot like Force3D.Dot(Displacement3D) -> Energy (Generated/.../Force3D.g.cs:46+).
- Generated
Cross like Force3D.Cross(Displacement3D) -> Torque3D.
- Subtraction of two V0 producing a V1 (per the generator's current choice).
Suggested next step
Add a dedicated Semantics.Test/Quantities/VectorQuantityTests.cs with cases for each generated Magnitude/Dot/Cross method, picking representative dimensions (Velocity, Force, Position, ElectricField). Use known-result vectors (e.g. (3, 4, 0) -> magnitude 5).
Area / Severity
Tests · incomplete
Summary
The branch introduces five new vector interfaces (
IVector0…IVector4) and the generator emitsMagnitude(),Dot(...), andCross(...)methods on vector quantities. None of this is exercised by tests.Evidence
Semantics.Test/SemanticQuantityTests.csonly validates basicSemanticQuantityarithmetic; it does not test:IVector0/IVector1/IVector2/IVector3/IVector4interface contracts.Magnitude()returning the correct V0 type, e.g.Velocity3D.Magnitude() -> Speed.DotlikeForce3D.Dot(Displacement3D) -> Energy(Generated/.../Force3D.g.cs:46+).CrosslikeForce3D.Cross(Displacement3D) -> Torque3D.Suggested next step
Add a dedicated
Semantics.Test/Quantities/VectorQuantityTests.cswith cases for each generatedMagnitude/Dot/Crossmethod, picking representative dimensions (Velocity, Force, Position, ElectricField). Use known-result vectors (e.g. (3, 4, 0) -> magnitude 5).Area / Severity
Tests · incomplete