🐛 OCPBUGS-84642: remove substitutesFor interpretation from sqlite code#1966
Conversation
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## master #1966 +/- ##
==========================================
- Coverage 57.71% 57.70% -0.02%
==========================================
Files 139 139
Lines 13373 13360 -13
==========================================
- Hits 7718 7709 -9
+ Misses 4468 4465 -3
+ Partials 1187 1186 -1 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
There was a problem hiding this comment.
Pull request overview
Moves legacy “release version from semver build metadata” interpretation out of bundle SQLite ingestion paths and into API→model property conversion so that legacy release semantics are only applied when producing/manipulating FBC.
Changes:
- Removed build-metadata→release extraction from
pkg/registrybundle parsing logic. - Added build-metadata→release extraction when converting
olm.packageproperties inpkg/apiAPI→model conversion.
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 3 comments.
| File | Description |
|---|---|
| pkg/registry/parse.go | Removes legacy build-metadata release interpretation from bundle parsing/derived property generation. |
| pkg/api/api_to_model.go | Adds backwards-compat build-metadata splitting into olm.package release during API→model property conversion. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
cc9a90d to
4762b74
Compare
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 4 out of 4 changed files in this pull request and generated 3 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
|
@grokspawn: This pull request references Jira Issue OCPBUGS-84642, which is invalid:
Comment The bug has been updated to refer to the pull request using the external bug tracker. DetailsIn response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository. |
|
/jira refresh |
|
@grokspawn: This pull request references Jira Issue OCPBUGS-84642, which is valid. The bug has been moved to the POST state. 3 validation(s) were run on this bug
DetailsIn response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository. |
|
/approve |
|
/hold |
4762b74 to
2b7d4a5
Compare
…ta in CSV Signed-off-by: grokspawn <jordan@nimblewidget.com>
2b7d4a5 to
92bd35a
Compare
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 1 out of 1 changed files in this pull request and generated no new comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
|
@grokspawn: This pull request references Jira Issue OCPBUGS-84642, which is valid. 3 validation(s) were run on this bug
The bug has been updated to refer to the pull request using the external bug tracker. DetailsIn response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository. |
|
/hold cancel |
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: joelanford, tmshort The full list of commands accepted by this bot can be found here. The pull request process is described here DetailsNeeds approval from an approver in each of these files:
Approvers can indicate their approval by writing |
|
/lgtm |
bd6255d
into
operator-framework:master
|
@grokspawn: Jira Issue OCPBUGS-84642: All pull requests linked via external trackers have merged: Jira Issue OCPBUGS-84642 has been moved to the MODIFIED state. DetailsIn response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository. |
|
Fix included in release 5.0.0-0.nightly-2026-05-07-185738 |
Description of the change:
Removes bundle release inference from legacy build metadata / substitutesFor annotation approach for both SQLite and FBC processing paths.
Motivation for the change:
SQLite
opm index addand friends were adding multiple distinct bundle versions into catalogs: inferred release version, and without inferred release version. This made the catalog invalid due to FBC constraints on only a single bundle version property. It also failedopm validateof resulting FBC because bundles with explicit release versions must comply with bundle naming restrictions.The underlying problem is that while it is trivial to infer the release version from legacy approach data when the CSV is processed, the resulting FBC loses any identification that the release version was inferred vs explicit set in the catalog.
Since there is no perceptible pattern in the resulting naming (and bundle names cannot be changed after they are published, as OLMv0 requires that the CSV metadata.name matches the olm.bundle FBC .name at all times, the distinction must be re-inferred from first principles.
For example, given the original FBC
when processed with an inferred release version to become
has no evidence of the inference, no discernable pattern in the remaining data, and is immediately in violation of the bundle naming conventions when a release version is set.
To forgo the naming conventions, it is necessary to re-infer by evaluating:
olm.bundle.objectproperty corresponding to the serialized CSV, if presentolm.csv.metadataproperty corresponding to select data from the CSV, if presentIt's far easier to remove the inference and fix the bug while we continue to debate the merits.
Reviewer Checklist
/docs