This is an automated email from the ASF dual-hosted git repository.

potiuk pushed a commit to branch v3-2-test
in repository https://gitbox.apache.org/repos/asf/airflow.git


The following commit(s) were added to refs/heads/v3-2-test by this push:
     new b0113ce6533 Fix bulk task instance update for mapped TIs and auth 
error rendering (#65874)
b0113ce6533 is described below

commit b0113ce65335814a562dd4156ccf935d87da98fe
Author: Jarek Potiuk <[email protected]>
AuthorDate: Sun Apr 26 18:52:28 2026 +0200

    Fix bulk task instance update for mapped TIs and auth error rendering 
(#65874)
    
    On v3-2-test, BulkTaskInstanceService had three pre-existing bugs:
    
    1. `_perform_update` did not pass `map_index` to
       `_patch_ti_validate_request`, so the validation step looked up the
       wrong TI (default map_index=-1) and persistence silently no-op'd
       for mapped task instances.
    
    2. `specific_entity_map` and `all_map_entity_map` used raw
       `(entity.dag_id, entity.dag_run_id, entity.task_id, ...)` tuples
       as keys. When `dag_id`/`dag_run_id` came from the path and not the
       request body, those attributes were `None` on the entity, while
       keys produced by `_categorize_entities` resolved them via
       `_extract_task_identifiers`. The resulting key mismatch meant
       matched task keys never resolved back to an entity, so
       `_perform_update` was never called and `response.update.success`
       came back empty.
    
    3. `action_name=action.action` rendered as `'BulkAction.UPDATE'`
       /`'BulkAction.DELETE'` in authorization error messages because
       Python's str-enum `__format__` returns the enum repr, not the
       value. Use `.value` to get "update"/"delete".
    
    All three fixes already exist on main; this backport is the minimal
    diff to bring v3-2-test in line with main for this file.
    
    Also includes the following pre-existing v3-2-test fixes that the
    prek hooks force to land alongside any source change:
    
    - Regenerated _private_ui.yaml, schemas.gen.ts and types.gen.ts:
      generate-openapi-spec caught a description drift on `ExtraMenuItem`.
    - Added `fpr` to docs/spelling_wordlist.txt: codespell flagged the
      GPG colons-format `^fpr:` regex tag in dev/README_RELEASE_*.md.
      Same fix already on main from #65501.
    - Regenerated dev/breeze/doc/images/output_pr_auto-triage.{svg,txt}:
      the boring-cyborg config update in #65872 added the
      `backport-to-airflow-ctl-v0-1-test` label, which appears in the
      `breeze pr auto-triage --help` output and changes its hash.
---
 .../api_fastapi/core_api/openapi/_private_ui.yaml  |  2 ++
 .../core_api/services/public/task_instances.py     |  9 +++----
 .../airflow/ui/openapi-gen/requests/schemas.gen.ts |  3 ++-
 .../airflow/ui/openapi-gen/requests/types.gen.ts   |  3 +++
 dev/breeze/doc/images/output_pr_auto-triage.svg    | 28 +++++++++++-----------
 dev/breeze/doc/images/output_pr_auto-triage.txt    |  2 +-
 docs/spelling_wordlist.txt                         |  1 +
 7 files changed, 28 insertions(+), 20 deletions(-)

diff --git 
a/airflow-core/src/airflow/api_fastapi/core_api/openapi/_private_ui.yaml 
b/airflow-core/src/airflow/api_fastapi/core_api/openapi/_private_ui.yaml
index 54d93597fad..dc5c6d101dc 100644
--- a/airflow-core/src/airflow/api_fastapi/core_api/openapi/_private_ui.yaml
+++ b/airflow-core/src/airflow/api_fastapi/core_api/openapi/_private_ui.yaml
@@ -2215,6 +2215,8 @@ components:
       - text
       - href
       title: ExtraMenuItem
+      description: Define a menu item that can be added to the menu by auth 
managers
+        or plugins.
     GanttResponse:
       properties:
         dag_id:
diff --git 
a/airflow-core/src/airflow/api_fastapi/core_api/services/public/task_instances.py
 
b/airflow-core/src/airflow/api_fastapi/core_api/services/public/task_instances.py
index 6de3658e442..1db92911eeb 100644
--- 
a/airflow-core/src/airflow/api_fastapi/core_api/services/public/task_instances.py
+++ 
b/airflow-core/src/airflow/api_fastapi/core_api/services/public/task_instances.py
@@ -299,6 +299,7 @@ class 
BulkTaskInstanceService(BulkService[BulkTaskInstanceBody]):
             dag_bag=self.dag_bag,
             body=entity,
             session=self.session,
+            map_index=map_index,
             update_mask=update_mask,
         )
 
@@ -337,17 +338,17 @@ class 
BulkTaskInstanceService(BulkService[BulkTaskInstanceBody]):
         """Bulk Update Task Instances."""
         # Validate and categorize entities into specific and all map index 
update sets
         update_specific_map_index_task_keys, update_all_map_index_task_keys = 
self._categorize_entities(
-            action.entities, results, method="PUT", action_name=action.action
+            action.entities, results, method="PUT", 
action_name=action.action.value
         )
 
         try:
             specific_entity_map = {
-                (entity.dag_id, entity.dag_run_id, entity.task_id, 
entity.map_index): entity
+                self._extract_task_identifiers(entity): entity
                 for entity in action.entities
                 if entity.map_index is not None
             }
             all_map_entity_map = {
-                (entity.dag_id, entity.dag_run_id, entity.task_id): entity
+                self._extract_task_identifiers(entity)[:3]: entity
                 for entity in action.entities
                 if entity.map_index is None
             }
@@ -439,7 +440,7 @@ class 
BulkTaskInstanceService(BulkService[BulkTaskInstanceBody]):
         """Bulk delete task instances."""
         # Validate and categorize entities into specific and all map index 
delete sets
         delete_specific_map_index_task_keys, delete_all_map_index_task_keys = 
self._categorize_entities(
-            action.entities, results, method="DELETE", 
action_name=action.action
+            action.entities, results, method="DELETE", 
action_name=action.action.value
         )
 
         try:
diff --git a/airflow-core/src/airflow/ui/openapi-gen/requests/schemas.gen.ts 
b/airflow-core/src/airflow/ui/openapi-gen/requests/schemas.gen.ts
index 8f421941772..1041852b42e 100644
--- a/airflow-core/src/airflow/ui/openapi-gen/requests/schemas.gen.ts
+++ b/airflow-core/src/airflow/ui/openapi-gen/requests/schemas.gen.ts
@@ -8125,7 +8125,8 @@ export const $ExtraMenuItem = {
     },
     type: 'object',
     required: ['text', 'href'],
-    title: 'ExtraMenuItem'
+    title: 'ExtraMenuItem',
+    description: 'Define a menu item that can be added to the menu by auth 
managers or plugins.'
 } as const;
 
 export const $GanttResponse = {
diff --git a/airflow-core/src/airflow/ui/openapi-gen/requests/types.gen.ts 
b/airflow-core/src/airflow/ui/openapi-gen/requests/types.gen.ts
index c582d575b96..8150f58ebdc 100644
--- a/airflow-core/src/airflow/ui/openapi-gen/requests/types.gen.ts
+++ b/airflow-core/src/airflow/ui/openapi-gen/requests/types.gen.ts
@@ -1985,6 +1985,9 @@ export type EdgeResponse = {
     is_source_asset?: boolean | null;
 };
 
+/**
+ * Define a menu item that can be added to the menu by auth managers or 
plugins.
+ */
 export type ExtraMenuItem = {
     text: string;
     href: string;
diff --git a/dev/breeze/doc/images/output_pr_auto-triage.svg 
b/dev/breeze/doc/images/output_pr_auto-triage.svg
index 8cbffab9f40..8e676dafea4 100644
--- a/dev/breeze/doc/images/output_pr_auto-triage.svg
+++ b/dev/breeze/doc/images/output_pr_auto-triage.svg
@@ -371,20 +371,20 @@
 </text><text class="breeze-pr-auto-triage-r5" x="0" y="581.2" 
textLength="12.2" clip-path="url(#breeze-pr-auto-triage-line-23)">│</text><text 
class="breeze-pr-auto-triage-r6" x="329.4" y="581.2" textLength="988.2" 
clip-path="url(#breeze-pr-auto-triage-line-23)">area:db-migrations&#160;|&#160;area:deadline-alerts&#160;|&#160;area:dev-tools&#160;|&#160;area:docker-tests&#160;|&#160;</text><text
 class="breeze-pr-auto-triage-r5" x="1451.8" y="581.2" textLength="12.2" 
clip-path="url(#breeze-p [...]
 </text><text class="breeze-pr-auto-triage-r5" x="0" y="605.6" 
textLength="12.2" clip-path="url(#breeze-pr-auto-triage-line-24)">│</text><text 
class="breeze-pr-auto-triage-r6" x="329.4" y="605.6" textLength="976" 
clip-path="url(#breeze-pr-auto-triage-line-24)">area:go-sdk&#160;|&#160;area:helm-chart&#160;|&#160;area:kubernetes-tests&#160;|&#160;area:production-image&#160;|&#160;</text><text
 class="breeze-pr-auto-triage-r5" x="1451.8" y="605.6" textLength="12.2" 
clip-path="url(#breeze-pr-a [...]
 </text><text class="breeze-pr-auto-triage-r5" x="0" y="630" textLength="12.2" 
clip-path="url(#breeze-pr-auto-triage-line-25)">│</text><text 
class="breeze-pr-auto-triage-r6" x="329.4" y="630" textLength="1085.8" 
clip-path="url(#breeze-pr-auto-triage-line-25)">area:providers&#160;|&#160;area:registry&#160;|&#160;area:system-tests&#160;|&#160;area:task-sdk&#160;|&#160;area:translations&#160;|&#160;</text><text
 class="breeze-pr-auto-triage-r5" x="1451.8" y="630" textLength="12.2" 
clip-path=" [...]
-</text><text class="breeze-pr-auto-triage-r5" x="0" y="654.4" 
textLength="12.2" clip-path="url(#breeze-pr-auto-triage-line-26)">│</text><text 
class="breeze-pr-auto-triage-r6" x="329.4" y="654.4" textLength="1012.6" 
clip-path="url(#breeze-pr-auto-triage-line-26)">backport-to-v3-1-test&#160;|&#160;kind:documentation&#160;|&#160;provider:airbyte&#160;|&#160;provider:alibaba&#160;|&#160;</text><text
 class="breeze-pr-auto-triage-r5" x="1451.8" y="654.4" textLength="12.2" 
clip-path="url(#breez [...]
-</text><text class="breeze-pr-auto-triage-r5" x="0" y="678.8" 
textLength="12.2" clip-path="url(#breeze-pr-auto-triage-line-27)">│</text><text 
class="breeze-pr-auto-triage-r6" x="329.4" y="678.8" textLength="1110.2" 
clip-path="url(#breeze-pr-auto-triage-line-27)">provider:amazon&#160;|&#160;provider:apache-beam&#160;|&#160;provider:apache-cassandra&#160;|&#160;provider:apache-drill&#160;</text><text
 class="breeze-pr-auto-triage-r5" x="1451.8" y="678.8" textLength="12.2" 
clip-path="url(#br [...]
-</text><text class="breeze-pr-auto-triage-r5" x="0" y="703.2" 
textLength="12.2" clip-path="url(#breeze-pr-auto-triage-line-28)">│</text><text 
class="breeze-pr-auto-triage-r6" x="329.4" y="703.2" textLength="890.6" 
clip-path="url(#breeze-pr-auto-triage-line-28)">|&#160;provider:apache-druid&#160;|&#160;provider:apache-flink&#160;|&#160;provider:apache-hdfs&#160;|&#160;</text><text
 class="breeze-pr-auto-triage-r5" x="1451.8" y="703.2" textLength="12.2" 
clip-path="url(#breeze-pr-auto-triage [...]
-</text><text class="breeze-pr-auto-triage-r5" x="0" y="727.6" 
textLength="12.2" clip-path="url(#breeze-pr-auto-triage-line-29)">│</text><text 
class="breeze-pr-auto-triage-r6" x="329.4" y="727.6" textLength="902.8" 
clip-path="url(#breeze-pr-auto-triage-line-29)">provider:apache-hive&#160;|&#160;provider:apache-iceberg&#160;|&#160;provider:apache-impala&#160;|&#160;</text><text
 class="breeze-pr-auto-triage-r5" x="1451.8" y="727.6" textLength="12.2" 
clip-path="url(#breeze-pr-auto-triage-lin [...]
-</text><text class="breeze-pr-auto-triage-r5" x="0" y="752" textLength="12.2" 
clip-path="url(#breeze-pr-auto-triage-line-30)">│</text><text 
class="breeze-pr-auto-triage-r6" x="329.4" y="752" textLength="1110.2" 
clip-path="url(#breeze-pr-auto-triage-line-30)">provider:apache-kafka&#160;|&#160;provider:apache-kylin&#160;|&#160;provider:apache-livy&#160;|&#160;provider:apache-pig&#160;</text><text
 class="breeze-pr-auto-triage-r5" x="1451.8" y="752" textLength="12.2" 
clip-path="url(#breeze-p [...]
-</text><text class="breeze-pr-auto-triage-r5" x="0" y="776.4" 
textLength="12.2" clip-path="url(#breeze-pr-auto-triage-line-31)">│</text><text 
class="breeze-pr-auto-triage-r6" x="329.4" y="776.4" textLength="951.6" 
clip-path="url(#breeze-pr-auto-triage-line-31)">|&#160;provider:apache-pinot&#160;|&#160;provider:apache-spark&#160;|&#160;provider:apache-tinkerpop&#160;|&#160;</text><text
 class="breeze-pr-auto-triage-r5" x="1451.8" y="776.4" textLength="12.2" 
clip-path="url(#breeze-pr-auto-t [...]
-</text><text class="breeze-pr-auto-triage-r5" x="0" y="800.8" 
textLength="12.2" clip-path="url(#breeze-pr-auto-triage-line-32)">│</text><text 
class="breeze-pr-auto-triage-r6" x="329.4" y="800.8" textLength="1000.4" 
clip-path="url(#breeze-pr-auto-triage-line-32)">provider:apprise&#160;|&#160;provider:arangodb&#160;|&#160;provider:asana&#160;|&#160;provider:atlassian-jira&#160;|&#160;</text><text
 class="breeze-pr-auto-triage-r5" x="1451.8" y="800.8" textLength="12.2" 
clip-path="url(#breeze [...]
-</text><text class="breeze-pr-auto-triage-r5" x="0" y="825.2" 
textLength="12.2" clip-path="url(#breeze-pr-auto-triage-line-33)">│</text><text 
class="breeze-pr-auto-triage-r6" x="329.4" y="825.2" textLength="1012.6" 
clip-path="url(#breeze-pr-auto-triage-line-33)">provider:celery&#160;|&#160;provider:cloudant&#160;|&#160;provider:cncf-kubernetes&#160;|&#160;provider:cohere&#160;|&#160;</text><text
 class="breeze-pr-auto-triage-r5" x="1451.8" y="825.2" textLength="12.2" 
clip-path="url(#breez [...]
-</text><text class="breeze-pr-auto-triage-r5" x="0" y="849.6" 
textLength="12.2" clip-path="url(#breeze-pr-auto-triage-line-34)">│</text><text 
class="breeze-pr-auto-triage-r6" x="329.4" y="849.6" textLength="817.4" 
clip-path="url(#breeze-pr-auto-triage-line-34)">provider:common-ai&#160;|&#160;provider:common-compat&#160;|&#160;provider:common-io&#160;|&#160;</text><text
 class="breeze-pr-auto-triage-r5" x="1451.8" y="849.6" textLength="12.2" 
clip-path="url(#breeze-pr-auto-triage-line-34)"> [...]
-</text><text class="breeze-pr-auto-triage-r5" x="0" y="874" textLength="12.2" 
clip-path="url(#breeze-pr-auto-triage-line-35)">│</text><text 
class="breeze-pr-auto-triage-r6" x="329.4" y="874" textLength="1110.2" 
clip-path="url(#breeze-pr-auto-triage-line-35)">provider:common-messaging&#160;|&#160;provider:common-sql&#160;|&#160;provider:databricks&#160;|&#160;provider:datadog&#160;|&#160;</text><text
 class="breeze-pr-auto-triage-r5" x="1451.8" y="874" textLength="12.2" 
clip-path="url(#bre [...]
-</text><text class="breeze-pr-auto-triage-r5" x="0" y="898.4" 
textLength="12.2" clip-path="url(#breeze-pr-auto-triage-line-36)">│</text><text 
class="breeze-pr-auto-triage-r6" x="329.4" y="898.4" textLength="1110.2" 
clip-path="url(#breeze-pr-auto-triage-line-36)">provider:dbt-cloud&#160;|&#160;provider:dingding&#160;|&#160;provider:discord&#160;|&#160;provider:docker&#160;|&#160;provider:edge</text><text
 class="breeze-pr-auto-triage-r5" x="1451.8" y="898.4" textLength="12.2" 
clip-path="ur [...]
-</text><text class="breeze-pr-auto-triage-r5" x="0" y="922.8" 
textLength="12.2" clip-path="url(#breeze-pr-auto-triage-line-37)">│</text><text 
class="breeze-pr-auto-triage-r6" x="329.4" y="922.8" textLength="976" 
clip-path="url(#breeze-pr-auto-triage-line-37)">|&#160;provider:elasticsearch&#160;|&#160;provider:exasol&#160;|&#160;provider:fab&#160;|&#160;provider:facebook&#160;|&#160;</text><text
 class="breeze-pr-auto-triage-r5" x="1451.8" y="922.8" textLength="12.2" 
clip-path="url(#breeze [...]
-</text><text class="breeze-pr-auto-triage-r5" x="0" y="947.2" 
textLength="12.2" clip-path="url(#breeze-pr-auto-triage-line-38)">│</text><text 
class="breeze-pr-auto-triage-r6" x="329.4" y="947.2" textLength="1000.4" 
clip-path="url(#breeze-pr-auto-triage-line-38)">provider:ftp&#160;|&#160;provider:git&#160;|&#160;provider:github&#160;|&#160;provider:google&#160;|&#160;provider:grpc&#160;|&#160;</text><text
 class="breeze-pr-auto-triage-r5" x="1451.8" y="947.2" textLength="12.2" 
clip-path="u [...]
-</text><text class="breeze-pr-auto-triage-r5" x="0" y="971.6" 
textLength="12.2" clip-path="url(#breeze-pr-auto-triage-line-39)">│</text><text 
class="breeze-pr-auto-triage-r6" x="329.4" y="971.6" textLength="890.6" 
clip-path="url(#breeze-pr-auto-triage-line-39)">provider:hashicorp&#160;|&#160;provider:http&#160;|&#160;provider:imap&#160;|&#160;provider:influxdb&#160;|&#160;</text><text
 class="breeze-pr-auto-triage-r5" x="1451.8" y="971.6" textLength="12.2" 
clip-path="url(#breeze-pr-auto-t [...]
+</text><text class="breeze-pr-auto-triage-r5" x="0" y="654.4" 
textLength="12.2" clip-path="url(#breeze-pr-auto-triage-line-26)">│</text><text 
class="breeze-pr-auto-triage-r6" x="329.4" y="654.4" textLength="988.2" 
clip-path="url(#breeze-pr-auto-triage-line-26)">backport-to-airflow-ctl-v0-1-test&#160;|&#160;backport-to-v3-1-test&#160;|&#160;kind:documentation&#160;|&#160;</text><text
 class="breeze-pr-auto-triage-r5" x="1451.8" y="654.4" textLength="12.2" 
clip-path="url(#breeze-pr-auto-tri [...]
+</text><text class="breeze-pr-auto-triage-r5" x="0" y="678.8" 
textLength="12.2" clip-path="url(#breeze-pr-auto-triage-line-27)">│</text><text 
class="breeze-pr-auto-triage-r6" x="329.4" y="678.8" textLength="963.8" 
clip-path="url(#breeze-pr-auto-triage-line-27)">provider:airbyte&#160;|&#160;provider:alibaba&#160;|&#160;provider:amazon&#160;|&#160;provider:apache-beam&#160;|&#160;</text><text
 class="breeze-pr-auto-triage-r5" x="1451.8" y="678.8" textLength="12.2" 
clip-path="url(#breeze-pr- [...]
+</text><text class="breeze-pr-auto-triage-r5" x="0" y="703.2" 
textLength="12.2" clip-path="url(#breeze-pr-auto-triage-line-28)">│</text><text 
class="breeze-pr-auto-triage-r6" x="329.4" y="703.2" textLength="927.2" 
clip-path="url(#breeze-pr-auto-triage-line-28)">provider:apache-cassandra&#160;|&#160;provider:apache-drill&#160;|&#160;provider:apache-druid&#160;|&#160;</text><text
 class="breeze-pr-auto-triage-r5" x="1451.8" y="703.2" textLength="12.2" 
clip-path="url(#breeze-pr-auto-triage-l [...]
+</text><text class="breeze-pr-auto-triage-r5" x="0" y="727.6" 
textLength="12.2" clip-path="url(#breeze-pr-auto-triage-line-29)">│</text><text 
class="breeze-pr-auto-triage-r6" x="329.4" y="727.6" textLength="854" 
clip-path="url(#breeze-pr-auto-triage-line-29)">provider:apache-flink&#160;|&#160;provider:apache-hdfs&#160;|&#160;provider:apache-hive&#160;|&#160;</text><text
 class="breeze-pr-auto-triage-r5" x="1451.8" y="727.6" textLength="12.2" 
clip-path="url(#breeze-pr-auto-triage-line-29)" [...]
+</text><text class="breeze-pr-auto-triage-r5" x="0" y="752" textLength="12.2" 
clip-path="url(#breeze-pr-auto-triage-line-30)">│</text><text 
class="breeze-pr-auto-triage-r6" x="329.4" y="752" textLength="915" 
clip-path="url(#breeze-pr-auto-triage-line-30)">provider:apache-iceberg&#160;|&#160;provider:apache-impala&#160;|&#160;provider:apache-kafka&#160;|&#160;</text><text
 class="breeze-pr-auto-triage-r5" x="1451.8" y="752" textLength="12.2" 
clip-path="url(#breeze-pr-auto-triage-line-30)"> [...]
+</text><text class="breeze-pr-auto-triage-r5" x="0" y="776.4" 
textLength="12.2" clip-path="url(#breeze-pr-auto-triage-line-31)">│</text><text 
class="breeze-pr-auto-triage-r6" x="329.4" y="776.4" textLength="1110.2" 
clip-path="url(#breeze-pr-auto-triage-line-31)">provider:apache-kylin&#160;|&#160;provider:apache-livy&#160;|&#160;provider:apache-pig&#160;|&#160;provider:apache-pinot&#160;</text><text
 class="breeze-pr-auto-triage-r5" x="1451.8" y="776.4" textLength="12.2" 
clip-path="url(#br [...]
+</text><text class="breeze-pr-auto-triage-r5" x="0" y="800.8" 
textLength="12.2" clip-path="url(#breeze-pr-auto-triage-line-32)">│</text><text 
class="breeze-pr-auto-triage-r6" x="329.4" y="800.8" textLength="1110.2" 
clip-path="url(#breeze-pr-auto-triage-line-32)">|&#160;provider:apache-spark&#160;|&#160;provider:apache-tinkerpop&#160;|&#160;provider:apprise&#160;|&#160;provider:arangodb&#160;</text><text
 class="breeze-pr-auto-triage-r5" x="1451.8" y="800.8" textLength="12.2" 
clip-path="ur [...]
+</text><text class="breeze-pr-auto-triage-r5" x="0" y="825.2" 
textLength="12.2" clip-path="url(#breeze-pr-auto-triage-line-33)">│</text><text 
class="breeze-pr-auto-triage-r6" x="329.4" y="825.2" textLength="1012.6" 
clip-path="url(#breeze-pr-auto-triage-line-33)">|&#160;provider:asana&#160;|&#160;provider:atlassian-jira&#160;|&#160;provider:celery&#160;|&#160;provider:cloudant&#160;|&#160;</text><text
 class="breeze-pr-auto-triage-r5" x="1451.8" y="825.2" textLength="12.2" 
clip-path="url(# [...]
+</text><text class="breeze-pr-auto-triage-r5" x="0" y="849.6" 
textLength="12.2" clip-path="url(#breeze-pr-auto-triage-line-34)">│</text><text 
class="breeze-pr-auto-triage-r6" x="329.4" y="849.6" textLength="1110.2" 
clip-path="url(#breeze-pr-auto-triage-line-34)">provider:cncf-kubernetes&#160;|&#160;provider:cohere&#160;|&#160;provider:common-ai&#160;|&#160;provider:common-compat&#160;|&#160;</text><text
 class="breeze-pr-auto-triage-r5" x="1451.8" y="849.6" textLength="12.2" 
clip-path="ur [...]
+</text><text class="breeze-pr-auto-triage-r5" x="0" y="874" textLength="12.2" 
clip-path="url(#breeze-pr-auto-triage-line-35)">│</text><text 
class="breeze-pr-auto-triage-r6" x="329.4" y="874" textLength="1110.2" 
clip-path="url(#breeze-pr-auto-triage-line-35)">provider:common-io&#160;|&#160;provider:common-messaging&#160;|&#160;provider:common-sql&#160;|&#160;provider:databricks&#160;</text><text
 class="breeze-pr-auto-triage-r5" x="1451.8" y="874" textLength="12.2" 
clip-path="url(#breeze-p [...]
+</text><text class="breeze-pr-auto-triage-r5" x="0" y="898.4" 
textLength="12.2" clip-path="url(#breeze-pr-auto-triage-line-36)">│</text><text 
class="breeze-pr-auto-triage-r6" x="329.4" y="898.4" textLength="988.2" 
clip-path="url(#breeze-pr-auto-triage-line-36)">|&#160;provider:datadog&#160;|&#160;provider:dbt-cloud&#160;|&#160;provider:dingding&#160;|&#160;provider:discord&#160;|&#160;</text><text
 class="breeze-pr-auto-triage-r5" x="1451.8" y="898.4" textLength="12.2" 
clip-path="url(#bre [...]
+</text><text class="breeze-pr-auto-triage-r5" x="0" y="922.8" 
textLength="12.2" clip-path="url(#breeze-pr-auto-triage-line-37)">│</text><text 
class="breeze-pr-auto-triage-r6" x="329.4" y="922.8" textLength="1110.2" 
clip-path="url(#breeze-pr-auto-triage-line-37)">provider:docker&#160;|&#160;provider:edge&#160;|&#160;provider:elasticsearch&#160;|&#160;provider:exasol&#160;|&#160;provider:fab&#160;|</text><text
 class="breeze-pr-auto-triage-r5" x="1451.8" y="922.8" textLength="12.2" 
clip-pat [...]
+</text><text class="breeze-pr-auto-triage-r5" x="0" y="947.2" 
textLength="12.2" clip-path="url(#breeze-pr-auto-triage-line-38)">│</text><text 
class="breeze-pr-auto-triage-r6" x="329.4" y="947.2" textLength="1049.2" 
clip-path="url(#breeze-pr-auto-triage-line-38)">provider:facebook&#160;|&#160;provider:ftp&#160;|&#160;provider:git&#160;|&#160;provider:github&#160;|&#160;provider:google&#160;|&#160;</text><text
 class="breeze-pr-auto-triage-r5" x="1451.8" y="947.2" textLength="12.2" 
clip-pat [...]
+</text><text class="breeze-pr-auto-triage-r5" x="0" y="971.6" 
textLength="12.2" clip-path="url(#breeze-pr-auto-triage-line-39)">│</text><text 
class="breeze-pr-auto-triage-r6" x="329.4" y="971.6" textLength="1085.8" 
clip-path="url(#breeze-pr-auto-triage-line-39)">provider:grpc&#160;|&#160;provider:hashicorp&#160;|&#160;provider:http&#160;|&#160;provider:imap&#160;|&#160;provider:influxdb&#160;|&#160;</text><text
 class="breeze-pr-auto-triage-r5" x="1451.8" y="971.6" textLength="12.2" clip- 
[...]
 </text><text class="breeze-pr-auto-triage-r5" x="0" y="996" textLength="12.2" 
clip-path="url(#breeze-pr-auto-triage-line-40)">│</text><text 
class="breeze-pr-auto-triage-r6" x="329.4" y="996" textLength="951.6" 
clip-path="url(#breeze-pr-auto-triage-line-40)">provider:informatica&#160;|&#160;provider:jdbc&#160;|&#160;provider:jenkins&#160;|&#160;provider:keycloak&#160;|&#160;</text><text
 class="breeze-pr-auto-triage-r5" x="1451.8" y="996" textLength="12.2" 
clip-path="url(#breeze-pr-auto-tr [...]
 </text><text class="breeze-pr-auto-triage-r5" x="0" y="1020.4" 
textLength="12.2" clip-path="url(#breeze-pr-auto-triage-line-41)">│</text><text 
class="breeze-pr-auto-triage-r6" x="329.4" y="1020.4" textLength="976" 
clip-path="url(#breeze-pr-auto-triage-line-41)">provider:microsoft-azure&#160;|&#160;provider:microsoft-mssql&#160;|&#160;provider:microsoft-psrp&#160;|&#160;</text><text
 class="breeze-pr-auto-triage-r5" x="1451.8" y="1020.4" textLength="12.2" 
clip-path="url(#breeze-pr-auto-tri [...]
 </text><text class="breeze-pr-auto-triage-r5" x="0" y="1044.8" 
textLength="12.2" clip-path="url(#breeze-pr-auto-triage-line-42)">│</text><text 
class="breeze-pr-auto-triage-r6" x="329.4" y="1044.8" textLength="1110.2" 
clip-path="url(#breeze-pr-auto-triage-line-42)">provider:microsoft-winrm&#160;|&#160;provider:mongo&#160;|&#160;provider:mysql&#160;|&#160;provider:neo4j&#160;|&#160;provider:odbc</text><text
 class="breeze-pr-auto-triage-r5" x="1451.8" y="1044.8" textLength="12.2" 
clip-path= [...]
diff --git a/dev/breeze/doc/images/output_pr_auto-triage.txt 
b/dev/breeze/doc/images/output_pr_auto-triage.txt
index 21f65be5aaa..7965baf62a6 100644
--- a/dev/breeze/doc/images/output_pr_auto-triage.txt
+++ b/dev/breeze/doc/images/output_pr_auto-triage.txt
@@ -1 +1 @@
-d8cea45c4870fdc6a06e25481f7c85c0
+deebc98535219d8f556f4f2dca908a75
diff --git a/docs/spelling_wordlist.txt b/docs/spelling_wordlist.txt
index 2ba6bf200d5..99e47e0ca91 100644
--- a/docs/spelling_wordlist.txt
+++ b/docs/spelling_wordlist.txt
@@ -651,6 +651,7 @@ formatter
 formatters
 forwardability
 forwardable
+fpr
 fqdn
 frontend
 fs

Reply via email to