Skip to content

Core: Router Implementation #3

@ggondim

Description

@ggondim

Summary

Implement the route matching engine that maps incoming messages to outbound recipients based on configurable criteria.

Tasks

  • Implement route matching engine:
    • Input: inbound message metadata (channel, target, sender, content, isThread, isMention, isDM)
    • Output: ordered list of matching Routes by priority
  • Support wildcard/glob patterns in route criteria (e.g., content matching)
  • Support multiple recipients per route (fan-out)
  • Handle edge cases: no matching routes, overlapping routes, disabled routes
  • Unit tests for matching logic with various criteria combinations

Acceptance Criteria

  • Given a set of routes and an inbound message, the router returns the correct ordered matches
  • Wildcard patterns work in content and sender criteria
  • Fan-out delivers to all matched recipients
  • 100% test coverage on the matching logic

Dependencies

References

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions