aboutsummaryrefslogtreecommitdiffstats
path: root/pkg/email
diff options
context:
space:
mode:
authorAleksandr Nogikh <nogikh@google.com>2023-04-12 11:20:59 +0200
committerAleksandr Nogikh <wp32pw@gmail.com>2023-04-12 13:55:59 +0200
commit4ccda2b77eb2a46c1217d40e4a16ff97acba3a48 (patch)
tree51e139e4d2c01b0d3ccd7275d8ea49e724c8bce3 /pkg/email
parent5d17667bb6ecde104eff665d3c096ac2b7984648 (diff)
pkg/email: recognize patches sent as replies to reports
It seems to be a common pattern in LKML: bug fixes are sent as replies to syzbot reports. Recognize such replies as separate discussions.
Diffstat (limited to 'pkg/email')
-rw-r--r--pkg/email/action.go6
-rw-r--r--pkg/email/action_test.go11
2 files changed, 17 insertions, 0 deletions
diff --git a/pkg/email/action.go b/pkg/email/action.go
index 1d9fb22ff..0b5103fc7 100644
--- a/pkg/email/action.go
+++ b/pkg/email/action.go
@@ -23,6 +23,12 @@ func NewMessageAction(msg *Email, msgType dashapi.DiscussionType, oldThread *Old
return ActionNewThread
}
if oldThread != nil {
+ // Sometimes patches are sent as replies to the bug report.
+ // In this case, we'd better report it as a new discussion.
+ if msgType == dashapi.DiscussionPatch &&
+ msgType != oldThread.ThreadType {
+ return ActionNewThread
+ }
// Otherwise just append the message.
return ActionAppend
}
diff --git a/pkg/email/action_test.go b/pkg/email/action_test.go
index 51b0505f8..c1ef8507b 100644
--- a/pkg/email/action_test.go
+++ b/pkg/email/action_test.go
@@ -65,6 +65,17 @@ func TestMessageActions(t *testing.T) {
oldThread: nil,
result: ActionNewThread,
},
+ {
+ name: "patch reply to report",
+ msg: &Email{
+ InReplyTo: "<abcd>",
+ },
+ msgType: dashapi.DiscussionPatch,
+ oldThread: &OldThreadInfo{
+ ThreadType: dashapi.DiscussionReport,
+ },
+ result: ActionNewThread,
+ },
}
for _, _test := range tests {
test := _test