Skip to content

BackPort Update from Main - #60

Open
cw112233 wants to merge 157 commits into
releases/250from
main
Open

BackPort Update from Main#60
cw112233 wants to merge 157 commits into
releases/250from
main

Conversation

@cw112233

Copy link
Copy Markdown
Collaborator

No description provided.

alakhmani and others added 30 commits February 13, 2024 14:39
…pleShippingCalculator

@W-14695246 - Update Sample Shipping Calculator when CCA ON
…rSampleTest

@W-14847074: Adding test for PromotionCalculatorSample Apex example
…lculatorSampleTest

@W-14847074: Update PromotionCalculatorSampleTest
Update Sample Orchestrator to include logic for when buyer adds coupon during checkout
[Tax calculator] replaced for loops with iterators
battalian and others added 30 commits January 20, 2026 20:38
…nclude-shipping-promotions

Include shipping promotions calculation in CartCalculateSample
Added apex examples for place order validation domain extension
…ote-present

@W-20660623 skip promotions and reset cart adjustments if quote is present in cart
- Add WITH SYSTEM_MODE to all SOQL queries in BuyerGroupEvaluationServiceSample
  to ensure queries work in v67.0+ where USER_MODE becomes the default
- Add security documentation to both buyer group service implementations
  explaining WITHOUT SHARING and WITH SYSTEM_MODE usage
- Changes are backward compatible with v64-v66 (WITH SYSTEM_MODE ignored)
- Ensures guest users can retrieve buyer groups in all API versions

Files changed:
- BuyerGroupEvaluationServiceSample.cls: 4 queries + security docs
- BuyerGroupShareableURLSample.cls: security docs only (no queries)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
- Add link to Salesforce Summer '26 (v67.0) release notes
- Rewrite security comments to be educational rather than prescriptive
- Explain v67.0 requirements and why this sample uses specific patterns
- Remove "when adapting" guidance to let developers make their own decisions

The documentation now helps developers understand the v67.0 context
and the reasoning behind the security choices in these samples.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
@W-22098350 Add Apex v67.0 Secure by Default support to buyer group services
…ude-md

@W-22098350 Add CLAUDE.md with Apex v67.0 migration guidelines
…131/ninjas-apex-changes

@W-22256131 : 1c-ninjas changes related to v67 compatibility
Adds a sample commercestorepricing.PricingService extension that overrides
resolveContracts (API v264+) to resolve ContractItemPrice records for cart
lines. The sample demonstrates:

- Authoritative resolution via enableDefaultResolution (unresolved lines
  price to list; platform does not back-fill).
- Bulkified single SOQL query across all products in the batch.
- Overlap/conflict handling: latest StartDate wins, CreatedDate breaks ties.
- Fail-safe exception handling.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…class

Fold the contract-resolution logic (resolveContracts override + the
ContractDataFromExternalService helper) into the existing
PricingServiceSample class, and remove the standalone
ContractPricingService files.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Condense the step-by-step and header comments down to the essentials, and
drop the stale reference to disableDefaultResolution() that contradicted the
enableDefaultResolution() call.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Explain the extension point contract, request context, default-resolution
choice, bulkified query with rationale for each WHERE clause and WITH
SYSTEM_MODE, the overlap tie-break, and how results are reported - so
customers can adapt the sample to their own contract source.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…irectly

The resolveContracts sample stored a two-field wrapper per product only to
carry the ContractId and ContractItemPrice Id to the response. Store the
queried ContractItemPrice row in the map instead and read cip.ContractId /
cip.Id directly, removing the helper class.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Key contractsByProduct by Id instead of String so a 15-char productId
from one storefront surface (e.g. cart) matches the 18-char ItemId that
SOQL returns, keeping PDP and cart contract resolution consistent. Also
log the stack trace in the catch block for easier diagnosis.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Drop LoggingLevel.ERROR (the only such usage in the repo) so the catch-block
log matches the convention used by PricingCalculatorSample and
EstimatedActualPricingCalculator: bare System.debug with message + stacktrace.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@W-23590951 Add resolveContracts sample to PricingServiceSample for contract price resolution
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.