Repository navigation
Conversation
### post-migration.py Point existing points of sale at the default product 20.0 ships. pos.config.default_product_id is new in 20.0 and defaults to `pos_sale.default_sol_product`, a product the module itself loads. A default only runs for rows created after it exists, so every point of sale that predates the upgrade comes out with none and cannot price a productless sale order line -- while one created a minute later can. This is the case the OCA retrospective records us getting wrong last cycle: a default is not automatically safe, and the question is what it means on a row that already existed. Here it means the same as on a new one, so the rows are brought into line with what a fresh install would have. Only the empty ones: a point of sale that already names a product chose it. 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
Point existing points of sale at the default product 20.0 ships.
pos.config.default_product_id is new in 20.0 and defaults to
pos_sale.default_sol_product, a product the module itself loads. A defaultonly runs for rows created after it exists, so every point of sale that
predates the upgrade comes out with none and cannot price a productless
sale order line -- while one created a minute later can.
This is the case the OCA retrospective records us getting wrong last cycle:
a default is not automatically safe, and the question is what it means on a
row that already existed. Here it means the same as on a new one, so the
rows are brought into line with what a fresh install would have.
Only the empty ones: a point of sale that already names a product chose it.
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.