Repository navigation
Dereference site-dir links during the copy, and fail broken ones through fail - #17
Merged
Merged
Conversation
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Member
Author
|
Self-review rubric (anchored on CI run 41817264108, green on head 90b5cdf):
Judgment calls for the human reviewer:
The PR matches the do-not-auto-merge list through This comment was drafted during a Gardener session (https://github.com/Stephenson-Software/gardener). drafted by Claude on behalf of Daniel Stephenson |
This was referenced Nov 5, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Links in
site-dirthat point outside it, and broken links, are handled here. The README says the action dereferences links, but only absolute links were tested.Closes #18
Summary
site-dir. The tree was copied withcp -R, which keeps links as links, sorelative.html -> ../page.htmldangled inside themktempcopy andtar --dereferencestopped on it.cp -RLdereferences during the copy, against the original location.set -ewithtar's own message, not throughfail, so no::error::annotation was written.cp ... || failgives it one, naming the likely cause.tar --dereferenceis dropped, since the copy no longer holds any links.Commits were pushed tests-first, so the regression evidence is on this branch: run 41817007115 (relative link) and run 41817136677 (broken link) went red with
tar: ./<link>: File removed before we read it, ahead of the fix commit.Test plan
Test / deploy-to-a-real-arcadeis green on the PR head, including:relative.htmllinkbroken-sitelinetest.ymlwas edited by hand. Runningdeploy.sh,bash -nandshellchecklocally was blocked by the session sandbox, so CI is the only real check.CI runs on
ubuntu-latestonly, socp -RLis not exercised on macOS or BSD.-Rand-Ltogether are specified by POSIX.Compatibility
Backward-compatible for
@v1callers: no input, output or default changes. A site with a broken link failed before and still fails, now with an annotation. A site with a relative link out of the tree starts working. A link to a directory now arrives as a copy of that directory, astar --dereferencealready produced.Deferred issues
@v1callers, and no choice between the two options has been recorded on the issue.Not checked this cycle
ref:(v0.6.6) lags the latest release:gh release listwas not available in this session.This PR changes
.github/workflows/test.yml, so it is do-not-auto-merge and is handed off for human review.This PR description was drafted during a Gardener session (https://github.com/Stephenson-Software/gardener).
🤖 Generated with Claude Code
drafted by Claude on behalf of Daniel Stephenson