summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorShulhan <m.shulhan@gmail.com>2026-02-11 06:52:36 +0700
committerShulhan <m.shulhan@gmail.com>2026-02-12 00:42:59 +0700
commit2f2d797b5cf06f609508d19f546a9611f22387bc (patch)
tree6511722b938c270696843587f007cc09213f09a5
parentfe77731a9d7a4d239b1ec9c8c3dc4baa52f5f48c (diff)
downloadgolang-id-web-2f2d797b5cf06f609508d19f546a9611f22387bc.tar.xz
brokenlinks: first scan
-rw-r--r--Makefile8
-rw-r--r--brokenlinks-phase1.fixed.json256
-rw-r--r--brokenlinks-phase1.json268
3 files changed, 529 insertions, 3 deletions
diff --git a/Makefile b/Makefile
index 4628fe6..5a03ed4 100644
--- a/Makefile
+++ b/Makefile
@@ -75,9 +75,11 @@ macos-deploy-local: build
##---- Scan the brokenlinks.
-.PHONY: brokenlinks
-brokenlinks:
- jarink brokenlinks https://golang-id.local
+.PHONY: brokenlinks-phase1
+brokenlinks-phase1:
+ jarink -ignore-status=403,405,503 \
+ brokenlinks https://golang-id.local \
+ > brokenlinks-phase1.json
.PHONY: brokenlinks-phase2
brokenlinks-phase2:
diff --git a/brokenlinks-phase1.fixed.json b/brokenlinks-phase1.fixed.json
new file mode 100644
index 0000000..3ad06c6
--- /dev/null
+++ b/brokenlinks-phase1.fixed.json
@@ -0,0 +1,256 @@
+{
+ "broken_links": {
+ "https://golang-id.local/doc/faq": [
+ {
+ "url": "https://9p.io/plan9/glenda.html",
+ "status_code": 700
+ }
+ ],
+ "https://golang-id.local/doc/faq/index.html": [
+ {
+ "url": "https://9p.io/plan9/glenda.html",
+ "error": "Get \"https://9p.io/plan9/glenda.html\": remote error: tls: handshake failure",
+ "status_code": 700
+ }
+ ],
+ "https://golang-id.local/proposal/README.html": [
+ {
+ "url": "https://golang-id.local/proposal/go2-language-changes.md",
+ "status_code": 404
+ }
+ ],
+ "https://golang-id.local/proposal/design/11502-securitypolicy.html": [
+ {
+ "url": "https://golang-id.local/proposal/design",
+ "status_code": 500
+ }
+ ],
+ "https://golang-id.local/proposal/design/13073-code-of-conduct.html": [
+ {
+ "url": "https://golang-id.local/proposal/design",
+ "status_code": 500
+ }
+ ],
+ "https://golang-id.local/proposal/design/13504-natural-xml.html": [
+ {
+ "url": "https://golang-id.local/proposal/design",
+ "status_code": 500
+ }
+ ],
+ "https://golang-id.local/proposal/design/15292-generics.html": [
+ {
+ "url": "https://golang-id.local/proposal/design",
+ "status_code": 500
+ }
+ ],
+ "https://golang-id.local/proposal/design/16085-conversions-ignore-tags.html": [
+ {
+ "url": "https://golang-id.local/proposal/design",
+ "status_code": 500
+ }
+ ],
+ "https://golang-id.local/proposal/design/19480-xml-stream.html": [
+ {
+ "url": "https://golang-id.local/proposal/design",
+ "status_code": 500
+ }
+ ],
+ "https://golang-id.local/proposal/design/24543/conservative-inner-frame.md": [
+ {
+ "url": "https://golang-id.local/proposal/design/24543/24543-non-cooperative-preemption.md",
+ "status_code": 404
+ },
+ {
+ "url": "https://golang-id.local/proposal/design/24543/conservative-inner-frame.md/safe-points-everywhere.md",
+ "status_code": 404
+ }
+ ],
+ "https://golang-id.local/proposal/design/24543/safe-points-everywhere.md": [
+ {
+ "url": "https://golang-id.local/proposal/design/24543/24543-non-cooperative-preemption.md",
+ "status_code": 404
+ }
+ ],
+ "https://golang-id.local/proposal/design/26160-dns-based-vanity-imports.html": [
+ {
+ "url": "https://golang-id.local/proposal/design",
+ "status_code": 500
+ }
+ ],
+ "https://golang-id.local/proposal/design/26756-rawxml-token.html": [
+ {
+ "url": "https://golang-id.local/proposal/design",
+ "status_code": 500
+ }
+ ],
+ "https://golang-id.local/proposal/design/37720-gopls-workspaces.md": [
+ {
+ "url": "https://golang-id.local/proposal/design/37720-gopls-workspaces.md/37720/Fig1.png",
+ "status_code": 404
+ },
+ {
+ "url": "https://golang-id.local/proposal/design/37720-gopls-workspaces.md/37720/Fig2.png",
+ "status_code": 404
+ },
+ {
+ "url": "https://golang-id.local/proposal/design/37720-gopls-workspaces.md/37720/Fig3.png",
+ "status_code": 404
+ },
+ {
+ "url": "https://golang-id.local/proposal/design/37720-gopls-workspaces.md/37720/Fig4.png",
+ "status_code": 404
+ },
+ {
+ "url": "https://golang-id.local/proposal/design/37720-gopls-workspaces.md/37720/Fig5.png",
+ "status_code": 404
+ }
+ ],
+ "https://golang-id.local/proposal/design/44309-user-configurable-memory-target.html": [
+ {
+ "url": "https://golang-id.local/proposal/design/44309/high-noise-heap-target.png",
+ "status_code": 404
+ },
+ {
+ "url": "https://golang-id.local/proposal/design/44309/low-noise-heap-target.png",
+ "status_code": 404
+ }
+ ],
+ "https://golang-id.local/proposal/design/48815-custom-fuzz-input-types.html": [
+ {
+ "url": "https://golang-id.local/proposal/design",
+ "status_code": 500
+ }
+ ],
+ "https://golang-id.local/proposal/design/68723/agent/agent.html": [
+ {
+ "url": "https://golang-id.local/proposal/design/68723",
+ "status_code": 500
+ }
+ ],
+ "https://golang-id.local/proposal/design/68723/knownhosts/knownhosts.html": [
+ {
+ "url": "https://golang-id.local/proposal/design/68723",
+ "status_code": 500
+ }
+ ],
+ "https://golang-id.local/proposal/design/TEMPLATE.md": [
+ {
+ "url": "https://golang-id.local/proposal/design/README.md",
+ "status_code": 404
+ }
+ ],
+ "https://golang-id.local/proposal/design/go2draft-error-handling-overview.md": [
+ {
+ "url": "https://golang-id.local/proposal/design/go2draft-error-handling-overview.md/go2draft-error-handling.md",
+ "status_code": 404
+ },
+ {
+ "url": "https://golang-id.local/proposal/design/go2draft-error-handling-overview.md/go2draft-error-values-overview.md",
+ "status_code": 404
+ },
+ {
+ "url": "https://golang-id.local/proposal/design/go2draft-error-handling-overview.md/go2draft.md",
+ "status_code": 404
+ }
+ ],
+ "https://golang-id.local/proposal/design/go2draft-error-handling.md": [
+ {
+ "url": "https://golang-id.local/proposal/design/go2draft-error-handling.md/go2draft-error-handling-overview.md",
+ "status_code": 404
+ }
+ ],
+ "https://golang-id.local/proposal/design/go2draft-error-inspection.md": [
+ {
+ "url": "https://golang-id.local/proposal/design/go2draft-error-inspection.md/go2draft-error-handling-overview.md",
+ "status_code": 404
+ },
+ {
+ "url": "https://golang-id.local/proposal/design/go2draft-error-inspection.md/go2draft-error-values-overview.md",
+ "status_code": 404
+ },
+ {
+ "url": "https://golang-id.local/proposal/design/go2draft-error-inspection.md/go2draft-generics-overview.md",
+ "status_code": 404
+ }
+ ],
+ "https://golang-id.local/proposal/design/go2draft-error-printing.md": [
+ {
+ "url": "https://golang-id.local/proposal/design/go2draft-error-printing.md/go2draft-error-values-overview.md",
+ "status_code": 404
+ }
+ ],
+ "https://golang-id.local/proposal/design/go2draft-error-values-overview.md": [
+ {
+ "url": "https://golang-id.local/proposal/design/go2draft-error-values-overview.md/go2draft-error-handling-overview.md",
+ "status_code": 404
+ },
+ {
+ "url": "https://golang-id.local/proposal/design/go2draft-error-values-overview.md/go2draft-error-inspection.md",
+ "status_code": 404
+ },
+ {
+ "url": "https://golang-id.local/proposal/design/go2draft-error-values-overview.md/go2draft-error-printing.md",
+ "status_code": 404
+ },
+ {
+ "url": "https://golang-id.local/proposal/design/go2draft-error-values-overview.md/go2draft-generics-overview.md",
+ "status_code": 404
+ },
+ {
+ "url": "https://golang-id.local/proposal/design/go2draft-error-values-overview.md/go2draft.md",
+ "status_code": 404
+ }
+ ],
+ "https://golang-id.local/proposal/design/go2draft-generics-overview.html": [
+ {
+ "url": "https://web.eecs.umich.edu/~weimerw/2008-615/reading/liskov-clu-abstraction.pdf",
+ "error": "Get \"https://web.eecs.umich.edu/~weimerw/2008-615/reading/liskov-clu-abstraction.pdf\": tls: failed to verify certificate: x509: certificate signed by unknown authority",
+ "status_code": 700
+ }
+ ],
+ "https://golang-id.local/proposal/design/go2draft-generics-overview.md": [
+ {
+ "url": "https://golang-id.local/proposal/design/go2draft-generics-overview.md/go2draft-contracts.md",
+ "status_code": 404
+ },
+ {
+ "url": "https://golang-id.local/proposal/design/go2draft-generics-overview.md/go2draft.md",
+ "status_code": 404
+ },
+ {
+ "url": "https://web.eecs.umich.edu/~weimerw/2008-615/reading/liskov-clu-abstraction.pdf",
+ "status_code": 700
+ }
+ ],
+ "https://golang-id.local/proposal/design/go2draft.md": [
+ {
+ "url": "https://golang-id.local/proposal/design/go2draft.md/go2draft-contracts.md",
+ "status_code": 404
+ },
+ {
+ "url": "https://golang-id.local/proposal/design/go2draft.md/go2draft-error-handling-overview.md",
+ "status_code": 404
+ },
+ {
+ "url": "https://golang-id.local/proposal/design/go2draft.md/go2draft-error-handling.md",
+ "status_code": 404
+ },
+ {
+ "url": "https://golang-id.local/proposal/design/go2draft.md/go2draft-error-inspection.md",
+ "status_code": 404
+ },
+ {
+ "url": "https://golang-id.local/proposal/design/go2draft.md/go2draft-error-printing.md",
+ "status_code": 404
+ },
+ {
+ "url": "https://golang-id.local/proposal/design/go2draft.md/go2draft-error-values-overview.md",
+ "status_code": 404
+ },
+ {
+ "url": "https://golang-id.local/proposal/design/go2draft.md/go2draft-generics-overview.md",
+ "status_code": 404
+ }
+ ]
+ }
+}
diff --git a/brokenlinks-phase1.json b/brokenlinks-phase1.json
new file mode 100644
index 0000000..90a157b
--- /dev/null
+++ b/brokenlinks-phase1.json
@@ -0,0 +1,268 @@
+{
+ "broken_links": {
+ "https://golang-id.local/doc/faq": [
+ {
+ "url": "https://9p.io/plan9/glenda.html",
+ "status_code": 700
+ }
+ ],
+ "https://golang-id.local/doc/faq/index.html": [
+ {
+ "url": "https://9p.io/plan9/glenda.html",
+ "error": "Get \"https://9p.io/plan9/glenda.html\": remote error: tls: handshake failure",
+ "status_code": 700
+ }
+ ],
+ "https://golang-id.local/doc/tutorial/compile-install": [
+ {
+ "url": "https://golang-id.local/ref/mod",
+ "status_code": 404
+ }
+ ],
+ "https://golang-id.local/doc/tutorial/getting-started": [
+ {
+ "url": "https://golang-id.local/ref/mod",
+ "status_code": 404
+ }
+ ],
+ "https://golang-id.local/proposal/README.html": [
+ {
+ "url": "https://golang-id.local/proposal/go2-language-changes.md",
+ "status_code": 404
+ }
+ ],
+ "https://golang-id.local/proposal/design/11502-securitypolicy.html": [
+ {
+ "url": "https://golang-id.local/proposal/design",
+ "status_code": 500
+ }
+ ],
+ "https://golang-id.local/proposal/design/13073-code-of-conduct.html": [
+ {
+ "url": "https://golang-id.local/proposal/design",
+ "status_code": 500
+ }
+ ],
+ "https://golang-id.local/proposal/design/13504-natural-xml.html": [
+ {
+ "url": "https://golang-id.local/proposal/design",
+ "status_code": 500
+ }
+ ],
+ "https://golang-id.local/proposal/design/15292-generics.html": [
+ {
+ "url": "https://golang-id.local/proposal/design",
+ "status_code": 500
+ }
+ ],
+ "https://golang-id.local/proposal/design/16085-conversions-ignore-tags.html": [
+ {
+ "url": "https://golang-id.local/proposal/design",
+ "status_code": 500
+ }
+ ],
+ "https://golang-id.local/proposal/design/19480-xml-stream.html": [
+ {
+ "url": "https://golang-id.local/proposal/design",
+ "status_code": 500
+ }
+ ],
+ "https://golang-id.local/proposal/design/24543/conservative-inner-frame.md": [
+ {
+ "url": "https://golang-id.local/proposal/design/24543/24543-non-cooperative-preemption.md",
+ "status_code": 404
+ },
+ {
+ "url": "https://golang-id.local/proposal/design/24543/conservative-inner-frame.md/safe-points-everywhere.md",
+ "status_code": 404
+ }
+ ],
+ "https://golang-id.local/proposal/design/24543/safe-points-everywhere.md": [
+ {
+ "url": "https://golang-id.local/proposal/design/24543/24543-non-cooperative-preemption.md",
+ "status_code": 404
+ }
+ ],
+ "https://golang-id.local/proposal/design/26160-dns-based-vanity-imports.html": [
+ {
+ "url": "https://golang-id.local/proposal/design",
+ "status_code": 500
+ }
+ ],
+ "https://golang-id.local/proposal/design/26756-rawxml-token.html": [
+ {
+ "url": "https://golang-id.local/proposal/design",
+ "status_code": 500
+ }
+ ],
+ "https://golang-id.local/proposal/design/37720-gopls-workspaces.md": [
+ {
+ "url": "https://golang-id.local/proposal/design/37720-gopls-workspaces.md/37720/Fig1.png",
+ "status_code": 404
+ },
+ {
+ "url": "https://golang-id.local/proposal/design/37720-gopls-workspaces.md/37720/Fig2.png",
+ "status_code": 404
+ },
+ {
+ "url": "https://golang-id.local/proposal/design/37720-gopls-workspaces.md/37720/Fig3.png",
+ "status_code": 404
+ },
+ {
+ "url": "https://golang-id.local/proposal/design/37720-gopls-workspaces.md/37720/Fig4.png",
+ "status_code": 404
+ },
+ {
+ "url": "https://golang-id.local/proposal/design/37720-gopls-workspaces.md/37720/Fig5.png",
+ "status_code": 404
+ }
+ ],
+ "https://golang-id.local/proposal/design/44309-user-configurable-memory-target.html": [
+ {
+ "url": "https://golang-id.local/proposal/design/44309/high-noise-heap-target.png",
+ "status_code": 404
+ },
+ {
+ "url": "https://golang-id.local/proposal/design/44309/low-noise-heap-target.png",
+ "status_code": 404
+ }
+ ],
+ "https://golang-id.local/proposal/design/48815-custom-fuzz-input-types.html": [
+ {
+ "url": "https://golang-id.local/proposal/design",
+ "status_code": 500
+ }
+ ],
+ "https://golang-id.local/proposal/design/68723/agent/agent.html": [
+ {
+ "url": "https://golang-id.local/proposal/design/68723",
+ "status_code": 500
+ }
+ ],
+ "https://golang-id.local/proposal/design/68723/knownhosts/knownhosts.html": [
+ {
+ "url": "https://golang-id.local/proposal/design/68723",
+ "status_code": 500
+ }
+ ],
+ "https://golang-id.local/proposal/design/TEMPLATE.md": [
+ {
+ "url": "https://golang-id.local/proposal/design/README.md",
+ "status_code": 404
+ }
+ ],
+ "https://golang-id.local/proposal/design/go2draft-error-handling-overview.md": [
+ {
+ "url": "https://golang-id.local/proposal/design/go2draft-error-handling-overview.md/go2draft-error-handling.md",
+ "status_code": 404
+ },
+ {
+ "url": "https://golang-id.local/proposal/design/go2draft-error-handling-overview.md/go2draft-error-values-overview.md",
+ "status_code": 404
+ },
+ {
+ "url": "https://golang-id.local/proposal/design/go2draft-error-handling-overview.md/go2draft.md",
+ "status_code": 404
+ }
+ ],
+ "https://golang-id.local/proposal/design/go2draft-error-handling.md": [
+ {
+ "url": "https://golang-id.local/proposal/design/go2draft-error-handling.md/go2draft-error-handling-overview.md",
+ "status_code": 404
+ }
+ ],
+ "https://golang-id.local/proposal/design/go2draft-error-inspection.md": [
+ {
+ "url": "https://golang-id.local/proposal/design/go2draft-error-inspection.md/go2draft-error-handling-overview.md",
+ "status_code": 404
+ },
+ {
+ "url": "https://golang-id.local/proposal/design/go2draft-error-inspection.md/go2draft-error-values-overview.md",
+ "status_code": 404
+ },
+ {
+ "url": "https://golang-id.local/proposal/design/go2draft-error-inspection.md/go2draft-generics-overview.md",
+ "status_code": 404
+ }
+ ],
+ "https://golang-id.local/proposal/design/go2draft-error-printing.md": [
+ {
+ "url": "https://golang-id.local/proposal/design/go2draft-error-printing.md/go2draft-error-values-overview.md",
+ "status_code": 404
+ }
+ ],
+ "https://golang-id.local/proposal/design/go2draft-error-values-overview.md": [
+ {
+ "url": "https://golang-id.local/proposal/design/go2draft-error-values-overview.md/go2draft-error-handling-overview.md",
+ "status_code": 404
+ },
+ {
+ "url": "https://golang-id.local/proposal/design/go2draft-error-values-overview.md/go2draft-error-inspection.md",
+ "status_code": 404
+ },
+ {
+ "url": "https://golang-id.local/proposal/design/go2draft-error-values-overview.md/go2draft-error-printing.md",
+ "status_code": 404
+ },
+ {
+ "url": "https://golang-id.local/proposal/design/go2draft-error-values-overview.md/go2draft-generics-overview.md",
+ "status_code": 404
+ },
+ {
+ "url": "https://golang-id.local/proposal/design/go2draft-error-values-overview.md/go2draft.md",
+ "status_code": 404
+ }
+ ],
+ "https://golang-id.local/proposal/design/go2draft-generics-overview.html": [
+ {
+ "url": "https://web.eecs.umich.edu/~weimerw/2008-615/reading/liskov-clu-abstraction.pdf",
+ "error": "Get \"https://web.eecs.umich.edu/~weimerw/2008-615/reading/liskov-clu-abstraction.pdf\": tls: failed to verify certificate: x509: certificate signed by unknown authority",
+ "status_code": 700
+ }
+ ],
+ "https://golang-id.local/proposal/design/go2draft-generics-overview.md": [
+ {
+ "url": "https://golang-id.local/proposal/design/go2draft-generics-overview.md/go2draft-contracts.md",
+ "status_code": 404
+ },
+ {
+ "url": "https://golang-id.local/proposal/design/go2draft-generics-overview.md/go2draft.md",
+ "status_code": 404
+ },
+ {
+ "url": "https://web.eecs.umich.edu/~weimerw/2008-615/reading/liskov-clu-abstraction.pdf",
+ "status_code": 700
+ }
+ ],
+ "https://golang-id.local/proposal/design/go2draft.md": [
+ {
+ "url": "https://golang-id.local/proposal/design/go2draft.md/go2draft-contracts.md",
+ "status_code": 404
+ },
+ {
+ "url": "https://golang-id.local/proposal/design/go2draft.md/go2draft-error-handling-overview.md",
+ "status_code": 404
+ },
+ {
+ "url": "https://golang-id.local/proposal/design/go2draft.md/go2draft-error-handling.md",
+ "status_code": 404
+ },
+ {
+ "url": "https://golang-id.local/proposal/design/go2draft.md/go2draft-error-inspection.md",
+ "status_code": 404
+ },
+ {
+ "url": "https://golang-id.local/proposal/design/go2draft.md/go2draft-error-printing.md",
+ "status_code": 404
+ },
+ {
+ "url": "https://golang-id.local/proposal/design/go2draft.md/go2draft-error-values-overview.md",
+ "status_code": 404
+ },
+ {
+ "url": "https://golang-id.local/proposal/design/go2draft.md/go2draft-generics-overview.md",
+ "status_code": 404
+ }
+ ]
+ }
+}