diff --git a/guix-data-service/model/nar.scm b/guix-data-service/model/nar.scm index 61b441a..0e3b3e6 100644 --- a/guix-data-service/model/nar.scm +++ b/guix-data-service/model/nar.scm @@ -290,16 +290,26 @@ ORDER BY build_server_id DESC, system, target, build_server_id, substitute_known (match-lambda ((build-server-id . rest) (cons build-server-id - (group-to-alist - (match-lambda - ((system target substitute-known? count) - (cons `((system . ,system) - (target . ,target)) - (cons (if substitute-known? - 'known - 'unknown) - count)))) - rest)))) + (map + (lambda (details) + ;; Ensure the known and unknown keys appear + `(,@details + ,@(if (assq-ref details 'known) + '() + '((known . 0))) + ,@(if (assq-ref details 'unknown) + '() + '((known . 0))))) + (group-to-alist + (match-lambda + ((system target substitute-known? count) + (cons `((system . ,system) + (target . ,target)) + (cons (if substitute-known? + 'known + 'unknown) + count)))) + rest))))) (group-to-alist ;; Group by build-server-id identity