Cannot get a new conversation intent to load

I have been trying to debug adding an intent to HA, and not succeeding.

In custom_sentences/en/test.yaml, I have:

language: "en"
intent:
  DiagnosticIntent:
    data:
      - sentences:
          - "confirm system active"

In configuration.yaml, I have:

logger:
  default: warn

  logs:
    homeassistant.components.conversation: debug
    homeassistant.components.intent_script: debug
    homeassistant.components.intent: debug

conversation:

intent_script:
  DiagnosticIntent:
    action:
      - service: system_log.write
        data:
          level: warn
          message: "SUCCESS: Intent Script triggered via Assist."
          logger: custom_diagnostic  
    speech:
      text: "Custom sentences are working"

When I use the diagnostic parser at /config/developer-tools/assist, I get a warning:

Language: English (en)
No intent matched

In my log file I can see the following:

2026-02-23 16:45:42.935 DEBUG (MainThread) [homeassistant.components.conversation.agent_manager] Processing in en: confirm system active
2026-02-23 16:45:42.938 DEBUG (SyncWorker_18) [homeassistant.components.conversation.default_agent] Loaded built-in intents for language=en (en)
2026-02-23 16:45:42.941 DEBUG (SyncWorker_18) [homeassistant.components.conversation.default_agent] Loaded custom sentences language=en (en), path=/config/custom_sentences/en/test.yaml
2026-02-23 16:45:42.942 DEBUG (SyncWorker_18) 2026-02-23 16:45:43.407 DEBUG (SyncWorker_18) [homeassistant.components.conversation.default_agent] Loaded fuzzy matcher in 0.4489481053315103 second(s): language=en, intents=['climate_HassClimateGetTemperature', 'climate_HassClimateSetTemperature', 'cover_HassSetPosition', 'cover_HassTurnOff', 'cover_HassTurnOn', 'fan_HassFanSetSpeed', 'fan_HassTurnOff', 'fan_HassTurnOn', 'homeassistant_HassGetCurrentDate', 'homeassistant_HassGetCurrentTime', 'homeassistant_HassNevermind', 'homeassistant_HassTimerStatus', 'homeassistant_HassTurnOff', 'homeassistant_HassTurnOn', 'lawn_mower_HassLawnMowerDock', 'lawn_mower_HassLawnMowerStartMowing', 'light_HassLightSet', 'light_HassTurnOff', 'light_HassTurnOn', 'lock_HassTurnOff', 'lock_HassTurnOn', 'media_player_HassMediaNext', 'media_player_HassMediaPause', 'media_player_HassMediaPlayerMute', 'media_player_HassMediaPlayerUnmute', 'media_player_HassMediaPrevious', 'media_player_HassMediaUnpause', 'media_player_HassSetVolume', 'media_player_HassSetVolumeRelative', 'scene_HassTurnOn', 'script_HassTurnOn', 'vacuum_HassVacuumReturnToBase', 'vacuum_HassVacuumStart', 'valve_HassSetPosition', 'valve_HassTurnOff', 'valve_HassTurnOn', 'weather_HassGetWeather']
2026-02-23 16:45:43.408 DEBUG (MainThread) [homeassistant.components.conversation.default_agent] Full intents load completed for language=en in 0.47 seconds
2026-02-23 16:45:43.411 DEBUG (MainThread) [homeassistant.components.conversation.default_agent] Exposed entities: ....
2026-02-23 16:45:43.442 DEBUG (MainThread) [homeassistant.components.conversation.default_agent] Created slot lists in 0.03 seconds
2026-02-23 16:45:43.743 DEBUG (SyncWorker_6) [homeassistant.components.conversation.default_agent] Checked exposed entities in 0.30051006795838475 second(s)
2026-02-23 16:45:43.837 DEBUG (SyncWorker_6) [homeassistant.components.conversation.default_agent] Did fuzzy match in 0.09401853894814849 second(s)
2026-02-23 16:45:43.870 DEBUG (SyncWorker_6) [homeassistant.components.conversation.default_agent] Checked all entities in 0.005628596991300583 second(s)
2026-02-23 16:45:43.908 DEBUG (SyncWorker_6) [homeassistant.components.conversation.default_agent] Did unknown names match in 0.03726664837449789 second(s)
2026-02-23 16:45:43.908 DEBUG (MainThread) [homeassistant.components.conversation.default_agent] Recognize done in 0.47 seconds
2026-02-23 16:45:43.908 DEBUG (MainThread) [homeassistant.components.conversation.default_agent] No intent was matched for 'confirm system active'

In that log it does not look like DiagnosticIntent is loaded.

Any ideas what I am doing wrong?