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

potiuk 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 58817e368f Add a feature to be able to modify comments in released 
constraints (#33372)
58817e368f is described below

commit 58817e368f68620e613ebfe1bd63637e12d4effe
Author: Jarek Potiuk <[email protected]>
AuthorDate: Mon Aug 14 01:46:48 2023 +0200

    Add a feature to be able to modify comments in released constraints (#33372)
    
    This feature allows to update comments in released constraint
    files.
    
    We already have a possibility to update packages, but we can also
    now update comments in the released constraint files.
    
    Co-authored-by: Pierre Jeambrun <[email protected]>
---
 .../commands/release_management_commands.py        |  77 ++++++++++++---
 .../commands/release_management_commands_config.py |  14 ++-
 .../src/airflow_breeze/utils/common_options.py     |   7 +-
 images/breeze/output-commands-hash.txt             |   4 +-
 images/breeze/output-commands.svg                  | 108 ++++++++++-----------
 images/breeze/output_release-management.svg        |  58 +++++------
 ...utput_release-management_update-constraints.svg |  80 ++++++++++-----
 7 files changed, 224 insertions(+), 124 deletions(-)

diff --git 
a/dev/breeze/src/airflow_breeze/commands/release_management_commands.py 
b/dev/breeze/src/airflow_breeze/commands/release_management_commands.py
index 9d617bb2b0..3720101346 100644
--- a/dev/breeze/src/airflow_breeze/commands/release_management_commands.py
+++ b/dev/breeze/src/airflow_breeze/commands/release_management_commands.py
@@ -54,6 +54,7 @@ from airflow_breeze.utils.common_options import (
     argument_packages,
     argument_packages_plus_all_providers,
     option_airflow_constraints_mode_ci,
+    option_airflow_constraints_mode_update,
     option_airflow_constraints_reference,
     option_airflow_extras,
     option_answer,
@@ -1309,14 +1310,35 @@ def 
checkout_constraint_tag_and_reset_branch(constraints_repo: Path, airflow_ver
     get_console().print(f"[info]The hash commit of the tag:[/] 
{result.stdout}")
 
 
-def modify_single_file_constraints(constraints_file: Path, 
updated_constraints: tuple[str]) -> bool:
+def update_comment(content: str, comment_file: Path) -> str:
+    comment_text = comment_file.read_text()
+    if comment_text in content:
+        return content
+    comment_lines = comment_text.splitlines()
+    content_lines = content.splitlines()
+    updated_lines: list[str] = []
+    updated = False
+    for line in content_lines:
+        if not line.strip().startswith("#") and not updated:
+            updated_lines.extend(comment_lines)
+            updated = True
+        updated_lines.append(line)
+    return "\n".join(updated_lines) + "\n"
+
+
+def modify_single_file_constraints(
+    constraints_file: Path, updated_constraints: tuple[str] | None, 
comment_file: Path | None
+) -> bool:
     constraint_content = constraints_file.read_text()
     original_content = constraint_content
-    for constraint in updated_constraints:
-        package, version = constraint.split("==")
-        constraint_content = re.sub(
-            rf"^{package}==.*$", f"{package}=={version}", constraint_content, 
flags=re.MULTILINE
-        )
+    if comment_file:
+        constraint_content = update_comment(constraint_content, comment_file)
+    if updated_constraints:
+        for constraint in updated_constraints:
+            package, version = constraint.split("==")
+            constraint_content = re.sub(
+                rf"^{package}==.*$", f"{package}=={version}", 
constraint_content, flags=re.MULTILINE
+            )
     if constraint_content != original_content:
         if not get_dry_run():
             constraints_file.write_text(constraint_content)
@@ -1327,12 +1349,26 @@ def modify_single_file_constraints(constraints_file: 
Path, updated_constraints:
         return False
 
 
-def modify_all_constraint_files(constraints_repo: Path, updated_constraint: 
tuple[str]) -> bool:
+def modify_all_constraint_files(
+    constraints_repo: Path,
+    updated_constraint: tuple[str] | None,
+    comit_file: Path | None,
+    airflow_constrains_mode: str | None,
+) -> bool:
     get_console().print("[info]Updating constraints files:[/]")
     modified = False
-    for constraints_file in constraints_repo.glob("constraints-*.txt"):
+    select_glob = "constraints-*.txt"
+    if airflow_constrains_mode == "constraints":
+        select_glob = "constraints-[0-9.]*.txt"
+    elif airflow_constrains_mode == "constraints-source-providers":
+        select_glob = "constraints-source-providers-[0-9.]*.txt"
+    elif airflow_constrains_mode == "constraints-no-providers":
+        select_glob = "constraints-no-providers-[0-9.]*.txt"
+    else:
+        raise RuntimeError(f"Invalid airflow-constraints-mode: 
{airflow_constrains_mode}")
+    for constraints_file in constraints_repo.glob(select_glob):
         get_console().print(f"[info]Updating {constraints_file.name}")
-        if modify_single_file_constraints(constraints_file, 
updated_constraint):
+        if modify_single_file_constraints(constraints_file, 
updated_constraint, comit_file):
             modified = True
     return modified
 
@@ -1403,11 +1439,20 @@ def push_constraints_and_tag(constraints_repo: Path, 
remote_name: str, airflow_v
 )
 @click.option(
     "--updated-constraint",
-    required=True,
+    required=False,
     envvar="UPDATED_CONSTRAINT",
     multiple=True,
     help="Constraints to be set - in the form of `package==version`. Can be 
repeated",
 )
[email protected](
+    "--comment-file",
+    required=False,
+    type=click.Path(file_okay=True, dir_okay=False, path_type=Path, 
exists=True),
+    envvar="COMMENT_FILE",
+    help="File containing comment to be added to the constraint "
+    "file before the first package (if not added yet).",
+)
+@option_airflow_constraints_mode_update
 @option_verbose
 @option_dry_run
 @option_answer
@@ -1416,13 +1461,17 @@ def update_constraints(
     remote_name: str,
     airflow_versions: str,
     commit_message: str,
-    updated_constraint: tuple[str],
+    airflow_constraints_mode: str | None,
+    updated_constraint: tuple[str] | None,
+    comment_file: Path | None,
 ) -> None:
+    if not updated_constraint and not comment_file:
+        get_console().print("[error]You have to provide one of 
--updated-constraint or --comment-file[/]")
+        sys.exit(1)
     airflow_versions_array = airflow_versions.split(",")
     if len(airflow_versions_array) == 0:
         get_console().print("[error]No airflow versions specified - you 
provided empty string[/]")
         sys.exit(1)
-
     get_console().print(f"Updating constraints for {airflow_versions_array} 
with {updated_constraint}")
     if (
         user_confirm(f"The {constraints_repo.name} repo will be reset. 
Continue?", quit_allowed=False)
@@ -1432,7 +1481,9 @@ def update_constraints(
     fetch_remote(constraints_repo, remote_name)
     for airflow_version in airflow_versions_array:
         checkout_constraint_tag_and_reset_branch(constraints_repo, 
airflow_version)
-        if modify_all_constraint_files(constraints_repo, updated_constraint):
+        if modify_all_constraint_files(
+            constraints_repo, updated_constraint, comment_file, 
airflow_constraints_mode
+        ):
             if confirm_modifications(constraints_repo):
                 commit_constraints_and_tag(constraints_repo, airflow_version, 
commit_message)
                 push_constraints_and_tag(constraints_repo, remote_name, 
airflow_version)
diff --git 
a/dev/breeze/src/airflow_breeze/commands/release_management_commands_config.py 
b/dev/breeze/src/airflow_breeze/commands/release_management_commands_config.py
index 43321586b4..0567e80972 100644
--- 
a/dev/breeze/src/airflow_breeze/commands/release_management_commands_config.py
+++ 
b/dev/breeze/src/airflow_breeze/commands/release_management_commands_config.py
@@ -218,10 +218,22 @@ RELEASE_MANAGEMENT_PARAMETERS: dict[str, list[dict[str, 
str | list[str]]]] = {
             "name": "Update constraints flags",
             "options": [
                 "--constraints-repo",
+                "--commit-message",
                 "--remote-name",
+            ],
+        },
+        {
+            "name": "Selection criteria",
+            "options": [
                 "--airflow-versions",
-                "--commit-message",
+                "--airflow-constraints-mode",
+            ],
+        },
+        {
+            "name": "Action to perform",
+            "options": [
                 "--updated-constraint",
+                "--comment-file",
             ],
         },
     ],
diff --git a/dev/breeze/src/airflow_breeze/utils/common_options.py 
b/dev/breeze/src/airflow_breeze/utils/common_options.py
index 3e63ce0e70..ce6e60b0e0 100644
--- a/dev/breeze/src/airflow_breeze/utils/common_options.py
+++ b/dev/breeze/src/airflow_breeze/utils/common_options.py
@@ -477,7 +477,12 @@ option_airflow_constraints_reference_build = click.option(
     help="Constraint reference to use when building the image.",
     envvar="AIRFLOW_CONSTRAINTS_REFERENCE",
 )
-
+option_airflow_constraints_mode_update = click.option(
+    "--airflow-constraints-mode",
+    type=BetterChoice(ALLOWED_CONSTRAINTS_MODES_CI),
+    required=False,
+    help="Limit constraint update to only selected constraint mode - if 
selected.",
+)
 option_airflow_constraints_mode_ci = click.option(
     "--airflow-constraints-mode",
     type=BetterChoice(ALLOWED_CONSTRAINTS_MODES_CI),
diff --git a/images/breeze/output-commands-hash.txt 
b/images/breeze/output-commands-hash.txt
index 378922f352..d2a17568bd 100644
--- a/images/breeze/output-commands-hash.txt
+++ b/images/breeze/output-commands-hash.txt
@@ -48,9 +48,9 @@ 
release-management:publish-docs:6d8ea0362b7a4394d8367e2105516cf8
 release-management:release-prod-images:cfbfe8b19fee91fd90718f98ef2fd078
 release-management:start-rc-process:b27bd524dd3c89f50a747b60a7e892c1
 release-management:start-release:419f48f6a4ff4457cb9de7ff496aebbe
-release-management:update-constraints:596d970210f9a71cf6b688995797c0e2
+release-management:update-constraints:02ec4b119150e3fdbac52026e94820ef
 release-management:verify-provider-packages:96dce5644aad6b37080acf77b3d8de3a
-release-management:efeba7a269eea69e46b47b0ef7519eb9
+release-management:89b9da7b140208d6d15823d7ccf3c017
 sbom:generate-provider-requirements:9abe53200ea5f40e0bf7c27f6087f27f
 sbom:update-sbom-information:0ce56884e5f842e3e80d6619df1ccc64
 sbom:935d041028e847d3faf763a95b51063e
diff --git a/images/breeze/output-commands.svg 
b/images/breeze/output-commands.svg
index 65ed6cdbb0..38d9a6c366 100644
--- a/images/breeze/output-commands.svg
+++ b/images/breeze/output-commands.svg
@@ -35,8 +35,8 @@
     .breeze-help-r1 { fill: #c5c8c6;font-weight: bold }
 .breeze-help-r2 { fill: #c5c8c6 }
 .breeze-help-r3 { fill: #d0b344;font-weight: bold }
-.breeze-help-r4 { fill: #68a0b3;font-weight: bold }
-.breeze-help-r5 { fill: #868887 }
+.breeze-help-r4 { fill: #868887 }
+.breeze-help-r5 { fill: #68a0b3;font-weight: bold }
 .breeze-help-r6 { fill: #98a84b;font-weight: bold }
 .breeze-help-r7 { fill: #8d7b39 }
     </style>
@@ -217,59 +217,59 @@
     
     <g class="breeze-help-matrix">
     <text class="breeze-help-r2" x="1464" y="20" textLength="12.2" 
clip-path="url(#breeze-help-line-0)">
-</text><text class="breeze-help-r3" x="12.2" y="44.4" textLength="85.4" 
clip-path="url(#breeze-help-line-1)">Usage:&#160;</text><text 
class="breeze-help-r1" x="97.6" y="44.4" textLength="97.6" 
clip-path="url(#breeze-help-line-1)">breeze&#160;[</text><text 
class="breeze-help-r4" x="195.2" y="44.4" textLength="85.4" 
clip-path="url(#breeze-help-line-1)">OPTIONS</text><text class="breeze-help-r1" 
x="280.6" y="44.4" textLength="24.4" 
clip-path="url(#breeze-help-line-1)">]&#160;</text><text cl [...]
+</text><text class="breeze-help-r3" x="12.2" y="44.4" textLength="85.4" 
clip-path="url(#breeze-help-line-1)">Usage:&#160;</text><text 
class="breeze-help-r1" x="97.6" y="44.4" textLength="414.8" 
clip-path="url(#breeze-help-line-1)">breeze&#160;[OPTIONS]&#160;COMMAND&#160;[ARGS]...</text><text
 class="breeze-help-r2" x="1464" y="44.4" textLength="12.2" 
clip-path="url(#breeze-help-line-1)">
 </text><text class="breeze-help-r2" x="1464" y="68.8" textLength="12.2" 
clip-path="url(#breeze-help-line-2)">
-</text><text class="breeze-help-r5" x="0" y="93.2" textLength="24.4" 
clip-path="url(#breeze-help-line-3)">╭─</text><text class="breeze-help-r5" 
x="24.4" y="93.2" textLength="158.6" 
clip-path="url(#breeze-help-line-3)">&#160;Basic&#160;flags&#160;</text><text 
class="breeze-help-r5" x="183" y="93.2" textLength="1256.6" 
clip-path="url(#breeze-help-line-3)">───────────────────────────────────────────────────────────────────────────────────────────────────────</text><text
 class="breeze-help-r [...]
-</text><text class="breeze-help-r5" x="0" y="117.6" textLength="12.2" 
clip-path="url(#breeze-help-line-4)">│</text><text class="breeze-help-r4" 
x="24.4" y="117.6" textLength="12.2" 
clip-path="url(#breeze-help-line-4)">-</text><text class="breeze-help-r4" 
x="36.6" y="117.6" textLength="85.4" 
clip-path="url(#breeze-help-line-4)">-python</text><text class="breeze-help-r6" 
x="305" y="117.6" textLength="24.4" 
clip-path="url(#breeze-help-line-4)">-p</text><text class="breeze-help-r2" 
x="353.8" [...]
-</text><text class="breeze-help-r5" x="0" y="142" textLength="12.2" 
clip-path="url(#breeze-help-line-5)">│</text><text class="breeze-help-r5" 
x="353.8" y="142" textLength="732" 
clip-path="url(#breeze-help-line-5)">[default:&#160;3.8]&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&
 [...]
-</text><text class="breeze-help-r5" x="0" y="166.4" textLength="12.2" 
clip-path="url(#breeze-help-line-6)">│</text><text class="breeze-help-r4" 
x="24.4" y="166.4" textLength="12.2" 
clip-path="url(#breeze-help-line-6)">-</text><text class="breeze-help-r4" 
x="36.6" y="166.4" textLength="97.6" 
clip-path="url(#breeze-help-line-6)">-backend</text><text 
class="breeze-help-r6" x="305" y="166.4" textLength="24.4" 
clip-path="url(#breeze-help-line-6)">-b</text><text class="breeze-help-r2" 
x="353.8 [...]
-</text><text class="breeze-help-r5" x="0" y="190.8" textLength="12.2" 
clip-path="url(#breeze-help-line-7)">│</text><text class="breeze-help-r4" 
x="24.4" y="190.8" textLength="12.2" 
clip-path="url(#breeze-help-line-7)">-</text><text class="breeze-help-r4" 
x="36.6" y="190.8" textLength="109.8" 
clip-path="url(#breeze-help-line-7)">-postgres</text><text 
class="breeze-help-r4" x="146.4" y="190.8" textLength="97.6" 
clip-path="url(#breeze-help-line-7)">-version</text><text class="breeze-help-r6 
[...]
-</text><text class="breeze-help-r5" x="0" y="215.2" textLength="12.2" 
clip-path="url(#breeze-help-line-8)">│</text><text class="breeze-help-r4" 
x="24.4" y="215.2" textLength="12.2" 
clip-path="url(#breeze-help-line-8)">-</text><text class="breeze-help-r4" 
x="36.6" y="215.2" textLength="73.2" 
clip-path="url(#breeze-help-line-8)">-mysql</text><text class="breeze-help-r4" 
x="109.8" y="215.2" textLength="97.6" 
clip-path="url(#breeze-help-line-8)">-version</text><text 
class="breeze-help-r6" x= [...]
-</text><text class="breeze-help-r5" x="0" y="239.6" textLength="12.2" 
clip-path="url(#breeze-help-line-9)">│</text><text class="breeze-help-r4" 
x="24.4" y="239.6" textLength="12.2" 
clip-path="url(#breeze-help-line-9)">-</text><text class="breeze-help-r4" 
x="36.6" y="239.6" textLength="73.2" 
clip-path="url(#breeze-help-line-9)">-mssql</text><text class="breeze-help-r4" 
x="109.8" y="239.6" textLength="97.6" 
clip-path="url(#breeze-help-line-9)">-version</text><text 
class="breeze-help-r6" x= [...]
-</text><text class="breeze-help-r5" x="0" y="264" textLength="12.2" 
clip-path="url(#breeze-help-line-10)">│</text><text class="breeze-help-r4" 
x="24.4" y="264" textLength="12.2" 
clip-path="url(#breeze-help-line-10)">-</text><text class="breeze-help-r4" 
x="36.6" y="264" textLength="146.4" 
clip-path="url(#breeze-help-line-10)">-integration</text><text 
class="breeze-help-r2" x="353.8" y="264" textLength="1085.8" 
clip-path="url(#breeze-help-line-10)">Integration(s)&#160;to&#160;enable&#160;w 
[...]
-</text><text class="breeze-help-r5" x="0" y="288.4" textLength="12.2" 
clip-path="url(#breeze-help-line-11)">│</text><text class="breeze-help-r7" 
x="353.8" y="288.4" textLength="1085.8" 
clip-path="url(#breeze-help-line-11)">(all&#160;|&#160;all-testable&#160;|&#160;cassandra&#160;|&#160;celery&#160;|&#160;kafka&#160;|&#160;kerberos&#160;|&#160;mongo&#160;|&#160;otel&#160;|&#160;pinot&#160;|&#160;&#160;&#160;&#160;&#160;</text><text
 class="breeze-help-r5" x="1451.8" y="288.4" textLength="1 [...]
-</text><text class="breeze-help-r5" x="0" y="312.8" textLength="12.2" 
clip-path="url(#breeze-help-line-12)">│</text><text class="breeze-help-r7" 
x="353.8" y="312.8" textLength="1085.8" 
clip-path="url(#breeze-help-line-12)">statsd&#160;|&#160;statsd&#160;|&#160;trino)&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#1
 [...]
-</text><text class="breeze-help-r5" x="0" y="337.2" textLength="12.2" 
clip-path="url(#breeze-help-line-13)">│</text><text class="breeze-help-r4" 
x="24.4" y="337.2" textLength="12.2" 
clip-path="url(#breeze-help-line-13)">-</text><text class="breeze-help-r4" 
x="36.6" y="337.2" textLength="97.6" 
clip-path="url(#breeze-help-line-13)">-forward</text><text 
class="breeze-help-r4" x="134.2" y="337.2" textLength="146.4" 
clip-path="url(#breeze-help-line-13)">-credentials</text><text class="breeze- 
[...]
-</text><text class="breeze-help-r5" x="0" y="361.6" textLength="12.2" 
clip-path="url(#breeze-help-line-14)">│</text><text class="breeze-help-r4" 
x="24.4" y="361.6" textLength="12.2" 
clip-path="url(#breeze-help-line-14)">-</text><text class="breeze-help-r4" 
x="36.6" y="361.6" textLength="36.6" 
clip-path="url(#breeze-help-line-14)">-db</text><text class="breeze-help-r4" 
x="73.2" y="361.6" textLength="73.2" 
clip-path="url(#breeze-help-line-14)">-reset</text><text class="breeze-help-r6" 
x="3 [...]
-</text><text class="breeze-help-r5" x="0" y="386" textLength="12.2" 
clip-path="url(#breeze-help-line-15)">│</text><text class="breeze-help-r4" 
x="24.4" y="386" textLength="12.2" 
clip-path="url(#breeze-help-line-15)">-</text><text class="breeze-help-r4" 
x="36.6" y="386" textLength="48.8" 
clip-path="url(#breeze-help-line-15)">-max</text><text class="breeze-help-r4" 
x="85.4" y="386" textLength="61" 
clip-path="url(#breeze-help-line-15)">-time</text><text class="breeze-help-r2" 
x="353.8" y="3 [...]
-</text><text class="breeze-help-r5" x="0" y="410.4" textLength="12.2" 
clip-path="url(#breeze-help-line-16)">│</text><text class="breeze-help-r7" 
x="353.8" y="410.4" textLength="1049.2" 
clip-path="url(#breeze-help-line-16)">(INTEGER&#160;RANGE)&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#1
 [...]
-</text><text class="breeze-help-r5" x="0" y="434.8" textLength="12.2" 
clip-path="url(#breeze-help-line-17)">│</text><text class="breeze-help-r4" 
x="24.4" y="434.8" textLength="12.2" 
clip-path="url(#breeze-help-line-17)">-</text><text class="breeze-help-r4" 
x="36.6" y="434.8" textLength="85.4" 
clip-path="url(#breeze-help-line-17)">-github</text><text 
class="breeze-help-r4" x="122" y="434.8" textLength="134.2" 
clip-path="url(#breeze-help-line-17)">-repository</text><text 
class="breeze-help [...]
-</text><text class="breeze-help-r5" x="0" y="459.2" textLength="12.2" 
clip-path="url(#breeze-help-line-18)">│</text><text class="breeze-help-r4" 
x="24.4" y="459.2" textLength="12.2" 
clip-path="url(#breeze-help-line-18)">-</text><text class="breeze-help-r4" 
x="36.6" y="459.2" textLength="97.6" 
clip-path="url(#breeze-help-line-18)">-builder</text><text 
class="breeze-help-r2" x="353.8" y="459.2" textLength="756.4" 
clip-path="url(#breeze-help-line-18)">Buildx&#160;builder&#160;used&#160;to&# 
[...]
-</text><text class="breeze-help-r5" x="0" y="483.6" textLength="12.2" 
clip-path="url(#breeze-help-line-19)">│</text><text class="breeze-help-r5" 
x="353.8" y="483.6" textLength="756.4" 
clip-path="url(#breeze-help-line-19)">[default:&#160;autodetect]&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#16
 [...]
-</text><text class="breeze-help-r5" x="0" y="508" textLength="1464" 
clip-path="url(#breeze-help-line-20)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
 class="breeze-help-r2" x="1464" y="508" textLength="12.2" 
clip-path="url(#breeze-help-line-20)">
-</text><text class="breeze-help-r5" x="0" y="532.4" textLength="24.4" 
clip-path="url(#breeze-help-line-21)">╭─</text><text class="breeze-help-r5" 
x="24.4" y="532.4" textLength="195.2" 
clip-path="url(#breeze-help-line-21)">&#160;Common&#160;options&#160;</text><text
 class="breeze-help-r5" x="219.6" y="532.4" textLength="1220" 
clip-path="url(#breeze-help-line-21)">────────────────────────────────────────────────────────────────────────────────────────────────────</text><text
 class="breeze- [...]
-</text><text class="breeze-help-r5" x="0" y="556.8" textLength="12.2" 
clip-path="url(#breeze-help-line-22)">│</text><text class="breeze-help-r4" 
x="24.4" y="556.8" textLength="12.2" 
clip-path="url(#breeze-help-line-22)">-</text><text class="breeze-help-r4" 
x="36.6" y="556.8" textLength="97.6" 
clip-path="url(#breeze-help-line-22)">-verbose</text><text 
class="breeze-help-r6" x="158.6" y="556.8" textLength="24.4" 
clip-path="url(#breeze-help-line-22)">-v</text><text class="breeze-help-r2" x= 
[...]
-</text><text class="breeze-help-r5" x="0" y="581.2" textLength="12.2" 
clip-path="url(#breeze-help-line-23)">│</text><text class="breeze-help-r4" 
x="24.4" y="581.2" textLength="12.2" 
clip-path="url(#breeze-help-line-23)">-</text><text class="breeze-help-r4" 
x="36.6" y="581.2" textLength="48.8" 
clip-path="url(#breeze-help-line-23)">-dry</text><text class="breeze-help-r4" 
x="85.4" y="581.2" textLength="48.8" 
clip-path="url(#breeze-help-line-23)">-run</text><text class="breeze-help-r6" 
x="15 [...]
-</text><text class="breeze-help-r5" x="0" y="605.6" textLength="12.2" 
clip-path="url(#breeze-help-line-24)">│</text><text class="breeze-help-r4" 
x="24.4" y="605.6" textLength="12.2" 
clip-path="url(#breeze-help-line-24)">-</text><text class="breeze-help-r4" 
x="36.6" y="605.6" textLength="85.4" 
clip-path="url(#breeze-help-line-24)">-answer</text><text 
class="breeze-help-r6" x="158.6" y="605.6" textLength="24.4" 
clip-path="url(#breeze-help-line-24)">-a</text><text class="breeze-help-r2" x=" 
[...]
-</text><text class="breeze-help-r5" x="0" y="630" textLength="12.2" 
clip-path="url(#breeze-help-line-25)">│</text><text class="breeze-help-r4" 
x="24.4" y="630" textLength="12.2" 
clip-path="url(#breeze-help-line-25)">-</text><text class="breeze-help-r4" 
x="36.6" y="630" textLength="61" 
clip-path="url(#breeze-help-line-25)">-help</text><text class="breeze-help-r6" 
x="158.6" y="630" textLength="24.4" 
clip-path="url(#breeze-help-line-25)">-h</text><text class="breeze-help-r2" 
x="207.4" y="63 [...]
-</text><text class="breeze-help-r5" x="0" y="654.4" textLength="1464" 
clip-path="url(#breeze-help-line-26)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
 class="breeze-help-r2" x="1464" y="654.4" textLength="12.2" 
clip-path="url(#breeze-help-line-26)">
-</text><text class="breeze-help-r5" x="0" y="678.8" textLength="24.4" 
clip-path="url(#breeze-help-line-27)">╭─</text><text class="breeze-help-r5" 
x="24.4" y="678.8" textLength="244" 
clip-path="url(#breeze-help-line-27)">&#160;Developer&#160;commands&#160;</text><text
 class="breeze-help-r5" x="268.4" y="678.8" textLength="1171.2" 
clip-path="url(#breeze-help-line-27)">────────────────────────────────────────────────────────────────────────────────────────────────</text><text
 class="breeze- [...]
-</text><text class="breeze-help-r5" x="0" y="703.2" textLength="12.2" 
clip-path="url(#breeze-help-line-28)">│</text><text class="breeze-help-r4" 
x="24.4" y="703.2" textLength="219.6" 
clip-path="url(#breeze-help-line-28)">start-airflow&#160;&#160;&#160;&#160;&#160;</text><text
 class="breeze-help-r2" x="268.4" y="703.2" textLength="1171.2" 
clip-path="url(#breeze-help-line-28)">Enter&#160;breeze&#160;environment&#160;and&#160;starts&#160;all&#160;Airflow&#160;components&#160;in&#160;the&#16
 [...]
-</text><text class="breeze-help-r5" x="0" y="727.6" textLength="12.2" 
clip-path="url(#breeze-help-line-29)">│</text><text class="breeze-help-r2" 
x="268.4" y="727.6" textLength="1171.2" 
clip-path="url(#breeze-help-line-29)">if&#160;contents&#160;of&#160;www&#160;directory&#160;changed.&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#1
 [...]
-</text><text class="breeze-help-r5" x="0" y="752" textLength="12.2" 
clip-path="url(#breeze-help-line-30)">│</text><text class="breeze-help-r4" 
x="24.4" y="752" textLength="219.6" 
clip-path="url(#breeze-help-line-30)">static-checks&#160;&#160;&#160;&#160;&#160;</text><text
 class="breeze-help-r2" x="268.4" y="752" textLength="1171.2" 
clip-path="url(#breeze-help-line-30)">Run&#160;static&#160;checks.&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#
 [...]
-</text><text class="breeze-help-r5" x="0" y="776.4" textLength="12.2" 
clip-path="url(#breeze-help-line-31)">│</text><text class="breeze-help-r4" 
x="24.4" y="776.4" textLength="219.6" 
clip-path="url(#breeze-help-line-31)">build-docs&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text
 class="breeze-help-r2" x="268.4" y="776.4" textLength="1171.2" 
clip-path="url(#breeze-help-line-31)">Build&#160;documents.&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;
 [...]
-</text><text class="breeze-help-r5" x="0" y="800.8" textLength="12.2" 
clip-path="url(#breeze-help-line-32)">│</text><text class="breeze-help-r4" 
x="24.4" y="800.8" textLength="219.6" 
clip-path="url(#breeze-help-line-32)">down&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text
 class="breeze-help-r2" x="268.4" y="800.8" textLength="1171.2" 
clip-path="url(#breeze-help-line-32)">Stop&#160;running&#160;breeze&#160;environment.&#160;&#160;&#160;&#16
 [...]
-</text><text class="breeze-help-r5" x="0" y="825.2" textLength="12.2" 
clip-path="url(#breeze-help-line-33)">│</text><text class="breeze-help-r4" 
x="24.4" y="825.2" textLength="219.6" 
clip-path="url(#breeze-help-line-33)">shell&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text
 class="breeze-help-r2" x="268.4" y="825.2" textLength="1171.2" 
clip-path="url(#breeze-help-line-33)">Enter&#160;breeze&#160;environment.&#160;this&#160;is&#160;the&#160;defaul
 [...]
-</text><text class="breeze-help-r5" x="0" y="849.6" textLength="12.2" 
clip-path="url(#breeze-help-line-34)">│</text><text class="breeze-help-r4" 
x="24.4" y="849.6" textLength="219.6" 
clip-path="url(#breeze-help-line-34)">exec&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text
 class="breeze-help-r2" x="268.4" y="849.6" textLength="1171.2" 
clip-path="url(#breeze-help-line-34)">Joins&#160;the&#160;interactive&#160;shell&#160;of&#160;running&#160;
 [...]
-</text><text class="breeze-help-r5" x="0" y="874" textLength="12.2" 
clip-path="url(#breeze-help-line-35)">│</text><text class="breeze-help-r4" 
x="24.4" y="874" textLength="219.6" 
clip-path="url(#breeze-help-line-35)">compile-www-assets</text><text 
class="breeze-help-r2" x="268.4" y="874" textLength="1171.2" 
clip-path="url(#breeze-help-line-35)">Compiles&#160;www&#160;assets.&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&
 [...]
-</text><text class="breeze-help-r5" x="0" y="898.4" textLength="12.2" 
clip-path="url(#breeze-help-line-36)">│</text><text class="breeze-help-r4" 
x="24.4" y="898.4" textLength="219.6" 
clip-path="url(#breeze-help-line-36)">cleanup&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text
 class="breeze-help-r2" x="268.4" y="898.4" textLength="805.2" 
clip-path="url(#breeze-help-line-36)">Cleans&#160;the&#160;cache&#160;of&#160;parameters,&#160;docker&#160;cache&#160;and&#
 [...]
-</text><text class="breeze-help-r5" x="0" y="922.8" textLength="1464" 
clip-path="url(#breeze-help-line-37)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
 class="breeze-help-r2" x="1464" y="922.8" textLength="12.2" 
clip-path="url(#breeze-help-line-37)">
-</text><text class="breeze-help-r5" x="0" y="947.2" textLength="24.4" 
clip-path="url(#breeze-help-line-38)">╭─</text><text class="breeze-help-r5" 
x="24.4" y="947.2" textLength="219.6" 
clip-path="url(#breeze-help-line-38)">&#160;Testing&#160;commands&#160;</text><text
 class="breeze-help-r5" x="244" y="947.2" textLength="1195.6" 
clip-path="url(#breeze-help-line-38)">──────────────────────────────────────────────────────────────────────────────────────────────────</text><text
 class="breeze- [...]
-</text><text class="breeze-help-r5" x="0" y="971.6" textLength="12.2" 
clip-path="url(#breeze-help-line-39)">│</text><text class="breeze-help-r4" 
x="24.4" y="971.6" textLength="183" 
clip-path="url(#breeze-help-line-39)">testing&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text
 class="breeze-help-r2" x="231.8" y="971.6" textLength="1207.8" 
clip-path="url(#breeze-help-line-39)">Tools&#160;that&#160;developers&#160;can&#160;use&#160;to&#160;run&#160;tests&#160;&#160;&#160;&#160;&#1
 [...]
-</text><text class="breeze-help-r5" x="0" y="996" textLength="12.2" 
clip-path="url(#breeze-help-line-40)">│</text><text class="breeze-help-r4" 
x="24.4" y="996" textLength="183" 
clip-path="url(#breeze-help-line-40)">k8s&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text
 class="breeze-help-r2" x="231.8" y="996" textLength="1207.8" 
clip-path="url(#breeze-help-line-40)">Tools&#160;that&#160;developers&#160;use&#160;to&#160;run&#160;Kubernetes&#160;tests&#160;
 [...]
-</text><text class="breeze-help-r5" x="0" y="1020.4" textLength="1464" 
clip-path="url(#breeze-help-line-41)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
 class="breeze-help-r2" x="1464" y="1020.4" textLength="12.2" 
clip-path="url(#breeze-help-line-41)">
-</text><text class="breeze-help-r5" x="0" y="1044.8" textLength="24.4" 
clip-path="url(#breeze-help-line-42)">╭─</text><text class="breeze-help-r5" 
x="24.4" y="1044.8" textLength="195.2" 
clip-path="url(#breeze-help-line-42)">&#160;Image&#160;commands&#160;</text><text
 class="breeze-help-r5" x="219.6" y="1044.8" textLength="1220" 
clip-path="url(#breeze-help-line-42)">────────────────────────────────────────────────────────────────────────────────────────────────────</text><text
 class="bree [...]
-</text><text class="breeze-help-r5" x="0" y="1069.2" textLength="12.2" 
clip-path="url(#breeze-help-line-43)">│</text><text class="breeze-help-r4" 
x="24.4" y="1069.2" textLength="207.4" 
clip-path="url(#breeze-help-line-43)">ci-image&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text
 class="breeze-help-r2" x="256.2" y="1069.2" textLength="597.8" 
clip-path="url(#breeze-help-line-43)">Tools&#160;that&#160;developers&#160;can&#160;use&#160;to&#160;manually&#160;manage&#160;</te
 [...]
-</text><text class="breeze-help-r5" x="0" y="1093.6" textLength="12.2" 
clip-path="url(#breeze-help-line-44)">│</text><text class="breeze-help-r4" 
x="24.4" y="1093.6" textLength="207.4" 
clip-path="url(#breeze-help-line-44)">prod-image&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text
 class="breeze-help-r2" x="256.2" y="1093.6" textLength="597.8" 
clip-path="url(#breeze-help-line-44)">Tools&#160;that&#160;developers&#160;can&#160;use&#160;to&#160;manually&#160;manage&#160;</text><text
 c [...]
-</text><text class="breeze-help-r5" x="0" y="1118" textLength="1464" 
clip-path="url(#breeze-help-line-45)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
 class="breeze-help-r2" x="1464" y="1118" textLength="12.2" 
clip-path="url(#breeze-help-line-45)">
-</text><text class="breeze-help-r5" x="0" y="1142.4" textLength="24.4" 
clip-path="url(#breeze-help-line-46)">╭─</text><text class="breeze-help-r5" 
x="24.4" y="1142.4" textLength="353.8" 
clip-path="url(#breeze-help-line-46)">&#160;Release&#160;management&#160;commands&#160;</text><text
 class="breeze-help-r5" x="378.2" y="1142.4" textLength="1061.4" 
clip-path="url(#breeze-help-line-46)">───────────────────────────────────────────────────────────────────────────────────────</text><text
 clas [...]
-</text><text class="breeze-help-r5" x="0" y="1166.8" textLength="12.2" 
clip-path="url(#breeze-help-line-47)">│</text><text class="breeze-help-r4" 
x="24.4" y="1166.8" textLength="280.6" 
clip-path="url(#breeze-help-line-47)">release-management&#160;&#160;&#160;&#160;&#160;</text><text
 class="breeze-help-r2" x="329.4" y="1166.8" textLength="1110.2" 
clip-path="url(#breeze-help-line-47)">Tools&#160;that&#160;release&#160;managers&#160;can&#160;use&#160;to&#160;prepare&#160;and&#160;manage&#16
 [...]
-</text><text class="breeze-help-r5" x="0" y="1191.2" textLength="12.2" 
clip-path="url(#breeze-help-line-48)">│</text><text class="breeze-help-r4" 
x="24.4" y="1191.2" textLength="280.6" 
clip-path="url(#breeze-help-line-48)">sbom&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text
 class="breeze-help-r2" x="329.4" y="1191.2" textLength="1110.2" 
clip-path="url(#breeze-help-line-48)">Tools&#160;that&#160;release&#160;ma [...]
-</text><text class="breeze-help-r5" x="0" y="1215.6" textLength="1464" 
clip-path="url(#breeze-help-line-49)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
 class="breeze-help-r2" x="1464" y="1215.6" textLength="12.2" 
clip-path="url(#breeze-help-line-49)">
-</text><text class="breeze-help-r5" x="0" y="1240" textLength="24.4" 
clip-path="url(#breeze-help-line-50)">╭─</text><text class="breeze-help-r5" 
x="24.4" y="1240" textLength="195.2" 
clip-path="url(#breeze-help-line-50)">&#160;Other&#160;commands&#160;</text><text
 class="breeze-help-r5" x="219.6" y="1240" textLength="1220" 
clip-path="url(#breeze-help-line-50)">────────────────────────────────────────────────────────────────────────────────────────────────────</text><text
 class="breeze-hel [...]
-</text><text class="breeze-help-r5" x="0" y="1264.4" textLength="12.2" 
clip-path="url(#breeze-help-line-51)">│</text><text class="breeze-help-r4" 
x="24.4" y="1264.4" textLength="122" 
clip-path="url(#breeze-help-line-51)">setup&#160;&#160;&#160;&#160;&#160;</text><text
 class="breeze-help-r2" x="170.8" y="1264.4" textLength="1268.8" 
clip-path="url(#breeze-help-line-51)">Tools&#160;that&#160;developers&#160;can&#160;use&#160;to&#160;configure&#160;Breeze&#160;&#160;&#160;&#160;&#160;&#160;&
 [...]
-</text><text class="breeze-help-r5" x="0" y="1288.8" textLength="12.2" 
clip-path="url(#breeze-help-line-52)">│</text><text class="breeze-help-r4" 
x="24.4" y="1288.8" textLength="122" 
clip-path="url(#breeze-help-line-52)">ci&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text
 class="breeze-help-r2" x="170.8" y="1288.8" textLength="134.2" 
clip-path="url(#breeze-help-line-52)">Tools&#160;that&#160;</text><text 
class="breeze-help-r4" x="305" y="1288.8" textLength="24.4" clip-path="ur [...]
-</text><text class="breeze-help-r5" x="0" y="1313.2" textLength="1464" 
clip-path="url(#breeze-help-line-53)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
 class="breeze-help-r2" x="1464" y="1313.2" textLength="12.2" 
clip-path="url(#breeze-help-line-53)">
+</text><text class="breeze-help-r4" x="0" y="93.2" textLength="24.4" 
clip-path="url(#breeze-help-line-3)">╭─</text><text class="breeze-help-r4" 
x="24.4" y="93.2" textLength="158.6" 
clip-path="url(#breeze-help-line-3)">&#160;Basic&#160;flags&#160;</text><text 
class="breeze-help-r4" x="183" y="93.2" textLength="1256.6" 
clip-path="url(#breeze-help-line-3)">───────────────────────────────────────────────────────────────────────────────────────────────────────</text><text
 class="breeze-help-r [...]
+</text><text class="breeze-help-r4" x="0" y="117.6" textLength="12.2" 
clip-path="url(#breeze-help-line-4)">│</text><text class="breeze-help-r5" 
x="24.4" y="117.6" textLength="12.2" 
clip-path="url(#breeze-help-line-4)">-</text><text class="breeze-help-r5" 
x="36.6" y="117.6" textLength="85.4" 
clip-path="url(#breeze-help-line-4)">-python</text><text class="breeze-help-r6" 
x="305" y="117.6" textLength="24.4" 
clip-path="url(#breeze-help-line-4)">-p</text><text class="breeze-help-r2" 
x="353.8" [...]
+</text><text class="breeze-help-r4" x="0" y="142" textLength="12.2" 
clip-path="url(#breeze-help-line-5)">│</text><text class="breeze-help-r4" 
x="353.8" y="142" textLength="732" 
clip-path="url(#breeze-help-line-5)">[default:&#160;3.8]&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&
 [...]
+</text><text class="breeze-help-r4" x="0" y="166.4" textLength="12.2" 
clip-path="url(#breeze-help-line-6)">│</text><text class="breeze-help-r5" 
x="24.4" y="166.4" textLength="12.2" 
clip-path="url(#breeze-help-line-6)">-</text><text class="breeze-help-r5" 
x="36.6" y="166.4" textLength="97.6" 
clip-path="url(#breeze-help-line-6)">-backend</text><text 
class="breeze-help-r6" x="305" y="166.4" textLength="24.4" 
clip-path="url(#breeze-help-line-6)">-b</text><text class="breeze-help-r2" 
x="353.8 [...]
+</text><text class="breeze-help-r4" x="0" y="190.8" textLength="12.2" 
clip-path="url(#breeze-help-line-7)">│</text><text class="breeze-help-r5" 
x="24.4" y="190.8" textLength="12.2" 
clip-path="url(#breeze-help-line-7)">-</text><text class="breeze-help-r5" 
x="36.6" y="190.8" textLength="109.8" 
clip-path="url(#breeze-help-line-7)">-postgres</text><text 
class="breeze-help-r5" x="146.4" y="190.8" textLength="97.6" 
clip-path="url(#breeze-help-line-7)">-version</text><text class="breeze-help-r6 
[...]
+</text><text class="breeze-help-r4" x="0" y="215.2" textLength="12.2" 
clip-path="url(#breeze-help-line-8)">│</text><text class="breeze-help-r5" 
x="24.4" y="215.2" textLength="12.2" 
clip-path="url(#breeze-help-line-8)">-</text><text class="breeze-help-r5" 
x="36.6" y="215.2" textLength="73.2" 
clip-path="url(#breeze-help-line-8)">-mysql</text><text class="breeze-help-r5" 
x="109.8" y="215.2" textLength="97.6" 
clip-path="url(#breeze-help-line-8)">-version</text><text 
class="breeze-help-r6" x= [...]
+</text><text class="breeze-help-r4" x="0" y="239.6" textLength="12.2" 
clip-path="url(#breeze-help-line-9)">│</text><text class="breeze-help-r5" 
x="24.4" y="239.6" textLength="12.2" 
clip-path="url(#breeze-help-line-9)">-</text><text class="breeze-help-r5" 
x="36.6" y="239.6" textLength="73.2" 
clip-path="url(#breeze-help-line-9)">-mssql</text><text class="breeze-help-r5" 
x="109.8" y="239.6" textLength="97.6" 
clip-path="url(#breeze-help-line-9)">-version</text><text 
class="breeze-help-r6" x= [...]
+</text><text class="breeze-help-r4" x="0" y="264" textLength="12.2" 
clip-path="url(#breeze-help-line-10)">│</text><text class="breeze-help-r5" 
x="24.4" y="264" textLength="12.2" 
clip-path="url(#breeze-help-line-10)">-</text><text class="breeze-help-r5" 
x="36.6" y="264" textLength="146.4" 
clip-path="url(#breeze-help-line-10)">-integration</text><text 
class="breeze-help-r2" x="353.8" y="264" textLength="1085.8" 
clip-path="url(#breeze-help-line-10)">Integration(s)&#160;to&#160;enable&#160;w 
[...]
+</text><text class="breeze-help-r4" x="0" y="288.4" textLength="12.2" 
clip-path="url(#breeze-help-line-11)">│</text><text class="breeze-help-r7" 
x="353.8" y="288.4" textLength="1085.8" 
clip-path="url(#breeze-help-line-11)">(all&#160;|&#160;all-testable&#160;|&#160;cassandra&#160;|&#160;celery&#160;|&#160;kafka&#160;|&#160;kerberos&#160;|&#160;mongo&#160;|&#160;otel&#160;|&#160;pinot&#160;|&#160;&#160;&#160;&#160;&#160;</text><text
 class="breeze-help-r4" x="1451.8" y="288.4" textLength="1 [...]
+</text><text class="breeze-help-r4" x="0" y="312.8" textLength="12.2" 
clip-path="url(#breeze-help-line-12)">│</text><text class="breeze-help-r7" 
x="353.8" y="312.8" textLength="1085.8" 
clip-path="url(#breeze-help-line-12)">statsd&#160;|&#160;statsd&#160;|&#160;trino)&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#1
 [...]
+</text><text class="breeze-help-r4" x="0" y="337.2" textLength="12.2" 
clip-path="url(#breeze-help-line-13)">│</text><text class="breeze-help-r5" 
x="24.4" y="337.2" textLength="12.2" 
clip-path="url(#breeze-help-line-13)">-</text><text class="breeze-help-r5" 
x="36.6" y="337.2" textLength="97.6" 
clip-path="url(#breeze-help-line-13)">-forward</text><text 
class="breeze-help-r5" x="134.2" y="337.2" textLength="146.4" 
clip-path="url(#breeze-help-line-13)">-credentials</text><text class="breeze- 
[...]
+</text><text class="breeze-help-r4" x="0" y="361.6" textLength="12.2" 
clip-path="url(#breeze-help-line-14)">│</text><text class="breeze-help-r5" 
x="24.4" y="361.6" textLength="12.2" 
clip-path="url(#breeze-help-line-14)">-</text><text class="breeze-help-r5" 
x="36.6" y="361.6" textLength="36.6" 
clip-path="url(#breeze-help-line-14)">-db</text><text class="breeze-help-r5" 
x="73.2" y="361.6" textLength="73.2" 
clip-path="url(#breeze-help-line-14)">-reset</text><text class="breeze-help-r6" 
x="3 [...]
+</text><text class="breeze-help-r4" x="0" y="386" textLength="12.2" 
clip-path="url(#breeze-help-line-15)">│</text><text class="breeze-help-r5" 
x="24.4" y="386" textLength="12.2" 
clip-path="url(#breeze-help-line-15)">-</text><text class="breeze-help-r5" 
x="36.6" y="386" textLength="48.8" 
clip-path="url(#breeze-help-line-15)">-max</text><text class="breeze-help-r5" 
x="85.4" y="386" textLength="61" 
clip-path="url(#breeze-help-line-15)">-time</text><text class="breeze-help-r2" 
x="353.8" y="3 [...]
+</text><text class="breeze-help-r4" x="0" y="410.4" textLength="12.2" 
clip-path="url(#breeze-help-line-16)">│</text><text class="breeze-help-r7" 
x="353.8" y="410.4" textLength="1049.2" 
clip-path="url(#breeze-help-line-16)">(INTEGER&#160;RANGE)&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#1
 [...]
+</text><text class="breeze-help-r4" x="0" y="434.8" textLength="12.2" 
clip-path="url(#breeze-help-line-17)">│</text><text class="breeze-help-r5" 
x="24.4" y="434.8" textLength="12.2" 
clip-path="url(#breeze-help-line-17)">-</text><text class="breeze-help-r5" 
x="36.6" y="434.8" textLength="85.4" 
clip-path="url(#breeze-help-line-17)">-github</text><text 
class="breeze-help-r5" x="122" y="434.8" textLength="134.2" 
clip-path="url(#breeze-help-line-17)">-repository</text><text 
class="breeze-help [...]
+</text><text class="breeze-help-r4" x="0" y="459.2" textLength="12.2" 
clip-path="url(#breeze-help-line-18)">│</text><text class="breeze-help-r5" 
x="24.4" y="459.2" textLength="12.2" 
clip-path="url(#breeze-help-line-18)">-</text><text class="breeze-help-r5" 
x="36.6" y="459.2" textLength="97.6" 
clip-path="url(#breeze-help-line-18)">-builder</text><text 
class="breeze-help-r2" x="353.8" y="459.2" textLength="756.4" 
clip-path="url(#breeze-help-line-18)">Buildx&#160;builder&#160;used&#160;to&# 
[...]
+</text><text class="breeze-help-r4" x="0" y="483.6" textLength="12.2" 
clip-path="url(#breeze-help-line-19)">│</text><text class="breeze-help-r4" 
x="353.8" y="483.6" textLength="756.4" 
clip-path="url(#breeze-help-line-19)">[default:&#160;autodetect]&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#16
 [...]
+</text><text class="breeze-help-r4" x="0" y="508" textLength="1464" 
clip-path="url(#breeze-help-line-20)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
 class="breeze-help-r2" x="1464" y="508" textLength="12.2" 
clip-path="url(#breeze-help-line-20)">
+</text><text class="breeze-help-r4" x="0" y="532.4" textLength="24.4" 
clip-path="url(#breeze-help-line-21)">╭─</text><text class="breeze-help-r4" 
x="24.4" y="532.4" textLength="195.2" 
clip-path="url(#breeze-help-line-21)">&#160;Common&#160;options&#160;</text><text
 class="breeze-help-r4" x="219.6" y="532.4" textLength="1220" 
clip-path="url(#breeze-help-line-21)">────────────────────────────────────────────────────────────────────────────────────────────────────</text><text
 class="breeze- [...]
+</text><text class="breeze-help-r4" x="0" y="556.8" textLength="12.2" 
clip-path="url(#breeze-help-line-22)">│</text><text class="breeze-help-r5" 
x="24.4" y="556.8" textLength="12.2" 
clip-path="url(#breeze-help-line-22)">-</text><text class="breeze-help-r5" 
x="36.6" y="556.8" textLength="97.6" 
clip-path="url(#breeze-help-line-22)">-verbose</text><text 
class="breeze-help-r6" x="158.6" y="556.8" textLength="24.4" 
clip-path="url(#breeze-help-line-22)">-v</text><text class="breeze-help-r2" x= 
[...]
+</text><text class="breeze-help-r4" x="0" y="581.2" textLength="12.2" 
clip-path="url(#breeze-help-line-23)">│</text><text class="breeze-help-r5" 
x="24.4" y="581.2" textLength="12.2" 
clip-path="url(#breeze-help-line-23)">-</text><text class="breeze-help-r5" 
x="36.6" y="581.2" textLength="48.8" 
clip-path="url(#breeze-help-line-23)">-dry</text><text class="breeze-help-r5" 
x="85.4" y="581.2" textLength="48.8" 
clip-path="url(#breeze-help-line-23)">-run</text><text class="breeze-help-r6" 
x="15 [...]
+</text><text class="breeze-help-r4" x="0" y="605.6" textLength="12.2" 
clip-path="url(#breeze-help-line-24)">│</text><text class="breeze-help-r5" 
x="24.4" y="605.6" textLength="12.2" 
clip-path="url(#breeze-help-line-24)">-</text><text class="breeze-help-r5" 
x="36.6" y="605.6" textLength="85.4" 
clip-path="url(#breeze-help-line-24)">-answer</text><text 
class="breeze-help-r6" x="158.6" y="605.6" textLength="24.4" 
clip-path="url(#breeze-help-line-24)">-a</text><text class="breeze-help-r2" x=" 
[...]
+</text><text class="breeze-help-r4" x="0" y="630" textLength="12.2" 
clip-path="url(#breeze-help-line-25)">│</text><text class="breeze-help-r5" 
x="24.4" y="630" textLength="12.2" 
clip-path="url(#breeze-help-line-25)">-</text><text class="breeze-help-r5" 
x="36.6" y="630" textLength="61" 
clip-path="url(#breeze-help-line-25)">-help</text><text class="breeze-help-r6" 
x="158.6" y="630" textLength="24.4" 
clip-path="url(#breeze-help-line-25)">-h</text><text class="breeze-help-r2" 
x="207.4" y="63 [...]
+</text><text class="breeze-help-r4" x="0" y="654.4" textLength="1464" 
clip-path="url(#breeze-help-line-26)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
 class="breeze-help-r2" x="1464" y="654.4" textLength="12.2" 
clip-path="url(#breeze-help-line-26)">
+</text><text class="breeze-help-r4" x="0" y="678.8" textLength="24.4" 
clip-path="url(#breeze-help-line-27)">╭─</text><text class="breeze-help-r4" 
x="24.4" y="678.8" textLength="244" 
clip-path="url(#breeze-help-line-27)">&#160;Developer&#160;commands&#160;</text><text
 class="breeze-help-r4" x="268.4" y="678.8" textLength="1171.2" 
clip-path="url(#breeze-help-line-27)">────────────────────────────────────────────────────────────────────────────────────────────────</text><text
 class="breeze- [...]
+</text><text class="breeze-help-r4" x="0" y="703.2" textLength="12.2" 
clip-path="url(#breeze-help-line-28)">│</text><text class="breeze-help-r5" 
x="24.4" y="703.2" textLength="219.6" 
clip-path="url(#breeze-help-line-28)">start-airflow&#160;&#160;&#160;&#160;&#160;</text><text
 class="breeze-help-r2" x="268.4" y="703.2" textLength="1171.2" 
clip-path="url(#breeze-help-line-28)">Enter&#160;breeze&#160;environment&#160;and&#160;starts&#160;all&#160;Airflow&#160;components&#160;in&#160;the&#16
 [...]
+</text><text class="breeze-help-r4" x="0" y="727.6" textLength="12.2" 
clip-path="url(#breeze-help-line-29)">│</text><text class="breeze-help-r2" 
x="268.4" y="727.6" textLength="1171.2" 
clip-path="url(#breeze-help-line-29)">if&#160;contents&#160;of&#160;www&#160;directory&#160;changed.&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#1
 [...]
+</text><text class="breeze-help-r4" x="0" y="752" textLength="12.2" 
clip-path="url(#breeze-help-line-30)">│</text><text class="breeze-help-r5" 
x="24.4" y="752" textLength="219.6" 
clip-path="url(#breeze-help-line-30)">static-checks&#160;&#160;&#160;&#160;&#160;</text><text
 class="breeze-help-r2" x="268.4" y="752" textLength="1171.2" 
clip-path="url(#breeze-help-line-30)">Run&#160;static&#160;checks.&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#
 [...]
+</text><text class="breeze-help-r4" x="0" y="776.4" textLength="12.2" 
clip-path="url(#breeze-help-line-31)">│</text><text class="breeze-help-r5" 
x="24.4" y="776.4" textLength="219.6" 
clip-path="url(#breeze-help-line-31)">build-docs&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text
 class="breeze-help-r2" x="268.4" y="776.4" textLength="1171.2" 
clip-path="url(#breeze-help-line-31)">Build&#160;documents.&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;
 [...]
+</text><text class="breeze-help-r4" x="0" y="800.8" textLength="12.2" 
clip-path="url(#breeze-help-line-32)">│</text><text class="breeze-help-r5" 
x="24.4" y="800.8" textLength="219.6" 
clip-path="url(#breeze-help-line-32)">down&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text
 class="breeze-help-r2" x="268.4" y="800.8" textLength="1171.2" 
clip-path="url(#breeze-help-line-32)">Stop&#160;running&#160;breeze&#160;environment.&#160;&#160;&#160;&#16
 [...]
+</text><text class="breeze-help-r4" x="0" y="825.2" textLength="12.2" 
clip-path="url(#breeze-help-line-33)">│</text><text class="breeze-help-r5" 
x="24.4" y="825.2" textLength="219.6" 
clip-path="url(#breeze-help-line-33)">shell&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text
 class="breeze-help-r2" x="268.4" y="825.2" textLength="1171.2" 
clip-path="url(#breeze-help-line-33)">Enter&#160;breeze&#160;environment.&#160;this&#160;is&#160;the&#160;defaul
 [...]
+</text><text class="breeze-help-r4" x="0" y="849.6" textLength="12.2" 
clip-path="url(#breeze-help-line-34)">│</text><text class="breeze-help-r5" 
x="24.4" y="849.6" textLength="219.6" 
clip-path="url(#breeze-help-line-34)">exec&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text
 class="breeze-help-r2" x="268.4" y="849.6" textLength="1171.2" 
clip-path="url(#breeze-help-line-34)">Joins&#160;the&#160;interactive&#160;shell&#160;of&#160;running&#160;
 [...]
+</text><text class="breeze-help-r4" x="0" y="874" textLength="12.2" 
clip-path="url(#breeze-help-line-35)">│</text><text class="breeze-help-r5" 
x="24.4" y="874" textLength="219.6" 
clip-path="url(#breeze-help-line-35)">compile-www-assets</text><text 
class="breeze-help-r2" x="268.4" y="874" textLength="1171.2" 
clip-path="url(#breeze-help-line-35)">Compiles&#160;www&#160;assets.&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&
 [...]
+</text><text class="breeze-help-r4" x="0" y="898.4" textLength="12.2" 
clip-path="url(#breeze-help-line-36)">│</text><text class="breeze-help-r5" 
x="24.4" y="898.4" textLength="219.6" 
clip-path="url(#breeze-help-line-36)">cleanup&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text
 class="breeze-help-r2" x="268.4" y="898.4" textLength="1171.2" 
clip-path="url(#breeze-help-line-36)">Cleans&#160;the&#160;cache&#160;of&#160;parameters,&#160;docker&#160;cache&#160;and&
 [...]
+</text><text class="breeze-help-r4" x="0" y="922.8" textLength="1464" 
clip-path="url(#breeze-help-line-37)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
 class="breeze-help-r2" x="1464" y="922.8" textLength="12.2" 
clip-path="url(#breeze-help-line-37)">
+</text><text class="breeze-help-r4" x="0" y="947.2" textLength="24.4" 
clip-path="url(#breeze-help-line-38)">╭─</text><text class="breeze-help-r4" 
x="24.4" y="947.2" textLength="219.6" 
clip-path="url(#breeze-help-line-38)">&#160;Testing&#160;commands&#160;</text><text
 class="breeze-help-r4" x="244" y="947.2" textLength="1195.6" 
clip-path="url(#breeze-help-line-38)">──────────────────────────────────────────────────────────────────────────────────────────────────</text><text
 class="breeze- [...]
+</text><text class="breeze-help-r4" x="0" y="971.6" textLength="12.2" 
clip-path="url(#breeze-help-line-39)">│</text><text class="breeze-help-r5" 
x="24.4" y="971.6" textLength="183" 
clip-path="url(#breeze-help-line-39)">testing&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text
 class="breeze-help-r2" x="231.8" y="971.6" textLength="1207.8" 
clip-path="url(#breeze-help-line-39)">Tools&#160;that&#160;developers&#160;can&#160;use&#160;to&#160;run&#160;tests&#160;&#160;&#160;&#160;&#1
 [...]
+</text><text class="breeze-help-r4" x="0" y="996" textLength="12.2" 
clip-path="url(#breeze-help-line-40)">│</text><text class="breeze-help-r5" 
x="24.4" y="996" textLength="183" 
clip-path="url(#breeze-help-line-40)">k8s&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text
 class="breeze-help-r2" x="231.8" y="996" textLength="1207.8" 
clip-path="url(#breeze-help-line-40)">Tools&#160;that&#160;developers&#160;use&#160;to&#160;run&#160;Kubernetes&#160;tests&#160;
 [...]
+</text><text class="breeze-help-r4" x="0" y="1020.4" textLength="1464" 
clip-path="url(#breeze-help-line-41)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
 class="breeze-help-r2" x="1464" y="1020.4" textLength="12.2" 
clip-path="url(#breeze-help-line-41)">
+</text><text class="breeze-help-r4" x="0" y="1044.8" textLength="24.4" 
clip-path="url(#breeze-help-line-42)">╭─</text><text class="breeze-help-r4" 
x="24.4" y="1044.8" textLength="195.2" 
clip-path="url(#breeze-help-line-42)">&#160;Image&#160;commands&#160;</text><text
 class="breeze-help-r4" x="219.6" y="1044.8" textLength="1220" 
clip-path="url(#breeze-help-line-42)">────────────────────────────────────────────────────────────────────────────────────────────────────</text><text
 class="bree [...]
+</text><text class="breeze-help-r4" x="0" y="1069.2" textLength="12.2" 
clip-path="url(#breeze-help-line-43)">│</text><text class="breeze-help-r5" 
x="24.4" y="1069.2" textLength="207.4" 
clip-path="url(#breeze-help-line-43)">ci-image&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text
 class="breeze-help-r2" x="256.2" y="1069.2" textLength="1183.4" 
clip-path="url(#breeze-help-line-43)">Tools&#160;that&#160;developers&#160;can&#160;use&#160;to&#160;manually&#160;manage&#160;CI&
 [...]
+</text><text class="breeze-help-r4" x="0" y="1093.6" textLength="12.2" 
clip-path="url(#breeze-help-line-44)">│</text><text class="breeze-help-r5" 
x="24.4" y="1093.6" textLength="207.4" 
clip-path="url(#breeze-help-line-44)">prod-image&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text
 class="breeze-help-r2" x="256.2" y="1093.6" textLength="1183.4" 
clip-path="url(#breeze-help-line-44)">Tools&#160;that&#160;developers&#160;can&#160;use&#160;to&#160;manually&#160;manage&#160;PROD&#160;ima
 [...]
+</text><text class="breeze-help-r4" x="0" y="1118" textLength="1464" 
clip-path="url(#breeze-help-line-45)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
 class="breeze-help-r2" x="1464" y="1118" textLength="12.2" 
clip-path="url(#breeze-help-line-45)">
+</text><text class="breeze-help-r4" x="0" y="1142.4" textLength="24.4" 
clip-path="url(#breeze-help-line-46)">╭─</text><text class="breeze-help-r4" 
x="24.4" y="1142.4" textLength="353.8" 
clip-path="url(#breeze-help-line-46)">&#160;Release&#160;management&#160;commands&#160;</text><text
 class="breeze-help-r4" x="378.2" y="1142.4" textLength="1061.4" 
clip-path="url(#breeze-help-line-46)">───────────────────────────────────────────────────────────────────────────────────────</text><text
 clas [...]
+</text><text class="breeze-help-r4" x="0" y="1166.8" textLength="12.2" 
clip-path="url(#breeze-help-line-47)">│</text><text class="breeze-help-r5" 
x="24.4" y="1166.8" textLength="280.6" 
clip-path="url(#breeze-help-line-47)">release-management&#160;&#160;&#160;&#160;&#160;</text><text
 class="breeze-help-r2" x="329.4" y="1166.8" textLength="1110.2" 
clip-path="url(#breeze-help-line-47)">Tools&#160;that&#160;release&#160;managers&#160;can&#160;use&#160;to&#160;prepare&#160;and&#160;manage&#16
 [...]
+</text><text class="breeze-help-r4" x="0" y="1191.2" textLength="12.2" 
clip-path="url(#breeze-help-line-48)">│</text><text class="breeze-help-r5" 
x="24.4" y="1191.2" textLength="280.6" 
clip-path="url(#breeze-help-line-48)">sbom&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text
 class="breeze-help-r2" x="329.4" y="1191.2" textLength="1110.2" 
clip-path="url(#breeze-help-line-48)">Tools&#160;that&#160;release&#160;ma [...]
+</text><text class="breeze-help-r4" x="0" y="1215.6" textLength="1464" 
clip-path="url(#breeze-help-line-49)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
 class="breeze-help-r2" x="1464" y="1215.6" textLength="12.2" 
clip-path="url(#breeze-help-line-49)">
+</text><text class="breeze-help-r4" x="0" y="1240" textLength="24.4" 
clip-path="url(#breeze-help-line-50)">╭─</text><text class="breeze-help-r4" 
x="24.4" y="1240" textLength="195.2" 
clip-path="url(#breeze-help-line-50)">&#160;Other&#160;commands&#160;</text><text
 class="breeze-help-r4" x="219.6" y="1240" textLength="1220" 
clip-path="url(#breeze-help-line-50)">────────────────────────────────────────────────────────────────────────────────────────────────────</text><text
 class="breeze-hel [...]
+</text><text class="breeze-help-r4" x="0" y="1264.4" textLength="12.2" 
clip-path="url(#breeze-help-line-51)">│</text><text class="breeze-help-r5" 
x="24.4" y="1264.4" textLength="122" 
clip-path="url(#breeze-help-line-51)">setup&#160;&#160;&#160;&#160;&#160;</text><text
 class="breeze-help-r2" x="170.8" y="1264.4" textLength="1268.8" 
clip-path="url(#breeze-help-line-51)">Tools&#160;that&#160;developers&#160;can&#160;use&#160;to&#160;configure&#160;Breeze&#160;&#160;&#160;&#160;&#160;&#160;&
 [...]
+</text><text class="breeze-help-r4" x="0" y="1288.8" textLength="12.2" 
clip-path="url(#breeze-help-line-52)">│</text><text class="breeze-help-r5" 
x="24.4" y="1288.8" textLength="122" 
clip-path="url(#breeze-help-line-52)">ci&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text
 class="breeze-help-r2" x="170.8" y="1288.8" textLength="1268.8" 
clip-path="url(#breeze-help-line-52)">Tools&#160;that&#160;CI&#160;workflows&#160;use&#160;to&#160;cleanup/manage&#160;CI&#160;environment&#160;
 [...]
+</text><text class="breeze-help-r4" x="0" y="1313.2" textLength="1464" 
clip-path="url(#breeze-help-line-53)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
 class="breeze-help-r2" x="1464" y="1313.2" textLength="12.2" 
clip-path="url(#breeze-help-line-53)">
 </text>
     </g>
     </g>
diff --git a/images/breeze/output_release-management.svg 
b/images/breeze/output_release-management.svg
index fad73508b9..1b85a1bd79 100644
--- a/images/breeze/output_release-management.svg
+++ b/images/breeze/output_release-management.svg
@@ -35,8 +35,8 @@
     .breeze-release-management-r1 { fill: #c5c8c6;font-weight: bold }
 .breeze-release-management-r2 { fill: #c5c8c6 }
 .breeze-release-management-r3 { fill: #d0b344;font-weight: bold }
-.breeze-release-management-r4 { fill: #68a0b3;font-weight: bold }
-.breeze-release-management-r5 { fill: #868887 }
+.breeze-release-management-r4 { fill: #868887 }
+.breeze-release-management-r5 { fill: #68a0b3;font-weight: bold }
 .breeze-release-management-r6 { fill: #98a84b;font-weight: bold }
     </style>
 
@@ -147,36 +147,36 @@
     
     <g class="breeze-release-management-matrix">
     <text class="breeze-release-management-r2" x="1464" y="20" 
textLength="12.2" clip-path="url(#breeze-release-management-line-0)">
-</text><text class="breeze-release-management-r3" x="12.2" y="44.4" 
textLength="85.4" 
clip-path="url(#breeze-release-management-line-1)">Usage:&#160;</text><text 
class="breeze-release-management-r1" x="97.6" y="44.4" textLength="329.4" 
clip-path="url(#breeze-release-management-line-1)">breeze&#160;release-management&#160;[</text><text
 class="breeze-release-management-r4" x="427" y="44.4" textLength="85.4" 
clip-path="url(#breeze-release-management-line-1)">OPTIONS</text><text 
class="breez [...]
+</text><text class="breeze-release-management-r3" x="12.2" y="44.4" 
textLength="85.4" 
clip-path="url(#breeze-release-management-line-1)">Usage:&#160;</text><text 
class="breeze-release-management-r1" x="97.6" y="44.4" textLength="646.6" 
clip-path="url(#breeze-release-management-line-1)">breeze&#160;release-management&#160;[OPTIONS]&#160;COMMAND&#160;[ARGS]...</text><text
 class="breeze-release-management-r2" x="1464" y="44.4" textLength="12.2" 
clip-path="url(#breeze-release-management-line-1)">
 </text><text class="breeze-release-management-r2" x="1464" y="68.8" 
textLength="12.2" clip-path="url(#breeze-release-management-line-2)">
 </text><text class="breeze-release-management-r2" x="12.2" y="93.2" 
textLength="902.8" 
clip-path="url(#breeze-release-management-line-3)">Tools&#160;that&#160;release&#160;managers&#160;can&#160;use&#160;to&#160;prepare&#160;and&#160;manage&#160;Airflow&#160;releases</text><text
 class="breeze-release-management-r2" x="1464" y="93.2" textLength="12.2" 
clip-path="url(#breeze-release-management-line-3)">
 </text><text class="breeze-release-management-r2" x="1464" y="117.6" 
textLength="12.2" clip-path="url(#breeze-release-management-line-4)">
-</text><text class="breeze-release-management-r5" x="0" y="142" 
textLength="24.4" 
clip-path="url(#breeze-release-management-line-5)">╭─</text><text 
class="breeze-release-management-r5" x="24.4" y="142" textLength="195.2" 
clip-path="url(#breeze-release-management-line-5)">&#160;Common&#160;options&#160;</text><text
 class="breeze-release-management-r5" x="219.6" y="142" textLength="1220" 
clip-path="url(#breeze-release-management-line-5)">────────────────────────────────────────────────────
 [...]
-</text><text class="breeze-release-management-r5" x="0" y="166.4" 
textLength="12.2" 
clip-path="url(#breeze-release-management-line-6)">│</text><text 
class="breeze-release-management-r4" x="24.4" y="166.4" textLength="12.2" 
clip-path="url(#breeze-release-management-line-6)">-</text><text 
class="breeze-release-management-r4" x="36.6" y="166.4" textLength="61" 
clip-path="url(#breeze-release-management-line-6)">-help</text><text 
class="breeze-release-management-r6" x="122" y="166.4" textLeng [...]
-</text><text class="breeze-release-management-r5" x="0" y="190.8" 
textLength="1464" 
clip-path="url(#breeze-release-management-line-7)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
 class="breeze-release-management-r2" x="1464" y="190.8" textLength="12.2" 
clip-path="url(#breeze-release-management-line-7)">
-</text><text class="breeze-release-management-r5" x="0" y="215.2" 
textLength="24.4" 
clip-path="url(#breeze-release-management-line-8)">╭─</text><text 
class="breeze-release-management-r5" x="24.4" y="215.2" textLength="317.2" 
clip-path="url(#breeze-release-management-line-8)">&#160;Airflow&#160;release&#160;commands&#160;</text><text
 class="breeze-release-management-r5" x="341.6" y="215.2" textLength="1098" 
clip-path="url(#breeze-release-management-line-8)">───────────────────────────────
 [...]
-</text><text class="breeze-release-management-r5" x="0" y="239.6" 
textLength="12.2" 
clip-path="url(#breeze-release-management-line-9)">│</text><text 
class="breeze-release-management-r4" x="24.4" y="239.6" textLength="353.8" 
clip-path="url(#breeze-release-management-line-9)">prepare-airflow-package&#160;&#160;&#160;&#160;&#160;&#160;</text><text
 class="breeze-release-management-r2" x="402.6" y="239.6" textLength="1037" 
clip-path="url(#breeze-release-management-line-9)">Prepare&#160;sdist/ [...]
-</text><text class="breeze-release-management-r5" x="0" y="264" 
textLength="12.2" 
clip-path="url(#breeze-release-management-line-10)">│</text><text 
class="breeze-release-management-r4" x="24.4" y="264" textLength="353.8" 
clip-path="url(#breeze-release-management-line-10)">create-minor-branch&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text
 class="breeze-release-management-r2" x="402.6" y="264" textLength="1037" 
clip-path="url(#breeze-release-management-line-10)">Cr [...]
-</text><text class="breeze-release-management-r5" x="0" y="288.4" 
textLength="12.2" 
clip-path="url(#breeze-release-management-line-11)">│</text><text 
class="breeze-release-management-r4" x="24.4" y="288.4" textLength="353.8" 
clip-path="url(#breeze-release-management-line-11)">start-rc-process&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text
 class="breeze-release-management-r2" x="402.6" y="288.4" textLength="73.2" 
clip-path="url(#breeze-release-ma [...]
-</text><text class="breeze-release-management-r5" x="0" y="312.8" 
textLength="12.2" 
clip-path="url(#breeze-release-management-line-12)">│</text><text 
class="breeze-release-management-r4" x="24.4" y="312.8" textLength="353.8" 
clip-path="url(#breeze-release-management-line-12)">start-release&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text
 class="breeze-release-management-r2" x="402.6" y="312.8" textLength="1037" 
clip-path="url(#br [...]
-</text><text class="breeze-release-management-r5" x="0" y="337.2" 
textLength="12.2" 
clip-path="url(#breeze-release-management-line-13)">│</text><text 
class="breeze-release-management-r4" x="24.4" y="337.2" textLength="353.8" 
clip-path="url(#breeze-release-management-line-13)">release-prod-images&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text
 class="breeze-release-management-r2" x="402.6" y="337.2" textLength="1037" 
clip-path="url(#breeze-release-management-line-1 [...]
-</text><text class="breeze-release-management-r5" x="0" y="361.6" 
textLength="1464" 
clip-path="url(#breeze-release-management-line-14)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
 class="breeze-release-management-r2" x="1464" y="361.6" textLength="12.2" 
clip-path="url(#breeze-release-management-line-14)">
-</text><text class="breeze-release-management-r5" x="0" y="386" 
textLength="24.4" 
clip-path="url(#breeze-release-management-line-15)">╭─</text><text 
class="breeze-release-management-r5" x="24.4" y="386" textLength="341.6" 
clip-path="url(#breeze-release-management-line-15)">&#160;Providers&#160;release&#160;commands&#160;</text><text
 class="breeze-release-management-r5" x="366" y="386" textLength="1073.6" 
clip-path="url(#breeze-release-management-line-15)">────────────────────────────────
 [...]
-</text><text class="breeze-release-management-r5" x="0" y="410.4" 
textLength="12.2" 
clip-path="url(#breeze-release-management-line-16)">│</text><text 
class="breeze-release-management-r4" x="24.4" y="410.4" textLength="439.2" 
clip-path="url(#breeze-release-management-line-16)">prepare-provider-documentation&#160;&#160;&#160;&#160;&#160;&#160;</text><text
 class="breeze-release-management-r2" x="488" y="410.4" textLength="97.6" 
clip-path="url(#breeze-release-management-line-16)">Prepare&#16 [...]
-</text><text class="breeze-release-management-r5" x="0" y="434.8" 
textLength="12.2" 
clip-path="url(#breeze-release-management-line-17)">│</text><text 
class="breeze-release-management-r4" x="24.4" y="434.8" textLength="439.2" 
clip-path="url(#breeze-release-management-line-17)">prepare-provider-packages&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text
 class="breeze-release-management-r2" x="488" y="434.8" textLength="951.6" 
clip-path="url(#breeze-release-manage [...]
-</text><text class="breeze-release-management-r5" x="0" y="459.2" 
textLength="12.2" 
clip-path="url(#breeze-release-management-line-18)">│</text><text 
class="breeze-release-management-r4" x="24.4" y="459.2" textLength="439.2" 
clip-path="url(#breeze-release-management-line-18)">install-provider-packages&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text
 class="breeze-release-management-r2" x="488" y="459.2" textLength="951.6" 
clip-path="url(#breeze-release-manage [...]
-</text><text class="breeze-release-management-r5" x="0" y="483.6" 
textLength="12.2" 
clip-path="url(#breeze-release-management-line-19)">│</text><text 
class="breeze-release-management-r4" x="24.4" y="483.6" textLength="439.2" 
clip-path="url(#breeze-release-management-line-19)">verify-provider-packages&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text
 class="breeze-release-management-r2" x="488" y="483.6" textLength="951.6" 
clip-path="url(#breeze-release-m [...]
-</text><text class="breeze-release-management-r5" x="0" y="508" 
textLength="12.2" 
clip-path="url(#breeze-release-management-line-20)">│</text><text 
class="breeze-release-management-r4" x="24.4" y="508" textLength="439.2" 
clip-path="url(#breeze-release-management-line-20)">generate-providers-metadata&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text
 class="breeze-release-management-r2" x="488" y="508" textLength="951.6" 
clip-path="url(#breeze-release-management-line-20)">G [...]
-</text><text class="breeze-release-management-r5" x="0" y="532.4" 
textLength="12.2" 
clip-path="url(#breeze-release-management-line-21)">│</text><text 
class="breeze-release-management-r4" x="24.4" y="532.4" textLength="439.2" 
clip-path="url(#breeze-release-management-line-21)">generate-issue-content-providers&#160;&#160;&#160;&#160;</text><text
 class="breeze-release-management-r2" x="488" y="532.4" textLength="951.6" 
clip-path="url(#breeze-release-management-line-21)">Generates&#160;conte [...]
-</text><text class="breeze-release-management-r5" x="0" y="556.8" 
textLength="1464" 
clip-path="url(#breeze-release-management-line-22)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
 class="breeze-release-management-r2" x="1464" y="556.8" textLength="12.2" 
clip-path="url(#breeze-release-management-line-22)">
-</text><text class="breeze-release-management-r5" x="0" y="581.2" 
textLength="24.4" 
clip-path="url(#breeze-release-management-line-23)">╭─</text><text 
class="breeze-release-management-r5" x="24.4" y="581.2" textLength="292.8" 
clip-path="url(#breeze-release-management-line-23)">&#160;Other&#160;release&#160;commands&#160;</text><text
 class="breeze-release-management-r5" x="317.2" y="581.2" textLength="1122.4" 
clip-path="url(#breeze-release-management-line-23)">────────────────────────────
 [...]
-</text><text class="breeze-release-management-r5" x="0" y="605.6" 
textLength="12.2" 
clip-path="url(#breeze-release-management-line-24)">│</text><text 
class="breeze-release-management-r4" x="24.4" y="605.6" textLength="280.6" 
clip-path="url(#breeze-release-management-line-24)">publish-docs&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text
 class="breeze-release-management-r2" x="329.4" y="605.6" textLength="1110.2" 
clip-path="url(#breeze-release-management-line- [...]
-</text><text class="breeze-release-management-r5" x="0" y="630" 
textLength="12.2" 
clip-path="url(#breeze-release-management-line-25)">│</text><text 
class="breeze-release-management-r4" x="24.4" y="630" textLength="280.6" 
clip-path="url(#breeze-release-management-line-25)">generate-constraints&#160;&#160;&#160;</text><text
 class="breeze-release-management-r2" x="329.4" y="630" textLength="1110.2" 
clip-path="url(#breeze-release-management-line-25)">Generates&#160;pinned&#160;constraint&#16
 [...]
-</text><text class="breeze-release-management-r5" x="0" y="654.4" 
textLength="12.2" 
clip-path="url(#breeze-release-management-line-26)">│</text><text 
class="breeze-release-management-r4" x="24.4" y="654.4" textLength="280.6" 
clip-path="url(#breeze-release-management-line-26)">add-back-references&#160;&#160;&#160;&#160;</text><text
 class="breeze-release-management-r2" x="329.4" y="654.4" textLength="1110.2" 
clip-path="url(#breeze-release-management-line-26)">Command&#160;to&#160;add&#160;
 [...]
-</text><text class="breeze-release-management-r5" x="0" y="678.8" 
textLength="1464" 
clip-path="url(#breeze-release-management-line-27)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
 class="breeze-release-management-r2" x="1464" y="678.8" textLength="12.2" 
clip-path="url(#breeze-release-management-line-27)">
-</text><text class="breeze-release-management-r5" x="0" y="703.2" 
textLength="24.4" 
clip-path="url(#breeze-release-management-line-28)">╭─</text><text 
class="breeze-release-management-r5" x="24.4" y="703.2" textLength="122" 
clip-path="url(#breeze-release-management-line-28)">&#160;Commands&#160;</text><text
 class="breeze-release-management-r5" x="146.4" y="703.2" textLength="1293.2" 
clip-path="url(#breeze-release-management-line-28)">──────────────────────────────────────────────────────
 [...]
-</text><text class="breeze-release-management-r5" x="0" y="727.6" 
textLength="12.2" 
clip-path="url(#breeze-release-management-line-29)">│</text><text 
class="breeze-release-management-r4" x="24.4" y="727.6" textLength="390.4" 
clip-path="url(#breeze-release-management-line-29)">update-constraints&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text
 class="breeze-release-management-r2" x="439.2" y="727.6" textLength="1000.4" 
clip-path="url(#breeze- [...]
-</text><text class="breeze-release-management-r5" x="0" y="752" 
textLength="1464" 
clip-path="url(#breeze-release-management-line-30)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
 class="breeze-release-management-r2" x="1464" y="752" textLength="12.2" 
clip-path="url(#breeze-release-management-line-30)">
+</text><text class="breeze-release-management-r4" x="0" y="142" 
textLength="24.4" 
clip-path="url(#breeze-release-management-line-5)">╭─</text><text 
class="breeze-release-management-r4" x="24.4" y="142" textLength="195.2" 
clip-path="url(#breeze-release-management-line-5)">&#160;Common&#160;options&#160;</text><text
 class="breeze-release-management-r4" x="219.6" y="142" textLength="1220" 
clip-path="url(#breeze-release-management-line-5)">────────────────────────────────────────────────────
 [...]
+</text><text class="breeze-release-management-r4" x="0" y="166.4" 
textLength="12.2" 
clip-path="url(#breeze-release-management-line-6)">│</text><text 
class="breeze-release-management-r5" x="24.4" y="166.4" textLength="12.2" 
clip-path="url(#breeze-release-management-line-6)">-</text><text 
class="breeze-release-management-r5" x="36.6" y="166.4" textLength="61" 
clip-path="url(#breeze-release-management-line-6)">-help</text><text 
class="breeze-release-management-r6" x="122" y="166.4" textLeng [...]
+</text><text class="breeze-release-management-r4" x="0" y="190.8" 
textLength="1464" 
clip-path="url(#breeze-release-management-line-7)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
 class="breeze-release-management-r2" x="1464" y="190.8" textLength="12.2" 
clip-path="url(#breeze-release-management-line-7)">
+</text><text class="breeze-release-management-r4" x="0" y="215.2" 
textLength="24.4" 
clip-path="url(#breeze-release-management-line-8)">╭─</text><text 
class="breeze-release-management-r4" x="24.4" y="215.2" textLength="317.2" 
clip-path="url(#breeze-release-management-line-8)">&#160;Airflow&#160;release&#160;commands&#160;</text><text
 class="breeze-release-management-r4" x="341.6" y="215.2" textLength="1098" 
clip-path="url(#breeze-release-management-line-8)">───────────────────────────────
 [...]
+</text><text class="breeze-release-management-r4" x="0" y="239.6" 
textLength="12.2" 
clip-path="url(#breeze-release-management-line-9)">│</text><text 
class="breeze-release-management-r5" x="24.4" y="239.6" textLength="353.8" 
clip-path="url(#breeze-release-management-line-9)">prepare-airflow-package&#160;&#160;&#160;&#160;&#160;&#160;</text><text
 class="breeze-release-management-r2" x="402.6" y="239.6" textLength="1037" 
clip-path="url(#breeze-release-management-line-9)">Prepare&#160;sdist/ [...]
+</text><text class="breeze-release-management-r4" x="0" y="264" 
textLength="12.2" 
clip-path="url(#breeze-release-management-line-10)">│</text><text 
class="breeze-release-management-r5" x="24.4" y="264" textLength="353.8" 
clip-path="url(#breeze-release-management-line-10)">create-minor-branch&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text
 class="breeze-release-management-r2" x="402.6" y="264" textLength="1037" 
clip-path="url(#breeze-release-management-line-10)">Cr [...]
+</text><text class="breeze-release-management-r4" x="0" y="288.4" 
textLength="12.2" 
clip-path="url(#breeze-release-management-line-11)">│</text><text 
class="breeze-release-management-r5" x="24.4" y="288.4" textLength="353.8" 
clip-path="url(#breeze-release-management-line-11)">start-rc-process&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text
 class="breeze-release-management-r2" x="402.6" y="288.4" textLength="1037" 
clip-path="url(#breeze-release-ma [...]
+</text><text class="breeze-release-management-r4" x="0" y="312.8" 
textLength="12.2" 
clip-path="url(#breeze-release-management-line-12)">│</text><text 
class="breeze-release-management-r5" x="24.4" y="312.8" textLength="353.8" 
clip-path="url(#breeze-release-management-line-12)">start-release&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text
 class="breeze-release-management-r2" x="402.6" y="312.8" textLength="1037" 
clip-path="url(#br [...]
+</text><text class="breeze-release-management-r4" x="0" y="337.2" 
textLength="12.2" 
clip-path="url(#breeze-release-management-line-13)">│</text><text 
class="breeze-release-management-r5" x="24.4" y="337.2" textLength="353.8" 
clip-path="url(#breeze-release-management-line-13)">release-prod-images&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text
 class="breeze-release-management-r2" x="402.6" y="337.2" textLength="1037" 
clip-path="url(#breeze-release-management-line-1 [...]
+</text><text class="breeze-release-management-r4" x="0" y="361.6" 
textLength="1464" 
clip-path="url(#breeze-release-management-line-14)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
 class="breeze-release-management-r2" x="1464" y="361.6" textLength="12.2" 
clip-path="url(#breeze-release-management-line-14)">
+</text><text class="breeze-release-management-r4" x="0" y="386" 
textLength="24.4" 
clip-path="url(#breeze-release-management-line-15)">╭─</text><text 
class="breeze-release-management-r4" x="24.4" y="386" textLength="341.6" 
clip-path="url(#breeze-release-management-line-15)">&#160;Providers&#160;release&#160;commands&#160;</text><text
 class="breeze-release-management-r4" x="366" y="386" textLength="1073.6" 
clip-path="url(#breeze-release-management-line-15)">────────────────────────────────
 [...]
+</text><text class="breeze-release-management-r4" x="0" y="410.4" 
textLength="12.2" 
clip-path="url(#breeze-release-management-line-16)">│</text><text 
class="breeze-release-management-r5" x="24.4" y="410.4" textLength="439.2" 
clip-path="url(#breeze-release-management-line-16)">prepare-provider-documentation&#160;&#160;&#160;&#160;&#160;&#160;</text><text
 class="breeze-release-management-r2" x="488" y="410.4" textLength="951.6" 
clip-path="url(#breeze-release-management-line-16)">Prepare&#1 [...]
+</text><text class="breeze-release-management-r4" x="0" y="434.8" 
textLength="12.2" 
clip-path="url(#breeze-release-management-line-17)">│</text><text 
class="breeze-release-management-r5" x="24.4" y="434.8" textLength="439.2" 
clip-path="url(#breeze-release-management-line-17)">prepare-provider-packages&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text
 class="breeze-release-management-r2" x="488" y="434.8" textLength="951.6" 
clip-path="url(#breeze-release-manage [...]
+</text><text class="breeze-release-management-r4" x="0" y="459.2" 
textLength="12.2" 
clip-path="url(#breeze-release-management-line-18)">│</text><text 
class="breeze-release-management-r5" x="24.4" y="459.2" textLength="439.2" 
clip-path="url(#breeze-release-management-line-18)">install-provider-packages&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text
 class="breeze-release-management-r2" x="488" y="459.2" textLength="951.6" 
clip-path="url(#breeze-release-manage [...]
+</text><text class="breeze-release-management-r4" x="0" y="483.6" 
textLength="12.2" 
clip-path="url(#breeze-release-management-line-19)">│</text><text 
class="breeze-release-management-r5" x="24.4" y="483.6" textLength="439.2" 
clip-path="url(#breeze-release-management-line-19)">verify-provider-packages&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text
 class="breeze-release-management-r2" x="488" y="483.6" textLength="951.6" 
clip-path="url(#breeze-release-m [...]
+</text><text class="breeze-release-management-r4" x="0" y="508" 
textLength="12.2" 
clip-path="url(#breeze-release-management-line-20)">│</text><text 
class="breeze-release-management-r5" x="24.4" y="508" textLength="439.2" 
clip-path="url(#breeze-release-management-line-20)">generate-providers-metadata&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text
 class="breeze-release-management-r2" x="488" y="508" textLength="951.6" 
clip-path="url(#breeze-release-management-line-20)">G [...]
+</text><text class="breeze-release-management-r4" x="0" y="532.4" 
textLength="12.2" 
clip-path="url(#breeze-release-management-line-21)">│</text><text 
class="breeze-release-management-r5" x="24.4" y="532.4" textLength="439.2" 
clip-path="url(#breeze-release-management-line-21)">generate-issue-content-providers&#160;&#160;&#160;&#160;</text><text
 class="breeze-release-management-r2" x="488" y="532.4" textLength="951.6" 
clip-path="url(#breeze-release-management-line-21)">Generates&#160;conte [...]
+</text><text class="breeze-release-management-r4" x="0" y="556.8" 
textLength="1464" 
clip-path="url(#breeze-release-management-line-22)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
 class="breeze-release-management-r2" x="1464" y="556.8" textLength="12.2" 
clip-path="url(#breeze-release-management-line-22)">
+</text><text class="breeze-release-management-r4" x="0" y="581.2" 
textLength="24.4" 
clip-path="url(#breeze-release-management-line-23)">╭─</text><text 
class="breeze-release-management-r4" x="24.4" y="581.2" textLength="292.8" 
clip-path="url(#breeze-release-management-line-23)">&#160;Other&#160;release&#160;commands&#160;</text><text
 class="breeze-release-management-r4" x="317.2" y="581.2" textLength="1122.4" 
clip-path="url(#breeze-release-management-line-23)">────────────────────────────
 [...]
+</text><text class="breeze-release-management-r4" x="0" y="605.6" 
textLength="12.2" 
clip-path="url(#breeze-release-management-line-24)">│</text><text 
class="breeze-release-management-r5" x="24.4" y="605.6" textLength="280.6" 
clip-path="url(#breeze-release-management-line-24)">publish-docs&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text
 class="breeze-release-management-r2" x="329.4" y="605.6" textLength="1110.2" 
clip-path="url(#breeze-release-management-line- [...]
+</text><text class="breeze-release-management-r4" x="0" y="630" 
textLength="12.2" 
clip-path="url(#breeze-release-management-line-25)">│</text><text 
class="breeze-release-management-r5" x="24.4" y="630" textLength="280.6" 
clip-path="url(#breeze-release-management-line-25)">generate-constraints&#160;&#160;&#160;</text><text
 class="breeze-release-management-r2" x="329.4" y="630" textLength="1110.2" 
clip-path="url(#breeze-release-management-line-25)">Generates&#160;pinned&#160;constraint&#16
 [...]
+</text><text class="breeze-release-management-r4" x="0" y="654.4" 
textLength="12.2" 
clip-path="url(#breeze-release-management-line-26)">│</text><text 
class="breeze-release-management-r5" x="24.4" y="654.4" textLength="280.6" 
clip-path="url(#breeze-release-management-line-26)">add-back-references&#160;&#160;&#160;&#160;</text><text
 class="breeze-release-management-r2" x="329.4" y="654.4" textLength="1110.2" 
clip-path="url(#breeze-release-management-line-26)">Command&#160;to&#160;add&#160;
 [...]
+</text><text class="breeze-release-management-r4" x="0" y="678.8" 
textLength="1464" 
clip-path="url(#breeze-release-management-line-27)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
 class="breeze-release-management-r2" x="1464" y="678.8" textLength="12.2" 
clip-path="url(#breeze-release-management-line-27)">
+</text><text class="breeze-release-management-r4" x="0" y="703.2" 
textLength="24.4" 
clip-path="url(#breeze-release-management-line-28)">╭─</text><text 
class="breeze-release-management-r4" x="24.4" y="703.2" textLength="122" 
clip-path="url(#breeze-release-management-line-28)">&#160;Commands&#160;</text><text
 class="breeze-release-management-r4" x="146.4" y="703.2" textLength="1293.2" 
clip-path="url(#breeze-release-management-line-28)">──────────────────────────────────────────────────────
 [...]
+</text><text class="breeze-release-management-r4" x="0" y="727.6" 
textLength="12.2" 
clip-path="url(#breeze-release-management-line-29)">│</text><text 
class="breeze-release-management-r5" x="24.4" y="727.6" textLength="390.4" 
clip-path="url(#breeze-release-management-line-29)">update-constraints&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text
 class="breeze-release-management-r2" x="439.2" y="727.6" textLength="1000.4" 
clip-path="url(#breeze- [...]
+</text><text class="breeze-release-management-r4" x="0" y="752" 
textLength="1464" 
clip-path="url(#breeze-release-management-line-30)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
 class="breeze-release-management-r2" x="1464" y="752" textLength="12.2" 
clip-path="url(#breeze-release-management-line-30)">
 </text>
     </g>
     </g>
diff --git a/images/breeze/output_release-management_update-constraints.svg 
b/images/breeze/output_release-management_update-constraints.svg
index 67d3f75906..7f4a99b12b 100644
--- a/images/breeze/output_release-management_update-constraints.svg
+++ b/images/breeze/output_release-management_update-constraints.svg
@@ -1,4 +1,4 @@
-<svg class="rich-terminal" viewBox="0 0 1482 586.8" 
xmlns="http://www.w3.org/2000/svg";>
+<svg class="rich-terminal" viewBox="0 0 1482 782.0" 
xmlns="http://www.w3.org/2000/svg";>
     <!-- Generated with Rich https://www.textualize.io -->
     <style>
 
@@ -35,9 +35,9 @@
     .breeze-release-management-update-constraints-r1 { fill: 
#c5c8c6;font-weight: bold }
 .breeze-release-management-update-constraints-r2 { fill: #c5c8c6 }
 .breeze-release-management-update-constraints-r3 { fill: #d0b344;font-weight: 
bold }
-.breeze-release-management-update-constraints-r4 { fill: #68a0b3;font-weight: 
bold }
-.breeze-release-management-update-constraints-r5 { fill: #868887 }
-.breeze-release-management-update-constraints-r6 { fill: #cc555a }
+.breeze-release-management-update-constraints-r4 { fill: #868887 }
+.breeze-release-management-update-constraints-r5 { fill: #cc555a }
+.breeze-release-management-update-constraints-r6 { fill: #68a0b3;font-weight: 
bold }
 .breeze-release-management-update-constraints-r7 { fill: #8d7b39 }
 .breeze-release-management-update-constraints-r8 { fill: #8a4346 }
 .breeze-release-management-update-constraints-r9 { fill: #98a84b;font-weight: 
bold }
@@ -45,7 +45,7 @@
 
     <defs>
     <clipPath id="breeze-release-management-update-constraints-clip-terminal">
-      <rect x="0" y="0" width="1463.0" height="535.8" />
+      <rect x="0" y="0" width="1463.0" height="731.0" />
     </clipPath>
     <clipPath id="breeze-release-management-update-constraints-line-0">
     <rect x="0" y="1.5" width="1464" height="24.65"/>
@@ -110,9 +110,33 @@
 <clipPath id="breeze-release-management-update-constraints-line-20">
     <rect x="0" y="489.5" width="1464" height="24.65"/>
             </clipPath>
+<clipPath id="breeze-release-management-update-constraints-line-21">
+    <rect x="0" y="513.9" width="1464" height="24.65"/>
+            </clipPath>
+<clipPath id="breeze-release-management-update-constraints-line-22">
+    <rect x="0" y="538.3" width="1464" height="24.65"/>
+            </clipPath>
+<clipPath id="breeze-release-management-update-constraints-line-23">
+    <rect x="0" y="562.7" width="1464" height="24.65"/>
+            </clipPath>
+<clipPath id="breeze-release-management-update-constraints-line-24">
+    <rect x="0" y="587.1" width="1464" height="24.65"/>
+            </clipPath>
+<clipPath id="breeze-release-management-update-constraints-line-25">
+    <rect x="0" y="611.5" width="1464" height="24.65"/>
+            </clipPath>
+<clipPath id="breeze-release-management-update-constraints-line-26">
+    <rect x="0" y="635.9" width="1464" height="24.65"/>
+            </clipPath>
+<clipPath id="breeze-release-management-update-constraints-line-27">
+    <rect x="0" y="660.3" width="1464" height="24.65"/>
+            </clipPath>
+<clipPath id="breeze-release-management-update-constraints-line-28">
+    <rect x="0" y="684.7" width="1464" height="24.65"/>
+            </clipPath>
     </defs>
 
-    <rect fill="#292929" stroke="rgba(255,255,255,0.35)" stroke-width="1" 
x="1" y="1" width="1480" height="584.8" rx="8"/><text 
class="breeze-release-management-update-constraints-title" fill="#c5c8c6" 
text-anchor="middle" x="740" 
y="27">Command:&#160;release-management&#160;update-constraints</text>
+    <rect fill="#292929" stroke="rgba(255,255,255,0.35)" stroke-width="1" 
x="1" y="1" width="1480" height="780" rx="8"/><text 
class="breeze-release-management-update-constraints-title" fill="#c5c8c6" 
text-anchor="middle" x="740" 
y="27">Command:&#160;release-management&#160;update-constraints</text>
             <g transform="translate(26,22)">
             <circle cx="0" cy="0" r="7" fill="#ff5f57"/>
             <circle cx="22" cy="0" r="7" fill="#febc2e"/>
@@ -123,27 +147,35 @@
     
     <g class="breeze-release-management-update-constraints-matrix">
     <text class="breeze-release-management-update-constraints-r2" x="1464" 
y="20" textLength="12.2" 
clip-path="url(#breeze-release-management-update-constraints-line-0)">
-</text><text class="breeze-release-management-update-constraints-r3" x="12.2" 
y="44.4" textLength="85.4" 
clip-path="url(#breeze-release-management-update-constraints-line-1)">Usage:&#160;</text><text
 class="breeze-release-management-update-constraints-r1" x="97.6" y="44.4" 
textLength="561.2" 
clip-path="url(#breeze-release-management-update-constraints-line-1)">breeze&#160;release-management&#160;update-constraints&#160;[</text><text
 class="breeze-release-management-update-constraints-r4" [...]
+</text><text class="breeze-release-management-update-constraints-r3" x="12.2" 
y="44.4" textLength="85.4" 
clip-path="url(#breeze-release-management-update-constraints-line-1)">Usage:&#160;</text><text
 class="breeze-release-management-update-constraints-r1" x="97.6" y="44.4" 
textLength="658.8" 
clip-path="url(#breeze-release-management-update-constraints-line-1)">breeze&#160;release-management&#160;update-constraints&#160;[OPTIONS]</text><text
 class="breeze-release-management-update-constra [...]
 </text><text class="breeze-release-management-update-constraints-r2" x="1464" 
y="68.8" textLength="12.2" 
clip-path="url(#breeze-release-management-update-constraints-line-2)">
 </text><text class="breeze-release-management-update-constraints-r2" x="12.2" 
y="93.2" textLength="585.6" 
clip-path="url(#breeze-release-management-update-constraints-line-3)">Update&#160;released&#160;constraints&#160;with&#160;manual&#160;changes.</text><text
 class="breeze-release-management-update-constraints-r2" x="1464" y="93.2" 
textLength="12.2" 
clip-path="url(#breeze-release-management-update-constraints-line-3)">
 </text><text class="breeze-release-management-update-constraints-r2" x="1464" 
y="117.6" textLength="12.2" 
clip-path="url(#breeze-release-management-update-constraints-line-4)">
-</text><text class="breeze-release-management-update-constraints-r5" x="0" 
y="142" textLength="24.4" 
clip-path="url(#breeze-release-management-update-constraints-line-5)">╭─</text><text
 class="breeze-release-management-update-constraints-r5" x="24.4" y="142" 
textLength="317.2" 
clip-path="url(#breeze-release-management-update-constraints-line-5)">&#160;Update&#160;constraints&#160;flags&#160;</text><text
 class="breeze-release-management-update-constraints-r5" x="341.6" y="142" 
textLength= [...]
-</text><text class="breeze-release-management-update-constraints-r5" x="0" 
y="166.4" textLength="12.2" 
clip-path="url(#breeze-release-management-update-constraints-line-6)">│</text><text
 class="breeze-release-management-update-constraints-r6" x="24.4" y="166.4" 
textLength="12.2" 
clip-path="url(#breeze-release-management-update-constraints-line-6)">*</text><text
 class="breeze-release-management-update-constraints-r4" x="61" y="166.4" 
textLength="12.2" clip-path="url(#breeze-release-manage [...]
-</text><text class="breeze-release-management-update-constraints-r5" x="0" 
y="190.8" textLength="12.2" 
clip-path="url(#breeze-release-management-update-constraints-line-7)">│</text><text
 class="breeze-release-management-update-constraints-r2" x="353.8" y="190.8" 
textLength="1085.8" 
clip-path="url(#breeze-release-management-update-constraints-line-7)">out.&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#1
 [...]
-</text><text class="breeze-release-management-update-constraints-r5" x="0" 
y="215.2" textLength="12.2" 
clip-path="url(#breeze-release-management-update-constraints-line-8)">│</text><text
 class="breeze-release-management-update-constraints-r7" x="353.8" y="215.2" 
textLength="1085.8" 
clip-path="url(#breeze-release-management-update-constraints-line-8)">(DIRECTORY)&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#
 [...]
-</text><text class="breeze-release-management-update-constraints-r5" x="0" 
y="239.6" textLength="12.2" 
clip-path="url(#breeze-release-management-update-constraints-line-9)">│</text><text
 class="breeze-release-management-update-constraints-r8" x="353.8" y="239.6" 
textLength="1085.8" 
clip-path="url(#breeze-release-management-update-constraints-line-9)">[required]&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#1
 [...]
-</text><text class="breeze-release-management-update-constraints-r5" x="0" 
y="264" textLength="12.2" 
clip-path="url(#breeze-release-management-update-constraints-line-10)">│</text><text
 class="breeze-release-management-update-constraints-r4" x="61" y="264" 
textLength="12.2" 
clip-path="url(#breeze-release-management-update-constraints-line-10)">-</text><text
 class="breeze-release-management-update-constraints-r4" x="73.2" y="264" 
textLength="85.4" clip-path="url(#breeze-release-management [...]
-</text><text class="breeze-release-management-update-constraints-r5" x="0" 
y="288.4" textLength="12.2" 
clip-path="url(#breeze-release-management-update-constraints-line-11)">│</text><text
 class="breeze-release-management-update-constraints-r6" x="24.4" y="288.4" 
textLength="12.2" 
clip-path="url(#breeze-release-management-update-constraints-line-11)">*</text><text
 class="breeze-release-management-update-constraints-r4" x="61" y="288.4" 
textLength="12.2" clip-path="url(#breeze-release-mana [...]
-</text><text class="breeze-release-management-update-constraints-r5" x="0" 
y="312.8" textLength="12.2" 
clip-path="url(#breeze-release-management-update-constraints-line-12)">│</text><text
 class="breeze-release-management-update-constraints-r6" x="24.4" y="312.8" 
textLength="12.2" 
clip-path="url(#breeze-release-management-update-constraints-line-12)">*</text><text
 class="breeze-release-management-update-constraints-r4" x="61" y="312.8" 
textLength="12.2" clip-path="url(#breeze-release-mana [...]
-</text><text class="breeze-release-management-update-constraints-r5" x="0" 
y="337.2" textLength="12.2" 
clip-path="url(#breeze-release-management-update-constraints-line-13)">│</text><text
 class="breeze-release-management-update-constraints-r6" x="24.4" y="337.2" 
textLength="12.2" 
clip-path="url(#breeze-release-management-update-constraints-line-13)">*</text><text
 class="breeze-release-management-update-constraints-r4" x="61" y="337.2" 
textLength="12.2" clip-path="url(#breeze-release-mana [...]
-</text><text class="breeze-release-management-update-constraints-r5" x="0" 
y="361.6" textLength="12.2" 
clip-path="url(#breeze-release-management-update-constraints-line-14)">│</text><text
 class="breeze-release-management-update-constraints-r8" x="353.8" y="361.6" 
textLength="902.8" 
clip-path="url(#breeze-release-management-update-constraints-line-14)">[required]&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#
 [...]
-</text><text class="breeze-release-management-update-constraints-r5" x="0" 
y="386" textLength="1464" 
clip-path="url(#breeze-release-management-update-constraints-line-15)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
 class="breeze-release-management-update-constraints-r2" x="1464" y="386" 
textLength="12.2" 
clip-path="url(#breeze-release-management-update-constraints-line-15)">
-</text><text class="breeze-release-management-update-constraints-r5" x="0" 
y="410.4" textLength="24.4" 
clip-path="url(#breeze-release-management-update-constraints-line-16)">╭─</text><text
 class="breeze-release-management-update-constraints-r5" x="24.4" y="410.4" 
textLength="195.2" 
clip-path="url(#breeze-release-management-update-constraints-line-16)">&#160;Common&#160;options&#160;</text><text
 class="breeze-release-management-update-constraints-r5" x="219.6" y="410.4" 
textLength="1220"  [...]
-</text><text class="breeze-release-management-update-constraints-r5" x="0" 
y="434.8" textLength="12.2" 
clip-path="url(#breeze-release-management-update-constraints-line-17)">│</text><text
 class="breeze-release-management-update-constraints-r4" x="24.4" y="434.8" 
textLength="12.2" 
clip-path="url(#breeze-release-management-update-constraints-line-17)">-</text><text
 class="breeze-release-management-update-constraints-r4" x="36.6" y="434.8" 
textLength="97.6" clip-path="url(#breeze-release-ma [...]
-</text><text class="breeze-release-management-update-constraints-r5" x="0" 
y="459.2" textLength="12.2" 
clip-path="url(#breeze-release-management-update-constraints-line-18)">│</text><text
 class="breeze-release-management-update-constraints-r4" x="24.4" y="459.2" 
textLength="12.2" 
clip-path="url(#breeze-release-management-update-constraints-line-18)">-</text><text
 class="breeze-release-management-update-constraints-r4" x="36.6" y="459.2" 
textLength="48.8" clip-path="url(#breeze-release-ma [...]
-</text><text class="breeze-release-management-update-constraints-r5" x="0" 
y="483.6" textLength="12.2" 
clip-path="url(#breeze-release-management-update-constraints-line-19)">│</text><text
 class="breeze-release-management-update-constraints-r4" x="24.4" y="483.6" 
textLength="12.2" 
clip-path="url(#breeze-release-management-update-constraints-line-19)">-</text><text
 class="breeze-release-management-update-constraints-r4" x="36.6" y="483.6" 
textLength="85.4" clip-path="url(#breeze-release-ma [...]
-</text><text class="breeze-release-management-update-constraints-r5" x="0" 
y="508" textLength="12.2" 
clip-path="url(#breeze-release-management-update-constraints-line-20)">│</text><text
 class="breeze-release-management-update-constraints-r4" x="24.4" y="508" 
textLength="12.2" 
clip-path="url(#breeze-release-management-update-constraints-line-20)">-</text><text
 class="breeze-release-management-update-constraints-r4" x="36.6" y="508" 
textLength="61" clip-path="url(#breeze-release-management [...]
-</text><text class="breeze-release-management-update-constraints-r5" x="0" 
y="532.4" textLength="1464" 
clip-path="url(#breeze-release-management-update-constraints-line-21)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
 class="breeze-release-management-update-constraints-r2" x="1464" y="532.4" 
textLength="12.2" 
clip-path="url(#breeze-release-management-update-constraints-line-21)">
+</text><text class="breeze-release-management-update-constraints-r4" x="0" 
y="142" textLength="24.4" 
clip-path="url(#breeze-release-management-update-constraints-line-5)">╭─</text><text
 class="breeze-release-management-update-constraints-r4" x="24.4" y="142" 
textLength="317.2" 
clip-path="url(#breeze-release-management-update-constraints-line-5)">&#160;Update&#160;constraints&#160;flags&#160;</text><text
 class="breeze-release-management-update-constraints-r4" x="341.6" y="142" 
textLength= [...]
+</text><text class="breeze-release-management-update-constraints-r4" x="0" 
y="166.4" textLength="12.2" 
clip-path="url(#breeze-release-management-update-constraints-line-6)">│</text><text
 class="breeze-release-management-update-constraints-r5" x="24.4" y="166.4" 
textLength="12.2" 
clip-path="url(#breeze-release-management-update-constraints-line-6)">*</text><text
 class="breeze-release-management-update-constraints-r6" x="61" y="166.4" 
textLength="12.2" clip-path="url(#breeze-release-manage [...]
+</text><text class="breeze-release-management-update-constraints-r4" x="0" 
y="190.8" textLength="12.2" 
clip-path="url(#breeze-release-management-update-constraints-line-7)">│</text><text
 class="breeze-release-management-update-constraints-r7" x="329.4" y="190.8" 
textLength="1110.2" 
clip-path="url(#breeze-release-management-update-constraints-line-7)">(DIRECTORY)&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#
 [...]
+</text><text class="breeze-release-management-update-constraints-r4" x="0" 
y="215.2" textLength="12.2" 
clip-path="url(#breeze-release-management-update-constraints-line-8)">│</text><text
 class="breeze-release-management-update-constraints-r8" x="329.4" y="215.2" 
textLength="1110.2" 
clip-path="url(#breeze-release-management-update-constraints-line-8)">[required]&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#1
 [...]
+</text><text class="breeze-release-management-update-constraints-r4" x="0" 
y="239.6" textLength="12.2" 
clip-path="url(#breeze-release-management-update-constraints-line-9)">│</text><text
 class="breeze-release-management-update-constraints-r5" x="24.4" y="239.6" 
textLength="12.2" 
clip-path="url(#breeze-release-management-update-constraints-line-9)">*</text><text
 class="breeze-release-management-update-constraints-r6" x="61" y="239.6" 
textLength="12.2" clip-path="url(#breeze-release-manage [...]
+</text><text class="breeze-release-management-update-constraints-r4" x="0" 
y="264" textLength="12.2" 
clip-path="url(#breeze-release-management-update-constraints-line-10)">│</text><text
 class="breeze-release-management-update-constraints-r6" x="61" y="264" 
textLength="12.2" 
clip-path="url(#breeze-release-management-update-constraints-line-10)">-</text><text
 class="breeze-release-management-update-constraints-r6" x="73.2" y="264" 
textLength="85.4" clip-path="url(#breeze-release-management [...]
+</text><text class="breeze-release-management-update-constraints-r4" x="0" 
y="288.4" textLength="1464" 
clip-path="url(#breeze-release-management-update-constraints-line-11)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
 class="breeze-release-management-update-constraints-r2" x="1464" y="288.4" 
textLength="12.2" 
clip-path="url(#breeze-release-management-update-constraints-line-11)">
+</text><text class="breeze-release-management-update-constraints-r4" x="0" 
y="312.8" textLength="24.4" 
clip-path="url(#breeze-release-management-update-constraints-line-12)">╭─</text><text
 class="breeze-release-management-update-constraints-r4" x="24.4" y="312.8" 
textLength="244" 
clip-path="url(#breeze-release-management-update-constraints-line-12)">&#160;Selection&#160;criteria&#160;</text><text
 class="breeze-release-management-update-constraints-r4" x="268.4" y="312.8" 
textLength="1171 [...]
+</text><text class="breeze-release-management-update-constraints-r4" x="0" 
y="337.2" textLength="12.2" 
clip-path="url(#breeze-release-management-update-constraints-line-13)">│</text><text
 class="breeze-release-management-update-constraints-r5" x="24.4" y="337.2" 
textLength="12.2" 
clip-path="url(#breeze-release-management-update-constraints-line-13)">*</text><text
 class="breeze-release-management-update-constraints-r6" x="61" y="337.2" 
textLength="12.2" clip-path="url(#breeze-release-mana [...]
+</text><text class="breeze-release-management-update-constraints-r4" x="0" 
y="361.6" textLength="12.2" 
clip-path="url(#breeze-release-management-update-constraints-line-14)">│</text><text
 class="breeze-release-management-update-constraints-r8" x="427" y="361.6" 
textLength="817.4" 
clip-path="url(#breeze-release-management-update-constraints-line-14)">[required]&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#16
 [...]
+</text><text class="breeze-release-management-update-constraints-r4" x="0" 
y="386" textLength="12.2" 
clip-path="url(#breeze-release-management-update-constraints-line-15)">│</text><text
 class="breeze-release-management-update-constraints-r6" x="61" y="386" 
textLength="12.2" 
clip-path="url(#breeze-release-management-update-constraints-line-15)">-</text><text
 class="breeze-release-management-update-constraints-r6" x="73.2" y="386" 
textLength="97.6" clip-path="url(#breeze-release-management [...]
+</text><text class="breeze-release-management-update-constraints-r4" x="0" 
y="410.4" textLength="12.2" 
clip-path="url(#breeze-release-management-update-constraints-line-16)">│</text><text
 class="breeze-release-management-update-constraints-r7" x="427" y="410.4" 
textLength="866.2" 
clip-path="url(#breeze-release-management-update-constraints-line-16)">(constraints-source-providers&#160;|&#160;constraints&#160;|&#160;constraints-no-providers)</text><text
 class="breeze-release-management-upd [...]
+</text><text class="breeze-release-management-update-constraints-r4" x="0" 
y="434.8" textLength="1464" 
clip-path="url(#breeze-release-management-update-constraints-line-17)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
 class="breeze-release-management-update-constraints-r2" x="1464" y="434.8" 
textLength="12.2" 
clip-path="url(#breeze-release-management-update-constraints-line-17)">
+</text><text class="breeze-release-management-update-constraints-r4" x="0" 
y="459.2" textLength="24.4" 
clip-path="url(#breeze-release-management-update-constraints-line-18)">╭─</text><text
 class="breeze-release-management-update-constraints-r4" x="24.4" y="459.2" 
textLength="231.8" 
clip-path="url(#breeze-release-management-update-constraints-line-18)">&#160;Action&#160;to&#160;perform&#160;</text><text
 class="breeze-release-management-update-constraints-r4" x="256.2" y="459.2" 
textLength [...]
+</text><text class="breeze-release-management-update-constraints-r4" x="0" 
y="483.6" textLength="12.2" 
clip-path="url(#breeze-release-management-update-constraints-line-19)">│</text><text
 class="breeze-release-management-update-constraints-r6" x="24.4" y="483.6" 
textLength="12.2" 
clip-path="url(#breeze-release-management-update-constraints-line-19)">-</text><text
 class="breeze-release-management-update-constraints-r6" x="36.6" y="483.6" 
textLength="97.6" clip-path="url(#breeze-release-ma [...]
+</text><text class="breeze-release-management-update-constraints-r4" x="0" 
y="508" textLength="12.2" 
clip-path="url(#breeze-release-management-update-constraints-line-20)">│</text><text
 class="breeze-release-management-update-constraints-r6" x="24.4" y="508" 
textLength="12.2" 
clip-path="url(#breeze-release-management-update-constraints-line-20)">-</text><text
 class="breeze-release-management-update-constraints-r6" x="36.6" y="508" 
textLength="97.6" clip-path="url(#breeze-release-manageme [...]
+</text><text class="breeze-release-management-update-constraints-r4" x="0" 
y="532.4" textLength="12.2" 
clip-path="url(#breeze-release-management-update-constraints-line-21)">│</text><text
 class="breeze-release-management-update-constraints-r2" x="317.2" y="532.4" 
textLength="1122.4" 
clip-path="url(#breeze-release-management-update-constraints-line-21)">added&#160;yet).&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&
 [...]
+</text><text class="breeze-release-management-update-constraints-r4" x="0" 
y="556.8" textLength="12.2" 
clip-path="url(#breeze-release-management-update-constraints-line-22)">│</text><text
 class="breeze-release-management-update-constraints-r7" x="317.2" y="556.8" 
textLength="1122.4" 
clip-path="url(#breeze-release-management-update-constraints-line-22)">(FILE)&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160
 [...]
+</text><text class="breeze-release-management-update-constraints-r4" x="0" 
y="581.2" textLength="1464" 
clip-path="url(#breeze-release-management-update-constraints-line-23)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
 class="breeze-release-management-update-constraints-r2" x="1464" y="581.2" 
textLength="12.2" 
clip-path="url(#breeze-release-management-update-constraints-line-23)">
+</text><text class="breeze-release-management-update-constraints-r4" x="0" 
y="605.6" textLength="24.4" 
clip-path="url(#breeze-release-management-update-constraints-line-24)">╭─</text><text
 class="breeze-release-management-update-constraints-r4" x="24.4" y="605.6" 
textLength="195.2" 
clip-path="url(#breeze-release-management-update-constraints-line-24)">&#160;Common&#160;options&#160;</text><text
 class="breeze-release-management-update-constraints-r4" x="219.6" y="605.6" 
textLength="1220"  [...]
+</text><text class="breeze-release-management-update-constraints-r4" x="0" 
y="630" textLength="12.2" 
clip-path="url(#breeze-release-management-update-constraints-line-25)">│</text><text
 class="breeze-release-management-update-constraints-r6" x="24.4" y="630" 
textLength="12.2" 
clip-path="url(#breeze-release-management-update-constraints-line-25)">-</text><text
 class="breeze-release-management-update-constraints-r6" x="36.6" y="630" 
textLength="97.6" clip-path="url(#breeze-release-manageme [...]
+</text><text class="breeze-release-management-update-constraints-r4" x="0" 
y="654.4" textLength="12.2" 
clip-path="url(#breeze-release-management-update-constraints-line-26)">│</text><text
 class="breeze-release-management-update-constraints-r6" x="24.4" y="654.4" 
textLength="12.2" 
clip-path="url(#breeze-release-management-update-constraints-line-26)">-</text><text
 class="breeze-release-management-update-constraints-r6" x="36.6" y="654.4" 
textLength="48.8" clip-path="url(#breeze-release-ma [...]
+</text><text class="breeze-release-management-update-constraints-r4" x="0" 
y="678.8" textLength="12.2" 
clip-path="url(#breeze-release-management-update-constraints-line-27)">│</text><text
 class="breeze-release-management-update-constraints-r6" x="24.4" y="678.8" 
textLength="12.2" 
clip-path="url(#breeze-release-management-update-constraints-line-27)">-</text><text
 class="breeze-release-management-update-constraints-r6" x="36.6" y="678.8" 
textLength="85.4" clip-path="url(#breeze-release-ma [...]
+</text><text class="breeze-release-management-update-constraints-r4" x="0" 
y="703.2" textLength="12.2" 
clip-path="url(#breeze-release-management-update-constraints-line-28)">│</text><text
 class="breeze-release-management-update-constraints-r6" x="24.4" y="703.2" 
textLength="12.2" 
clip-path="url(#breeze-release-management-update-constraints-line-28)">-</text><text
 class="breeze-release-management-update-constraints-r6" x="36.6" y="703.2" 
textLength="61" clip-path="url(#breeze-release-mana [...]
+</text><text class="breeze-release-management-update-constraints-r4" x="0" 
y="727.6" textLength="1464" 
clip-path="url(#breeze-release-management-update-constraints-line-29)">╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯</text><text
 class="breeze-release-management-update-constraints-r2" x="1464" y="727.6" 
textLength="12.2" 
clip-path="url(#breeze-release-management-update-constraints-line-29)">
 </text>
     </g>
     </g>

Reply via email to