Require verified company senders for Odoo website bootstrap - #2487
Merged
Merged
Conversation
This was referenced Sep 24, 2026
cbusillo
added a commit
that referenced
this pull request
Sep 24, 2026
…4b56c599631e96d: merge PR #2487
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.
A CM contact-form submission currently uses an empty company email, producing sender
<False>. Add optionalcompany_emailto the existing Odoo website-bootstrap record and carry it into stable and preview runtime payloads. A requested sender now requires runtime readback, so an older artifact that ignores the field fails post-deploy instead of reporting success.The value remains operator-supplied record data. Deploy this service support before adding the field to CM's records, then use an artifact containing the matching consumer in cbusillo/odoo-devkit#110. SMTP transport and credentials are configured separately; this PR sends no email and adds no grant.
Validation: all 3,577 Python test targets passed, plus Ruff, mypy (1,038 sources), 74 frontend tests, generated OpenAPI drift, and the frontend build. Regression coverage drives the shared post-deploy path with missing, false, and true sender evidence. PyCharm's final production-source assessment is RED with seven warnings on unchanged lines; the initial broader assessment also found existing Click-test typing warnings. Owned projects closed with no source mutation. This is not an IDE-green claim.
Anthropic claude-opus-5-5[1m] reviewed the change and follow-up. The missing-runtime-proof finding is fixed; email-list validation and rollout-order documentation were tightened. Follow-up found no blocking/medium defect. Its additional caller-test suggestion was not adopted because the regression exercises the shared function used by both callers; existing failure diagnostics remain consistent with the surrounding driver.
Refs #2485