fix(search): expose LastPullTimestamp and PushedBy on index ImageSummary#3865
Merged
rchincha merged 1 commit intoMar 10, 2026
Merged
Conversation
ImageIndex2ImageSummary was missing LastPullTimestamp assignment, causing multi-arch image queries to always return null for this field. Also adds the PushedBy field (already stored in MetaDB) to the GraphQL schema and both conversion paths (manifest and index). Signed-off-by: cainydev <wajo432@gmail.com>
andaaron
approved these changes
Mar 10, 2026
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #3865 +/- ##
=======================================
Coverage 91.47% 91.47%
=======================================
Files 194 194
Lines 27525 27531 +6
=======================================
+ Hits 25179 25185 +6
Misses 1520 1520
Partials 826 826 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
cainydev
added a commit
to cainydev/zot
that referenced
this pull request
Apr 10, 2026
…ary (project-zot#3865) ImageIndex2ImageSummary was missing LastPullTimestamp assignment, causing multi-arch image queries to always return null for this field. Also adds the PushedBy field (already stored in MetaDB) to the GraphQL schema and both conversion paths (manifest and index). Signed-off-by: cainydev <wajo432@gmail.com> Signed-off-by: cainydev <wajo432@gmail.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
ImageIndex2ImageSummarywas missingLastPullTimestampassignment, causing multi-arch image queries to always return null for this field. Also adds thePushedByfield (already stored in MetaDB) to the GraphQL schema and both conversion paths (manifest and index).What type of PR is this?
bug, feature
Which issue does this PR fix:
Related to #3859 —
PushedByis now queryable via GraphQL as an alternative to webhook event metadata.What does this PR do / Why do we need it:
ImageIndex2ImageSummarynever assignedLastPullTimestampto the outputImageSummary, so multi-arch image queries always returned null for this field — even though the single-manifest path (ImageManifest2ImageSummary) set it correctly.PushedBy(the user who pushed the image) is stored in all MetaDB backends (BoltDB, DynamoDB, Redis) with a proto definition, but was completely absent from the GraphQL API. This adds it to theImageSummaryschema type and both conversion paths.If an issue # is not available please add repro steps and logs showing the issue:
Query
LastPullTimestampon any multi-arch image via GraphQL — it always returns null regardless of pull history.Testing done on this change:
TestTaggedTimestampwithLastPullTimestampandPushedByassertions for both manifest and index image summariesconvertpackage passAutomation added to e2e:
No — unit tests only. The fix is in conversion logic, not API transport.
Will this break upgrades or downgrades?
No.
PushedByis a new optional GraphQL field (nullableString). Existing queries are unaffected.Does this PR introduce any user-facing change?:
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.