Enrich with provider clients
wk.HandleTopic("pr.opened.ready", func(ctx context.Context, evt *worker.Event) error {
client, err := worker.ResolveProviderClient(ctx, evt)
if err != nil {
return err
}
switch evt.Provider {
case "github":
gh, ok := worker.GitHubClient(evt)
if ok {
_ = gh
}
case "gitlab":
_ = client
case "bitbucket":
_ = client
}
return nil
})
Route to internal systems
wk.HandleTopic("github.commit.created", func(ctx context.Context, evt *worker.Event) error {
// Forward to your internal API or data pipeline.
return nil
})
## Inspect normalized fields
wk.HandleTopic("pr.opened.ready", func(ctx context.Context, evt *worker.Event) error { title, _ := evt.Normalized["title"].(string) _ = title return nil })