This commit is contained in:
2026-08-23 16:34:50 +02:00
parent 815e26d359
commit a30b78c3b6
8 changed files with 178 additions and 33 deletions
+15 -12
View File
@@ -140,26 +140,29 @@ func ShouldRefuseEnhanceHashSkip(priorDesc string, titles ...string) bool {
// DescriptionMissingFormulaHTMLTags is true when sectionTypes require HTML tags
// (h1/h2/h3/h4, p, ul) that are absent from desc — formula-mismatch for skip/clear.
// Counts matter: a formula with two h2 sections needs at least two <h2 opens.
func DescriptionMissingFormulaHTMLTags(desc string, sectionTypes []string) bool {
if len(sectionTypes) == 0 {
return false
}
lower := strings.ToLower(desc)
need := map[string]int{}
for _, raw := range sectionTypes {
typ := strings.ToLower(strings.TrimSpace(raw))
switch typ {
case "h1", "h2", "h3", "h4":
if !strings.Contains(lower, "<"+typ) {
return true
}
case "ul":
if !strings.Contains(lower, "<ul") {
return true
}
case "h1", "h2", "h3", "h4", "ul":
need[typ]++
case "p", "":
if !strings.Contains(lower, "<p") {
return true
}
need["p"]++
}
}
if len(need) == 0 {
return false
}
lower := strings.ToLower(desc)
for typ, n := range need {
needle := "<" + typ
if strings.Count(lower, needle) < n {
return true
}
}
return false