Skip to content

Comments

Extended webhook events: include property values for invariant content#21878

Draft
Copilot wants to merge 2 commits intomainfrom
copilot/fix-data-ingestion-issue
Draft

Extended webhook events: include property values for invariant content#21878
Copilot wants to merge 2 commits intomainfrom
copilot/fix-data-ingestion-issue

Conversation

Copy link
Contributor

Copilot AI commented Feb 24, 2026

For invariant (non-multilingual) content, the extended webhook payload from ExtendedContentPublishedWebhookEvent and ExtendedContentSavedWebhookEvent contained no property editor data — only top-level fields like id were present. This broke the Umbraco.Compose.Integrations.UmbracoCms.Ingestion package.

Cause

BuildCultureProperties iterates deliveryContent.Cultures, which is always empty for invariant contentApiContentResponseBuilder.GetCultures() filters out the empty-string invariant culture entry. The deliveryContent.Properties dict (correctly populated by NoopOutputExpansionStrategy) was never serialized into the payload.

Changes

  • ExtendedContentPublishedWebhookEvent / ExtendedContentSavedWebhookEvent: Add deliveryContent.Properties to the returned anonymous payload object.
return new
{
    deliveryContent.Id,
    deliveryContent.ContentType,
    deliveryContent.Name,
    deliveryContent.CreateDate,
    deliveryContent.UpdateDate,
    deliveryContent.Properties,   // ← added
    Cultures = cultures,
};

The resulting payload now always carries a top-level properties field alongside cultures:

  • Invariant contentproperties has all values; cultures is empty
  • Culture-variant contentproperties reflects the ambient variation context; cultures carries per-culture data as before

The change is purely additive; existing consumers reading from cultures are unaffected.

  • ExtendedContentWebhookEventTests: New unit tests asserting that the payload includes populated properties and empty cultures for invariant content, for both the published and saved events.

Warning

Firewall rules blocked me from connecting to one or more addresses (expand for details)

I tried to connect to the following addresses, but was blocked by firewall rules:

  • www.nuget.org
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node /home/REDACTED/work/_temp/ghcca-node/node/bin/node --enable-source-maps /home/REDACTED/work/_temp/copilot-developer-action-main/dist/index.js (dns block)

If you need me to access, download, or install something from one of these locations, you can either:


🔒 GitHub Advanced Security automatically protects Copilot coding agent pull requests. You can protect all pull requests by enabling Advanced Security for your repositories. Learn more about Advanced Security.

…t content

Co-authored-by: lassefredslund <101121881+lassefredslund@users.noreply.github.com>
Copilot AI changed the title [WIP] Fix data ingestion issue with property editors Extended webhook events: include property values for invariant content Feb 24, 2026
Copilot AI requested a review from lassefredslund February 24, 2026 01:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants