棒子不會掉:子票相依+tag+指派三格,全部用 Gitea 原生欄位 #58
Closed
claude-code
wants to merge 0 commits from
feat/three-native-fields into main
pull from: feat/three-native-fields
merge into: inkstone:main
inkstone:main
inkstone:fix/roster-plugin-prefix
inkstone:chore/v0.16.0
inkstone:feat/nag-and-wiki-compress
inkstone:feat/named-workers-and-reply-gate
inkstone:feat/manifest-account-v2
inkstone:feat/debt-worklist
inkstone:feat/release-manifest-and-milestone-account
inkstone:chore/v0.13.0
inkstone:feat/handoff-writeback-loose
inkstone:feat/mainline-milestone
inkstone:chore/v0.12.0
inkstone:fix/cloud-wiring-isep90
inkstone:feat/pr-verdict-v2
inkstone:feat/countdown-stamp
inkstone:feat/gate-search-is-not-proof
inkstone:fix/stamp-proves-seen-not-run
inkstone:feat/gate-catches-recon-without-output
inkstone:docs/inventory-missing-rows
inkstone:fix/tests-leave-no-forged-pending
inkstone:integrate/isep59-wave2
inkstone:fix/gitea-write-search-guard
inkstone:feat/leo21c-mcp-guard
inkstone:fix/dispatch-guard-parens-and-wiring
inkstone:fix/dispatch-guard-noise-and-wiring
inkstone:fix/remove-claim-worksheet-mechanism
inkstone:feat/ticket-carries-the-task
inkstone:feat/gate-fires-when-asking-not-after-stopping
inkstone:fix/stamp-release-stat-ordering-linux
inkstone:fix/beacon-says-which-copy
inkstone:fix/factory-idle-guard-blocks-actions-not-mentions
inkstone:fix/beacon-counts-registered-gates
inkstone:fix/push-guard-cross-repo-stamp
inkstone:feat/vendor-drift-guard
inkstone:fix/push-guard-target-not-substring
inkstone:feat/milestone-must-have-due
inkstone:fix/worksheet-dedup-by-content
inkstone:fix/b4-real-probe
inkstone:fix/cloud-setup-git-auth-verify
inkstone:feat/cloud-env-outdir
inkstone:fix/testing-b-section-discriminating
inkstone:fix/setup-self-verify
inkstone:fix/claim-worksheet-dedup
inkstone:fix/cloud-env-parity-14
inkstone:fix/sdd-guard-path-resolution
inkstone:feat/cloud-env-generator
inkstone:fix/one-copy-per-gate
inkstone:fix/group0-gates
inkstone:chore/withdraw-versions
inkstone:rule/milestone-formation
inkstone:rule/pr-only
inkstone:docs/three-source
inkstone:docs/plan
inkstone:release/v0.2.1
inkstone:fix/ticket-api-bypass
inkstone:leaf/24-descope
inkstone:release/v0.2.0
inkstone:leaf/5-cloud
inkstone:leaf/18-dogfood
inkstone:leaf/6-release
inkstone:leaf/2-docs
inkstone:leaf/3-wiki
inkstone:leaf/4-labels
No Reviewers
Labels
Clear labels
Human
hub
human/exec
👤 這件事需要 leo 親手批示/動手(花錢・不可逆・品味方向・物理動作)。與 s/* 正交
close
duplicate
重複——關新的、留舊的,並指向舊票
close
human-exec
人執票完成,由人手動關
close
merged
PR merge 自動關(正常路徑)
close
split
太大,已拆成數張子票
close
stale
逾期無資訊,自動關閉
close
transferred
走錯棚,已在正確的 repo 重開
close
wontfix
討論後決定不做(只有 leo 可下此判斷)
Tracking issue——聚合一批 leaf 的 scope 容器,本身不掛 milestone、不對應 PR
👤 這張票的『執行者』是人(GUI-only/實體權限/法定簽署),不是審核。交付物是環境狀態改變,不是 PR
p
high
高——擋住交付或有時間壓力
p
low
低——想做,但晚一點沒關係
s
backlog
驗過了、確定要做,但還沒排進任何 sprint
s
doing
進行中——已 self-assign,現在有人在做
s
pending
卡住——等外部/等依賴,不是沒人做
s
review
PR 已開(含 closes #n),等總管 review 並 merge
s
stage
已部署 stage,等 leo 實際驗收
s
todo
已排進 milestone,等人領票
s
triage
新進來的,還沒驗傷——還沒決定要不要做
type
bug
壞掉的東西
type
chore
雜務、整理、不改行為
type
feature
新能力
type
governance
規範、流程、閘本身
No Label
Milestone
No items
No Milestone
Projects
Clear projects
No project
No Assignees
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: inkstone/ISEP#58
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Delete Branch "feat/three-native-fields"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Closes 部分
inkstone/ISEP#30的 comment4334/4335/4346/4347(三個維度合起來那一版)。這個 PR 解什麼
08-26 掉棒那一次(
inkstone/arcrun-rag#136comment 4267「等雲端那半出貨才驗得了」躺了 14 小時),那張票三格全缺:沒有子票、tag 沒動、沒有指派給任何人。
⇒ 根因不是誰忘了,是那件事沒有落在任何一個「撈一次就看得到」的欄位上。
三個 Gitea 原生欄位,正交,全部都要:
s/*)實測(貼在票上,這裡只放結論)
ticket mine撈不到它內容
scripts/ticket三個新動詞:subtask/handback/minehooks/comment-carries-task-guard.sh(擋一次)+hooks/baton-handback-guard.sh(提醒)docs/governance/sdd-gitea-governance.md§16scripts/test-comment-carries-task-guard.sh20/20、scripts/test-baton-handback-guard.sh10/10沒做的(誠實標記)
docs/TESTING.md檔頭那條),發版是總管收斂 release 時的事。
InkStoneCo/.claude/settings.json有 50 條指向$CLAUDE_PROJECT_DIR/.claude/hooks,而~/.claude/plugins/cache/inkstone/isep也有一份到 0.5.0⇒ 這兩支新閘在本機要生效,得看那條「一個閘只留一份」的線怎麼收(
fix/one-copy-per-gate)。這個 PR 不動它。
追記:dogfood 當場抓到自己的一個漏(已修,
b46bc5e)拿這支閘去跑我自己那則交件報告時,它沒有擋——
因為報告裡引用了一段
ticket mine的輸出(那段有 🏃),於是「已經是交棒留言就放行」那條豁免命中了整則報告,
而它裡面真的有「等雲端那半出貨才驗得了」。
⇒ 這正是
inkstone/InkStoneCo#23那個病的同款:複述關鍵字被當成本人。修法:交棒標記只認第一行(
ticket handback寫的一定在第一行,引用別人的輸出不會)。回歸測試 +2,20/20 → 22/22。
📌 這一格是本 PR 最有價值的部分:閘寫完就拿它跑自己剛寫的東西,
一次就撞出來了。沒有 dogfood 的話,它會在下一則長報告上靜靜失效。
這條線的票
inkstone/ISEP#59(s/review,指派claude-code),是inkstone/ISEP#30的相依⇒ 它沒關,
#30關不掉。實測全文在inkstone/ISEP#30#issuecomment-4378。【分診 @ inkstone/ISEP#64】狀態:✅ 該併(先解一個小衝突)
實測:
git merge-tree origin/main origin/feat/three-native-fields→ 只有一處真衝突:docs/hooks-inventory.md(閘清單文件,main 這幾天有其他 PR 也在動同一份計數文件,屬正常小碰撞);hooks/hooks.json、scripts/ticket都能自動合併。內容檢視:解
inkstone/ISEP#30的掉棒問題(08-26 那次「等雲端出貨才驗得了」躺了 14 小時,根因是那張票子票/tag/指派三格全空)。方案是 Gitea 原生三個正交欄位(子票相依/s/*tag/assignee),PR 描述自陳的實測:子票還開著關母票被 412 硬擋、跨 repo 相依 201、子票關掉後母票關得掉 201、反向清指派後ticket mine撈不到——四個情境都貼了結果,不是空話。附兩支新閘各自的測試 20/20、10/10。誠實揭露的缺口:沒發版(等總管收斂 release)、本機閘有兩份需要另一條線收斂(
fix/one-copy-per-gate,不在本 PR 範圍)。本次分診也查到一件相關素材,記在這裡供總管判斷:
main-and-prod-push-guard.sh讀的CLAUDE_AGENT_NAME這個環境變數在 Claude Code 裡從來不存在,是那支閘自己編的假設——本 PR 沒有動main-and-prod-push-guard.sh,不受影響,但既然摸到 hooks 生態就一併記錄,供之後修那支閘的人參考。建議:總管先手動解掉
docs/hooks-inventory.md那一個小衝突(或請作者 rebase 一次)後併,順序建議排在ISEP#62之前(見#62留言)。[decision] 關閉:這個 PR 要做的事,在 main 上已經是既成事實
總管實查現在的 main(2026-08-28 12:45):
hooks/baton-handback-guard.sh已存在,檔頭寫著「一條派工線收工時,檢查它的工單票有沒有把棒子交回來——指派(誰該動)+ tag(卡在哪)+ 下一步(做什麼)三格」。
⇒ 這正是本 PR 要做的三格,內容在
v0.6.0就進去了(那一版的說明:「子任務交回時會用相依、標籤、指派三格接手,不再靠一份會重生的本機清單」)。
所以這不是「不做」,是「已經做了、只是這張 PR 忘了關」。
📌 這張 PR 的診斷本身值得留著:08-26 掉棒那次(
inkstone/arcrun-rag#136comment 4267「等雲端那半出貨才驗得了」躺了 14 小時),根因不是誰忘了,
而是那件事沒有長成任何一個機器看得到的欄位。今天
comment-carries-task-guard.sh也在守同一件事的另一半(留言裡藏著沒做完的事要長成子票)。
為什麼現在才關:今天出的
v0.11.0新增了收工清點沒結論 PR 的閘,它上線後第一批要抓的就包含這一張。我自己不遵守鐵律 7,那支閘就是裝飾。
Pull request closed