feat(ci): behind 를 «재는» 주 1회 예약 워크플로 [rustjava-upstream-behind-measure-scheduled-workflow] - #31
Merged
Merged
Conversation
added 2 commits
September 5, 2026 07:15
…e-scheduled-workflow] 채택 제안 2026-09-04-upstream-sync-cadence-decision#p0 집행. 2026-09-04 판정(PR #29)이 트리거를 behind >= 20 으로 못박았으나 그 수를 재는 주체가 없었다 — git grep -lI 'rev-list --count' origin/main -- .github/ scripts/ → 0건. 주기 = 주 1회(cron 17 6 * * 1). 선례(rust-audit 일간)를 베끼지 않고 임계 도달 속도로 정당화했다: behind 20 도달이 중앙 44일 · 최소 9일이라 7일 주기는 가장 빠른 관측 상승보다 짧아 한 주기 넘게 놓칠 수 없고, 일간은 7배 비용에 판단 가치가 0 이다(회차보다 빨리 움직일 수 없다). 정시와 rust-audit 의 00:00 슬롯을 피해 오프셋을 뒀다. 알림 = ⒝ Job Summary + annotation · 항상 green. 취향이 아니라 이 저장소 실측으로 골랐다: ⒜red 는 여기서 안 듣는다(선례 rust-audit 최근 20 run 중 19 failure 인데 대응 티켓 0건 · coverage 리니지도 만성 red 를 행동이 아니라 green 으로 끝냈다) 이고, 예약 red 는 main tip check-run 에 붙어(실측 8c1238b 에 audit failure 7건) 게이트③의 「착지본 green」 읽기를 흐린다. 단 PR 은 막지 않는다 — 예약 run 은 main tip sha 에 붙고 PR head 와 다르다(확인함). ⒞이슈는 구조적으로 불가하다(이 fork 는 hasIssuesEnabled: false). ⇒ ⒝ 가 남은 것이고 그 수동성을 알고 골랐다. 재개 조건이 그 대가를 잰다 — 「behind >= 20 이 7일 이상 지속인데 회차 미개시」를 세는 명령·오늘의 값과 함께 §5-B ⒠ 에 박았다. 한 번 돌려 오늘의 값을 남겼다(워크플로 본문 명령을 신선한 클론에서 그대로 실행): behind 0 · merge-base bd42427 = upstream HEAD ⇒ 임계 미만. 경계: upstream 발신 0(remote 추가 + fetch 뿐 · permissions contents: read) · 자동 발권 0 (임계를 넘어도 회차를 열지 않는다 — 발권은 사람) · 임계 20 무접촉(착지 판정 PR #29) · bin/healthcheck·orchestrator 무접촉 · scripts/ 무접촉 · .rs 0줄 · S9 미개시. 파리티 검사기는 CI_FILE 을 rust.yml 로 코드에 박아 둬 새 워크플로를 보지 않는다(rc=0 확인).
…measure-scheduled-workflow] STATE.md 진행중 → 완료(게이트③ PR #31 · --merge · 등재 repo · 게이트② 1회차 approve · 착지 후 workflow_dispatch 로 워크플로를 실제로 돌려 확인 — 구현 회차가 자인한 구멍이다) + worklog .json 게이트③ 집행 1줄(동봉 전 head 가 핀과 일치했음 · 착지 diff 에 워크플로 파일이 있어 3-a⒞ 공유 앵커를 반드시 봤고 paths 필터 0건이라 해당 없음). 코드 변경 0.
Uh oh!
There was an error while loading. Please reload this page.
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 freeto 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.
무엇을
.github/workflows/upstream-behind.yml1개 신설 — 주 1회 upstream 을 read-only fetch 해rev-list --count를 찍고 Job Summary + annotation 으로 보고한다. ★**.rs0줄 ·scripts/무접촉.**왜
2026-09-04 판정(PR #29 · 머지
4b91e8f8)이 트리거를behind ≥ 20으로 못박았는데★그 수를 «재는 주체»가 없었다 —
git grep -lI 'rev-list --count' origin/main -- .github/ scripts/→ 0건.★★알림 방식 — 이 회차 결정의 «대부분» (취향이 아니라 실측)
rust-audit.yaml최근 20 run 중 19 failure · ★대응 티켓 «0건» ·coverage리니지도 만성 red 를 «green 으로» 끝냈다8c1238b5에auditfailure 7건) ⇒ 게이트③의 「착지본 green」 읽기를 흐린다hasIssuesEnabled: false)★**「⒝ 가 최선이다」가 아니라 「⒜⒞ 가 각각 무실효·불가다」가 근거다.**
★⒝ 의 «수동성»은 숨기지 않는다 — 재개 조건이 그 대가를 잰다(아래).
★주기 — 주 1회(
cron: "17 6 * * 1") · 선례를 «베끼지» 않았다behind 20도달(12개월 144커밋/51주)★한 번 돌려서 낸 «오늘의 값»
워크플로 본문의 그 명령을 신선한 클론에서 그대로 실행:
★재개 조건
세는 명령·오늘의 값은
docs/upstream-sync-approach.md§5-B ⒠ 에 박았다(★오늘 = behind 0).경계
★upstream 발신 0(remote 추가 +
fetch뿐 ·permissions: contents: read) ·★자동 발권 0(임계를 넘어도 회차를 열지 않는다 — 발권은 사람) · ★임계 20 무접촉 ·
★
bin/healthcheck·orchestrator 무접촉 · ★S9 미개시 · 파리티 rc=0(검사기가rust.yml만 본다).★등재 repo ⇒ 게이트③은
--merge(스쿼시는 계보를 접는다).