Compare commits
No commits in common. "v0.1.6" and "main" have entirely different histories.
|
@ -1 +0,0 @@
|
||||||
*.swp
|
|
|
@ -8,6 +8,7 @@ import (
|
||||||
"net/http"
|
"net/http"
|
||||||
"strings"
|
"strings"
|
||||||
"time"
|
"time"
|
||||||
|
"unicode"
|
||||||
)
|
)
|
||||||
|
|
||||||
// Paper represents a single academic paper
|
// Paper represents a single academic paper
|
||||||
|
@ -199,14 +200,13 @@ Abstract: %s`, criteria, paper.Title, paper.Abstract)
|
||||||
// Clean and normalize decision
|
// Clean and normalize decision
|
||||||
rawDecision := strings.TrimSpace(decisionLine)
|
rawDecision := strings.TrimSpace(decisionLine)
|
||||||
|
|
||||||
// Handle common prefixes and clean the decision text
|
// Remove "DECISION:" prefix if present and trim non-alphabetic characters
|
||||||
cleanDecision := rawDecision
|
cleanDecision := strings.TrimPrefix(rawDecision, "DECISION:")
|
||||||
for _, prefix := range []string{"DECISION:", "Decision:"} {
|
cleanDecision = strings.TrimFunc(cleanDecision, func(r rune) bool {
|
||||||
cleanDecision = strings.TrimPrefix(cleanDecision, prefix)
|
return !unicode.IsLetter(r) && !unicode.IsNumber(r)
|
||||||
}
|
})
|
||||||
cleanDecision = strings.TrimSpace(cleanDecision)
|
|
||||||
|
|
||||||
// Normalize case
|
// Normalize case and check for valid decision
|
||||||
upperDecision := strings.ToUpper(cleanDecision)
|
upperDecision := strings.ToUpper(cleanDecision)
|
||||||
var decision string
|
var decision string
|
||||||
switch {
|
switch {
|
||||||
|
|
Loading…
Reference in New Issue