Skip to content

feat: begin laying out things for go worker#5275

Draft
michaelkedar wants to merge 2 commits intogoogle:masterfrom
michaelkedar:👷🙅🐍

Hidden character warning

The head ref may contain hidden characters: "\ud83d\udc77\ud83d\ude45\ud83d\udc0d"
Draft

feat: begin laying out things for go worker#5275
michaelkedar wants to merge 2 commits intogoogle:masterfrom
michaelkedar:👷🙅🐍

Conversation

@michaelkedar
Copy link
Copy Markdown
Member

@michaelkedar michaelkedar commented Apr 22, 2026

Very much not complete, but think of this as a design doc without the doc part.

The basic idea is to have a bunch of Enrichers in charge of populating fields in the records as the worker currently does, but in a more concrete and modular pipeline.
I've Implemented the thing that adds the source link into database_specific as an example, but Enrichers will include version enumeration, PURL generated, etc.

Affected commit computation and enumeration will happen after the enricher pipeline, since it needs to return the list of commits that are not part of the OSV record.

I've made two separate structs for the pub/sub subscriber/parser and the actual vuln processing struct (the 'engine') which hopefully makes it less coupled to pub/sub.

}

func (s *Subscriber) Run(ctx context.Context) error {
return s.PubSubSub.Receive(ctx, func(ctx context.Context, m *pubsub.Message) {
Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

by they way, you can configure parallelism on this pubsub.Subscriber, so we wouldn't have to manually manage a worker pool

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant