Build Kind signature problem in v1beta1
- Dominant language
- Go
- Stars
- 1.6k
- Forks
- 307
- PR merge metrics
- No merged PRs in 30d
Description
Hi!
I am currently exploring the API, and noticed something that seems to be an inconsistency. The Build Kind has the [signature field](https://github.com/grafeas/grafeas/blob/master/proto/v1beta1/build.proto#L34) in the Note itself. I don't understand why. For one particular Note, there can be many Build Occurrences. How do we know which Occurrence the signature is for? Shouldn't the signature be a field of the [Occurrence](https://github.com/grafeas/grafeas/blob/master/proto/v1beta1/build.proto#L80)?
Did I misunderstand how this Kind works?
## Expected Behavior
The `BuildSignature` field is part of `grafeas.v1beta1.build.Details` (the Occurrence), and not `grafeas.v1beta1.build.Build` (the Note).
## Actual Behavior
The `BuildSignature` field is part of the Note:
https://github.com/grafeas/grafeas/blob/master/proto/v1beta1/build.proto#L34
## Additional info
I have also noticed that the V1 version [completely lacks](https://github.com/grafeas/grafeas/blob/master/proto/v1/build.proto) the signature for the Build Kind. Could I get some insight into why this was removed? I believe it's very useful to be able to cryptographically verify build provenances.
Contributor guide
Research direction
Compare proto/v1beta1/build.proto, especially Build, Details, and BuildSignature, with proto/v1/build.proto, then read the linked line context and comment discussion. Done means maintainers decide and document the intended signature ownership and v1 behavior, with any agreed schema change covered by the repository’s relevant checks.
Written by the indexing model from the issue text.
Assessment
- Domain
- api, backend-api-design
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100