Reviewed-on: #1 Co-authored-by: Vishesh 'ironeagle' Bangotra <aetoskia@gmail.com> Co-committed-by: Vishesh 'ironeagle' Bangotra <aetoskia@gmail.com>
23 lines
1.5 KiB
JSON
23 lines
1.5 KiB
JSON
{
|
|
"module": "mail_intake.parsers.subject",
|
|
"content": {
|
|
"path": "mail_intake.parsers.subject",
|
|
"docstring": "Subject line normalization utilities for Mail Intake.\n\nThis module provides helper functions for normalizing email subject lines\nto enable reliable thread-level comparison and grouping.\n\nNormalization is intentionally conservative to avoid altering semantic\nmeaning while removing common reply and forward prefixes.",
|
|
"objects": {
|
|
"re": {
|
|
"name": "re",
|
|
"kind": "alias",
|
|
"path": "mail_intake.parsers.subject.re",
|
|
"signature": "<bound method Alias.signature of Alias('re', 're')>",
|
|
"docstring": null
|
|
},
|
|
"normalize_subject": {
|
|
"name": "normalize_subject",
|
|
"kind": "function",
|
|
"path": "mail_intake.parsers.subject.normalize_subject",
|
|
"signature": "<bound method Function.signature of Function('normalize_subject', 18, 52)>",
|
|
"docstring": "Normalize an email subject for thread-level comparison.\n\nOperations:\n- Strips common prefixes such as ``Re:``, ``Fwd:``, and ``FW:``\n- Repeats prefix stripping to handle stacked prefixes\n- Collapses excessive whitespace\n- Preserves original casing (no lowercasing)\n\nThis function is intentionally conservative and avoids aggressive\ntransformations that could alter the semantic meaning of the subject.\n\nArgs:\n subject: Raw subject line from a message header.\n\nReturns:\n Normalized subject string suitable for thread grouping."
|
|
}
|
|
}
|
|
}
|
|
} |