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

jscheffl pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/airflow.git


The following commit(s) were added to refs/heads/main by this push:
     new cb2aaf41ed2 docs(edge3): clarify WorkerQueuesBase.team_name is an 
experimental hint, cross-ref workload.rst (#66718)
cb2aaf41ed2 is described below

commit cb2aaf41ed286222f44cf5f498db42a730372c72
Author: Omkhar Arasaratnam <[email protected]>
AuthorDate: Wed May 20 17:08:08 2026 -0400

    docs(edge3): clarify WorkerQueuesBase.team_name is an experimental hint, 
cross-ref workload.rst (#66718)
    
    * docs(edge3): clarify WorkerQueuesBase.team_name is an experimental hint
    
    The current WorkerQueuesBase.team_name description implies the field 
provides team isolation when set. workload.rst documents the actual contract: 
``[core] multi_team`` is experimental, and the Execution API does not enforce 
team boundaries today. This commit aligns the field description with that 
documented stance so operators reading only the API datamodel see the same 
caveats workload.rst already states.
    
    No behavior change. No new APIs. Docs only.
    
    Signed-off-by: Omkhar Arasaratnam <[email protected]>
    
    * Regenerate FastAPI bindings for WorkerQueuesBase.team_name docstring
    
    * docs(edge3): extend team_name experimental-hint note to CLI --help and 
docs
    
    Mirrors PR-A's WorkerQueuesBase.team_name docstring on the three other
    surfaces where the team_name flag is user-visible: the airflow edge worker
    CLI --help, providers/edge3/docs/deployment.rst, and the multi-team
    section of providers/edge3/docs/edge_executor.rst.
    
    ---------
    
    Signed-off-by: Omkhar Arasaratnam <[email protected]>
---
 providers/edge3/docs/deployment.rst                 |  9 ++++++---
 providers/edge3/docs/edge_executor.rst              | 11 ++++++++++-
 .../src/airflow/providers/edge3/cli/definition.py   |  8 +++++++-
 .../providers/edge3/worker_api/datamodels.py        |  9 ++++++++-
 .../edge3/worker_api/v2-edge-generated.yaml         | 21 +++++++++++++++------
 5 files changed, 46 insertions(+), 12 deletions(-)

diff --git a/providers/edge3/docs/deployment.rst 
b/providers/edge3/docs/deployment.rst
index d7e5695dacf..0d7e9b17041 100644
--- a/providers/edge3/docs/deployment.rst
+++ b/providers/edge3/docs/deployment.rst
@@ -108,9 +108,12 @@ run on the central Airflow instance:
 To kick off a worker, you need to setup Airflow and kick off the worker
 subcommand.
 
-If your Airflow deployment uses Multi-Team mode, assign the worker to its team 
with
-the ``--team-name`` option so it only picks up jobs for that team. See
-:ref:`edge_executor:multi_team` for setup details and security considerations.
+If your Airflow deployment uses the experimental Multi-Team mode, assign the 
worker
+to its team with the ``--team-name`` option so it only picks up jobs for that 
team.
+The flag is a UI/REST API-level hint — the Execution API does not currently 
enforce
+team-based access boundaries. See :ref:`edge_executor:multi_team` for setup 
details
+and :doc:`apache-airflow:security/workload` (section "No team-level isolation 
in
+Execution API") for the security boundary.
 
 .. code-block:: bash
 
diff --git a/providers/edge3/docs/edge_executor.rst 
b/providers/edge3/docs/edge_executor.rst
index 73182dd16c1..dd5041375c1 100644
--- a/providers/edge3/docs/edge_executor.rst
+++ b/providers/edge3/docs/edge_executor.rst
@@ -89,10 +89,19 @@ each worker only picks up jobs assigned to its team.
 
     airflow edge worker --team-name team_a -q queue1,queue2
 
-When ``--team-name`` is omitted, the worker operates without team isolation — 
the
+When ``--team-name`` is omitted, the worker operates as a default-team worker 
— the
 same behavior as a single-team deployment. Existing workers continue to work 
without
 any changes.
 
+.. note::
+
+    ``--team-name`` is an experimental UI/REST API-level hint. The Execution 
API
+    does not currently enforce team-based access boundaries — workloads from
+    different teams share the same Execution API, JWT signing keys, and access 
to
+    connections, variables, and XComs. See
+    :doc:`apache-airflow:security/workload` (section "No team-level isolation 
in
+    Execution API") for the full security boundary discussion.
+
 **Per-team configuration overrides:**
 
 Each team's EdgeExecutor can have its own settings. Use environment variables 
with
diff --git a/providers/edge3/src/airflow/providers/edge3/cli/definition.py 
b/providers/edge3/src/airflow/providers/edge3/cli/definition.py
index 037cc5d7884..f047e7dc808 100644
--- a/providers/edge3/src/airflow/providers/edge3/cli/definition.py
+++ b/providers/edge3/src/airflow/providers/edge3/cli/definition.py
@@ -40,7 +40,13 @@ ARG_TEAM_NAME = Arg(
         "-t",
         "--team-name",
     ),
-    help="Team name for multi-team setups. If not provided, worker operates 
without team isolation.",
+    help=(
+        "Team name for the experimental ``[core] multi_team`` feature. This is 
a "
+        "UI/REST API-level hint; the Execution API does not currently enforce "
+        "team-based access boundaries (see 
``airflow-core/docs/security/workload.rst``, "
+        "section 'No team-level isolation in Execution API'). If omitted, the 
worker "
+        "operates as a default-team worker."
+    ),
 )
 ARG_EDGE_HOSTNAME = Arg(
     ("-H", "--edge-hostname"),
diff --git 
a/providers/edge3/src/airflow/providers/edge3/worker_api/datamodels.py 
b/providers/edge3/src/airflow/providers/edge3/worker_api/datamodels.py
index fb947ee5003..dac49485e42 100644
--- a/providers/edge3/src/airflow/providers/edge3/worker_api/datamodels.py
+++ b/providers/edge3/src/airflow/providers/edge3/worker_api/datamodels.py
@@ -125,7 +125,14 @@ class WorkerQueuesBase(BaseModel):
         str | None,
         Field(
             None,
-            description="Team name for multi-team setups. If not provided, 
worker operates without team isolation.",
+            description=(
+                "Team name for the experimental ``[core] multi_team`` feature. 
"
+                "This is a UI/REST API-level hint; the Execution API does not "
+                "currently enforce team-based access boundaries -- see "
+                "``airflow-core/docs/security/workload.rst`` (section: "
+                "'No team-level isolation in Execution API'). Workers without "
+                "team_name behave as default-team workers."
+            ),
         ),
     ] = None
 
diff --git 
a/providers/edge3/src/airflow/providers/edge3/worker_api/v2-edge-generated.yaml 
b/providers/edge3/src/airflow/providers/edge3/worker_api/v2-edge-generated.yaml
index c777d1f1bec..6b006a92916 100644
--- 
a/providers/edge3/src/airflow/providers/edge3/worker_api/v2-edge-generated.yaml
+++ 
b/providers/edge3/src/airflow/providers/edge3/worker_api/v2-edge-generated.yaml
@@ -1321,8 +1321,11 @@ components:
           - type: string
           - type: 'null'
           title: Team Name
-          description: Team name for multi-team setups. If not provided, 
worker operates
-            without team isolation.
+          description: 'Team name for the experimental ``[core] multi_team`` 
feature.
+            This is a UI/REST API-level hint; the Execution API does not 
currently
+            enforce team-based access boundaries -- see 
``airflow-core/docs/security/workload.rst``
+            (section: ''No team-level isolation in Execution API''). Workers 
without
+            team_name behave as default-team workers.'
         state:
           $ref: '#/components/schemas/EdgeWorkerState'
           description: State of the worker from the view of the worker.
@@ -1435,8 +1438,11 @@ components:
           - type: string
           - type: 'null'
           title: Team Name
-          description: Team name for multi-team setups. If not provided, 
worker operates
-            without team isolation.
+          description: 'Team name for the experimental ``[core] multi_team`` 
feature.
+            This is a UI/REST API-level hint; the Execution API does not 
currently
+            enforce team-based access boundaries -- see 
``airflow-core/docs/security/workload.rst``
+            (section: ''No team-level isolation in Execution API''). Workers 
without
+            team_name behave as default-team workers.'
         free_concurrency:
           type: integer
           title: Free Concurrency
@@ -1523,8 +1529,11 @@ components:
           - type: string
           - type: 'null'
           title: Team Name
-          description: Team name for multi-team setups. If not provided, 
worker operates
-            without team isolation.
+          description: 'Team name for the experimental ``[core] multi_team`` 
feature.
+            This is a UI/REST API-level hint; the Execution API does not 
currently
+            enforce team-based access boundaries -- see 
``airflow-core/docs/security/workload.rst``
+            (section: ''No team-level isolation in Execution API''). Workers 
without
+            team_name behave as default-team workers.'
         state:
           $ref: '#/components/schemas/EdgeWorkerState'
           description: State of the worker from the view of the worker.

Reply via email to