An Adobe Commerce Architect is reviewing API-functional test code. Some tests send errors to indicate that the customer address does not exist. The test codes show the following:

Which step should the Architect take to fix the test errors?
Answer : B
The issue is being caused by the use of @magentoDataFixture annotation, which creates a temporary data fixture that is rolled back after each test execution1. This means that the customer address created by the fixture is not persisted in the database and cannot be retrieved by subsequent tests.To fix this, the Architect should use @magentoPersistDataFixture annotation, which creates a permanent data fixture that is not rolled back after each test execution2. This way, the customer address created by the fixture will be persisted in the database and can be accessed by subsequent tests.Changing the annotation to use @magentoApiDataFixture or specifying address_id in the annotation will not solve the issue, as they are not related to the persistence of the data fixture3.Reference:Data fixtures,Persistent data fixtures,API-functional tests
An Adobe Commerce Architect is asked by a merchant using B2B features to help with a configuration issue.
The Architect creates a test Company Account and wants to create Approval Rules for orders. The Approval Rules tab does not appear in the Company section in the Customer Account Menu when the Architect logs in using the Company Administrator account.
Which two steps must be taken to fix this issue? (Choose two.)
Answer : C, E
The issue here is that the Approval Rules tab does not appear in the Company section in the Customer Account Menu when the Architect logs in using the Company Administrator account. This is because the Approval Rules feature requires two settings to be enabled: the Purchase Orders feature and the Purchase Order payment method. The solution is to set 'Enable Purchase Orders' in the B2B Admin to TRUE and make sure that the 'Purchase Order' payment method is active. This will allow the Architect to create and manage Approval Rules for orders.
A merchant is using a unified website that supports native Adobe Commerce B2B and B2C with a single store view.
The merchant's objective is to display the B2B account features, such as negotiable quotes and credit limits, in the header of the site on every page for logged-in users who belong to a B2B company account.
Each B2B company possesses its unique shared catalog and customer group, while numerous customer groups for non-B2B customers undergo changes. The merchant insists that this association should not be linked to customer groups.
Which two solutions should the Architect recommend for consideration, taking into account public data and caching? (Choose two.)
Answer : B, D
Option B is a valid solution because creating a new HTTP Context variable can allow for differentiating the public content cache for users who belong to a B2B company account.The HTTP Context variable can be used to modify the output of the header block accordingly, without affecting the performance or scalability of the site1
Option D is also a valid solution because creating a new custom condition for customer segments can enable targeting users who are part of a B2B company account. The customer segment can be used to modify the output of the header block accordingly, using layout updates or dynamic blocks.This solution can also leverage the existing customer segment functionality and avoid custom coding2
Option A is not a valid solution because switching the theme based on a virtual type can cause performance issues and increase the complexity of the site maintenance.Moreover, switching the theme can affect the entire site appearance, not just the header block3
Option C is not a valid solution because using the customer session data directly to modify the output of the header block can prevent the public content cache from working properly.The customer session data is private and cannot be cached, so this solution can negatively impact the performance and scalability of the site4
Option E is not a valid solution because checking if the current user is part of a B2B company within a block class can also prevent the public content cache from working properly.The block class logic is executed on every request, so this solution can negatively impact the performance and scalability of the site5
1: https://experienceleague.adobe.com/docs/commerce-cloud-service/user-guide/architecture/starter-architecture.html?lang=en#http-context2: https://experienceleague.adobe.com/docs/commerce-cloud-service/user-guide/marketing/customer-segments.html?lang=en3: https://experienceleague.adobe.com/docs/commerce-cloud-service/user-guide/design/themes.html?lang=en4: https://experienceleague.adobe.com/docs/commerce-cloud-service/user-guide/architecture/starter-architecture.html?lang=en#private-content5: https://experienceleague.adobe.com/docs/commerce-cloud-service/user-guide/architecture/starter-architecture.html?lang=en#public-content
An Adobe Commerce Architect designs a data flow that contains a new product type with its own custom pricing logic to meet a merchant requirement. Which three steps are required when adding a product type with custom pricing? (Choose three.)
Answer : A, D, E
To add a product type with custom pricing, the Architect needs to do the following steps:
Create a content of the etc/product_types.xml file that defines the new product type, its label, model, index priority, and price model.This file is used to register the new product type and its associated classes in Magento1.
Create a new price model that extends \Magento\Catalog\Model\Product\Type\Price and implements the custom pricing logic for the new product type.The price model is responsible for calculating the final price of the product based on various factors, such as special price, tier price, catalog price rules, etc2.
Create a custom type model that extends from the abstract Product Type model (\Magento\Catalog\Model\Product\Type\AbstractType) and overrides the methods related to the product type behavior, such as prepareForCart, getAssociatedProducts, etc.The type model defines how the product type interacts with other components, such as quote, order, cart, etc3.Reference:
How to add a new product type in Magento 2? (MageStackDay mystery question 1) - Magento Stack Exchange
Magento 2: How to create custom product types - BelVG Blog
Magento 2: How to create custom product types - BelVG Blog
An Adobe Commerce Architect designs and implements functionality that introduces a new Complex Product Type to the existing Adobe Commerce website. Besides visual demonstration of the new product type, the changes include adjustments to the price index.
The website utilizes a multi-dimensional indexer feature to store the price index. The Architect decides to cover it with integration tests. After creating and running one test, the Architect discovers that database storage is not being fully cleaned.
The test method has the following annotation declaration:

