14 Commits
Author SHA1 Message Date
admin 68d3435638 Merge pull request '釋出:五個目錄頁範本改條列式、技能敘述同步、收尾事件回報與連結驗證' (#61) from develop into master
Reviewed-on: #61
Reviewed-by: 系統管理員 <1+admin@noreply.localhost>
2026-09-04 05:02:07 +00:00
admin 8aea68b3b1 Merge pull request 'release: wiki 目錄頁專用存取庫、HASH 完整 40 碼、閘門依 CLI 分流' (#57) from develop into master
Reviewed-on: #57
Reviewed-by: 系統管理員 <1+admin@noreply.localhost>
2026-09-02 04:21:16 +00:00
admin b6e41cd96f Merge pull request '釋出 jsc-assist 的 marketplace 條目' (#55) from develop into master
Reviewed-on: #55
Reviewed-by: 系統管理員 <1+admin@noreply.localhost>
2026-09-01 04:58:05 +00:00
admin 5d1dc35251 Merge pull request '釋出 jsc-sdlc 0.2.8:修正 maintain 技能的 frontmatter 語法' (#51) from develop into master
Reviewed-on: #51
Reviewed-by: 系統管理員 <1+admin@noreply.localhost>
2026-09-01 01:03:27 +00:00
admin 9b9b51dc38 Merge pull request '釋出 jsc-sdlc 0.2.7:新增四支技能的行為清單' (#48) from develop into master
Reviewed-on: #48
Reviewed-by: 系統管理員 <1+admin@noreply.localhost>
2026-08-31 08:19:29 +00:00
admin b7b1c92fec Merge pull request 'chore(release): 放行技能組稽核修正到預設分支' (#45) from develop into master
Reviewed-on: #45
Reviewed-by: 系統管理員 <1+admin@noreply.localhost>
2026-08-31 03:54:59 +00:00
admin 19f86bfe49 Merge pull request 'release: 發布 jsc-sdlc 相依版本宣告' (#40) from develop into master
Reviewed-on: #40
Reviewed-by: 系統管理員 <1+admin@noreply.localhost>
2026-08-28 06:52:33 +00:00
admin dcbb933656 Merge pull request 'develop' (#37) from develop into master
Reviewed-on: #37
Reviewed-by: 系統管理員 <1+admin@noreply.localhost>
2026-08-28 01:58:24 +00:00
admin 92a0701f06 Merge pull request 'release: v0.2.0 develop 到 master' (#34) from develop into master
Reviewed-on: #34
Reviewed-by: 系統管理員 <1+admin@noreply.localhost>
2026-08-27 09:01:26 +00:00
admin dfef4949fd Merge pull request 'release: v0.1.9 develop 到 master' (#31) from develop into master
Reviewed-on: #31
Reviewed-by: 系統管理員 <1+admin@noreply.localhost>
2026-08-27 04:15:00 +00:00
admin 35e26bf9d1 Merge pull request 'release: v0.1.8 develop 到 master' (#28) from develop into master
Reviewed-on: #28
Reviewed-by: 系統管理員 <1+admin@noreply.localhost>
2026-08-27 02:08:20 +00:00
admin 04bcdab4cb Merge pull request 'develop 進 master:CPM 甘特圖修正、工作包 PR 閘門平行化' (#25) from develop into master
Reviewed-on: #25
Reviewed-by: 系統管理員 <1+admin@noreply.localhost>
2026-08-26 10:15:07 +00:00
admin 2aa47aced5 Merge pull request 'sdlc 0.1.6 發佈:四階段收尾一律回報' (#22) from develop into master
Reviewed-on: #22
Reviewed-by: 系統管理員 <1+admin@noreply.localhost>
2026-08-26 01:33:53 +00:00
admin 64ecefb380 Merge pull request 'sdlc 0.1.5 發佈:工作包 PR 硬閘門與稽核修正' (#20) from develop into master
Reviewed-on: #20
Reviewed-by: 系統管理員 <1+admin@noreply.localhost>
2026-08-25 11:09:38 +00:00
+7 -12
View File
@@ -339,16 +339,11 @@ case "$sub" in
page="$analyze" page="$analyze"
content=$(sh "$gitea" wiki-get "$wiki_repo" "$page" 2>/dev/null) content=$(sh "$gitea" wiki-get "$wiki_repo" "$page" 2>/dev/null)
[ -n "$content" ] || missing_dep "讀不到分析頁 $wiki_repo 的 $page。" [ -n "$content" ] || missing_dep "讀不到分析頁 $wiki_repo 的 $page。"
# markdown 表格用 \| 跳脫儲存格裡的字面 |(例如描述某個分隔符本身就是 |);
# 下面逐欄用 awk -F'|' 切列,不先把跳脫符換掉,這一格會多出一欄,
# 害同一列後面每一欄全部錯位。先把 \| 換成控制字元,切完欄位再也用不到它,不必換回來。
content=$(printf '%s' "$content" | sed $'s/\\\\|/\x01/g')
# WBS 表欄位(以 | 分隔,$1 是第一個 | 之前的空字串,$NF 是結尾 | 之後的空字串): # WBS 表欄位(以 | 分隔,$1 是第一個 | 之前的空字串):
# $2=編號 $7=相依。層 0 比層 1 到 4 多一欄「工作證」,PR 與狀態的絕對欄號因此不同, # $2=編號 $6=相依 $11=PR $12=狀態。
# 一律從結尾往回數:倒數第一格是狀態、倒數第二格是 PR,兩種欄位數的表格都對得上。 # 找列一律比數值,不比字串:範本固定兩位數補零(WP-08),但呼叫端或相依欄裡的寫法
# 找列一律比數值,不比字串:範本固定把編號補零到兩位數,但呼叫端或相依欄裡的寫法 # 不一定補零(WP-8);比字串會讓兩種寫法各自找不到對方那一列,誤判成「查不到」。
# 不一定補零;比字串會讓兩種寫法各自找不到對方那一列,誤判成「查不到」。
find_wp_row() { # $1=WP 編號(可帶或不帶前導零) -> 印出該列,找不到印空字串 find_wp_row() { # $1=WP 編號(可帶或不帶前導零) -> 印出該列,找不到印空字串
_n=$(printf '%s' "$1" | sed 's/^0*//'); [ -n "$_n" ] || _n=0 _n=$(printf '%s' "$1" | sed 's/^0*//'); [ -n "$_n" ] || _n=0
printf '%s\n' "$content" | awk -F'|' -v n="$_n" ' printf '%s\n' "$content" | awk -F'|' -v n="$_n" '
@@ -364,7 +359,7 @@ case "$sub" in
[ -n "$row" ] || missing_dep "分析頁 $page 上找不到 WP-$wp_number 這一列,核對不了相依。" [ -n "$row" ] || missing_dep "分析頁 $page 上找不到 WP-$wp_number 這一列,核對不了相依。"
self_wp=$(printf '%s' "$row" | awk -F'|' '{ w = $2; gsub(/^[ \t]+|[ \t]+$/, "", w); print w }') self_wp=$(printf '%s' "$row" | awk -F'|' '{ w = $2; gsub(/^[ \t]+|[ \t]+$/, "", w); print w }')
deps=$(printf '%s' "$row" | awk -F'|' '{ d = $7; gsub(/^[ \t]+|[ \t]+$/, "", d); print d }') deps=$(printf '%s' "$row" | awk -F'|' '{ d = $6; gsub(/^[ \t]+|[ \t]+$/, "", d); print d }')
case "$deps" in case "$deps" in
''|-|無) ''|-|無)
echo 'status=ready' echo 'status=ready'
@@ -397,11 +392,11 @@ case "$sub" in
continue continue
fi fi
dep_wp=$(printf '%s' "$dep_row" | awk -F'|' '{ w = $2; gsub(/^[ \t]+|[ \t]+$/, "", w); print w }') dep_wp=$(printf '%s' "$dep_row" | awk -F'|' '{ w = $2; gsub(/^[ \t]+|[ \t]+$/, "", w); print w }')
dep_status=$(printf '%s' "$dep_row" | awk -F'|' '{ s = $(NF-1); gsub(/^[ \t]+|[ \t]+$/, "", s); print s }') dep_status=$(printf '%s' "$dep_row" | awk -F'|' '{ s = $12; gsub(/^[ \t]+|[ \t]+$/, "", s); print s }')
if [ "$dep_status" = '已完成' ]; then if [ "$dep_status" = '已完成' ]; then
continue continue
fi fi
dep_pr=$(printf '%s' "$dep_row" | awk -F'|' '{ print $(NF-2) }') dep_pr=$(printf '%s' "$dep_row" | awk -F'|' '{ print $11 }')
pr_index=$(printf '%s' "$dep_pr" | sed -n 's#.*/pulls/\([0-9][0-9]*\).*#\1#p' | head -n1) pr_index=$(printf '%s' "$dep_pr" | sed -n 's#.*/pulls/\([0-9][0-9]*\).*#\1#p' | head -n1)
if [ -z "$pr_index" ]; then if [ -z "$pr_index" ]; then
unmet="${unmet}${unmet:+、}${dep_wp}(狀態「${dep_status:-未完成}」,還沒開 PR)" unmet="${unmet}${unmet:+、}${dep_wp}(狀態「${dep_status:-未完成}」,還沒開 PR)"