···1package db
23import (
04 "database/sql"
5 "fmt"
6 "maps"
···229 p.Submissions = submissions
230 }
231 }
0000000000232233 orderedByPullId := []*models.Pull{}
234 for _, p := range pulls {
···339 }
340 }
341342- // order the submissions by pull_at
343 m := make(map[syntax.ATURI][]*models.PullSubmission)
344 for _, s := range submissionMap {
345 m[s.PullAt] = append(m[s.PullAt], s)
0000000346 }
347348 return m, nil
···1package db
23import (
4+ "cmp"
5 "database/sql"
6 "fmt"
7 "maps"
···230 p.Submissions = submissions
231 }
232 }
233+ // collect allLabels for each issue
234+ allLabels, err := GetLabels(e, FilterIn("subject", pullAts))
235+ if err != nil {
236+ return nil, fmt.Errorf("failed to query labels: %w", err)
237+ }
238+ for pullAt, labels := range allLabels {
239+ if p, ok := pulls[pullAt]; ok {
240+ p.Labels = labels
241+ }
242+ }
243244 orderedByPullId := []*models.Pull{}
245 for _, p := range pulls {
···350 }
351 }
352353+ // group the submissions by pull_at
354 m := make(map[syntax.ATURI][]*models.PullSubmission)
355 for _, s := range submissionMap {
356 m[s.PullAt] = append(m[s.PullAt], s)
357+ }
358+359+ // sort each one by round number
360+ for _, s := range m {
361+ slices.SortFunc(s, func(a, b *models.PullSubmission) int {
362+ return cmp.Compare(a.RoundNumber, b.RoundNumber)
363+ })
364 }
365366 return m, nil