連結一律寫成 [文字](絕對網址),並在寫入前驗證連得到 #65

Merged
admin merged 2 commits from feat/link-verification/main into develop 2026-09-02 06:46:18 +00:00
Member

摘要

  • 需求描述:連結加兩條限制。其一,文字加連結一律寫成 [{文字}]({連結}),取消 [[...]] 同 wiki 寫法。其二,連結先驗證連得到,才可以寫進文件。
  • 計畫名稱:無
  • 計畫頁:無
  • 分析頁:無

變更內容

檔案 為什麼改
references/guidelines.md 準則是規則的唯一來源,兩條限制要進正文與稽核檢查清單
tools/check-link-format.sh 新增。既有的 lint 管腳本與頁名,管不到連結寫法;判定前先剝掉行內程式碼與圍籬區塊,說明用的字面不會誤判
五支異動技能的 SKILL.md 寫 wiki 那一步要加入驗證,結束碼表要補分流
templates/skillset-contents.md、templates/tooling-contents.md 範本還在示範舊寫法
README.md、references/behaviors.md 隨上述變更對齊

設計重點

  • 只留一種連結寫法。兩種寫法並存時,每寫一條連結都得判斷兩端各自解到哪一個存取庫;統一成絕對網址,這個判斷整個消失。
  • 驗證走 API,不看網頁狀態碼。私有存取庫的網頁網址對未登入請求一律回 404,拿狀態碼判會把好連結判成壞的。
  • link-check.sh 的結束碼 7(認證失敗)與 1(有死連結)分開。金鑰失效時 Gitea 對私有存取庫的回應與「頁不存在」難以分辨,混用會讓一次金鑰過期把整批還在的頁判死,接著被當成壞連結刪掉或改寫。
  • 文件裡為了說明「不准這樣寫」而出現的雙括號字面,包在行內程式碼裡,check-link-format.sh 會先剝掉再判定,不會誤判。

測試結果

  • check-link-format.sh 對 11 個 domain 全部結束碼 0;用法錯誤回 2、路徑不存在回 3 實測過。
  • check-behaviors.sh、lint-scripts.sh、ste100-lint.sh 對本 domain 全部結束碼 0。

前置 Push Request

  • 無
## 摘要 - 需求描述:連結加兩條限制。其一,文字加連結一律寫成 `[{文字}]({連結})`,取消 `[[...]]` 同 wiki 寫法。其二,連結先驗證連得到,才可以寫進文件。 - 計畫名稱:無 - 計畫頁:無 - 分析頁:無 ## 變更內容 | 檔案 | 為什麼改 | | --- | --- | | `references/guidelines.md` | 準則是規則的唯一來源,兩條限制要進正文與稽核檢查清單 | | `tools/check-link-format.sh` | 新增。既有的 lint 管腳本與頁名,管不到連結寫法;判定前先剝掉行內程式碼與圍籬區塊,說明用的字面不會誤判 | | 五支異動技能的 `SKILL.md` | 寫 wiki 那一步要加入驗證,結束碼表要補分流 | | `templates/skillset-contents.md`、`templates/tooling-contents.md` | 範本還在示範舊寫法 | | `README.md`、`references/behaviors.md` | 隨上述變更對齊 | ## 設計重點 - 只留一種連結寫法。兩種寫法並存時,每寫一條連結都得判斷兩端各自解到哪一個存取庫;統一成絕對網址,這個判斷整個消失。 - 驗證走 API,不看網頁狀態碼。私有存取庫的網頁網址對未登入請求一律回 404,拿狀態碼判會把好連結判成壞的。 - `link-check.sh` 的結束碼 7(認證失敗)與 1(有死連結)分開。金鑰失效時 Gitea 對私有存取庫的回應與「頁不存在」難以分辨,混用會讓一次金鑰過期把整批還在的頁判死,接著被當成壞連結刪掉或改寫。 - 文件裡為了說明「不准這樣寫」而出現的雙括號字面,包在行內程式碼裡,`check-link-format.sh` 會先剝掉再判定,不會誤判。 ## 測試結果 - `check-link-format.sh` 對 11 個 domain 全部結束碼 0;用法錯誤回 2、路徑不存在回 3 實測過。 - `check-behaviors.sh`、`lint-scripts.sh`、`ste100-lint.sh` 對本 domain 全部結束碼 0。 ## 前置 Push Request - 無
jiantw83 added 2 commits 2026-09-02 06:30:13 +00:00
取消 [[頁名]] 與 [[顯示文字|頁名]] 兩種同 wiki 寫法,不再分「同存取庫」與
「跨存取庫」兩條規則。那種寫法只在自己那個 wiki 內解析,寫錯不報錯,畫面上
看起來像普通文字或死連結,巡不到也修不了。

連結寫進頁面前先過 jsc-gitea 的 link-check.sh,結束碼 0 才寫。驗證一律走 API,
不看網頁狀態碼:私有存取庫的網頁網址對未登入請求一律回 404,拿狀態碼判會把
好連結判成壞的。認證失敗回 7,與死連結的 1 分開,免得金鑰一過期就把還在的頁
整批判死。
admin merged commit 03188837d3 into develop 2026-09-02 06:46:18 +00:00
admin deleted branch feat/link-verification/main 2026-09-02 06:46:18 +00:00
Sign in to join this conversation.
No Reviewers
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: plugins/meta#65