diff --git a/client/web/src/enterprise/site-admin/cody/RepoEmbeddingJobNode.tsx b/client/web/src/enterprise/site-admin/cody/RepoEmbeddingJobNode.tsx index f91c2b532a35..531be81c35ee 100644 --- a/client/web/src/enterprise/site-admin/cody/RepoEmbeddingJobNode.tsx +++ b/client/web/src/enterprise/site-admin/cody/RepoEmbeddingJobNode.tsx @@ -50,6 +50,8 @@ export const RepoEmbeddingJobNode: FC = ({ {repo.name}@{revision.abbreviatedOID} + ) : repo ? ( + <>{repo.name} ) : (
Unknown repository
)} diff --git a/enterprise/cmd/frontend/internal/embeddings/resolvers/repo_embedding_jobs.go b/enterprise/cmd/frontend/internal/embeddings/resolvers/repo_embedding_jobs.go index 2eea5d215c7e..efc45484c38b 100644 --- a/enterprise/cmd/frontend/internal/embeddings/resolvers/repo_embedding_jobs.go +++ b/enterprise/cmd/frontend/internal/embeddings/resolvers/repo_embedding_jobs.go @@ -214,9 +214,16 @@ func (r *repoEmbeddingJobResolver) Revision(ctx context.Context) (*graphqlbacken if err != nil { return nil, err } - if repoResolver == nil { + + // An empty revision value can accompany a valid repository if gitserver cannot resolve the default branch or latest revision during job scheduling. + // The job will always fail in this case and must be displayed in site admin despite the gitserver error. + // Site admin will only provide the job's failure_message in this case. + invalidRevision := r.job.Revision == "" + + if repoResolver == nil || invalidRevision { return nil, nil } + return graphqlbackend.NewGitCommitResolver(r.db, r.gitserverClient, repoResolver, r.job.Revision, nil), nil }