SP16 Task 1: the filling-defect surfaces on ONE tooth, parallel to
subcariesLettersForTooth — a surface carries a defect when it is
BOTH present in fillingSurfaceMaterials AND has a non-"none"
fillingDefect entry, gated the SAME way the existing whole-mouth
filling-defect summary is (restorationType === "none", i.e. defects are
suppressed under a crown/bridge — see the defects derivation in
getOdontogramSummary). Returns the surfaces' letters in
SUMMARY_SURFACE_ORDER, concatenated with no separator; "" when the tooth
has no defect surface (or no state). Pure and exported for direct unit
testing.
SP16 Task 1: the filling-defect surfaces on ONE tooth, parallel to subcariesLettersForTooth — a surface carries a defect when it is BOTH present in
fillingSurfaceMaterialsAND has a non-"none"fillingDefectentry, gated the SAME way the existing whole-mouth filling-defect summary is (restorationType === "none", i.e. defects are suppressed under a crown/bridge — see thedefectsderivation in getOdontogramSummary). Returns the surfaces' letters inSUMMARY_SURFACE_ORDER, concatenated with no separator; "" when the tooth has no defect surface (or no state). Pure and exported for direct unit testing.