Skip to content

test: documentation validation workflow (fork test) - #2

Merged
crowecawcaw merged 6 commits into
mainlinefrom
docs/task-oriented-sample-catalog
Jul 15, 2026
Merged

test: documentation validation workflow (fork test)#2
crowecawcaw merged 6 commits into
mainlinefrom
docs/task-oriented-sample-catalog

Conversation

@crowecawcaw

Copy link
Copy Markdown
Owner

Fork-only PR to exercise the new changed-files external-link job. Do not merge.

Signed-off-by: Stephen Crowe <6042774+crowecawcaw@users.noreply.github.com>
Signed-off-by: Stephen Crowe <6042774+crowecawcaw@users.noreply.github.com>
Signed-off-by: Stephen Crowe <6042774+crowecawcaw@users.noreply.github.com>
Signed-off-by: Stephen Crowe <6042774+crowecawcaw@users.noreply.github.com>
On pull requests, only the Markdown files the PR changed have their live
external links checked, keeping the required signal fast and resilient to
unrelated third-party outages. The full repository is swept on the weekly
schedule and on manual dispatch; a scheduled failure opens or updates a
link-rot tracking issue instead of failing silently.

check_external_links.py now accepts explicit Markdown paths and ignores
any that are not tracked Markdown files.

Signed-off-by: Stephen Crowe <6042774+crowecawcaw@users.noreply.github.com>
)
AUTOLINK_TRAILING_PUNCTUATION = "?!.,:*_~"
OPENING_FENCE = re.compile(r"^[ \t]*(`{3,}|~{3,})(.*)$")
ATX_HEADING = re.compile(r"^ {0,3}#{1,6}(?:[ \t]+|$)(.*)$")
"""Return inline-link targets with each complete link's source span."""
targets: list[tuple[str, int, int]] = []
position = 0
link_start = re.compile(r"!?\[(?:\\.|[^]])*?\]\(", re.DOTALL)
import socket
import sys
import tempfile
import unittest
www.keyshot.com returns HTTP 403 to both the checker's HEAD and minimal
GET while loading normally in a browser (verified 200 with a browser
user agent), matching the documented bot-rejection ignore criteria.

Signed-off-by: Stephen Crowe <6042774+crowecawcaw@users.noreply.github.com>
@crowecawcaw
crowecawcaw merged commit ffe91f1 into mainline Jul 15, 2026
6 of 7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants