| Date (UTC) | Level | Message | |
|---|---|---|---|
| 2026-10-01 17:14:59 | INFO | Init build environment with config duong-addons-run-test | |
| 2026-10-01 17:14:59 | Starting step restore from config duong-addons-run-test | ||
| 2026-10-01 17:14:59 | Restoring dump 01284-19-0-all.zip from build 1284 | ||
| 2026-10-01 17:14:59 | Using Dockerfile Tag odoo:Docker19 | ||
| 2026-10-01 17:16:47 | INFO | Step restore finished in 102s | |
| 2026-10-01 17:16:47 | Starting step test_post_install from config duong-addons-run-test | ||
| 2026-10-01 17:16:47 | Using Dockerfile Tag odoo:Docker19 | ||
| 2026-10-01 17:16:57 | INFO | 1 modules loaded in 1.10s, 0 queries (+0 extra) | |
| 2026-10-01 17:17:29 | INFO | 301 modules loaded in 32.46s, 0 queries (+0 extra) | |
| 2026-10-01 17:17:32 | INFO | Pregenerating assets bundles | |
| 2026-10-01 17:21:09 | ERROR | ERROR: TestBankConnector.test_manual_reconcile_rejects_cross_company_candidate Traceback (most recent call last): File "/data/build/duong-addons/d_bank_connector/tests/test_bank_connector.py", line 842, in test_manual_reconcile_rejects_cross_company_candidate company=self.company_data_2['company'], ^^^^^^^^^^^^^^^^^^^ AttributeError: 'TestBankConnector' object has no attribute 'company_data_2' | |
| 2026-10-01 17:22:09 | ERROR | ERROR: TestMetaAdBoost.test_boost_post_context_locks_its_source_social_post Traceback (most recent call last): File "/data/build/duong-addons/d_crm_meta_lead_ads/tests/test_meta_ad_boost.py", line 267, in test_boost_post_context_locks_its_source_social_post post = self.env['d.social.post.live'].create({ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/addons/mail/models/mail_thread.py", line 329, in create threads = super(MailThread, self).create(vals_list) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/models.py", line 4660, in create raise ValueError(f"Invalid field {field_name!r} in {self._name!r}") ValueError: Invalid field 'name' in 'd.social.post.live' | |
| 2026-10-01 17:22:09 | ERROR | ERROR: TestMetaAdBoost.test_existing_social_post_candidates_match_selected_page Traceback (most recent call last): File "/data/build/duong-addons/d_crm_meta_lead_ads/tests/test_meta_ad_boost.py", line 107, in test_existing_social_post_candidates_match_selected_page facebook_post = self.env['d.social.post.live'].create({ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/addons/mail/models/mail_thread.py", line 329, in create threads = super(MailThread, self).create(vals_list) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/models.py", line 4660, in create raise ValueError(f"Invalid field {field_name!r} in {self._name!r}") ValueError: Invalid field 'name' in 'd.social.post.live' | |
| 2026-10-01 17:22:09 | ERROR | ERROR: TestMetaAdBoost.test_existing_social_post_keeps_selected_delivery_values_when_leaving_ad_step Traceback (most recent call last): File "/data/build/duong-addons/d_crm_meta_lead_ads/tests/test_meta_ad_boost.py", line 205, in test_existing_social_post_keeps_selected_delivery_values_when_leaving_ad_step post = self.env['d.social.post.live'].create({ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/addons/mail/models/mail_thread.py", line 329, in create threads = super(MailThread, self).create(vals_list) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/models.py", line 4660, in create raise ValueError(f"Invalid field {field_name!r} in {self._name!r}") ValueError: Invalid field 'name' in 'd.social.post.live' | |
| 2026-10-01 17:22:09 | ERROR | ERROR: TestMetaAdBoost.test_existing_social_post_minimum_roas_forces_value_goal Traceback (most recent call last): File "/data/build/duong-addons/d_crm_meta_lead_ads/tests/test_meta_ad_boost.py", line 234, in test_existing_social_post_minimum_roas_forces_value_goal post = self.env['d.social.post.live'].create({ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/addons/mail/models/mail_thread.py", line 329, in create threads = super(MailThread, self).create(vals_list) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/models.py", line 4660, in create raise ValueError(f"Invalid field {field_name!r} in {self._name!r}") ValueError: Invalid field 'name' in 'd.social.post.live' | |
| 2026-10-01 17:22:09 | ERROR | ERROR: TestMetaAdBoost.test_existing_social_post_selection_applies_defaults_and_creates_payload Traceback (most recent call last): File "/data/build/duong-addons/d_crm_meta_lead_ads/tests/test_meta_ad_boost.py", line 179, in test_existing_social_post_selection_applies_defaults_and_creates_payload post = self.env['d.social.post.live'].create({ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/addons/mail/models/mail_thread.py", line 329, in create threads = super(MailThread, self).create(vals_list) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/models.py", line 4660, in create raise ValueError(f"Invalid field {field_name!r} in {self._name!r}") ValueError: Invalid field 'name' in 'd.social.post.live' | |
| 2026-10-01 17:22:09 | ERROR | ERROR: TestMetaAdBoost.test_final_instagram_validation_requires_eligibility_decision Traceback (most recent call last): File "/data/build/duong-addons/d_crm_meta_lead_ads/tests/test_meta_ad_boost.py", line 420, in test_final_instagram_validation_requires_eligibility_decision post = self._create_instagram_post() ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/duong-addons/d_crm_meta_lead_ads/tests/test_meta_ad_boost.py", line 88, in _create_instagram_post return self.env['d.social.post.live'].create({ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/addons/mail/models/mail_thread.py", line 329, in create threads = super(MailThread, self).create(vals_list) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/models.py", line 4660, in create raise ValueError(f"Invalid field {field_name!r} in {self._name!r}") ValueError: Invalid field 'name' in 'd.social.post.live' | |
| 2026-10-01 17:22:09 | WARNING | Meta did not provide optional Instagram copyright information for media video_1: Meta API error: Video content was not found. | Code: 9005 | Subcode: 1452042 | |
| 2026-10-01 17:22:09 | WARNING | Meta did not provide optional Instagram copyright information for media video_1: Meta is temporarily unavailable while checking Instagram boost eligibility. Click Refresh Eligibility or try Boost Post again. Details: Meta API error: Service temporarily unavailable | Code: 2 | Subcode: 1357038 | |
| 2026-10-01 17:22:09 | ERROR | ERROR: TestMetaAdBoost.test_instagram_owner_mismatch_blocks_boost Traceback (most recent call last): File "/data/build/duong-addons/d_crm_meta_lead_ads/tests/test_meta_ad_boost.py", line 431, in test_instagram_owner_mismatch_blocks_boost post = self._create_instagram_post() ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/duong-addons/d_crm_meta_lead_ads/tests/test_meta_ad_boost.py", line 88, in _create_instagram_post return self.env['d.social.post.live'].create({ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/addons/mail/models/mail_thread.py", line 329, in create threads = super(MailThread, self).create(vals_list) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/models.py", line 4660, in create raise ValueError(f"Invalid field {field_name!r} in {self._name!r}") ValueError: Invalid field 'name' in 'd.social.post.live' | |
| 2026-10-01 17:22:09 | ERROR | ERROR: TestMetaAdBoost.test_normal_wizard_can_clear_unlocked_social_post_selection Traceback (most recent call last): File "/data/build/duong-addons/d_crm_meta_lead_ads/tests/test_meta_ad_boost.py", line 251, in test_normal_wizard_can_clear_unlocked_social_post_selection post = self.env['d.social.post.live'].create({ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/addons/mail/models/mail_thread.py", line 329, in create threads = super(MailThread, self).create(vals_list) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/models.py", line 4660, in create raise ValueError(f"Invalid field {field_name!r} in {self._name!r}") ValueError: Invalid field 'name' in 'd.social.post.live' | |
| 2026-10-01 17:22:09 | ERROR | ERROR: TestMetaAdBoost.test_promotion_smart_button_and_audit_note Traceback (most recent call last): File "/data/build/duong-addons/d_crm_meta_lead_ads/tests/test_meta_ad_boost.py", line 490, in test_promotion_smart_button_and_audit_note post = self.env['d.social.post.live'].create({ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/addons/mail/models/mail_thread.py", line 329, in create threads = super(MailThread, self).create(vals_list) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/models.py", line 4660, in create raise ValueError(f"Invalid field {field_name!r} in {self._name!r}") ValueError: Invalid field 'name' in 'd.social.post.live' | |
| 2026-10-01 17:22:09 | ERROR | ERROR: TestMetaAdBoost.test_refresh_instagram_eligibility_is_read_only Traceback (most recent call last): File "/data/build/duong-addons/d_crm_meta_lead_ads/tests/test_meta_ad_boost.py", line 443, in test_refresh_instagram_eligibility_is_read_only post = self._create_instagram_post() ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/duong-addons/d_crm_meta_lead_ads/tests/test_meta_ad_boost.py", line 88, in _create_instagram_post return self.env['d.social.post.live'].create({ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/addons/mail/models/mail_thread.py", line 329, in create threads = super(MailThread, self).create(vals_list) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/models.py", line 4660, in create raise ValueError(f"Invalid field {field_name!r} in {self._name!r}") ValueError: Invalid field 'name' in 'd.social.post.live' | |
| 2026-10-01 17:22:10 | WARNING | Unsupported Meta Graph API version invalid; using v25.0. | |
| 2026-10-01 17:22:10 | WARNING | no translation language detected, skipping translation <frame at 0x78002027e670, file '/data/build/duong-addons/d_crm_meta_lead_ads/models/meta_ad_constants.py', line 391, code loads_json> | |
| 2026-10-01 17:22:10 | WARNING | no translation language detected, skipping translation <frame at 0x78002119da40, file '/data/build/duong-addons/d_crm_meta_lead_ads/models/meta_ad_constants.py', line 371, code build_adset_bid_payload> | |
| 2026-10-01 17:22:10 | WARNING | no translation language detected, skipping translation <frame at 0x78002119da40, file '/data/build/duong-addons/d_crm_meta_lead_ads/models/meta_ad_constants.py', line 374, code build_adset_bid_payload> | |
| 2026-10-01 17:22:10 | WARNING | no translation language detected, skipping translation <frame at 0x78002119da40, file '/data/build/duong-addons/d_crm_meta_lead_ads/models/meta_ad_constants.py', line 361, code build_adset_bid_payload> | |
| 2026-10-01 17:22:11 | WARNING | no translation language detected, skipping translation <frame at 0x78002119c840, file '/data/build/duong-addons/d_crm_meta_lead_ads/models/meta_ad_constants.py', line 361, code build_adset_bid_payload> | |
| 2026-10-01 17:22:11 | WARNING | no translation language detected, skipping translation <frame at 0x78002119c940, file '/data/build/duong-addons/d_crm_meta_lead_ads/models/meta_ad_constants.py', line 371, code build_adset_bid_payload> | |
| 2026-10-01 17:22:11 | ERROR | ERROR: TestMetaAdWizardPublish.test_cbo_minimum_roas_sends_adset_constraint Traceback (most recent call last): File "/data/build/duong-addons/d_crm_meta_lead_ads/tests/test_meta_ad_wizard_publish.py", line 447, in test_cbo_minimum_roas_sends_adset_constraint self.assertEqual(adset._build_bid_payload(), { ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/duong-addons/d_crm_meta_lead_ads/models/meta_ad_models.py", line 1289, in _build_bid_payload payload = build_adset_bid_payload( ^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/duong-addons/d_crm_meta_lead_ads/models/meta_ad_constants.py", line 371, in build_adset_bid_payload raise UserError(_('Minimum ROAS requires the VALUE optimization goal.')) odoo.exceptions.UserError: Minimum ROAS requires the VALUE optimization goal. | |
| 2026-10-01 17:22:11 | ERROR | FAIL: TestMetaAdWizardPublish.test_existing_adset_update_sends_delivery_settings Traceback (most recent call last): File "/data/build/duong-addons/d_crm_meta_lead_ads/tests/test_meta_ad_wizard_publish.py", line 666, in test_existing_adset_update_sends_delivery_settings self.assertEqual( AssertionError: Lists differ: [True, None] != [True, False] First differing element 1: None False - [True, None] + [True, False] | |
| 2026-10-01 17:22:12 | ERROR | FAIL: TestMetaAdWizardPublish.test_existing_objects_validate_before_the_actual_update Traceback (most recent call last): File "/data/build/duong-addons/d_crm_meta_lead_ads/tests/test_meta_ad_wizard_publish.py", line 596, in test_existing_objects_validate_before_the_actual_update self.assertEqual( AssertionError: Lists differ: [True, None] != [True, False] First differing element 1: None False - [True, None] + [True, False] | |
| 2026-10-01 17:22:13 | WARNING | no translation language detected, skipping translation <frame at 0x78002027fe00, file '/data/build/duong-addons/d_crm_meta_lead_ads/wizards/meta_ad_wizard.py', line 313, code _guidance_selection_label> | |
| 2026-10-01 17:22:14 | WARNING | Meta dashboard insights throttled for ad account 4: User request limit reached | Code: 17 | |
| 2026-10-01 17:22:14 | WARNING | Meta dashboard insights failed for ad account 4 Traceback (most recent call last): File "/data/build/duong-addons/d_crm_meta_lead_ads/models/meta_ad_models.py", line 511, in get_dashboard_insights campaign_rows = service.get_insights( ^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/unittest/mock.py", line 1134, in __call__ return self._mock_call(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/unittest/mock.py", line 1138, in _mock_call return self._execute_mock_call(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.12/unittest/mock.py", line 1193, in _execute_mock_call raise effect odoo.exceptions.ValidationError: Code: 190 | Subcode: 463 | |
| 2026-10-01 17:22:14 | WARNING | Meta dashboard insights throttled for ad account 4: Code: 17 | |
| 2026-10-01 17:22:14 | WARNING | Meta dashboard insights failed for ad account 4 Traceback (most recent call last): File "/data/build/duong-addons/d_crm_meta_lead_ads/models/meta_ad_models.py", line 486, in get_dashboard_insights date_from, date_to = self._validate_dashboard_range(date_from, date_to) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/duong-addons/d_crm_meta_lead_ads/models/meta_ad_models.py", line 431, in _validate_dashboard_range raise UserError(_('The dashboard date range cannot start more than 37 months ago.')) odoo.exceptions.UserError: The dashboard date range cannot start more than 37 months ago. | |
| 2026-10-01 17:22:14 | WARNING | Meta dashboard insights failed for ad account 4 Traceback (most recent call last): File "/data/build/duong-addons/d_crm_meta_lead_ads/models/meta_ad_models.py", line 486, in get_dashboard_insights date_from, date_to = self._validate_dashboard_range(date_from, date_to) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/duong-addons/d_crm_meta_lead_ads/models/meta_ad_models.py", line 427, in _validate_dashboard_range raise UserError(_('The dashboard date range cannot include a future date.')) odoo.exceptions.UserError: The dashboard date range cannot include a future date. | |
| 2026-10-01 17:22:15 | WARNING | Meta dashboard insights failed for ad account 4 Traceback (most recent call last): File "/data/build/duong-addons/d_crm_meta_lead_ads/models/meta_ad_models.py", line 486, in get_dashboard_insights date_from, date_to = self._validate_dashboard_range(date_from, date_to) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/duong-addons/d_crm_meta_lead_ads/models/meta_ad_models.py", line 422, in _validate_dashboard_range date_from, date_to = self._normalize_insight_range(date_from, date_to) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/duong-addons/d_crm_meta_lead_ads/models/meta_ad_models.py", line 344, in _normalize_insight_range raise UserError(_('The insight start date must be on or before the end date.')) odoo.exceptions.UserError: The insight start date must be on or before the end date. | |
| 2026-10-01 17:22:17 | ERROR | ERROR: setUpClass (odoo.addons.d_employee_portal.tests.test_employee_portal.TestEmployeePortal) Traceback (most recent call last): File "/data/build/duong-addons/d_employee_portal/tests/test_employee_portal.py", line 36, in setUpClass leaves = cls.env['hr.leave'].sudo().create([ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/addons/hr_holidays_attendance/models/hr_leave.py", line 24, in create res = super().create(vals_list) ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/addons/hr_holidays/models/hr_leave.py", line 943, in create holidays._check_validity() File "/data/build/odoo/addons/hr_holidays/models/hr_leave.py", line 837, in _check_validity raise ValidationError(_("You do not have any allocation for this time off type.\n" odoo.exceptions.ValidationError: You do not have any allocation for this time off type. Please request an allocation before submitting your time off request. | |
| 2026-10-01 17:22:40 | ERROR | ERROR: setUpClass (odoo.addons.d_pos_adyen_tap_to_pay.tests.test_payment_result.TestAdyenTapToPayPaymentResult) Traceback (most recent call last): File "/data/build/duong-addons/d_pos_adyen_tap_to_pay/tests/test_payment_result.py", line 16, in setUpClass super().setUpClass() File "/data/build/odoo/addons/point_of_sale/tests/common.py", line 33, in setUpClass self.create_product_templates(self) File "/data/build/odoo/addons/point_of_sale/tests/common.py", line 194, in create_product_templates self.ten_dollars_no_tax = self.env['product.template'].create({ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/duong-addons/d_tiktok_shop_connector_patch2/models/product.py", line 49, in create record._ensure_listing_from_legacy_fields() File "/data/build/duong-addons/d_tiktok_shop_connector_patch2/models/product.py", line 83, in _ensure_listing_from_legacy_fields listings = listing_model.with_context(active_test=False).search([ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/models.py", line 1391, in search return self.search_fetch(domain, [], offset=offset, limit=limit, order=order) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/models.py", line 1421, in search_fetch query = self._search(domain, offset=offset, limit=limit, order=order or self._order) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/models.py", line 5366, in _search self.browse().check_access('read') File "/data/build/odoo/odoo/orm/models.py", line 4121, in check_access raise result[1]() odoo.exceptions.AccessError: You are not allowed to access 'TikTok Product Listing Mapping' (d.tiktok.product.listing) records. This operation is allowed for the following groups: - Sales/Administrator - Sales/User: Own Documents Only Contact your administrator to request access if necessary. | |
| 2026-10-01 17:22:40 | ERROR | Error when sync post Expected sync error | |
| 2026-10-01 17:22:40 | ERROR | Facebook post sync request failed: Page ID: 123456789 | Endpoint: /123456789/published_posts | Batch: 2 | Fetched: 1 | Cursor: present | <redacted> <present> | |
| 2026-10-01 17:22:40 | ERROR | Error syncing Facebook posts: Facebook post sync request failed: Page ID: 123456789 | Endpoint: /123456789/published_posts | Batch: 2 | Fetched: 1 | Cursor: present | <redacted> <present> | |
| 2026-10-01 17:22:40 | ERROR | ERROR: TestFacebookPostSync.test_format_facebook_comment_uses_reaction_type_breakdown Traceback (most recent call last): File "/data/build/duong-addons/d_social_facebook/tests/test_facebook_post_sync.py", line 203, in test_format_facebook_comment_uses_reaction_type_breakdown post = self.env['d.social.post.live'].create({ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/addons/mail/models/mail_thread.py", line 329, in create threads = super(MailThread, self).create(vals_list) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/models.py", line 4660, in create raise ValueError(f"Invalid field {field_name!r} in {self._name!r}") ValueError: Invalid field 'name' in 'd.social.post.live' | |
| 2026-10-01 17:22:40 | ERROR | ERROR: TestFacebookPostSync.test_post_details_refreshes_reaction_type_breakdown Traceback (most recent call last): File "/data/build/duong-addons/d_social_facebook/tests/test_facebook_post_sync.py", line 229, in test_post_details_refreshes_reaction_type_breakdown post = self.env['d.social.post.live'].create({ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/addons/mail/models/mail_thread.py", line 329, in create threads = super(MailThread, self).create(vals_list) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/models.py", line 4660, in create raise ValueError(f"Invalid field {field_name!r} in {self._name!r}") ValueError: Invalid field 'name' in 'd.social.post.live' | |
| 2026-10-01 17:22:40 | ERROR | ERROR: TestFacebookPostSync.test_post_details_uses_stored_reactions_when_refresh_fails Traceback (most recent call last): File "/data/build/duong-addons/d_social_facebook/tests/test_facebook_post_sync.py", line 261, in test_post_details_uses_stored_reactions_when_refresh_fails post = self.env['d.social.post.live'].create({ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/addons/mail/models/mail_thread.py", line 329, in create threads = super(MailThread, self).create(vals_list) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/models.py", line 4660, in create raise ValueError(f"Invalid field {field_name!r} in {self._name!r}") ValueError: Invalid field 'name' in 'd.social.post.live' | |
| 2026-10-01 17:22:40 | WARNING | Invalid Facebook post sync limit; using default limit of 500 | |
| 2026-10-01 17:22:40 | WARNING | Invalid Facebook post sync limit; using default limit of 500 | |
| 2026-10-01 17:22:40 | WARNING | Invalid Facebook post sync limit; using default limit of 500 | |
| 2026-10-01 17:22:40 | WARNING | Facebook post sync response too large, retrying from the same cursor with one post per request: Page ID: 123456789 | Endpoint: /123456789/published_posts | Batch: 1 | Fetched: 0 | Cursor: initial | |
| 2026-10-01 17:22:40 | ERROR | ERROR: TestFacebookPostSync.test_sync_code_one_retry_respects_configured_post_limit Traceback (most recent call last): File "/data/build/duong-addons/d_social_facebook/tests/test_facebook_post_sync.py", line 374, in test_sync_code_one_retry_respects_configured_post_limit self.assertEqual(len(created_posts), 1) ^^^^^^^^^^^^^^^^^^ TypeError: object of type 'NoneType' has no len() | |
| 2026-10-01 17:22:40 | ERROR | ERROR: TestFacebookPostSync.test_sync_fetches_all_posts_when_page_has_fewer_than_configured_limit Traceback (most recent call last): File "/data/build/duong-addons/d_social_facebook/tests/test_facebook_post_sync.py", line 397, in test_sync_fetches_all_posts_when_page_has_fewer_than_configured_limit self.assertEqual(len(created_posts), 3) ^^^^^^^^^^^^^^^^^^ TypeError: object of type 'NoneType' has no len() | |
| 2026-10-01 17:22:40 | ERROR | FAIL: TestFacebookPostSync.test_sync_post_passes_configured_limit_to_facebook_sync Traceback (most recent call last): File "/data/build/duong-addons/d_social_facebook/tests/test_facebook_post_sync.py", line 334, in test_sync_post_passes_configured_limit_to_facebook_sync self.assertEqual(result, 'sync-result') AssertionError: None != 'sync-result' | |
| 2026-10-01 17:22:40 | ERROR | FAIL: TestFacebookPostSync.test_sync_post_uses_default_post_limit Traceback (most recent call last): File "/data/build/duong-addons/d_social_facebook/tests/test_facebook_post_sync.py", line 318, in test_sync_post_uses_default_post_limit self.assertEqual(result, 'sync-result') AssertionError: None != 'sync-result' | |
| 2026-10-01 17:22:41 | WARNING | Facebook post sync response too large, retrying from the same cursor with one post per request: Page ID: 123456789 | Endpoint: /123456789/published_posts | Batch: 1 | Fetched: 0 | Cursor: initial | |
| 2026-10-01 17:22:41 | ERROR | ERROR: TestFacebookPostSync.test_sync_stops_at_configured_post_limit Traceback (most recent call last): File "/data/build/duong-addons/d_social_facebook/tests/test_facebook_post_sync.py", line 353, in test_sync_stops_at_configured_post_limit self.assertEqual(len(created_posts), 2) ^^^^^^^^^^^^^^^^^^ TypeError: object of type 'NoneType' has no len() | |
| 2026-10-01 17:22:41 | ERROR | ERROR: TestFacebookPostSync.test_sync_updates_totals_and_preserves_existing_reaction_breakdown Traceback (most recent call last): File "/data/build/duong-addons/d_social_facebook/tests/test_facebook_post_sync.py", line 411, in test_sync_updates_totals_and_preserves_existing_reaction_breakdown existing_post = self.env['d.social.post.live'].create({ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/addons/mail/models/mail_thread.py", line 329, in create threads = super(MailThread, self).create(vals_list) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/models.py", line 4660, in create raise ValueError(f"Invalid field {field_name!r} in {self._name!r}") ValueError: Invalid field 'name' in 'd.social.post.live' | |
| 2026-10-01 17:22:41 | WARNING | TikTok Business refused the request for post []: code=40100, status=None, request_id=None, error=Access token is invalid | |
| 2026-10-01 17:22:41 | WARNING | TikTok Business refused the request for post []: code=None, status=404, request_id=None, error=404 Client Error: Not Found for url: https://example | |
| 2026-10-01 17:22:41 | WARNING | TikTok Business refused the request for post []: code=50002, status=400, request_id=None, error=Caption too long | |
| 2026-10-01 17:22:41 | WARNING | TikTok Business status check failed for post []: code=None, status=None, error=boom | |
| 2026-10-01 17:22:41 | WARNING | TikTok Business status check failed for post []: code=None, status=503, error=boom | |
| 2026-10-01 17:22:41 | WARNING | TikTok Business status check failed for post []: code=40100, status=None, error=Access token is invalid | |
| 2026-10-01 17:22:41 | WARNING | TikTok Business status check failed for post []: code=None, status=None, error= | |
| 2026-10-01 17:22:41 | WARNING | TikTok Business refused the request for post []: code=None, status=None, request_id=None, error=HTTPSConnectionPool: Max retries exceeded | |
| 2026-10-01 17:22:41 | WARNING | TikTok Business refused the request for post []: code=None, status=None, request_id=None, error=Expecting value: line 1 column 1 | |
| 2026-10-01 17:22:41 | WARNING | TikTok Business refused the request for post []: code=None, status=200, request_id=None, error=TikTok returned a response that could not be read | |
| 2026-10-01 17:22:42 | WARNING | <function> returns an HTTPException instead of raising it. | |
| 2026-10-01 17:22:42 | WARNING | <function> returns an HTTPException instead of raising it. | |
| 2026-10-01 17:22:42 | WARNING | <function> returns an HTTPException instead of raising it. | |
| 2026-10-01 17:22:42 | WARNING | <function> returns an HTTPException instead of raising it. | |
| 2026-10-01 17:22:42 | WARNING | <function> returns an HTTPException instead of raising it. | |
| 2026-10-01 17:22:42 | WARNING | <function> returns an HTTPException instead of raising it. | |
| 2026-10-01 17:22:42 | WARNING | <function> returns an HTTPException instead of raising it. | |
| 2026-10-01 17:22:42 | WARNING | <function> returns an HTTPException instead of raising it. | |
| 2026-10-01 17:22:42 | WARNING | <function> returns an HTTPException instead of raising it. | |
| 2026-10-01 17:22:43 | WARNING | <function> returns an HTTPException instead of raising it. | |
| 2026-10-01 17:22:43 | WARNING | <function> returns an HTTPException instead of raising it. | |
| 2026-10-01 17:22:43 | WARNING | <function> returns an HTTPException instead of raising it. | |
| 2026-10-01 17:22:43 | WARNING | <function> returns an HTTPException instead of raising it. | |
| 2026-10-01 17:22:43 | ERROR | ERROR: TestTikTokShippingWizard.test_auto_query_shipping_services_normalizes_service_prices Traceback (most recent call last): File "/data/build/odoo/odoo/orm/models.py", line 6088, in _update_cache field_values = [(fields[name], value) for name, value in values.items() if name != 'id'] ~~~~~~^^^^^^ KeyError: 'product_uom' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/data/build/duong-addons/d_tiktok_shop_connector/tests/test_tiktok_shipping_wizard.py", line 63, in test_auto_query_shipping_services_normalizes_service_prices prices = self._get_shipping_line_prices([ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/duong-addons/d_tiktok_shop_connector/tests/test_tiktok_shipping_wizard.py", line 44, in _get_shipping_line_prices order = self._create_tiktok_order() ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/duong-addons/d_tiktok_shop_connector/tests/test_tiktok_shipping_wizard.py", line 27, in _create_tiktok_order return self.env['sale.order'].create({ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/addons/sale_timesheet/models/sale_order.py", line 77, in create created_records = super().create(vals_list) ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/addons/sale_project/models/sale_order.py", line 272, in create created_records = super().create(vals_list) ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/addons/website_sale/models/sale_order.py", line 185, in create return super().create(vals_list) ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/duong-addons/d_sale_rotting/models/sale_order.py", line 25, in create return super().create(vals_list) ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/addons/sale/models/sale_order.py", line 1015, in create return super().create(vals_list) ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/addons/mail/models/mail_thread.py", line 329, in create threads = super(MailThread, self).create(vals_list) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/models.py", line 4663, in create new_vals_list = self._prepare_create_values(vals_list) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/models.py", line 4816, in _prepare_create_values self._add_precomputed_values(result_vals_list) File "/data/build/odoo/odoo/orm/models.py", line 4842, in _add_precomputed_values records = self.browse().concat(*(self.new(vals) for vals in vals_list_todo)) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/models.py", line 4842, in <genexpr> records = self.browse().concat(*(self.new(vals) for vals in vals_list_todo)) ^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/models.py", line 6471, in new record._update_cache(values, validate=False) File "/data/build/odoo/odoo/orm/models.py", line 6094, in _update_cache value = field.convert_to_cache(value, self, validate) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/fields_relational.py", line 615, in convert_to_cache ids.add(comodel.new(command[2], ref=command[1]).id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/models.py", line 6471, in new record._update_cache(values, validate=False) File "/data/build/odoo/odoo/orm/models.py", line 6090, in _update_cache raise ValueError("Invalid field %r on model %r" % (e.args[0], self._name)) ValueError: Invalid field 'product_uom' on model 'sale.order.line' | |
| 2026-10-01 17:22:47 | ERROR | FAIL: TestTikTokSkuMapping.test_api_error_sets_error_status_without_raising Traceback (most recent call last): File "/data/build/duong-addons/d_tiktok_shop_connector/tests/test_tiktok_sku_mapping.py", line 186, in test_api_error_sets_error_status_without_raising self.assertEqual(variant.tiktok_mapping_status, 'error') AssertionError: 'not_checked' != 'error' - not_checked + error | |
| 2026-10-01 17:22:47 | ERROR | ERROR: TestTikTokSkuMapping.test_api_product_sync_imports_product_attribute_lines Traceback (most recent call last): File "/data/build/duong-addons/d_tiktok_shop_connector/tests/test_tiktok_sku_mapping.py", line 930, in test_api_product_sync_imports_product_attribute_lines self.shop.with_context(skip_tiktok_update=True)._sync_product('product_1') File "/data/build/duong-addons/d_tiktok_shop_connector_patch2/models/tiktok_shop.py", line 371, in _sync_product ))._sync_product(tiktok_product_id, update_status_only=update_status_only) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/duong-addons/d_tiktok_shop_connector/models/tiktok_shop.py", line 984, in _sync_product self._sync_tiktok_product_attribute_lines(product_tmpl, product_data) File "/data/build/duong-addons/d_tiktok_shop_connector/models/tiktok_shop.py", line 587, in _sync_tiktok_product_attribute_lines category_attribute = self._upsert_tiktok_category_attribute( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/duong-addons/d_tiktok_shop_connector_patch2/models/tiktok_shop.py", line 46, in _upsert_tiktok_category_attribute self._patch2_category_attribute_domain(category_id, attribute_kind) + [ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/duong-addons/d_tiktok_shop_connector_patch2/models/tiktok_shop.py", line 11, in _patch2_category_attribute_domain raise ValidationError(_('Set the TikTok Shop Region before loading product attributes.')) odoo.exceptions.ValidationError: Set the TikTok Shop Region before loading product attributes. | |
| 2026-10-01 17:22:47 | ERROR | FAIL: TestTikTokSkuMapping.test_api_product_sync_marks_returned_sku_as_matched Traceback (most recent call last): File "/data/build/duong-addons/d_tiktok_shop_connector/tests/test_tiktok_sku_mapping.py", line 267, in test_api_product_sync_marks_returned_sku_as_matched self.assertEqual(len(calls), 1) AssertionError: 2 != 1 | |
| 2026-10-01 17:22:48 | ERROR | FAIL: TestTikTokSkuMapping.test_api_product_sync_updates_existing_mapping_without_revalidation Traceback (most recent call last): File "/data/build/duong-addons/d_tiktok_shop_connector/tests/test_tiktok_sku_mapping.py", line 301, in test_api_product_sync_updates_existing_mapping_without_revalidation self.assertEqual(len(calls), 1) AssertionError: 2 != 1 | |
| 2026-10-01 17:22:52 | ERROR | FAIL: TestTikTokSkuMapping.test_app_credentials_are_scoped_to_the_selected_company Traceback (most recent call last): File "/data/build/duong-addons/d_tiktok_shop_connector/tests/test_tiktok_sku_mapping.py", line 960, in test_app_credentials_are_scoped_to_the_selected_company self.assertEqual(self.service._get_app_credentials(self.env.company), { AssertionError: {'app_key': 'legacy-key', 'app_secret': 'legacy-secret[30 chars]ice'} != {'app_key': 'current-key', 'app_secret': 'current-secr[32 chars]ice'} - {'app_key': 'legacy-key', ? ^ ^^^^ + {'app_key': 'current-key', ? ^^^^ ^^ - 'app_secret': 'legacy-secret', ? ^ ^^^^ + 'app_secret': 'current-secret', ? ^^^^ ^^ 'service_id': 'current-service'} | |
| 2026-10-01 17:22:52 | ERROR | ERROR: TestTikTokSkuMapping.test_child_location_stock_and_reservations_queue_the_owning_shop_product Traceback (most recent call last): File "/data/build/duong-addons/d_tiktok_shop_connector/tests/test_tiktok_sku_mapping.py", line 566, in test_child_location_stock_and_reservations_queue_the_owning_shop_product quant_model.with_context(skip_tiktok_update=True)._update_available_quantity( File "/data/build/odoo/addons/stock/models/stock_quant.py", line 1104, in _update_available_quantity self.create(vals) File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/duong-addons/d_tiktok_shop_connector_patch2/models/stock_quant.py", line 9, in create quants = super(StockQuant, self.with_context(skip_tiktok_update=True)).create(vals_list) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/duong-addons/d_tiktok_shop_connector/models/stock_quant.py", line 9, in create quants = super().create(vals_list) ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/addons/stock/models/stock_quant.py", line 308, in create quant = super().create(vals) ^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/models.py", line 4717, in create records = self._create(data_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/models.py", line 4956, in _create records._validate_fields(name for data in data_list for name in data['stored']) File "/data/build/odoo/odoo/orm/models.py", line 1268, in _validate_fields check(records) File "/data/build/odoo/addons/stock/models/stock_quant.py", line 585, in check_product_id raise ValidationError(_('Quants cannot be created for consumables or services.')) odoo.exceptions.ValidationError: Quants cannot be created for consumables or services. | |
| 2026-10-01 17:22:53 | ERROR | ERROR: TestTikTokSkuMapping.test_get_attributes_sync_creates_required_product_attribute_line Traceback (most recent call last): File "/data/build/duong-addons/d_tiktok_shop_connector/tests/test_tiktok_sku_mapping.py", line 323, in test_get_attributes_sync_creates_required_product_attribute_line template.action_load_tiktok_product_attributes() File "/data/build/duong-addons/d_tiktok_shop_connector_patch2/models/product.py", line 148, in action_load_tiktok_product_attributes return self._get_single_tiktok_listing().action_load_tiktok_product_attributes() ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/duong-addons/d_tiktok_shop_connector_patch2/models/product_listing.py", line 449, in action_load_tiktok_product_attributes listing.shop_id._sync_tiktok_attributes(product.categ_id.tiktok_category_id) File "/data/build/duong-addons/d_tiktok_shop_connector_patch2/models/tiktok_shop.py", line 102, in _sync_tiktok_attributes category_attribute = self._upsert_tiktok_category_attribute( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/duong-addons/d_tiktok_shop_connector_patch2/models/tiktok_shop.py", line 46, in _upsert_tiktok_category_attribute self._patch2_category_attribute_domain(category_id, attribute_kind) + [ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/duong-addons/d_tiktok_shop_connector_patch2/models/tiktok_shop.py", line 11, in _patch2_category_attribute_domain raise ValidationError(_('Set the TikTok Shop Region before loading product attributes.')) odoo.exceptions.ValidationError: Set the TikTok Shop Region before loading product attributes. | |
| 2026-10-01 17:22:53 | ERROR | ERROR: TestTikTokSkuMapping.test_get_attributes_sync_keeps_sales_attributes_out_of_product_lines Traceback (most recent call last): File "/data/build/duong-addons/d_tiktok_shop_connector/tests/test_tiktok_sku_mapping.py", line 362, in test_get_attributes_sync_keeps_sales_attributes_out_of_product_lines template.action_load_tiktok_product_attributes() File "/data/build/duong-addons/d_tiktok_shop_connector_patch2/models/product.py", line 148, in action_load_tiktok_product_attributes return self._get_single_tiktok_listing().action_load_tiktok_product_attributes() ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/duong-addons/d_tiktok_shop_connector_patch2/models/product_listing.py", line 449, in action_load_tiktok_product_attributes listing.shop_id._sync_tiktok_attributes(product.categ_id.tiktok_category_id) File "/data/build/duong-addons/d_tiktok_shop_connector_patch2/models/tiktok_shop.py", line 102, in _sync_tiktok_attributes category_attribute = self._upsert_tiktok_category_attribute( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/duong-addons/d_tiktok_shop_connector_patch2/models/tiktok_shop.py", line 46, in _upsert_tiktok_category_attribute self._patch2_category_attribute_domain(category_id, attribute_kind) + [ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/duong-addons/d_tiktok_shop_connector_patch2/models/tiktok_shop.py", line 11, in _patch2_category_attribute_domain raise ValidationError(_('Set the TikTok Shop Region before loading product attributes.')) odoo.exceptions.ValidationError: Set the TikTok Shop Region before loading product attributes. | |
| 2026-10-01 17:22:54 | ERROR | ERROR: TestTikTokSkuMapping.test_inventory_user_can_queue_the_matching_tiktok_product Traceback (most recent call last): File "/data/build/duong-addons/d_tiktok_shop_connector/tests/test_tiktok_sku_mapping.py", line 1006, in test_inventory_user_can_queue_the_matching_tiktok_product self.env['stock.quant'].with_user(inventory_user)._update_available_quantity( File "/data/build/odoo/addons/stock/models/stock_quant.py", line 1104, in _update_available_quantity self.create(vals) File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/duong-addons/d_tiktok_shop_connector_patch2/models/stock_quant.py", line 9, in create quants = super(StockQuant, self.with_context(skip_tiktok_update=True)).create(vals_list) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/duong-addons/d_tiktok_shop_connector/models/stock_quant.py", line 9, in create quants = super().create(vals_list) ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/addons/stock/models/stock_quant.py", line 308, in create quant = super().create(vals) ^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/models.py", line 4717, in create records = self._create(data_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/models.py", line 4956, in _create records._validate_fields(name for data in data_list for name in data['stored']) File "/data/build/odoo/odoo/orm/models.py", line 1268, in _validate_fields check(records) File "/data/build/odoo/addons/stock/models/stock_quant.py", line 585, in check_product_id raise ValidationError(_('Quants cannot be created for consumables or services.')) odoo.exceptions.ValidationError: Quants cannot be created for consumables or services. | |
| 2026-10-01 17:23:02 | ERROR | ERROR: TestTikTokSkuMapping.test_legacy_global_credentials_migrate_without_overwriting_companies Traceback (most recent call last): File "/data/build/duong-addons/d_tiktok_shop_connector/tests/test_tiktok_sku_mapping.py", line 988, in test_legacy_global_credentials_migrate_without_overwriting_companies spec.loader.exec_module(migration) File "<frozen importlib._bootstrap_external>", line 991, in exec_module File "<frozen importlib._bootstrap_external>", line 1128, in get_code File "<frozen importlib._bootstrap_external>", line 1186, in get_data FileNotFoundError: [Errno 2] No such file or directory: '/data/build/duong-addons/d_tiktok_shop_connector/migrations/0.8/post-migrate.py' | |
| 2026-10-01 17:23:03 | ERROR | ERROR: TestTikTokSkuMapping.test_missing_required_product_attribute_returns_local_error Traceback (most recent call last): File "/data/build/duong-addons/d_tiktok_shop_connector/tests/test_tiktok_sku_mapping.py", line 716, in test_missing_required_product_attribute_returns_local_error self._create_category_attribute(category, required=True) File "/data/build/duong-addons/d_tiktok_shop_connector/tests/test_tiktok_sku_mapping.py", line 60, in _create_category_attribute return self.env['d.tiktok.category.attribute'].create({ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/duong-addons/d_tiktok_shop_connector_patch2/models/product.py", line 277, in create raise ValidationError(_('TikTok Market is required for category attributes.')) odoo.exceptions.ValidationError: TikTok Market is required for category attributes. | |
| 2026-10-01 17:23:04 | ERROR | ERROR: TestTikTokSkuMapping.test_new_stock_quant_queues_the_owning_shop_product Traceback (most recent call last): File "/data/build/duong-addons/d_tiktok_shop_connector/tests/test_tiktok_sku_mapping.py", line 551, in test_new_stock_quant_queues_the_owning_shop_product self.env['stock.quant']._update_available_quantity( File "/data/build/odoo/addons/stock/models/stock_quant.py", line 1104, in _update_available_quantity self.create(vals) File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/duong-addons/d_tiktok_shop_connector_patch2/models/stock_quant.py", line 9, in create quants = super(StockQuant, self.with_context(skip_tiktok_update=True)).create(vals_list) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/duong-addons/d_tiktok_shop_connector/models/stock_quant.py", line 9, in create quants = super().create(vals_list) ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/addons/stock/models/stock_quant.py", line 308, in create quant = super().create(vals) ^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/models.py", line 4717, in create records = self._create(data_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/models.py", line 4956, in _create records._validate_fields(name for data in data_list for name in data['stored']) File "/data/build/odoo/odoo/orm/models.py", line 1268, in _validate_fields check(records) File "/data/build/odoo/addons/stock/models/stock_quant.py", line 585, in check_product_id raise ValidationError(_('Quants cannot be created for consumables or services.')) odoo.exceptions.ValidationError: Quants cannot be created for consumables or services. | |
| 2026-10-01 17:23:04 | ERROR | ERROR: TestTikTokSkuMapping.test_optional_deleted_product_attribute_is_omitted Traceback (most recent call last): File "/data/build/duong-addons/d_tiktok_shop_connector/tests/test_tiktok_sku_mapping.py", line 698, in test_optional_deleted_product_attribute_is_omitted self._create_category_attribute( File "/data/build/duong-addons/d_tiktok_shop_connector/tests/test_tiktok_sku_mapping.py", line 60, in _create_category_attribute return self.env['d.tiktok.category.attribute'].create({ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/duong-addons/d_tiktok_shop_connector_patch2/models/product.py", line 277, in create raise ValidationError(_('TikTok Market is required for category attributes.')) odoo.exceptions.ValidationError: TikTok Market is required for category attributes. | |
| 2026-10-01 17:23:05 | ERROR | FAIL: TestTikTokSkuMapping.test_product_detail_without_sku_sets_mismatch Traceback (most recent call last): File "/data/build/duong-addons/d_tiktok_shop_connector/tests/test_tiktok_sku_mapping.py", line 170, in test_product_detail_without_sku_sets_mismatch self.assertEqual(variant.tiktok_mapping_status, 'mismatch') AssertionError: 'not_checked' != 'mismatch' - not_checked + mismatch | |
| 2026-10-01 17:23:07 | ERROR | ERROR: TestTikTokSkuMapping.test_product_update_sends_builtin_product_attribute_value Traceback (most recent call last): File "/data/build/duong-addons/d_tiktok_shop_connector/tests/test_tiktok_sku_mapping.py", line 385, in test_product_update_sends_builtin_product_attribute_value attribute = self._create_category_attribute(category) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/duong-addons/d_tiktok_shop_connector/tests/test_tiktok_sku_mapping.py", line 60, in _create_category_attribute return self.env['d.tiktok.category.attribute'].create({ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/duong-addons/d_tiktok_shop_connector_patch2/models/product.py", line 277, in create raise ValidationError(_('TikTok Market is required for category attributes.')) odoo.exceptions.ValidationError: TikTok Market is required for category attributes. | |
| 2026-10-01 17:23:07 | ERROR | ERROR: TestTikTokSkuMapping.test_product_update_sends_custom_product_attribute_value Traceback (most recent call last): File "/data/build/duong-addons/d_tiktok_shop_connector/tests/test_tiktok_sku_mapping.py", line 670, in test_product_update_sends_custom_product_attribute_value attribute = self._create_category_attribute( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/duong-addons/d_tiktok_shop_connector/tests/test_tiktok_sku_mapping.py", line 60, in _create_category_attribute return self.env['d.tiktok.category.attribute'].create({ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/duong-addons/d_tiktok_shop_connector_patch2/models/product.py", line 277, in create raise ValidationError(_('TikTok Market is required for category attributes.')) odoo.exceptions.ValidationError: TikTok Market is required for category attributes. | |
| 2026-10-01 17:23:08 | ERROR | ERROR: TestTikTokSkuMapping.test_sku_inventory_aggregates_internal_locations_in_one_warehouse Traceback (most recent call last): File "/data/build/duong-addons/d_tiktok_shop_connector/tests/test_tiktok_sku_mapping.py", line 450, in test_sku_inventory_aggregates_internal_locations_in_one_warehouse quant_model._update_available_quantity( File "/data/build/odoo/addons/stock/models/stock_quant.py", line 1104, in _update_available_quantity self.create(vals) File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/duong-addons/d_tiktok_shop_connector_patch2/models/stock_quant.py", line 9, in create quants = super(StockQuant, self.with_context(skip_tiktok_update=True)).create(vals_list) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/duong-addons/d_tiktok_shop_connector/models/stock_quant.py", line 9, in create quants = super().create(vals_list) ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/addons/stock/models/stock_quant.py", line 308, in create quant = super().create(vals) ^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/models.py", line 4717, in create records = self._create(data_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/models.py", line 4956, in _create records._validate_fields(name for data in data_list for name in data['stored']) File "/data/build/odoo/odoo/orm/models.py", line 1268, in _validate_fields check(records) File "/data/build/odoo/addons/stock/models/stock_quant.py", line 585, in check_product_id raise ValidationError(_('Quants cannot be created for consumables or services.')) odoo.exceptions.ValidationError: Quants cannot be created for consumables or services. | |
| 2026-10-01 17:23:12 | ERROR | ERROR: TestTikTokSkuMapping.test_sku_inventory_excludes_other_company_warehouses Traceback (most recent call last): File "/data/build/duong-addons/d_tiktok_shop_connector/tests/test_tiktok_sku_mapping.py", line 494, in test_sku_inventory_excludes_other_company_warehouses quant_model._update_available_quantity( File "/data/build/odoo/addons/stock/models/stock_quant.py", line 1104, in _update_available_quantity self.create(vals) File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/duong-addons/d_tiktok_shop_connector_patch2/models/stock_quant.py", line 9, in create quants = super(StockQuant, self.with_context(skip_tiktok_update=True)).create(vals_list) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/duong-addons/d_tiktok_shop_connector/models/stock_quant.py", line 9, in create quants = super().create(vals_list) ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/addons/stock/models/stock_quant.py", line 308, in create quant = super().create(vals) ^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/models.py", line 4717, in create records = self._create(data_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/models.py", line 4956, in _create records._validate_fields(name for data in data_list for name in data['stored']) File "/data/build/odoo/odoo/orm/models.py", line 1268, in _validate_fields check(records) File "/data/build/odoo/addons/stock/models/stock_quant.py", line 585, in check_product_id raise ValidationError(_('Quants cannot be created for consumables or services.')) odoo.exceptions.ValidationError: Quants cannot be created for consumables or services. | |
| 2026-10-01 17:23:14 | ERROR | ERROR: TestTikTokSkuMapping.test_sku_inventory_uses_all_tiktok_enabled_warehouses_with_stock Traceback (most recent call last): File "/data/build/duong-addons/d_tiktok_shop_connector/tests/test_tiktok_sku_mapping.py", line 423, in test_sku_inventory_uses_all_tiktok_enabled_warehouses_with_stock quant_model._update_available_quantity( File "/data/build/odoo/addons/stock/models/stock_quant.py", line 1104, in _update_available_quantity self.create(vals) File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/duong-addons/d_tiktok_shop_connector_patch2/models/stock_quant.py", line 9, in create quants = super(StockQuant, self.with_context(skip_tiktok_update=True)).create(vals_list) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/duong-addons/d_tiktok_shop_connector/models/stock_quant.py", line 9, in create quants = super().create(vals_list) ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/addons/stock/models/stock_quant.py", line 308, in create quant = super().create(vals) ^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/models.py", line 4717, in create records = self._create(data_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/models.py", line 4956, in _create records._validate_fields(name for data in data_list for name in data['stored']) File "/data/build/odoo/odoo/orm/models.py", line 1268, in _validate_fields check(records) File "/data/build/odoo/addons/stock/models/stock_quant.py", line 585, in check_product_id raise ValidationError(_('Quants cannot be created for consumables or services.')) odoo.exceptions.ValidationError: Quants cannot be created for consumables or services. | |
| 2026-10-01 17:23:15 | ERROR | ERROR: TestTikTokSkuMapping.test_sku_inventory_uses_free_quantity_after_reservations Traceback (most recent call last): File "/data/build/duong-addons/d_tiktok_shop_connector/tests/test_tiktok_sku_mapping.py", line 466, in test_sku_inventory_uses_free_quantity_after_reservations quant_model._update_available_quantity( File "/data/build/odoo/addons/stock/models/stock_quant.py", line 1104, in _update_available_quantity self.create(vals) File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/duong-addons/d_tiktok_shop_connector_patch2/models/stock_quant.py", line 9, in create quants = super(StockQuant, self.with_context(skip_tiktok_update=True)).create(vals_list) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/duong-addons/d_tiktok_shop_connector/models/stock_quant.py", line 9, in create quants = super().create(vals_list) ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/addons/stock/models/stock_quant.py", line 308, in create quant = super().create(vals) ^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/models.py", line 4717, in create records = self._create(data_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/models.py", line 4956, in _create records._validate_fields(name for data in data_list for name in data['stored']) File "/data/build/odoo/odoo/orm/models.py", line 1268, in _validate_fields check(records) File "/data/build/odoo/addons/stock/models/stock_quant.py", line 585, in check_product_id raise ValidationError(_('Quants cannot be created for consumables or services.')) odoo.exceptions.ValidationError: Quants cannot be created for consumables or services. | |
| 2026-10-01 17:23:15 | ERROR | FAIL: TestTikTokSkuMapping.test_sku_not_found_sets_status_without_error Traceback (most recent call last): File "/data/build/duong-addons/d_tiktok_shop_connector/tests/test_tiktok_sku_mapping.py", line 154, in test_sku_not_found_sets_status_without_error self.assertEqual(variant.tiktok_mapping_status, 'not_found') AssertionError: 'not_checked' != 'not_found' - not_checked + not_found | |
| 2026-10-01 17:23:15 | ERROR | FAIL: TestTikTokSkuMapping.test_sku_only_search_matches_and_sets_template_product_id Traceback (most recent call last): File "/data/build/duong-addons/d_tiktok_shop_connector/tests/test_tiktok_sku_mapping.py", line 119, in test_sku_only_search_matches_and_sets_template_product_id self.assertEqual(template.tiktok_id, 'product_1') AssertionError: False != 'product_1' | |
| 2026-10-01 17:23:17 | ERROR | ERROR: TestTikTokSkuMapping.test_stock_quant_ignores_unconfigured_other_shop_and_inbound_changes Traceback (most recent call last): File "/data/build/duong-addons/d_tiktok_shop_connector/tests/test_tiktok_sku_mapping.py", line 611, in test_stock_quant_ignores_unconfigured_other_shop_and_inbound_changes quant_model._update_available_quantity( File "/data/build/odoo/addons/stock/models/stock_quant.py", line 1104, in _update_available_quantity self.create(vals) File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/duong-addons/d_tiktok_shop_connector_patch2/models/stock_quant.py", line 9, in create quants = super(StockQuant, self.with_context(skip_tiktok_update=True)).create(vals_list) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/duong-addons/d_tiktok_shop_connector/models/stock_quant.py", line 9, in create quants = super().create(vals_list) ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/addons/stock/models/stock_quant.py", line 308, in create quant = super().create(vals) ^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/decorators.py", line 369, in create return method(self, vals_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/models.py", line 4717, in create records = self._create(data_list) ^^^^^^^^^^^^^^^^^^^^^^^ File "/data/build/odoo/odoo/orm/models.py", line 4956, in _create records._validate_fields(name for data in data_list for name in data['stored']) File "/data/build/odoo/odoo/orm/models.py", line 1268, in _validate_fields check(records) File "/data/build/odoo/addons/stock/models/stock_quant.py", line 585, in check_product_id raise ValidationError(_('Quants cannot be created for consumables or services.')) odoo.exceptions.ValidationError: Quants cannot be created for consumables or services. | |
| 2026-10-01 17:23:18 | Log limit reached (full logs are still available in the log file) | ||
| 2026-10-01 17:27:39 | INFO | Getting results for build 01292-19-0 | |
| 2026-10-01 17:27:39 | Step test_post_install finished in 10m |