knative / knative/eventing

Event Lineage: Create Transform Function for CESQL Filter

Open
#7,692 2 comments 0 reactions 0 assignees View on GitHub
kind/feature-request triage/accepted
Dominant language
Go
Stars
1.6k
Forks
631
Avg merge
2d 1h
Merged PRs (30d)
6

Description

**Problem**
Transform functions are how we track changes to eventtypes as events flow through the system. To support the CESL filter, we should implement a transform function to represent how a given eventtype becomes "narrower" as it passes the filter. Specifically, this transform function should perform changes to the attributes on the eventtype corresponding to how the CESQL expression would set requirements on the attributes of a given event.

For example, if there is an expression `id = 123`, then the `id` attribute should be set equal to `123`, if that is possible given the other constraints

**[Persona:](https://github.com/knative/eventing/blob/main/docs/personas.md)**
Which persona is this feature for?

**Exit Criteria**
A measurable (binary) test that would indicate that the problem has been resolved.

**Time Estimate (optional):**
How many developer-days do you think this may take to resolve? 5-10

**Additional context (optional)**
Add any other context about the feature request here.

Contributor guide

Open the contributing guide

Research direction

The issue provides no file or test entry point; begin by locating the existing eventtype transform-function and CESQL filter implementations in the repository. Define how filter expressions such as `id = 123` narrow event attributes, and establish binary tests and exit criteria before implementation, since the current issue leaves them blank.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
backend
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.