CINXE.COM

feat: more sensible error logging (830edd93) · Commits · Giovanni Galloro / genai-sw-delivery · GitLab

<!DOCTYPE html> <html class="gl-light ui-neutral with-top-bar with-header " lang="en"> <head prefix="og: http://ogp.me/ns#"> <meta charset="utf-8"> <meta content="IE=edge" http-equiv="X-UA-Compatible"> <meta content="width=device-width, initial-scale=1" name="viewport"> <title>feat: more sensible error logging (830edd93) · Commits · Giovanni Galloro / genai-sw-delivery · GitLab</title> <script nonce="PKPtGTGuvjdpqaT/ybGsjw=="> //<![CDATA[ window.gon={};gon.math_rendering_limits_enabled=true;gon.features={"asyncSidebarCounts":true,"ciGraphqlPipelineMiniGraph":false}; //]]> </script> <link rel="stylesheet" href="/assets/application-cf50ed9fdabbe5edc177ab99ddd2e34d929321bc2a28790cd0855b80d2f91959.css" /> <link rel="stylesheet" href="/assets/page_bundles/pipelines-aa0e882a15d0bddb8d1419001aa045cd40b0442434ee26210b883d25e503d86d.css" /><link rel="stylesheet" href="/assets/page_bundles/design_management-55b7f0d1f8549b24ba19c0b5aaf18a17a8d3828677fad074d37dd2e69d08da2b.css" /><link rel="stylesheet" href="/assets/page_bundles/commit_description-1e2cba4dda3c7b30dd84924809020c569f1308dea51520fe1dd5d4ce31403195.css" /><link rel="stylesheet" href="/assets/page_bundles/work_items-cbc6a2e1633c4e847a617e35cc4833b85b80816db688d3d6dd3cd31d4251bc53.css" /><link rel="stylesheet" href="/assets/page_bundles/notes_shared-7e727ab1e91b421915feadeb04a1b9d57213cb1b2f8f56f4d894b34d6b42e9b3.css" /> <link rel="stylesheet" href="/assets/application_utilities-73b9a1c83703ccfccd0e1e418c7d8dc606fcac533fa38b9fa86792f098db0f9a.css" /> <link rel="stylesheet" href="/assets/tailwind-9314cc7d2d98343a78eb1a2cfa05dae52ad8af7a588c79865b44258122d4b9b5.css" /> <link rel="stylesheet" href="/assets/fonts-fae5d3f79948bd85f18b6513a025f863b19636e85b09a1492907eb4b1bb0557b.css" /> <link rel="stylesheet" href="/assets/highlight/themes/white-5ffbb706faebead681b01c8b52e92c6c0d35ad5b1c11d39012c90bcaf7892ca8.css" /> <script src="/assets/webpack/runtime.69c073f2.bundle.js" defer="defer" nonce="PKPtGTGuvjdpqaT/ybGsjw=="></script> <script src="/assets/webpack/main.5ff9b3f0.chunk.js" defer="defer" nonce="PKPtGTGuvjdpqaT/ybGsjw=="></script> <script src="/assets/webpack/tracker.f516f6a0.chunk.js" defer="defer" nonce="PKPtGTGuvjdpqaT/ybGsjw=="></script> <script src="/assets/webpack/analytics.cc138df3.chunk.js" defer="defer" nonce="PKPtGTGuvjdpqaT/ybGsjw=="></script> <script nonce="PKPtGTGuvjdpqaT/ybGsjw=="> //<![CDATA[ window.snowplowOptions = {"namespace":"gl","hostname":"snowplow.trx.gitlab.net","cookieDomain":".gitlab.com","appId":"gitlab","formTracking":true,"linkClickTracking":true} gl = window.gl || {}; gl.snowplowStandardContext = {"schema":"iglu:com.gitlab/gitlab_standard/jsonschema/1-1-1","data":{"environment":"production","source":"gitlab-rails","correlation_id":"01JDQ4Y7A405V67QMPWCF8AGQH","plan":"free","extra":{},"user_id":null,"global_user_id":null,"is_gitlab_team_member":null,"namespace_id":72455283,"project_id":52379658,"feature_enabled_by_namespace_ids":null,"realm":"saas","instance_id":"ea8bf810-1d6f-4a6a-b4fd-93e8cbd8b57f","host_name":"gitlab-webservice-web-686449f9c8-kn6qd","instance_version":"17.7.0","context_generated_at":"2024-11-27T15:48:19.077Z"}} gl.snowplowPseudonymizedPageUrl = "https://gitlab.com/namespace72455283/project52379658/-/commit/830edd93b95e3f0f26bd4d7789ee293c7798eadb"; gl.maskedDefaultReferrerUrl = null; gl.ga4MeasurementId = 'G-ENFH3X7M5Y'; //]]> </script> <link rel="preload" href="/assets/application_utilities-73b9a1c83703ccfccd0e1e418c7d8dc606fcac533fa38b9fa86792f098db0f9a.css" as="style" type="text/css" nonce="mzFH/64ynJxaAK69XZr+mQ=="> <link rel="preload" href="/assets/application-cf50ed9fdabbe5edc177ab99ddd2e34d929321bc2a28790cd0855b80d2f91959.css" as="style" type="text/css" nonce="mzFH/64ynJxaAK69XZr+mQ=="> <link rel="preload" href="/assets/highlight/themes/white-5ffbb706faebead681b01c8b52e92c6c0d35ad5b1c11d39012c90bcaf7892ca8.css" as="style" type="text/css" nonce="mzFH/64ynJxaAK69XZr+mQ=="> <link crossorigin="" href="https://snowplow.trx.gitlab.net" rel="preconnect"> <link as="font" crossorigin="" href="/assets/gitlab-sans/GitLabSans-1e0a5107ea3bbd4be93e8ad2c503467e43166cd37e4293570b490e0812ede98b.woff2" rel="preload"> <link as="font" crossorigin="" href="/assets/gitlab-sans/GitLabSans-Italic-38eaf1a569a54ab28c58b92a4a8de3afb96b6ebc250cf372003a7b38151848cc.woff2" rel="preload"> <link as="font" crossorigin="" href="/assets/gitlab-mono/GitLabMono-08d2c5e8ff8fd3d2d6ec55bc7713380f8981c35f9d2df14e12b835464d6e8f23.woff2" rel="preload"> <link as="font" crossorigin="" href="/assets/gitlab-mono/GitLabMono-Italic-38e58d8df29485a20c550da1d0111e2c2169f6dcbcf894f2cd3afbdd97bcc588.woff2" rel="preload"> <link rel="preload" href="/assets/fonts-fae5d3f79948bd85f18b6513a025f863b19636e85b09a1492907eb4b1bb0557b.css" as="style" type="text/css" nonce="mzFH/64ynJxaAK69XZr+mQ=="> <script src="/assets/webpack/sentry.806e469a.chunk.js" defer="defer" nonce="PKPtGTGuvjdpqaT/ybGsjw=="></script> <script src="/assets/webpack/10.627b621a.chunk.js" defer="defer" nonce="PKPtGTGuvjdpqaT/ybGsjw=="></script> <script src="/assets/webpack/12.02747e09.chunk.js" defer="defer" nonce="PKPtGTGuvjdpqaT/ybGsjw=="></script> <script src="/assets/webpack/14.cac0f30e.chunk.js" defer="defer" nonce="PKPtGTGuvjdpqaT/ybGsjw=="></script> <script src="/assets/webpack/commons-pages.groups.analytics.dashboards-pages.groups.harbor.repositories-pages.groups.iteration_ca-b07ae190.c914cf7a.chunk.js" defer="defer" nonce="PKPtGTGuvjdpqaT/ybGsjw=="></script> <script src="/assets/webpack/commons-pages.groups.new-pages.import.gitlab_projects.new-pages.import.manifest.new-pages.projects.n-44c6c18e.f71a354c.chunk.js" defer="defer" nonce="PKPtGTGuvjdpqaT/ybGsjw=="></script> <script src="/assets/webpack/commons-pages.search.show-super_sidebar.cc9aea19.chunk.js" defer="defer" nonce="PKPtGTGuvjdpqaT/ybGsjw=="></script> <script src="/assets/webpack/super_sidebar.5c18f377.chunk.js" defer="defer" nonce="PKPtGTGuvjdpqaT/ybGsjw=="></script> <script src="/assets/webpack/commons-pages.projects-pages.projects.activity-pages.projects.alert_management.details-pages.project-bce54798.10aa3488.chunk.js" defer="defer" nonce="PKPtGTGuvjdpqaT/ybGsjw=="></script> <script src="/assets/webpack/commons-pages.admin.abuse_reports.show-pages.admin.topics.edit-pages.admin.topics.new-pages.groups.c-131c4551.19400b87.chunk.js" defer="defer" nonce="PKPtGTGuvjdpqaT/ybGsjw=="></script> <script src="/assets/webpack/5.c3c6164f.chunk.js" defer="defer" nonce="PKPtGTGuvjdpqaT/ybGsjw=="></script> <script src="/assets/webpack/6.d1ccac69.chunk.js" defer="defer" nonce="PKPtGTGuvjdpqaT/ybGsjw=="></script> <script src="/assets/webpack/commons-pages.admin.abuse_reports.show-pages.admin.topics.edit-pages.admin.topics.new-pages.groups.c-de4ce5da.2aa43204.chunk.js" defer="defer" nonce="PKPtGTGuvjdpqaT/ybGsjw=="></script> <script src="/assets/webpack/commons-pages.groups.milestones.edit-pages.groups.milestones.new-pages.groups.milestones.show-pages.-9b0d9629.d975cbe2.chunk.js" defer="defer" nonce="PKPtGTGuvjdpqaT/ybGsjw=="></script> <script src="/assets/webpack/26.34123a23.chunk.js" defer="defer" nonce="PKPtGTGuvjdpqaT/ybGsjw=="></script> <script src="/assets/webpack/commons-pages.groups.wikis.diff-pages.projects.commit.show-pages.projects.compare.show-pages.project-e73dea2d.7f802766.chunk.js" defer="defer" nonce="PKPtGTGuvjdpqaT/ybGsjw=="></script> <script src="/assets/webpack/commons-pages.projects.blob.show-pages.projects.commit.show-pages.projects.merge_requests.rapid_diff-e17e687c.4a4c7e32.chunk.js" defer="defer" nonce="PKPtGTGuvjdpqaT/ybGsjw=="></script> <script src="/assets/webpack/commons-pages.projects.commit.pipelines-pages.projects.commit.rapid_diffs-pages.projects.commit.show-b00e0b37.d27d2aae.chunk.js" defer="defer" nonce="PKPtGTGuvjdpqaT/ybGsjw=="></script> <script src="/assets/webpack/commons-pages.projects.commit.pipelines-pages.projects.commit.rapid_diffs-pages.projects.commit.show.f5d38563.chunk.js" defer="defer" nonce="PKPtGTGuvjdpqaT/ybGsjw=="></script> <script src="/assets/webpack/commons-pages.projects.commit.show-pages.projects.snippets.show-pages.snippets.show.9698752e.chunk.js" defer="defer" nonce="PKPtGTGuvjdpqaT/ybGsjw=="></script> <script src="/assets/webpack/pages.projects.commit.show.da73b0cb.chunk.js" defer="defer" nonce="PKPtGTGuvjdpqaT/ybGsjw=="></script> <meta content="object" property="og:type"> <meta content="GitLab" property="og:site_name"> <meta content="feat: more sensible error logging (830edd93) · Commits · Giovanni Galloro / genai-sw-delivery · GitLab" property="og:title"> <meta content="GitLab.com" property="og:description"> <meta content="https://gitlab.com/assets/twitter_card-570ddb06edf56a2312253c5872489847a0f385112ddbcd71ccfa1570febab5d2.jpg" property="og:image"> <meta content="64" property="og:image:width"> <meta content="64" property="og:image:height"> <meta content="https://gitlab.com/galloro/genai-sw-delivery/-/commit/830edd93b95e3f0f26bd4d7789ee293c7798eadb" property="og:url"> <meta content="summary" property="twitter:card"> <meta content="feat: more sensible error logging (830edd93) · Commits · Giovanni Galloro / genai-sw-delivery · GitLab" property="twitter:title"> <meta content="GitLab.com" property="twitter:description"> <meta content="https://gitlab.com/assets/twitter_card-570ddb06edf56a2312253c5872489847a0f385112ddbcd71ccfa1570febab5d2.jpg" property="twitter:image"> <meta name="csrf-param" content="authenticity_token" /> <meta name="csrf-token" content="y02DpJ4OcF0jQJHxg_d41ydPfsw_xJNlBhEzNG1OjIlMFwpfXhiFQerqy4fXR3U7EX8vGUIJvS1p0oj2INFHMA" /> <meta name="csp-nonce" content="PKPtGTGuvjdpqaT/ybGsjw==" /> <meta name="action-cable-url" content="/-/cable" /> <link href="/-/manifest.json" rel="manifest"> <link rel="icon" type="image/png" href="/assets/favicon-72a2cad5025aa931d6ea56c3201d1f18e68a8cd39788c7c80d5b2b82aa5143ef.png" id="favicon" data-original-href="/assets/favicon-72a2cad5025aa931d6ea56c3201d1f18e68a8cd39788c7c80d5b2b82aa5143ef.png" /> <link rel="apple-touch-icon" type="image/x-icon" href="/assets/apple-touch-icon-b049d4bc0dd9626f31db825d61880737befc7835982586d015bded10b4435460.png" /> <link href="/search/opensearch.xml" rel="search" title="Search GitLab" type="application/opensearchdescription+xml"> <meta content="GitLab.com" name="description"> <meta content="#ececef" name="theme-color"> </head> <body class="tab-width-8 gl-browser-ie gl-platform-windows" data-find-file="/galloro/genai-sw-delivery/-/find_file/830edd93b95e3f0f26bd4d7789ee293c7798eadb" data-namespace-id="72455283" data-page="projects:commit:show" data-page-type-id="830edd93b95e3f0f26bd4d7789ee293c7798eadb" data-project="genai-sw-delivery" data-project-full-path="galloro/genai-sw-delivery" data-project-id="52379658"> <script nonce="PKPtGTGuvjdpqaT/ybGsjw=="> //<![CDATA[ gl = window.gl || {}; gl.GfmAutoComplete = gl.GfmAutoComplete || {}; gl.GfmAutoComplete.dataSources = {"members":"/galloro/genai-sw-delivery/-/autocomplete_sources/members?type=Commit\u0026type_id=830edd93b95e3f0f26bd4d7789ee293c7798eadb","issues":"/galloro/genai-sw-delivery/-/autocomplete_sources/issues","mergeRequests":"/galloro/genai-sw-delivery/-/autocomplete_sources/merge_requests","labels":"/galloro/genai-sw-delivery/-/autocomplete_sources/labels?type=Commit\u0026type_id=830edd93b95e3f0f26bd4d7789ee293c7798eadb","milestones":"/galloro/genai-sw-delivery/-/autocomplete_sources/milestones","commands":"/galloro/genai-sw-delivery/-/autocomplete_sources/commands?type=Commit\u0026type_id=830edd93b95e3f0f26bd4d7789ee293c7798eadb","snippets":"/galloro/genai-sw-delivery/-/autocomplete_sources/snippets","contacts":"/galloro/genai-sw-delivery/-/autocomplete_sources/contacts?type=Commit\u0026type_id=830edd93b95e3f0f26bd4d7789ee293c7798eadb","wikis":"/galloro/genai-sw-delivery/-/autocomplete_sources/wikis"}; //]]> </script> <script nonce="PKPtGTGuvjdpqaT/ybGsjw=="> //<![CDATA[ gl = window.gl || {}; gl.client = {"isIe":true,"isWindows":true}; //]]> </script> <header class="header-logged-out" data-testid="navbar"> <a class="gl-sr-only gl-accessibility" href="#content-body">Skip to content</a> <div class="container-fluid"> <nav aria-label="Explore GitLab" class="header-logged-out-nav gl-flex gl-gap-3 gl-justify-between"> <div class="gl-flex gl-items-center gl-gap-1"> <span class="gl-sr-only">GitLab</span> <a title="Homepage" id="logo" class="header-logged-out-logo has-tooltip" aria-label="Homepage" data-track-label="main_navigation" data-track-action="click_gitlab_logo_link" data-track-property="navigation_top" href="/"><svg aria-hidden="true" role="img" class="tanuki-logo" width="25" height="24" viewBox="0 0 25 24" fill="none" xmlns="http://www.w3.org/2000/svg"> <path class="tanuki-shape tanuki" d="m24.507 9.5-.034-.09L21.082.562a.896.896 0 0 0-1.694.091l-2.29 7.01H7.825L5.535.653a.898.898 0 0 0-1.694-.09L.451 9.411.416 9.5a6.297 6.297 0 0 0 2.09 7.278l.012.01.03.022 5.16 3.867 2.56 1.935 1.554 1.176a1.051 1.051 0 0 0 1.268 0l1.555-1.176 2.56-1.935 5.197-3.89.014-.01A6.297 6.297 0 0 0 24.507 9.5Z" fill="#E24329"/> <path class="tanuki-shape right-cheek" d="m24.507 9.5-.034-.09a11.44 11.44 0 0 0-4.56 2.051l-7.447 5.632 4.742 3.584 5.197-3.89.014-.01A6.297 6.297 0 0 0 24.507 9.5Z" fill="#FC6D26"/> <path class="tanuki-shape chin" d="m7.707 20.677 2.56 1.935 1.555 1.176a1.051 1.051 0 0 0 1.268 0l1.555-1.176 2.56-1.935-4.743-3.584-4.755 3.584Z" fill="#FCA326"/> <path class="tanuki-shape left-cheek" d="M5.01 11.461a11.43 11.43 0 0 0-4.56-2.05L.416 9.5a6.297 6.297 0 0 0 2.09 7.278l.012.01.03.022 5.16 3.867 4.745-3.584-7.444-5.632Z" fill="#FC6D26"/> </svg> </a></div> <ul class="gl-list-none gl-p-0 gl-m-0 gl-flex gl-gap-3 gl-items-center gl-grow"> <li class="header-logged-out-nav-item header-logged-out-dropdown md:gl-hidden"> <button class="header-logged-out-toggle" data-toggle="dropdown" type="button"> <span class="gl-sr-only"> Menu </span> <svg class="s16" data-testid="hamburger-icon"><use href="/assets/icons-8791a66659d025e0a4c801978c79a1fbd82db1d27d85f044a35728ea7cf0ae80.svg#hamburger"></use></svg> </button> <div class="dropdown-menu"> <ul> <li> <a href="https://about.gitlab.com/why-gitlab">Why GitLab </a></li> <li> <a href="https://about.gitlab.com/pricing">Pricing </a></li> <li> <a href="https://about.gitlab.com/sales">Contact Sales </a></li> <li> <a href="/explore">Explore</a> </li> </ul> </div> </li> <li class="header-logged-out-nav-item gl-hidden md:gl-inline-block"> <a href="https://about.gitlab.com/why-gitlab">Why GitLab </a></li> <li class="header-logged-out-nav-item gl-hidden md:gl-inline-block"> <a href="https://about.gitlab.com/pricing">Pricing </a></li> <li class="header-logged-out-nav-item gl-hidden gl-inline-block"> <a href="https://about.gitlab.com/sales">Contact Sales </a></li> <li class="header-logged-out-nav-item gl-hidden md:gl-inline-block"> <a class="" href="/explore">Explore</a> </li> </ul> <ul class="gl-list-none gl-p-0 gl-m-0 gl-flex gl-gap-3 gl-items-center gl-justify-end"> <li class="header-logged-out-nav-item"> <a href="/users/sign_in?redirect_to_referer=yes">Sign in</a> </li> <li class="header-logged-out-nav-item"> <a class="gl-button btn btn-md btn-confirm !gl-inline-flex" href="/users/sign_up"><span class="gl-button-text"> Get free trial </span> </a></li> </ul> </nav> </div> </header> <div class="layout-page page-with-super-sidebar"> <aside class="js-super-sidebar super-sidebar super-sidebar-loading" data-command-palette="{&quot;project_files_url&quot;:&quot;/galloro/genai-sw-delivery/-/files/830edd93b95e3f0f26bd4d7789ee293c7798eadb?format=json&quot;,&quot;project_blob_url&quot;:&quot;/galloro/genai-sw-delivery/-/blob/830edd93b95e3f0f26bd4d7789ee293c7798eadb&quot;}" data-force-desktop-expanded-sidebar="" data-is-saas="true" data-root-path="/" data-sidebar="{&quot;whats_new_most_recent_release_items_count&quot;:3,&quot;whats_new_version_digest&quot;:&quot;9020798cd628cb28f6f12ce4e3a03126dcfed925f69da6beaee7457ed775d76b&quot;,&quot;is_logged_in&quot;:false,&quot;context_switcher_links&quot;:[{&quot;title&quot;:&quot;Explore&quot;,&quot;link&quot;:&quot;/explore&quot;,&quot;icon&quot;:&quot;compass&quot;}],&quot;current_menu_items&quot;:[{&quot;id&quot;:&quot;project_overview&quot;,&quot;title&quot;:&quot;genai-sw-delivery&quot;,&quot;entity_id&quot;:52379658,&quot;link&quot;:&quot;/galloro/genai-sw-delivery&quot;,&quot;link_classes&quot;:&quot;shortcuts-project&quot;,&quot;is_active&quot;:false},{&quot;id&quot;:&quot;manage_menu&quot;,&quot;title&quot;:&quot;Manage&quot;,&quot;icon&quot;:&quot;users&quot;,&quot;avatar_shape&quot;:&quot;rect&quot;,&quot;link&quot;:&quot;/galloro/genai-sw-delivery/activity&quot;,&quot;is_active&quot;:false,&quot;items&quot;:[{&quot;id&quot;:&quot;activity&quot;,&quot;title&quot;:&quot;Activity&quot;,&quot;link&quot;:&quot;/galloro/genai-sw-delivery/activity&quot;,&quot;link_classes&quot;:&quot;shortcuts-project-activity&quot;,&quot;is_active&quot;:false},{&quot;id&quot;:&quot;members&quot;,&quot;title&quot;:&quot;Members&quot;,&quot;link&quot;:&quot;/galloro/genai-sw-delivery/-/project_members&quot;,&quot;is_active&quot;:false},{&quot;id&quot;:&quot;labels&quot;,&quot;title&quot;:&quot;Labels&quot;,&quot;link&quot;:&quot;/galloro/genai-sw-delivery/-/labels&quot;,&quot;is_active&quot;:false}],&quot;separated&quot;:false},{&quot;id&quot;:&quot;plan_menu&quot;,&quot;title&quot;:&quot;Plan&quot;,&quot;icon&quot;:&quot;planning&quot;,&quot;avatar_shape&quot;:&quot;rect&quot;,&quot;link&quot;:&quot;/galloro/genai-sw-delivery/-/issues&quot;,&quot;is_active&quot;:false,&quot;items&quot;:[{&quot;id&quot;:&quot;project_issue_list&quot;,&quot;title&quot;:&quot;Issues&quot;,&quot;link&quot;:&quot;/galloro/genai-sw-delivery/-/issues&quot;,&quot;pill_count_field&quot;:&quot;openIssuesCount&quot;,&quot;link_classes&quot;:&quot;shortcuts-issues has-sub-items&quot;,&quot;is_active&quot;:false},{&quot;id&quot;:&quot;boards&quot;,&quot;title&quot;:&quot;Issue boards&quot;,&quot;link&quot;:&quot;/galloro/genai-sw-delivery/-/boards&quot;,&quot;link_classes&quot;:&quot;shortcuts-issue-boards&quot;,&quot;is_active&quot;:false},{&quot;id&quot;:&quot;milestones&quot;,&quot;title&quot;:&quot;Milestones&quot;,&quot;link&quot;:&quot;/galloro/genai-sw-delivery/-/milestones&quot;,&quot;is_active&quot;:false},{&quot;id&quot;:&quot;project_wiki&quot;,&quot;title&quot;:&quot;Wiki&quot;,&quot;link&quot;:&quot;/galloro/genai-sw-delivery/-/wikis/home&quot;,&quot;link_classes&quot;:&quot;shortcuts-wiki&quot;,&quot;is_active&quot;:false}],&quot;separated&quot;:false},{&quot;id&quot;:&quot;code_menu&quot;,&quot;title&quot;:&quot;Code&quot;,&quot;icon&quot;:&quot;code&quot;,&quot;avatar_shape&quot;:&quot;rect&quot;,&quot;link&quot;:&quot;/galloro/genai-sw-delivery/-/merge_requests&quot;,&quot;is_active&quot;:true,&quot;items&quot;:[{&quot;id&quot;:&quot;project_merge_request_list&quot;,&quot;title&quot;:&quot;Merge requests&quot;,&quot;link&quot;:&quot;/galloro/genai-sw-delivery/-/merge_requests&quot;,&quot;pill_count_field&quot;:&quot;openMergeRequestsCount&quot;,&quot;link_classes&quot;:&quot;shortcuts-merge_requests&quot;,&quot;is_active&quot;:false},{&quot;id&quot;:&quot;files&quot;,&quot;title&quot;:&quot;Repository&quot;,&quot;link&quot;:&quot;/galloro/genai-sw-delivery/-/tree/830edd93b95e3f0f26bd4d7789ee293c7798eadb&quot;,&quot;link_classes&quot;:&quot;shortcuts-tree&quot;,&quot;is_active&quot;:false},{&quot;id&quot;:&quot;branches&quot;,&quot;title&quot;:&quot;Branches&quot;,&quot;link&quot;:&quot;/galloro/genai-sw-delivery/-/branches&quot;,&quot;is_active&quot;:false},{&quot;id&quot;:&quot;commits&quot;,&quot;title&quot;:&quot;Commits&quot;,&quot;link&quot;:&quot;/galloro/genai-sw-delivery/-/commits/830edd93b95e3f0f26bd4d7789ee293c7798eadb&quot;,&quot;link_classes&quot;:&quot;shortcuts-commits&quot;,&quot;is_active&quot;:true},{&quot;id&quot;:&quot;tags&quot;,&quot;title&quot;:&quot;Tags&quot;,&quot;link&quot;:&quot;/galloro/genai-sw-delivery/-/tags&quot;,&quot;is_active&quot;:false},{&quot;id&quot;:&quot;graphs&quot;,&quot;title&quot;:&quot;Repository graph&quot;,&quot;link&quot;:&quot;/galloro/genai-sw-delivery/-/network/830edd93b95e3f0f26bd4d7789ee293c7798eadb&quot;,&quot;link_classes&quot;:&quot;shortcuts-network&quot;,&quot;is_active&quot;:false},{&quot;id&quot;:&quot;compare&quot;,&quot;title&quot;:&quot;Compare revisions&quot;,&quot;link&quot;:&quot;/galloro/genai-sw-delivery/-/compare?from=main\u0026to=830edd93b95e3f0f26bd4d7789ee293c7798eadb&quot;,&quot;is_active&quot;:false},{&quot;id&quot;:&quot;project_snippets&quot;,&quot;title&quot;:&quot;Snippets&quot;,&quot;link&quot;:&quot;/galloro/genai-sw-delivery/-/snippets&quot;,&quot;link_classes&quot;:&quot;shortcuts-snippets&quot;,&quot;is_active&quot;:false}],&quot;separated&quot;:false},{&quot;id&quot;:&quot;build_menu&quot;,&quot;title&quot;:&quot;Build&quot;,&quot;icon&quot;:&quot;rocket&quot;,&quot;avatar_shape&quot;:&quot;rect&quot;,&quot;link&quot;:&quot;/galloro/genai-sw-delivery/-/pipelines&quot;,&quot;is_active&quot;:false,&quot;items&quot;:[{&quot;id&quot;:&quot;pipelines&quot;,&quot;title&quot;:&quot;Pipelines&quot;,&quot;link&quot;:&quot;/galloro/genai-sw-delivery/-/pipelines&quot;,&quot;link_classes&quot;:&quot;shortcuts-pipelines&quot;,&quot;is_active&quot;:false},{&quot;id&quot;:&quot;jobs&quot;,&quot;title&quot;:&quot;Jobs&quot;,&quot;link&quot;:&quot;/galloro/genai-sw-delivery/-/jobs&quot;,&quot;link_classes&quot;:&quot;shortcuts-builds&quot;,&quot;is_active&quot;:false},{&quot;id&quot;:&quot;pipeline_schedules&quot;,&quot;title&quot;:&quot;Pipeline schedules&quot;,&quot;link&quot;:&quot;/galloro/genai-sw-delivery/-/pipeline_schedules&quot;,&quot;link_classes&quot;:&quot;shortcuts-builds&quot;,&quot;is_active&quot;:false},{&quot;id&quot;:&quot;artifacts&quot;,&quot;title&quot;:&quot;Artifacts&quot;,&quot;link&quot;:&quot;/galloro/genai-sw-delivery/-/artifacts&quot;,&quot;link_classes&quot;:&quot;shortcuts-builds&quot;,&quot;is_active&quot;:false}],&quot;separated&quot;:false},{&quot;id&quot;:&quot;deploy_menu&quot;,&quot;title&quot;:&quot;Deploy&quot;,&quot;icon&quot;:&quot;deployments&quot;,&quot;avatar_shape&quot;:&quot;rect&quot;,&quot;link&quot;:&quot;/galloro/genai-sw-delivery/-/releases&quot;,&quot;is_active&quot;:false,&quot;items&quot;:[{&quot;id&quot;:&quot;releases&quot;,&quot;title&quot;:&quot;Releases&quot;,&quot;link&quot;:&quot;/galloro/genai-sw-delivery/-/releases&quot;,&quot;link_classes&quot;:&quot;shortcuts-deployments-releases&quot;,&quot;is_active&quot;:false},{&quot;id&quot;:&quot;packages_registry&quot;,&quot;title&quot;:&quot;Package Registry&quot;,&quot;link&quot;:&quot;/galloro/genai-sw-delivery/-/packages&quot;,&quot;link_classes&quot;:&quot;shortcuts-container-registry&quot;,&quot;is_active&quot;:false},{&quot;id&quot;:&quot;container_registry&quot;,&quot;title&quot;:&quot;Container Registry&quot;,&quot;link&quot;:&quot;/galloro/genai-sw-delivery/container_registry&quot;,&quot;is_active&quot;:false},{&quot;id&quot;:&quot;model_registry&quot;,&quot;title&quot;:&quot;Model registry&quot;,&quot;link&quot;:&quot;/galloro/genai-sw-delivery/-/ml/models&quot;,&quot;is_active&quot;:false}],&quot;separated&quot;:false},{&quot;id&quot;:&quot;operations_menu&quot;,&quot;title&quot;:&quot;Operate&quot;,&quot;icon&quot;:&quot;cloud-pod&quot;,&quot;avatar_shape&quot;:&quot;rect&quot;,&quot;link&quot;:&quot;/galloro/genai-sw-delivery/-/environments&quot;,&quot;is_active&quot;:false,&quot;items&quot;:[{&quot;id&quot;:&quot;environments&quot;,&quot;title&quot;:&quot;Environments&quot;,&quot;link&quot;:&quot;/galloro/genai-sw-delivery/-/environments&quot;,&quot;link_classes&quot;:&quot;shortcuts-environments&quot;,&quot;is_active&quot;:false},{&quot;id&quot;:&quot;infrastructure_registry&quot;,&quot;title&quot;:&quot;Terraform modules&quot;,&quot;link&quot;:&quot;/galloro/genai-sw-delivery/-/terraform_module_registry&quot;,&quot;is_active&quot;:false}],&quot;separated&quot;:false},{&quot;id&quot;:&quot;monitor_menu&quot;,&quot;title&quot;:&quot;Monitor&quot;,&quot;icon&quot;:&quot;monitor&quot;,&quot;avatar_shape&quot;:&quot;rect&quot;,&quot;link&quot;:&quot;/galloro/genai-sw-delivery/-/incidents&quot;,&quot;is_active&quot;:false,&quot;items&quot;:[{&quot;id&quot;:&quot;incidents&quot;,&quot;title&quot;:&quot;Incidents&quot;,&quot;link&quot;:&quot;/galloro/genai-sw-delivery/-/incidents&quot;,&quot;is_active&quot;:false},{&quot;id&quot;:&quot;service_desk&quot;,&quot;title&quot;:&quot;Service Desk&quot;,&quot;link&quot;:&quot;/galloro/genai-sw-delivery/-/issues/service_desk&quot;,&quot;is_active&quot;:false}],&quot;separated&quot;:false},{&quot;id&quot;:&quot;analyze_menu&quot;,&quot;title&quot;:&quot;Analyze&quot;,&quot;icon&quot;:&quot;chart&quot;,&quot;avatar_shape&quot;:&quot;rect&quot;,&quot;link&quot;:&quot;/galloro/genai-sw-delivery/-/value_stream_analytics&quot;,&quot;is_active&quot;:false,&quot;items&quot;:[{&quot;id&quot;:&quot;cycle_analytics&quot;,&quot;title&quot;:&quot;Value stream analytics&quot;,&quot;link&quot;:&quot;/galloro/genai-sw-delivery/-/value_stream_analytics&quot;,&quot;link_classes&quot;:&quot;shortcuts-project-cycle-analytics&quot;,&quot;is_active&quot;:false},{&quot;id&quot;:&quot;contributors&quot;,&quot;title&quot;:&quot;Contributor analytics&quot;,&quot;link&quot;:&quot;/galloro/genai-sw-delivery/-/graphs/830edd93b95e3f0f26bd4d7789ee293c7798eadb&quot;,&quot;is_active&quot;:false},{&quot;id&quot;:&quot;ci_cd_analytics&quot;,&quot;title&quot;:&quot;CI/CD analytics&quot;,&quot;link&quot;:&quot;/galloro/genai-sw-delivery/-/pipelines/charts&quot;,&quot;is_active&quot;:false},{&quot;id&quot;:&quot;repository_analytics&quot;,&quot;title&quot;:&quot;Repository analytics&quot;,&quot;link&quot;:&quot;/galloro/genai-sw-delivery/-/graphs/830edd93b95e3f0f26bd4d7789ee293c7798eadb/charts&quot;,&quot;link_classes&quot;:&quot;shortcuts-repository-charts&quot;,&quot;is_active&quot;:false},{&quot;id&quot;:&quot;model_experiments&quot;,&quot;title&quot;:&quot;Model experiments&quot;,&quot;link&quot;:&quot;/galloro/genai-sw-delivery/-/ml/experiments&quot;,&quot;is_active&quot;:false}],&quot;separated&quot;:false}],&quot;current_context_header&quot;:&quot;Project&quot;,&quot;support_path&quot;:&quot;https://about.gitlab.com/get-help/&quot;,&quot;docs_path&quot;:&quot;/help/docs&quot;,&quot;display_whats_new&quot;:true,&quot;show_version_check&quot;:null,&quot;search&quot;:{&quot;search_path&quot;:&quot;/search&quot;,&quot;issues_path&quot;:&quot;/dashboard/issues&quot;,&quot;mr_path&quot;:&quot;/dashboard/merge_requests&quot;,&quot;autocomplete_path&quot;:&quot;/search/autocomplete&quot;,&quot;settings_path&quot;:&quot;/search/settings&quot;,&quot;search_context&quot;:{&quot;project&quot;:{&quot;id&quot;:52379658,&quot;name&quot;:&quot;genai-sw-delivery&quot;},&quot;project_metadata&quot;:{&quot;mr_path&quot;:&quot;/galloro/genai-sw-delivery/-/merge_requests&quot;,&quot;issues_path&quot;:&quot;/galloro/genai-sw-delivery/-/issues&quot;},&quot;code_search&quot;:true,&quot;ref&quot;:&quot;830edd93b95e3f0f26bd4d7789ee293c7798eadb&quot;,&quot;scope&quot;:null,&quot;for_snippets&quot;:null}},&quot;panel_type&quot;:&quot;project&quot;,&quot;shortcut_links&quot;:[{&quot;title&quot;:&quot;Snippets&quot;,&quot;href&quot;:&quot;/explore/snippets&quot;,&quot;css_class&quot;:&quot;dashboard-shortcuts-snippets&quot;},{&quot;title&quot;:&quot;Groups&quot;,&quot;href&quot;:&quot;/explore/groups&quot;,&quot;css_class&quot;:&quot;dashboard-shortcuts-groups&quot;},{&quot;title&quot;:&quot;Projects&quot;,&quot;href&quot;:&quot;/explore/projects/starred&quot;,&quot;css_class&quot;:&quot;dashboard-shortcuts-projects&quot;}],&quot;terms&quot;:&quot;/-/users/terms&quot;}"></aside> <div class="content-wrapper"> <div class="broadcast-wrapper"> </div> <div class="alert-wrapper alert-wrapper-top-space gl-flex gl-flex-col gl-gap-3 container-fluid container-limited"> <div class="gl-alert gl-alert-danger gl-alert-not-dismissible" role="alert"> <div class="gl-alert-icon-container"> <svg class="s16 gl-alert-icon gl-alert-icon-no-title" data-testid="error-icon"><use href="/assets/icons-8791a66659d025e0a4c801978c79a1fbd82db1d27d85f044a35728ea7cf0ae80.svg#error"></use></svg> </div> <div class="gl-alert-content" role="alert"> <div class="gl-alert-body"> GitLab may not work properly, because you are using an outdated web browser. <br> Please install a <a target="_blank" rel="noopener noreferrer" href="/help/install/requirements.md#supported-web-browsers">supported web browser</a> for a better experience. </div> </div> </div> </div> <div class="top-bar-fixed container-fluid" data-testid="top-bar"> <div class="top-bar-container gl-flex gl-items-center gl-gap-2"> <div class="gl-grow gl-basis-0 gl-flex gl-items-center gl-justify-start"> <button class="gl-button btn btn-icon btn-md btn-default btn-default-tertiary js-super-sidebar-toggle-expand super-sidebar-toggle -gl-ml-3" aria-controls="super-sidebar" aria-expanded="false" aria-label="Primary navigation sidebar" type="button"><svg class="s16 gl-icon gl-button-icon " data-testid="sidebar-icon"><use href="/assets/icons-8791a66659d025e0a4c801978c79a1fbd82db1d27d85f044a35728ea7cf0ae80.svg#sidebar"></use></svg> </button> <script type="application/ld+json"> {"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Giovanni Galloro","item":"https://gitlab.com/galloro"},{"@type":"ListItem","position":2,"name":"genai-sw-delivery","item":"https://gitlab.com/galloro/genai-sw-delivery"},{"@type":"ListItem","position":3,"name":"Commits","item":"https://gitlab.com/galloro/genai-sw-delivery/-/commits/830edd93b95e3f0f26bd4d7789ee293c7798eadb"},{"@type":"ListItem","position":4,"name":"830edd93","item":"https://gitlab.com/galloro/genai-sw-delivery/-/commit/830edd93b95e3f0f26bd4d7789ee293c7798eadb"}]} </script> <div data-testid="breadcrumb-links" id="js-vue-page-breadcrumbs-wrapper"> <div data-breadcrumbs-json="[{&quot;text&quot;:&quot;Giovanni Galloro&quot;,&quot;href&quot;:&quot;/galloro&quot;,&quot;avatarPath&quot;:null},{&quot;text&quot;:&quot;genai-sw-delivery&quot;,&quot;href&quot;:&quot;/galloro/genai-sw-delivery&quot;,&quot;avatarPath&quot;:null},{&quot;text&quot;:&quot;Commits&quot;,&quot;href&quot;:&quot;/galloro/genai-sw-delivery/-/commits/830edd93b95e3f0f26bd4d7789ee293c7798eadb&quot;,&quot;avatarPath&quot;:null},{&quot;text&quot;:&quot;830edd93&quot;,&quot;href&quot;:&quot;/galloro/genai-sw-delivery/-/commit/830edd93b95e3f0f26bd4d7789ee293c7798eadb&quot;,&quot;avatarPath&quot;:null}]" id="js-vue-page-breadcrumbs"></div> <div id="js-injected-page-breadcrumbs"></div> </div> </div> <div class="gl-flex-none gl-flex gl-items-center gl-justify-center"> <div id="js-advanced-search-modal"></div> </div> <div class="gl-grow gl-basis-0 gl-flex gl-items-center gl-justify-end"> <div id="js-work-item-feedback"></div> </div> </div> </div> <div class=" project-highlight-puc"> <main class="content" id="content-body" itemscope itemtype="http://schema.org/SoftwareSourceCode"> <div class="flash-container flash-container-page sticky" data-testid="flash-container"> <div id="js-global-alerts"></div> </div> <div class="container-fluid container-limited"> <div class="page-content-header"> <div class="header-main-content"> <strong> Commit <span class="commit-sha" data-testid="commit-sha-content">830edd93</span> </strong> <button class="gl-button btn btn-icon btn-sm btn-default btn-default-tertiary " title="Copy commit SHA" aria-label="Copy commit SHA" aria-live="polite" data-toggle="tooltip" data-placement="bottom" data-container="body" data-html="true" data-clipboard-text="830edd93b95e3f0f26bd4d7789ee293c7798eadb" type="button"><svg class="s16 gl-icon gl-button-icon " data-testid="copy-to-clipboard-icon"><use href="/assets/icons-8791a66659d025e0a4c801978c79a1fbd82db1d27d85f044a35728ea7cf0ae80.svg#copy-to-clipboard"></use></svg> </button> <span class="gl-hidden sm:gl-inline">authored</span> <time class="js-timeago" title="Nov 16, 2023 4:03pm" datetime="2023-11-16T16:03:27Z" data-toggle="tooltip" data-placement="top" data-container="body">Nov 16, 2023</time> <span>by</span> <strong> <a href="/strebel1"><img alt="Daniel Strebel&#39;s avatar" src="/uploads/-/system/user/avatar/9790873/avatar.png?width=48" class="avatar s24 gl-hidden sm:gl-inline-block" title="Daniel Strebel"></a> <a class="commit-author-link js-user-link" data-user-id="9790873" href="/strebel1"><span class="commit-author-name">Daniel Strebel</span></a> </strong> </div> <a class="gl-button btn btn-md btn-default gl-mr-3 gl-w-full sm:gl-w-auto gl-mb-3 sm:gl-mb-0" href="/galloro/genai-sw-delivery/-/tree/830edd93b95e3f0f26bd4d7789ee293c7798eadb"><span class="gl-button-text"> Browse files </span> </a> <div data-can-cherry-pick="" data-can-email-patches="true" data-can-revert="" data-can-tag="false" data-email-patches-path="/galloro/genai-sw-delivery/-/commit/830edd93b95e3f0f26bd4d7789ee293c7798eadb.patch" data-new-project-tag-path="/galloro/genai-sw-delivery/-/tags/new?ref=830edd93b95e3f0f26bd4d7789ee293c7798eadb" data-plain-diff-path="/galloro/genai-sw-delivery/-/commit/830edd93b95e3f0f26bd4d7789ee293c7798eadb.diff" id="js-commit-options-dropdown"></div> </div> <div class="commit-box" data-project-path="/galloro/genai-sw-delivery"> <h3 class="commit-title"> feat: more sensible error logging </h3> </div> <div class="info-well"> <div class="well-segment"> <div class="icon-container commit-icon"> <svg class="s16" data-testid="commit-icon"><use href="/assets/icons-8791a66659d025e0a4c801978c79a1fbd82db1d27d85f044a35728ea7cf0ae80.svg#commit"></use></svg> </div> <span class="gl-text-default">parent</span> <a class="commit-sha" href="/galloro/genai-sw-delivery/-/commit/115703afb575e999eabefebb5b973d70eb921437">115703af</a> </div> <div class="gl-border-t gl-border-t-section" data-commit-sha="830edd93" data-full-path="galloro/genai-sw-delivery" id="js-commit-branches-and-tags"> <div class="well-segment"> <svg class="s16 gl-ml-2 gl-mr-3" data-testid="branch-icon"><use href="/assets/icons-8791a66659d025e0a4c801978c79a1fbd82db1d27d85f044a35728ea7cf0ae80.svg#branch"></use></svg> <span class="gl-spinner-container gl-align-middle" role="status"><span aria-hidden class="gl-spinner gl-spinner-sm gl-spinner-dark !gl-align-text-bottom"></span><span class="gl-sr-only !gl-absolute">Loading</span> </span> </div> <div class="well-segment"> <svg class="s16 gl-ml-2 gl-mr-3" data-testid="tag-icon"><use href="/assets/icons-8791a66659d025e0a4c801978c79a1fbd82db1d27d85f044a35728ea7cf0ae80.svg#tag"></use></svg> <span class="gl-spinner-container gl-align-middle" role="status"><span aria-hidden class="gl-spinner gl-spinner-sm gl-spinner-dark !gl-align-text-bottom"></span><span class="gl-sr-only !gl-absolute">Loading</span> </span> </div> </div> <div class="well-segment merge-request-info"> <div class="icon-container"> <svg class="s16" data-testid="merge-request-icon"><use href="/assets/icons-8791a66659d025e0a4c801978c79a1fbd82db1d27d85f044a35728ea7cf0ae80.svg#merge-request"></use></svg> </div> <span class="commit-info merge-requests" data-project-commit-path="/galloro/genai-sw-delivery/-/commit/830edd93b95e3f0f26bd4d7789ee293c7798eadb/merge_requests.json"> <span class="gl-spinner-container gl-align-middle" role="status"><span aria-hidden class="gl-spinner gl-spinner-sm gl-spinner-dark !gl-align-text-bottom"></span><span class="gl-sr-only !gl-absolute">Loading</span> </span> </span> </div> </div> <ul class="commit-ci-menu gl-flex gl-grow nav gl-tabs-nav" role="tablist"><li role="presentation" class="nav-item"><a role="tab" class="nav-link gl-tab-nav-item active gl-tab-nav-item-active" href="/galloro/genai-sw-delivery/-/commit/830edd93b95e3f0f26bd4d7789ee293c7798eadb">Changes <span class="gl-badge badge badge-pill badge-muted gl-tab-counter-badge"><span class="gl-badge-content">1</span></span> </a></li></ul> <div class="js-diff-files-changed gl-py-3"> <div class="files-changed-inner"> <div class="inline-parallel-buttons gl-hidden md:gl-flex gl-relative"> <a class="gl-button btn btn-md btn-default gl-hidden sm:gl-inline-flex" href="/galloro/genai-sw-delivery/-/commit/830edd93b95e3f0f26bd4d7789ee293c7798eadb?action=show&amp;controller=projects%2Fcommit&amp;id=830edd93b95e3f0f26bd4d7789ee293c7798eadb&amp;namespace_id=galloro&amp;project_id=genai-sw-delivery&amp;w=1"><span class="gl-button-text"> Hide whitespace changes </span> </a> <div class="btn-group gl-ml-3"> <a id="inline-diff-btn" class="gl-button btn btn-md btn-default selected" data-view-type="inline" href="/galloro/genai-sw-delivery/-/commit/830edd93b95e3f0f26bd4d7789ee293c7798eadb?view=inline"><span class="gl-button-text"> Inline </span> </a> <a id="parallel-diff-btn" class="gl-button btn btn-md btn-default " data-view-type="parallel" href="/galloro/genai-sw-delivery/-/commit/830edd93b95e3f0f26bd4d7789ee293c7798eadb?view=parallel"><span class="gl-button-text"> Side-by-side </span> </a> </div> </div> <div class="js-diff-stats-dropdown" data-added="29" data-changed="1" data-deleted="12" data-files="[{&quot;href&quot;:&quot;#1d5636e7520acb1942e117883692616c3c3f9573&quot;,&quot;title&quot;:&quot;src/main/java/anthos/samples/bankofanthos/ledgerwriter/TransactionValidator.java&quot;,&quot;name&quot;:&quot;src/main/java/anthos/samples/bankofanthos/ledgerwriter/TransactionValidator.java&quot;,&quot;path&quot;:&quot;...mples/bankofanthos/ledgerwriter/TransactionValidator.java&quot;,&quot;icon&quot;:&quot;file-modified&quot;,&quot;iconColor&quot;:&quot;&quot;,&quot;added&quot;:29,&quot;removed&quot;:12}]"></div> </div> </div> <div class="files"> <div class="js-diffs-batch" data-diff-files-path="/galloro/genai-sw-delivery/-/commit/830edd93b95e3f0f26bd4d7789ee293c7798eadb/diff_files"> <div class="gl-spinner-container gl-mt-4" role="status"><span aria-hidden class="gl-spinner gl-spinner-md gl-spinner-dark !gl-align-text-bottom"></span><span class="gl-sr-only !gl-absolute">Loading</span> </div> </div> </div> <div class="limited-width-notes"> <ul class="notes main-notes-list timeline" data-testid="notes-list" id="notes-list"> </ul> <div class="js-snippets-note-edit-form-holder"></div> <div class="snippets note-edit-form"> <form class="edit-note common-note-form js-quick-submit" action="#" accept-charset="UTF-8" method="post"><input type="hidden" name="_method" value="put" autocomplete="off" /><input type="hidden" name="authenticity_token" value="EI4MpP6rCst5GmXdvzyA8cfwR2sl-Mm9w3hnQY7eU8OX1IVfPr3_17CwP6vrjI0d8cAWvlg15_Wsu9yDw0GYeg" autocomplete="off" /><input type="hidden" name="target_id" id="target_id" value="" class="js-form-target-id" autocomplete="off" /> <input type="hidden" name="target_type" id="target_type" value="" class="js-form-target-type" autocomplete="off" /> <div class="flash-container"></div> <div class="md-area position-relative"> <div class="md-header gl-px-3 gl-rounded-t-base gl-border-b gl-border-gray-100"> <div class="gl-flex gl-items-top gl-flex-nowrap gl-justify-between"> <div class="md-header-toolbar gl-flex gl-py-3 gl-flex-wrap gl-gap-y-3"> <button class="gl-button btn btn-sm btn-default btn-default-tertiary js-md-preview-button" value="preview" type="button"><span class="gl-button-text"> Preview </span> </button><div class="gl-flex gl-py-2 haml-markdown-button"> <div class="gl-border-l gl-ml-2 gl-pl-3"></div> </div> <button class="gl-button btn btn-icon btn-sm btn-default btn-default-tertiary js-md has-tooltip haml-markdown-button gl-mr-2" data-md-tag="**" data-md-shortcuts="[&quot;mod+b&quot;]" data-container="body" title="Add bold text (Ctrl+B)" aria-label="Add bold text (Ctrl+B)" type="button"><svg class="s16 gl-icon gl-button-icon " data-testid="bold-icon"><use href="/assets/icons-8791a66659d025e0a4c801978c79a1fbd82db1d27d85f044a35728ea7cf0ae80.svg#bold"></use></svg> </button> <button class="gl-button btn btn-icon btn-sm btn-default btn-default-tertiary js-md has-tooltip haml-markdown-button gl-mr-2" data-md-tag="_" data-md-shortcuts="[&quot;mod+i&quot;]" data-container="body" title="Add italic text (Ctrl+I)" aria-label="Add italic text (Ctrl+I)" type="button"><svg class="s16 gl-icon gl-button-icon " data-testid="italic-icon"><use href="/assets/icons-8791a66659d025e0a4c801978c79a1fbd82db1d27d85f044a35728ea7cf0ae80.svg#italic"></use></svg> </button> <button class="gl-button btn btn-icon btn-sm btn-default btn-default-tertiary js-md has-tooltip haml-markdown-button gl-mr-2" data-md-tag="~~" data-md-shortcuts="[&quot;mod+shift+x&quot;]" data-container="body" title="Add strikethrough text (Ctrl+⇧X)" aria-label="Add strikethrough text (Ctrl+⇧X)" type="button"><svg class="s16 gl-icon gl-button-icon " data-testid="strikethrough-icon"><use href="/assets/icons-8791a66659d025e0a4c801978c79a1fbd82db1d27d85f044a35728ea7cf0ae80.svg#strikethrough"></use></svg> </button> <div class="gl-flex gl-py-2 haml-markdown-button"> <div class="gl-border-l gl-ml-2 gl-pl-3"></div> </div> <button class="gl-button btn btn-icon btn-sm btn-default btn-default-tertiary js-md has-tooltip haml-markdown-button gl-mr-2" data-md-tag="&gt; " data-md-prepend="true" data-container="body" title="Insert a quote" aria-label="Insert a quote" type="button"><svg class="s16 gl-icon gl-button-icon " data-testid="quote-icon"><use href="/assets/icons-8791a66659d025e0a4c801978c79a1fbd82db1d27d85f044a35728ea7cf0ae80.svg#quote"></use></svg> </button> <button class="gl-button btn btn-icon btn-sm btn-default btn-default-tertiary js-md has-tooltip haml-markdown-button gl-mr-2" data-md-tag="`" data-md-block="```" data-container="body" title="Insert code" aria-label="Insert code" type="button"><svg class="s16 gl-icon gl-button-icon " data-testid="code-icon"><use href="/assets/icons-8791a66659d025e0a4c801978c79a1fbd82db1d27d85f044a35728ea7cf0ae80.svg#code"></use></svg> </button> <button class="gl-button btn btn-icon btn-sm btn-default btn-default-tertiary js-md has-tooltip haml-markdown-button gl-mr-2" data-md-tag="[{text}](url)" data-md-select="url" data-md-shortcuts="[&quot;mod+k&quot;]" data-container="body" title="Add a link (Ctrl+K)" aria-label="Add a link (Ctrl+K)" type="button"><svg class="s16 gl-icon gl-button-icon " data-testid="link-icon"><use href="/assets/icons-8791a66659d025e0a4c801978c79a1fbd82db1d27d85f044a35728ea7cf0ae80.svg#link"></use></svg> </button> <button class="gl-button btn btn-icon btn-sm btn-default btn-default-tertiary js-md has-tooltip haml-markdown-button gl-mr-2" data-md-tag="- " data-md-prepend="true" data-container="body" title="Add a bullet list" aria-label="Add a bullet list" type="button"><svg class="s16 gl-icon gl-button-icon " data-testid="list-bulleted-icon"><use href="/assets/icons-8791a66659d025e0a4c801978c79a1fbd82db1d27d85f044a35728ea7cf0ae80.svg#list-bulleted"></use></svg> </button> <button class="gl-button btn btn-icon btn-sm btn-default btn-default-tertiary js-md has-tooltip haml-markdown-button gl-mr-2" data-md-tag="1. " data-md-prepend="true" data-container="body" title="Add a numbered list" aria-label="Add a numbered list" type="button"><svg class="s16 gl-icon gl-button-icon " data-testid="list-numbered-icon"><use href="/assets/icons-8791a66659d025e0a4c801978c79a1fbd82db1d27d85f044a35728ea7cf0ae80.svg#list-numbered"></use></svg> </button> <button class="gl-button btn btn-icon btn-sm btn-default btn-default-tertiary js-md has-tooltip haml-markdown-button gl-mr-2" data-md-tag="- [ ] " data-md-prepend="true" data-container="body" title="Add a checklist" aria-label="Add a checklist" type="button"><svg class="s16 gl-icon gl-button-icon " data-testid="list-task-icon"><use href="/assets/icons-8791a66659d025e0a4c801978c79a1fbd82db1d27d85f044a35728ea7cf0ae80.svg#list-task"></use></svg> </button> <button class="gl-button btn btn-icon btn-sm btn-default btn-default-tertiary js-md has-tooltip gl-hidden gl-mr-2" data-md-command="indentLines" data-md-shortcuts="[&quot;mod+]&quot;]" data-container="body" title="Indent line (Ctrl+])" aria-label="Indent line (Ctrl+])" type="button"><svg class="s16 gl-icon gl-button-icon " data-testid="list-indent-icon"><use href="/assets/icons-8791a66659d025e0a4c801978c79a1fbd82db1d27d85f044a35728ea7cf0ae80.svg#list-indent"></use></svg> </button> <button class="gl-button btn btn-icon btn-sm btn-default btn-default-tertiary js-md has-tooltip gl-hidden gl-mr-2" data-md-command="outdentLines" data-md-shortcuts="[&quot;mod+[&quot;]" data-container="body" title="Outdent line (Ctrl+[)" aria-label="Outdent line (Ctrl+[)" type="button"><svg class="s16 gl-icon gl-button-icon " data-testid="list-outdent-icon"><use href="/assets/icons-8791a66659d025e0a4c801978c79a1fbd82db1d27d85f044a35728ea7cf0ae80.svg#list-outdent"></use></svg> </button> <button class="gl-button btn btn-icon btn-sm btn-default btn-default-tertiary js-md has-tooltip haml-markdown-button gl-mr-2" data-md-tag="&lt;details&gt;&lt;summary&gt;Click to expand&lt;/summary&gt; {text} &lt;/details&gt;" data-md-prepend="true" data-md-select="Click to expand" data-container="body" title="Add a collapsible section" aria-label="Add a collapsible section" type="button"><svg class="s16 gl-icon gl-button-icon " data-testid="details-block-icon"><use href="/assets/icons-8791a66659d025e0a4c801978c79a1fbd82db1d27d85f044a35728ea7cf0ae80.svg#details-block"></use></svg> </button> <div class="gl-flex gl-py-2 haml-markdown-button"> <div class="gl-border-l gl-ml-2 gl-pl-3"></div> </div> <button class="gl-button btn btn-icon btn-sm btn-default btn-default-tertiary js-md has-tooltip haml-markdown-button gl-mr-2" data-md-tag="| header | header | | ------ | ------ | | | | | | |" data-md-prepend="true" data-container="body" title="Add a table" aria-label="Add a table" type="button"><svg class="s16 gl-icon gl-button-icon " data-testid="table-icon"><use href="/assets/icons-8791a66659d025e0a4c801978c79a1fbd82db1d27d85f044a35728ea7cf0ae80.svg#table"></use></svg> </button> <button aria-label="Attach a file or image" class="gl-button btn btn-icon btn-sm btn-default btn-default-tertiary has-tooltip js-attach-file-button haml-markdown-button gl-mr-2" data-testid="button-attach-file" data-container="body" type="button"><svg class="s16 gl-icon gl-button-icon " data-testid="paperclip-icon"><use href="/assets/icons-8791a66659d025e0a4c801978c79a1fbd82db1d27d85f044a35728ea7cf0ae80.svg#paperclip"></use></svg> </button> </div> <div class="full-screen gl-py-3"> <button tabindex="-1" title="Go full screen" aria-label="Go full screen" class="gl-button btn btn-icon btn-sm btn-default btn-default-tertiary has-tooltip js-zen-enter" data-container="body" type="button"><svg class="s16 gl-icon gl-button-icon " data-testid="maximize-icon"><use href="/assets/icons-8791a66659d025e0a4c801978c79a1fbd82db1d27d85f044a35728ea7cf0ae80.svg#maximize"></use></svg> </button> </div> </div> </div> <div class="md-write-holder"> <div class="zen-backdrop"> <textarea name="note[note]" id="note_note" data-testid="edit-note-field" class="note-textarea js-note-text js-task-list-field js-gfm-input js-autosize markdown-area" placeholder="Write a comment or drag your files here…"> </textarea> <a class="zen-control zen-control-leave js-zen-leave gl-button btn-default-tertiary btn-icon btn-sm has-tooltip" data-placement="left" href="#" title="Exit full screen"> <svg class="s24 gl-text-subtle" data-testid="minimize-icon"><use href="/assets/icons-8791a66659d025e0a4c801978c79a1fbd82db1d27d85f044a35728ea7cf0ae80.svg#minimize"></use></svg> </a> </div> <div class="comment-toolbar gl-px-2 gl-flex gl-justify-end gl-rounded-bl-base gl-rounded-br-base clearfix"> <div class="content-editor-switcher gl-inline-flex gl-items-center"> <a class="gl-button btn btn-icon btn-sm btn-default btn-default-tertiary !gl-px-3" rel="noopener noreferrer" target="_blank" href="/help/user/markdown.md"><svg class="s16 gl-icon gl-button-icon " data-testid="markdown-mark-icon"><use href="/assets/icons-8791a66659d025e0a4c801978c79a1fbd82db1d27d85f044a35728ea7cf0ae80.svg#markdown-mark"></use></svg> </a> </div> <span class="uploading-container gl-leading-32 gl-text-sm"> <span class="uploading-progress-container hide"> <svg class="s16 gl-icon gl-align-text-bottom" data-testid="paperclip-icon"><use href="/assets/icons-8791a66659d025e0a4c801978c79a1fbd82db1d27d85f044a35728ea7cf0ae80.svg#paperclip"></use></svg> <span class="attaching-file-message"> </span> <span class="uploading-progress">0%</span> <span class="gl-spinner-container gl-mr-2" role="status"><span aria-hidden class="gl-spinner gl-spinner-sm gl-spinner-dark !gl-align-text-bottom"></span><span class="gl-sr-only !gl-absolute">Loading</span> </span> </span> <span class="uploading-error-container hide"> <span class="uploading-error-icon"> <svg class="s16 gl-icon gl-align-text-bottom" data-testid="paperclip-icon"><use href="/assets/icons-8791a66659d025e0a4c801978c79a1fbd82db1d27d85f044a35728ea7cf0ae80.svg#paperclip"></use></svg> </span> <span class="uploading-error-message"> </span> <button class="gl-button btn btn-md btn-link retry-uploading-link" type="button"><span class="gl-button-text"> <span class="gl-button-text"> Try again </span> </span> </button>or <button class="gl-button btn btn-md btn-link attach-new-file markdown-selector" type="button"><span class="gl-button-text"> <span class="gl-button-text"> attach a new file </span> </span> </button>. </span> <button class="gl-button btn btn-md btn-link button-cancel-uploading-files hide" type="button"><span class="gl-button-text"> <span class="gl-button-text"> Cancel </span> </span> </button></span> </div> </div> <div class="md md-preview-holder gl-px-5 js-md-preview hide" data-url="/galloro/genai-sw-delivery/-/preview_markdown"></div> <div class="referenced-commands hide"></div> <div class="referenced-users hide"> <span> <svg class="s16" data-testid="warning-solid-icon"><use href="/assets/icons-8791a66659d025e0a4c801978c79a1fbd82db1d27d85f044a35728ea7cf0ae80.svg#warning-solid"></use></svg> You are about to add <strong> <span class="js-referenced-users-count">0</span> people </strong> to the discussion. Proceed with caution. </span> </div> </div> <div class="note-form-actions clearfix"> <div class="settings-message note-edit-warning js-finish-edit-warning"> Finish editing this message first! </div> <button class="gl-button btn btn-md btn-confirm js-comment-save-button" data-testid="save-comment-button" type="submit"><span class="gl-button-text"> Save comment </span> </button><button class="gl-button btn btn-md btn-default note-edit-cancel" type="button"><span class="gl-button-text"> Cancel </span> </button></div> </form></div> <div class="disabled-comment gl-text-center gl-text-secondary gl-mt-3"> Please <a class="js-register-link" href="/users/sign_up?redirect_to_referer=yes">register</a> or <a class="js-sign-in-link" href="/users/sign_in?redirect_to_referer=yes">sign in</a> to comment </div> <script class="js-notes-data" type="application/json">{"notesUrl":"/galloro/genai-sw-delivery/noteable/commit/830edd93b95e3f0f26bd4d7789ee293c7798eadb/notes","now":1732722499,"diffView":"inline","enableGFM":{"emojis":true,"members":true,"issues":true,"mergeRequests":true,"vulnerabilities":true,"epics":true,"milestones":true,"labels":true}}</script> <div id="js-report-abuse-drawer"></div> </div> </div> </main> </div> </div> </div> <script nonce="PKPtGTGuvjdpqaT/ybGsjw=="> //<![CDATA[ if ('loading' in HTMLImageElement.prototype) { document.querySelectorAll('img.lazy').forEach(img => { img.loading = 'lazy'; let imgUrl = img.dataset.src; // Only adding width + height for avatars for now if (imgUrl.indexOf('/avatar/') > -1 && imgUrl.indexOf('?') === -1) { const targetWidth = img.getAttribute('width') || img.width; imgUrl += `?width=${targetWidth}`; } img.src = imgUrl; img.removeAttribute('data-src'); img.classList.remove('lazy'); img.classList.add('js-lazy-loaded'); img.dataset.testid = 'js-lazy-loaded-content'; }); } //]]> </script> <script nonce="PKPtGTGuvjdpqaT/ybGsjw=="> //<![CDATA[ gl = window.gl || {}; gl.experiments = {}; //]]> </script> </body> </html>

Pages: 1 2 3 4 5 6 7 8 9 10