From b22a2a866c344da6f78c52060ec84d7e6371103d Mon Sep 17 00:00:00 2001 From: dbrian57 Date: Wed, 14 Jan 2026 16:34:05 -0500 Subject: [PATCH 1/9] corrects syntax for source link URLs in Weave ref docs --- scripts/reference-generation/weave/generate_python_sdk_docs.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/reference-generation/weave/generate_python_sdk_docs.py b/scripts/reference-generation/weave/generate_python_sdk_docs.py index 1b175ea38d..0d43dabbfd 100755 --- a/scripts/reference-generation/weave/generate_python_sdk_docs.py +++ b/scripts/reference-generation/weave/generate_python_sdk_docs.py @@ -199,7 +199,7 @@ def convert_docusaurus_to_mintlify(content: str, module_name: str) -> str: def generate_module_docs(module, module_name: str, src_root_path: str, version: str = "master") -> str: """Generate documentation for a single module.""" # Use the specific version tag for source links - src_url = f"https://github.com/wandb/weave/blob/{version}" + src_url = f"https://github.com/wandb/weave/blob/v{version}" if version == "latest": src_url = "https://github.com/wandb/weave/blob/master" From 80748c7bb0bac350b6cad60ccfce8af1d50260d3 Mon Sep 17 00:00:00 2001 From: dbrian57 Date: Wed, 14 Jan 2026 16:43:49 -0500 Subject: [PATCH 2/9] temp actions trigger for testing --- .github/workflows/generate-weave-reference-docs.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/workflows/generate-weave-reference-docs.yml b/.github/workflows/generate-weave-reference-docs.yml index 9ae1c4cdd3..aab1ef9184 100644 --- a/.github/workflows/generate-weave-reference-docs.yml +++ b/.github/workflows/generate-weave-reference-docs.yml @@ -1,6 +1,10 @@ name: Generate Weave references on: + # TODO: Remove push trigger after testing + push: + branches: + - weave/ref-source-link-fix workflow_dispatch: inputs: weave_version: From 7a7814a756424c6ed66a36df7796d32f2c631f73 Mon Sep 17 00:00:00 2001 From: dbrian57 Date: Thu, 15 Jan 2026 10:19:19 -0500 Subject: [PATCH 3/9] changes source image link to text buttons --- .../weave/generate_python_sdk_docs.py | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/scripts/reference-generation/weave/generate_python_sdk_docs.py b/scripts/reference-generation/weave/generate_python_sdk_docs.py index 0d43dabbfd..b62454766b 100755 --- a/scripts/reference-generation/weave/generate_python_sdk_docs.py +++ b/scripts/reference-generation/weave/generate_python_sdk_docs.py @@ -165,6 +165,16 @@ def fix_code_fence_indentation(text: str) -> str: return "\n".join(result_lines) +def convert_source_badges_to_buttons(content: str) -> str: + + # Convert source badge images to text-based buttons. + pattern = r'\s*]*src="https://img\.shields\.io/badge/-source[^"]*"[^>]*/>\s*' + + replacement = r'Source' + + return re.sub(pattern, replacement, content) + + def convert_docusaurus_to_mintlify(content: str, module_name: str) -> str: """Convert Docusaurus markdown to Mintlify MDX format.""" # Remove the sidebar_label frontmatter (Mintlify uses title) @@ -371,6 +381,9 @@ def fix_parameter_lists(text): content = fix_parameter_lists(content) + # Convert source badge images to text buttons (avoids Mintlify lightbox issue) + content = convert_source_badges_to_buttons(content) + # Convert to Mintlify format content = convert_docusaurus_to_mintlify(content, module_name) From 9c393d4ff1544f142ab86a229fa551a3e4d72acf Mon Sep 17 00:00:00 2001 From: dbrian57 Date: Thu, 15 Jan 2026 10:46:22 -0500 Subject: [PATCH 4/9] testing another regen upon push --- .../reference-generation/weave/generate_python_sdk_docs.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/scripts/reference-generation/weave/generate_python_sdk_docs.py b/scripts/reference-generation/weave/generate_python_sdk_docs.py index b62454766b..d6951da349 100755 --- a/scripts/reference-generation/weave/generate_python_sdk_docs.py +++ b/scripts/reference-generation/weave/generate_python_sdk_docs.py @@ -166,8 +166,8 @@ def fix_code_fence_indentation(text: str) -> str: def convert_source_badges_to_buttons(content: str) -> str: - - # Convert source badge images to text-based buttons. + + # Convert source badge images to text-based buttons pattern = r'\s*]*src="https://img\.shields\.io/badge/-source[^"]*"[^>]*/>\s*' replacement = r'Source' From 2caba87cc170e471451c566ceef6f664edb0a9b3 Mon Sep 17 00:00:00 2001 From: dbrian57 Date: Thu, 15 Jan 2026 12:29:52 -0500 Subject: [PATCH 5/9] need the preview back --- scripts/reference-generation/weave/generate_python_sdk_docs.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/reference-generation/weave/generate_python_sdk_docs.py b/scripts/reference-generation/weave/generate_python_sdk_docs.py index d6951da349..009ebf12e0 100755 --- a/scripts/reference-generation/weave/generate_python_sdk_docs.py +++ b/scripts/reference-generation/weave/generate_python_sdk_docs.py @@ -167,7 +167,7 @@ def fix_code_fence_indentation(text: str) -> str: def convert_source_badges_to_buttons(content: str) -> str: - # Convert source badge images to text-based buttons + # Convert source badge images to text-based buttons. pattern = r'\s*]*src="https://img\.shields\.io/badge/-source[^"]*"[^>]*/>\s*' replacement = r'Source' From 5e2ebe4fda069f3a35bef78f381aacff9cb4bb5a Mon Sep 17 00:00:00 2001 From: dbrian57 Date: Thu, 15 Jan 2026 12:47:41 -0500 Subject: [PATCH 6/9] debug: add logging to source badge conversion --- .../weave/generate_python_sdk_docs.py | 22 +++++++++++++++---- 1 file changed, 18 insertions(+), 4 deletions(-) diff --git a/scripts/reference-generation/weave/generate_python_sdk_docs.py b/scripts/reference-generation/weave/generate_python_sdk_docs.py index 009ebf12e0..c5c933c3a9 100755 --- a/scripts/reference-generation/weave/generate_python_sdk_docs.py +++ b/scripts/reference-generation/weave/generate_python_sdk_docs.py @@ -166,13 +166,27 @@ def fix_code_fence_indentation(text: str) -> str: def convert_source_badges_to_buttons(content: str) -> str: - - # Convert source badge images to text-based buttons. - pattern = r'\s*]*src="https://img\.shields\.io/badge/-source[^"]*"[^>]*/>\s*' + """Convert shields.io source badge images to text-based buttons. + + This avoids Mintlify's image lightbox from triggering when clicking source links. + Converts: + + To: + Source + """ + pattern = r'\s*]*src="https://img\.shields\.io/badge/-source[^"]*"[^>]*/>\s*' replacement = r'Source' - return re.sub(pattern, replacement, content) + # Debug: count matches before conversion + matches_before = len(re.findall(pattern, content)) + result = re.sub(pattern, replacement, content) + matches_after = content.count('class="source-link"') + + if matches_before > 0: + print(f" [DEBUG] Source badge conversion: {matches_before} badges found, converted to text buttons") + + return result def convert_docusaurus_to_mintlify(content: str, module_name: str) -> str: From 1bc2cd7161707ad2f4830f3b7de0aa8b449615d4 Mon Sep 17 00:00:00 2001 From: dbrian57 Date: Thu, 15 Jan 2026 13:11:27 -0500 Subject: [PATCH 7/9] fix: handle non-self-closing img tags from lazydocs lazydocs generates (no self-closing slash) but the regex expected . Updated pattern to handle both formats with /?> --- .../weave/generate_python_sdk_docs.py | 17 +++++------------ 1 file changed, 5 insertions(+), 12 deletions(-) diff --git a/scripts/reference-generation/weave/generate_python_sdk_docs.py b/scripts/reference-generation/weave/generate_python_sdk_docs.py index c5c933c3a9..21a0101175 100755 --- a/scripts/reference-generation/weave/generate_python_sdk_docs.py +++ b/scripts/reference-generation/weave/generate_python_sdk_docs.py @@ -171,22 +171,15 @@ def convert_source_badges_to_buttons(content: str) -> str: This avoids Mintlify's image lightbox from triggering when clicking source links. Converts: - + To: Source """ - pattern = r'\s*]*src="https://img\.shields\.io/badge/-source[^"]*"[^>]*/>\s*' + # Pattern matches both self-closing (/>) and non-self-closing (>) img tags + # lazydocs generates non-self-closing tags: + pattern = r'\s*]*src="https://img\.shields\.io/badge/-source[^"]*"[^>]*/?>\s*' replacement = r'Source' - - # Debug: count matches before conversion - matches_before = len(re.findall(pattern, content)) - result = re.sub(pattern, replacement, content) - matches_after = content.count('class="source-link"') - - if matches_before > 0: - print(f" [DEBUG] Source badge conversion: {matches_before} badges found, converted to text buttons") - - return result + return re.sub(pattern, replacement, content) def convert_docusaurus_to_mintlify(content: str, module_name: str) -> str: From 60db54afa5cadb2d618ed81494269cf71e1543fb Mon Sep 17 00:00:00 2001 From: dbrian57 Date: Thu, 15 Jan 2026 17:02:52 -0500 Subject: [PATCH 8/9] feat: add SourceLink component for SDK reference docs - Create compact SourceLink component matching GitHubLink styling - Add CSS for .source-link class (compact button style) - Update generation script to use component --- .../weave/generate_python_sdk_docs.py | 8 +++-- snippets/button-links.css | 32 +++++++++++++++++++ snippets/en/_includes/source-link.mdx | 10 ++++++ 3 files changed, 47 insertions(+), 3 deletions(-) create mode 100644 snippets/en/_includes/source-link.mdx diff --git a/scripts/reference-generation/weave/generate_python_sdk_docs.py b/scripts/reference-generation/weave/generate_python_sdk_docs.py index 21a0101175..579a20e894 100755 --- a/scripts/reference-generation/weave/generate_python_sdk_docs.py +++ b/scripts/reference-generation/weave/generate_python_sdk_docs.py @@ -166,19 +166,19 @@ def fix_code_fence_indentation(text: str) -> str: def convert_source_badges_to_buttons(content: str) -> str: - """Convert shields.io source badge images to text-based buttons. + """Convert shields.io source badge images to SourceLink components. This avoids Mintlify's image lightbox from triggering when clicking source links. Converts: To: - Source + """ # Pattern matches both self-closing (/>) and non-self-closing (>) img tags # lazydocs generates non-self-closing tags: pattern = r'\s*]*src="https://img\.shields\.io/badge/-source[^"]*"[^>]*/?>\s*' - replacement = r'Source' + replacement = r'' return re.sub(pattern, replacement, content) @@ -207,6 +207,8 @@ def convert_docusaurus_to_mintlify(content: str, module_name: str) -> str: description: "Python SDK reference for {module_name}" --- +import {{ SourceLink }} from '/snippets/en/_includes/source-link.mdx'; + """ content = frontmatter + content diff --git a/snippets/button-links.css b/snippets/button-links.css index 965ba02aa1..139a3d93c3 100644 --- a/snippets/button-links.css +++ b/snippets/button-links.css @@ -43,3 +43,35 @@ background-color: rgba(39, 39, 42, 0.8); border-color: rgba(63, 63, 70, 1); } + +/* Compact source link for SDK reference docs */ +.source-link { + float: right; + display: inline-block; + padding: 2px 8px; + border: 1px solid rgba(230, 228, 224, 0.7); + border-radius: 6px; + font-size: 12px; + font-weight: 500; + color: rgb(87, 85, 81); + background-color: rgba(255, 255, 255, 0.5); + text-decoration: none; + transition: all 0.15s ease; +} + +.source-link:hover { + background-color: rgba(255, 255, 255, 0.8); + border-color: rgba(230, 228, 224, 1); + text-decoration: none; +} + +.dark .source-link { + color: rgb(214, 211, 209); + background-color: rgba(39, 39, 42, 0.5); + border: 1px solid rgba(63, 63, 70, 0.7); +} + +.dark .source-link:hover { + background-color: rgba(39, 39, 42, 0.8); + border-color: rgba(63, 63, 70, 1); +} diff --git a/snippets/en/_includes/source-link.mdx b/snippets/en/_includes/source-link.mdx new file mode 100644 index 0000000000..7c2dc73d97 --- /dev/null +++ b/snippets/en/_includes/source-link.mdx @@ -0,0 +1,10 @@ +export const SourceLink = ({ url }) => ( + + Source + +); From a888e32f1067752967d55639bb9eee191042db36 Mon Sep 17 00:00:00 2001 From: Dan Brian Date: Fri, 16 Jan 2026 16:23:49 -0500 Subject: [PATCH 9/9] Update generate-weave-reference-docs.yml --- .github/workflows/generate-weave-reference-docs.yml | 4 ---- 1 file changed, 4 deletions(-) diff --git a/.github/workflows/generate-weave-reference-docs.yml b/.github/workflows/generate-weave-reference-docs.yml index aab1ef9184..9ae1c4cdd3 100644 --- a/.github/workflows/generate-weave-reference-docs.yml +++ b/.github/workflows/generate-weave-reference-docs.yml @@ -1,10 +1,6 @@ name: Generate Weave references on: - # TODO: Remove push trigger after testing - push: - branches: - - weave/ref-source-link-fix workflow_dispatch: inputs: weave_version: