feat: wire external rules pipeline into ingress and dispatch
- Add DispatchContext field to Task model for rule metadata storage - Add BlocklistEmails config (BLOCKLIST_EMAILS env var) - Wire rules.Pipeline into IMAPWatcher, replacing inline whitelist check - Pass rule metadata through DispatchContext to OpenClaw dispatch - Remove isWhitelisted method (now handled by WhitelistRule) Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
@@ -95,12 +95,12 @@ type stubRule struct {
|
||||
result RuleResult
|
||||
}
|
||||
|
||||
func (s *stubRule) Name() string { return s.name }
|
||||
func (s *stubRule) Name() string { return s.name }
|
||||
func (s *stubRule) Evaluate(_ EmailContext) RuleResult { return s.result }
|
||||
|
||||
type trackingRule struct {
|
||||
called bool
|
||||
}
|
||||
|
||||
func (t *trackingRule) Name() string { return "tracker" }
|
||||
func (t *trackingRule) Evaluate(_ EmailContext) RuleResult { t.called = true; return Accept() }
|
||||
func (t *trackingRule) Name() string { return "tracker" }
|
||||
func (t *trackingRule) Evaluate(_ EmailContext) RuleResult { t.called = true; return Accept() }
|
||||
|
||||
Reference in New Issue
Block a user