Expand description
The recipe format: a named, ordered list of transformation steps.
JSON uses externally tagged steps, so a recipe reads as data:
{
"name": "clean",
"steps": [
{ "dropEventTypes": ["subscribed", "mentioned"] },
{ "dropEventsWhere": { "eventType": "comment", "attr": "body",
"matches": "(?i)^(thanks|thank you|lgtm)[!. ]*$" } },
{ "renameEventTypes": { "labeled": "triage", "unlabeled": "triage" } },
{ "timeWindow": { "from": "2024-01-01", "to": "2025-01-01" } },
{ "keepObjectTypes": ["issue", "user"] },
"dropObjectsWithoutEvents"
]
}Structs§
- Alias
Table - The alias table of
Step::MapObjectIds. - Event
Predicate - Conditions on one event; all set fields must hold (AND). At least one
condition is required, and value conditions require
attr. An event without the named attribute never matches. - Recipe
- A named transformation pipeline.
- Time
Window - Half-open time window
[from, to). Bounds accept RFC 3339 orYYYY-MM-DD; a date-onlytomeans “up to and including that day” (it parses to the following midnight).
Enums§
- Step
- One transformation step. Applied in recipe order; each step’s effect is reported (events/objects before and after).