Which adjustment should the Architect make to fix this issue?
Answer : B
The issue here is that the database storage is not being fully cleaned after the test is run. The solution is to modify the method PHPDoc and change the annotation @magentoDbIsolation to enabled.This will ensure that the database storage is fully cleaned after the test is run.Reference: https://developer.adobe.com/commerce/testing/guide/integration/#database-isolation1
An Adobe Commerce Architect is working on a scanner that will pull prices from multiple external product feeds. The Architect has a list of vendors and decides to create new config file marketplace.feeds.xml.
Which three steps can the Architect take to ensure validation of the configuration files with unique validation rules for the individual and merged files? (Choose three.)
Answer : B, C, E
The Architect can take the following steps to ensure validation of the configuration files with unique validation rules for the individual and merged files:
Create validation rules in marketplace.schema.xsd. This file defines the structure and constraints of the XML elements and attributes for the marketplace.feeds.xml configuration file. The Architect can use this file to specify the required and optional elements, data types, values, and patterns for the configuration file.
Provide schema to validate a merged file. This schema is used to validate the final configuration file that is generated after merging all the individual configuration files from different modules. The Architect can use this schema to check the consistency and completeness of the merged configuration file.
Provide schema to validate an individual file. This schema is used to validate each individual configuration file from each module before merging them. The Architect can use this schema to check the syntax and validity of each configuration file.
An Adobe Commerce Architect is investigating a case where some EAV product attributes are no longer updated.
* The catalog is composed of 20.000 products with 100 attributes each.
* The product updates are run by recurring Adobe commerce imports that happen multiple times a day.
* The Architect finds an error in the logs that indicates an integrity constraint while trying to insert row with id 2147483647.
What is causing this error?
Answer : C
EAV attribute import uses the REPLACE statement, which deletes and inserts a new row with the same primary key value. This causes the auto-increment column to increase by one for each row, even if the row already exists. If the auto-increment column reaches its maximum value, which is 2147483647 for a signed INT, then any further REPLACE statement will fail with an integrity constraint violation error.Reference:
EAV and extension attributes | Magento 2 Developer Documentation
GitHub - techdivision/import-attribute: This library provides the functionality for the Magento 2 import of EAV attributes
Data integrity in JSON (B) when replacing EAV - Stack Overflow