Repository navigation
Conversation
### post-migration.py hs_code and country_of_origin move from product.template to product.product. 19.0 stored both on product.template. 20.0 stores them on product.product and leaves the template a *computed, non-stored* view of its single variant, with an inverse that writes back. So the direction reverses, and the template column stops being read at all. OpenUpgrade keeps that column, which is what makes this quiet: nothing raises, no constraint is missed, and every product simply comes out of the upgrade with no HS code and no origin. On a customs-declaring database that is the whole of the data. Every variant of a template takes the template's value, because in 19.0 the value applied to the template as a whole. 20.0's own compute only surfaces a variant value back onto the template when there is exactly one variant, which is a display rule rather than a reason to migrate fewer rows. Nothing to assert on the seed: both columns are empty there in 19.0 and in 20.0 alike, so this is one the dataset cannot discriminate -- the evidence is the pair of field definitions, not a row count. Assisted-by: Claude Opus 5
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.
post-migration.py
hs_code and country_of_origin move from product.template to product.product.
19.0 stored both on product.template. 20.0 stores them on product.product
and leaves the template a computed, non-stored view of its single variant,
with an inverse that writes back. So the direction reverses, and the
template column stops being read at all.
OpenUpgrade keeps that column, which is what makes this quiet: nothing
raises, no constraint is missed, and every product simply comes out of the
upgrade with no HS code and no origin. On a customs-declaring database that
is the whole of the data.
Every variant of a template takes the template's value, because in 19.0 the
value applied to the template as a whole. 20.0's own compute only surfaces a
variant value back onto the template when there is exactly one variant,
which is a display rule rather than a reason to migrate fewer rows.
Nothing to assert on the seed: both columns are empty there in 19.0 and in
20.0 alike, so this is one the dataset cannot discriminate -- the evidence
is the pair of field definitions, not a row count.
CI: red until #118 lands
The
testjob fails onduplicate key value violates unique constraint "res_country_state_name_code_uniq"(Ladakh / Odisha). Not this branch:base's pre-migration, which renames those two external ids, lives in #118 andis not on
20.0yet, so every branch cut from20.0alone hits it. Per thefork's model the per-PR check is the lean one; the real migration gate is the
integration branch (#120), where all of this runs green over the full
585-module seed.
AI-assisted (Claude Code); every change reviewed, tested, and owned by the author.