Skip to main content
Participant
October 22, 2026
Open for Voting

for custom metadata of type 'enum', LrC does NOT correctly show the rule inside a SC dialog when the SC is reopened

Description of Issue

I defined in a plugin a custom metadata "Intent", of type “enum”, which can have any of the following values: "Expressive", "Personal", "Documentary" (the plugin code is here: https://github.com/mrzgll/ma-intent-metadata).

The metadata is set by the user in the metadata panel. 

In order to check if there are any photos with Intent not initialized (i.e. nil), I created a Smart Collection with the condition "Intent" is "No Value.

The Smart Collection works correctly, showing all photos whose ‘Intent’ metadata has not been assigned yet.

If I reopen the Smart Collection I always find the condition changed: "No Value" is no longer there, there is a blank field instead. If I save this Smart Collection, it no longer works.

Lightroom Classic Version Number

15.6

OS Version Number

Microsoft Windows 11 Pro
Version    10.0.26300 Build 26300

Step-by-step Reproduction Instructions

  1. Launch Lightroom Classic
  2. Open a catalog of your choice (it shall contain at least 1 photo)
  3. Install and activate the attached plugin, which defines the custom metadata ‘Intent’ 
  4. Create a Smart Collection with the following rule:  “Intent is No Value” and save it. Since no value has been already assigned to ‘Intent’, the Smart Collection correctly shows all catalog photos.
  5. Reopen the Smart Collection and verify its rule. Then save it.

The Expected Result

The rule should be the one previously saved, i.e. “Intent is No Value”.

The Actual Result

The rule is changed in “Intent is <a blank field>”.

After the Smart Collection is saved, it shows no photos.

Further information

Launching the command “Export Smart Collection Settings” after step 4 and step 5 shows the following results.

After step 4:

s = {
id = "3FF9746A-521E-498D-AE9D-9D332862E6CB",
internalName = "Smart Collection 2",
title = "Smart Collection 2",
type = "LibrarySmartCollection",
value = {
{
criteria = "sdk:com.mrzgll.intentmetadata.intent",
operation = "==",
},
combine = "intersect",
},
version = 0,
}

After step 5:

s = {
id = "4A72739F-2BDA-421C-AB4F-A777E346F30F",
internalName = "Smart Collection 2b",
title = "Smart Collection 2b",
type = "LibrarySmartCollection",
value = {
{
criteria = "sdk:com.mrzgll.intentmetadata.intent",
operation = "==",
value = false,
},
combine = "intersect",
},
version = 0,
}

 

    2 replies

    Claire H.
    Community Manager
    Community Manager
    October 22, 2026

    Hi ​@maurizio*, thank you so much for the thorough bug report and ​@johnrellis thank you for confirming. I have sent this to the development team and will reach out here if we have any other questions or updates. Thanks! ^CH

    Translate
    johnrellis
    Legend
    October 22, 2026

    Moderators, ​@Sameer K , I see the same misbehavior on LR 15.6 / Mac OS 26.6.2.

    Translate