Open Source · Issues
問題發現、修復與同儕審查
GitHub merged PR 之外的貢獻:我回報又自己修好並合併的上游 bug、我回報由他人/社群修復的問題、確認中或待上游處理的 active reports,以及學術同儕審查(JOSS、IEEE)。代表工作在 Overview、完整帳本在 Ledger。
Peer Review · Issues · Cross-Platform
學術同儕審查 · 重點 Issues · 跨平台貢獻
GitHub merged PR 之外的貢獻,分三類:A 學術同儕審查、B 自己回報又自己修好並合併的上游 bug(端到端,共 63 筆 Found & Fixed)、C 我回報但由他人修復或仍在審查中(不計入 merged)。
A · 學術同儕審查
- IEEE WF-PST 2026 — Technical Program Reviewer 學術同儕審查 · 2026 IEEE World Forum on Public Safety Technology(IEEE 公共安全科技世界論壇)· 受 PC member 邀請審查投稿稿件(accepted papers → IEEE Xplore)
- JOSS Peer Review — Metaxy(anam-org/metaxy) Journal of Open Source Software 指派我擔任一件投稿的正式審查人:Metaxy(anam-org/metaxy,GPU 加速 ML 管線的 record-level 特徵 metadata 管理)。JOSS 對同一份稿分兩階段送審——#10141 pre-review、#10449 review。我把審查意見依 JOSS 的評審面向拆成三條、直接開進 metaxy 自己的 repo 追蹤:論文呈現與 metadata(#1191)、宣稱佐證與軟體設計(#1192)、參考文獻封存 DOI(#1193)。
B · 自報自修並合併 — 端到端(共 63 筆 Found & Fixed)
- microsoft/retina — Issue #2678 Issue(Bug · panic)· 任何非 TCP/UDP 的流量(ICMP、SCTP)都會讓 port metric context 打掛 metrics module:這類流量根本沒有 port,metric context 仍照取,整個 metrics module 就 panic · 自行修復 → PR #2679 merged(這類流量一律送出一個 port 值,順帶讓 label cardinality 保持一致,+38/-0)· Issue 以 completed 關閉 · Microsoft 的 eBPF Kubernetes 網路可觀測性
-
Gthulhu/Gthulhu — Issue #132
Issue(Bug · 排程實體錯位)· 節點排程政策只掃 PID(thread-group leader),沒掃真正的排程實體 TID:Linux 排程的單位是 TID,多執行緒工作負載下政策只套到 leader,其餘執行緒完全沒被涵蓋 · 自行修復 → 跨兩個 repo 兩支 PR merged:Gthulhu #135(decisionmaker 改掃
/proctask 執行緒,+393/-82)與 plugin #17(策略以 TID 套用、TGID 只當 fallback,+233/-66)· Issue 以 completed 關閉 -
kubernetes-sigs/kueue — Issue #13988
Issue(Bug · 靜默覆寫)· 名為
pods的 DeviceClass mapping 或 transformation 輸出會被接受,然後靜默被 PodSet 數量取代:設定通過驗證、看起來生效,實際上該名稱的值被 PodSet 數量蓋掉 → 配額記到的東西跟使用者宣告的不是同一個 · 自行修復 → PR #13989 merged(在驗證階段直接拒絕這個保留名稱,+308/-6;並 cherry-pick 至 release-0.18 #14758)· Issue 以 completed 關閉 - kubernetes-sigs/kueue — Issue #14744 Issue(Bug · 測試污染)· CustomMetricLabels 整合測試把共享 metric vector 加寬後沒還原,後面的 spec 一跑就 panic:「Job controller with CustomMetricLabels」區塊改寬了共享的 metric vector、結束時沒重置 → 後續 spec 讀到寬掉的 vector、維度對不上就 panic · 自行修復 → PR #14745 merged(測試結束重置共享 vector,+1/-0)· Issue 以 completed 關閉
-
kubernetes-sigs/cluster-autoscaler — Issue #31
Issue(Bug · nil 解參考 · DRA)· 移除節點時 Pod 若 reference 未追蹤的 DRA ResourceClaim,cluster-autoscaler 會 nil-pointer panic:
findPodClaims在寬鬆路徑(ignoreNotTracked)用continue跳過未追蹤/無名 claim、卻在對應 index 留下 nil 洞;RemovePodOwnedClaims逐一GetClaimId就對 nil*ResourceClaim解參考、CA panic,一個這種 Pod 就能打掛整個 CA loop(DRA 啟用時)· 自行修復 → PR #32 merged(改用零長 slice + append、只加實際找到的 claim,+82/-4)· Issue 以 completed 關閉 - prometheus/prometheus — Issue #19432 Issue(Bug · nil 解參考)· promtool tsdb create-blocks-from rules 遇到含多份 YAML 文件的 rule 檔會 panic:default group loader 只想警告「只處理第一份文件」,卻在 logger 還沒設好時就拿它記錄 → nil logger 解參考、crash · 自行修復 → PR #19433 merged(default group loader 補 nil-safe logger,Closes #19432,+33/-4)· Issue 以 completed 關閉 · CNCF Graduated 監控系統
-
kubernetes-sigs/kueue — Issue #14399
Issue(Bug · nil 解參考)· 沒有 priority 的 pending Workload 讓 visibility endpoint panic:
newPendingWorkload直接解參考*wlInfo.Obj.Spec.Priority,但Workload.Spec.Priority是可合法為 nil 的*int32(無全域預設 priority 時建立的 Workload)→ visibility pending-workloads endpoint nil-deref panic · 自行修復 → PR #14411 merged(改 nil-safe 取值,Closes #14399,+38/-1)· Issue 以 completed 關閉 -
zephyrproject-rtos/zephyr — Issue #115720
Issue(Bug · 狀態機)· esp32 GDMA 把 block_size 為 0 的 block 建成長度 0、owner=DMA 的 descriptor 交給硬體:
dma_esp32_config_descriptor()直接拿 block size、不做檢查,0 長度 block 也被填成 DMA-owned descriptor 送進硬體 · 自行修復 → PR #115723 merged(拒收零長度 block,Closes #115720,+10/-0)· Issue 以 completed 關閉 - zephyrproject-rtos/zephyr — Issue #115504 Issue(Bug · 資源洩漏)· esp32 i2s TX start 失敗弄丟已從 mem-slab 取出的 block:底層 DMA 啟動失敗就直接 return,先前從 slab 取出並入佇列的 block 沒還回去 → 每次失敗漏一塊、TX slab 終究耗盡 · 自行修復 → PR #115523 merged(失敗路徑把 block free 回 slab,Closes #115504)· Issue 以 completed 關閉
-
zephyrproject-rtos/zephyr — Issue #115719
Issue(Bug · NULL 解參考)· esp32 i2s 對不支援的 trigger 方向解參考 NULL stream:trigger 落在未配置的方向時直接取用該方向的 stream 指標 → NULL deref crash · 自行修復 → PR #115721 merged(先擋不支援方向、回
-ENOSYS,Closes #115719)· Issue 以 completed 關閉 - zephyrproject-rtos/zephyr — Issue #115505 Issue(Bug · 狀態機)· esp32 i2s deferred TX timer 在停止後從不取消:DROP/stop 沒取消已排入的 timer → timer 事後才觸發、打到已停的串流或下一段串流 · 自行修復 → PR #115725 merged(stop 時一併取消 timer,Closes #115505)· Issue 以 completed 關閉
- ocudu/ocudu — Issue #643 (GitLab) Issue(Bug · use-after-free)· NTN SIB19 更新把 dangling span 與 request reference 交給延後的 async task:SI messages 建在堆疊、只把非持有 span 與 by-reference 捕獲的 request 交給 DU manager 延後執行;handler 返回、堆疊 unwind 後兩者皆已釋放,後續 DU update 與 MAC reconfiguration 讀已釋放記憶體 · 自行修復 → MR !1153 merged(request 改持有 buffers、by-value+move 端到端傳遞,ASan+mutation testing 驗證,Closes #643、maintainer Piotr Gawłowicz 合併)· Issue 以 completed 關閉
-
kubernetes-sigs/kueue — Issue #13902
Issue(Bug · 併發)· 一個失敗的 errgroup 分支會把其他獨立分支一起取消:LeaderWorkerSet/StatefulSet reconciler 的獨立操作共用同一個
errgroup.WithContext,任一支失敗就 cancel 掉共用 context → 本可獨立完成的其他操作被連累中止 · 自行修復 → PR #13921 merged(讓失敗分支不再取消其他,Closes #13902、+250/-2、kind/bug·release-note、Prow 合併)· Issue 以 completed 關閉 -
zephyrproject-rtos/zephyr — Issue #115502
Issue(Bug · 越界/記憶體安全)· descriptor-exhaustion 檢查對 desc_list 尾端後一格解參考,dma_esp32_reload 還往那寫:
dma_esp32_gdma.c的耗盡檢查越過desc_list尾端一格、dma_esp32_reload()對該越界位置寫入 · 自行修復 → PR #115507 merged(一發雙修,Closes #115502,+168/-15、6 檔)· Issue 以 completed 關閉 - zephyrproject-rtos/zephyr — Issue #115503 Issue(Bug · 控制流)· dma_esp32_stop() 在 memory-to-memory 分支後 fall through,把同一方向停兩次:M2M 分支缺 break/return、控制流落到下一段 → 同一 DMA 方向被停兩次 · 自行修復 → PR #115507 merged(同一支、一發雙修,Closes #115503)· Issue 以 completed 關閉
-
open-telemetry/opentelemetry-cpp — Issue #4375
Issue(Bug · data race)· HttpOperation::Abort 從取消執行緒寫 curl easy handle,與 IO 執行緒同時驅動同一 handle 競爭:
Abort()在呼叫CancelSession()的執行緒上跑curl_easy_setopt,IO 執行緒卻同時在該 easy handle 上驅動傳輸 · 自行修復 → PR #4392 merged(改為不跨執行緒寫 easy handle、走事件通道取消,Fixes #4375、+86/-22、kind/bug)· Issue 以 completed 關閉 -
kubernetes-sigs/kueue — Issue #14012
Issue(Bug · nil panic)· Workload validating webhook 在 QuotaReserved condition 沒有 status.admission 時 panic:
ValidateWorkload用HasQuotaReservation判斷後就進validateAdmission讀 admission,但那個 condition 可以在沒有 admission 的情況下被設 → 對 nil admission 解參考、webhook panic · 自行修復 → PR #14014 merged(不因 condition 宣稱就讀 admission,Closes #14012、+83/-2、kind/bug·release-note、Prow 合併)· Issue 以 completed 關閉 -
open-telemetry/opentelemetry-cpp — Issue #4389
Issue(Bug · deadlock)· resetMultiHandle 從 curl multi error 復原時自我死鎖在 sessions_m_:
resetMultiHandle()整個函式持有sessions_m_,中途又呼叫同執行緒會再取該鎖的CancelSession()(→CleanupSession)→ 同執行緒重入、死鎖 · 自行修復 → PR #4394 merged(把鎖範圍縮到快照那段,Fixes #4389、+47/-1、kind/bug)· Issue 以 completed 關閉 -
RocketPy-Team/RocketPy — Issue #1042
Issue(Bug · 可重現性)· 感測器量測雜訊用 process-global NumPy RNG、無法設種子(不可重現):
Sensor/InertialSensor/ScalarSensor的白噪與 random-walk bias 漂移、以及GnssReceiver的位置/高度精度都從全域 NumPy RNG 抽 → 給了 seed 也重現不了 · 自行修復 → PR #1052 merged(讓量測雜訊可逐實例設種子,+279/-19;#1052 body 明指本 issue、由本人以 completed 關閉,GitHub 未自動 link 故其 closes 為空)· Issue 以 completed 關閉 -
open-telemetry/opentelemetry-cpp — Issue #4398
Issue(Bug · data race)· curl retry path 共用一個 jitter generator(shared mutable static)→ 多執行緒重試相互競爭:
HttpOperation::NextRetryTime()的 backoff jitter 從 staticstd::mt19937抽樣,多個重試同時抽樣即資料競爭(-fsanitize=thread確認)· 自行修復 → PR #4399 merged(改為 per-thread generator,Fixes #4398 的 data race 部分、+38/-3、kind/bug)· Issue 以 completed 關閉(同 issue 另列兩點屬 code-reading 觀察、非確認 bug) -
kubernetes-sigs/dra-driver-cpu — Issue #254
Issue(Bug)· 註冊逾時吞掉 kubelet 最後一次的拒絕原因:driver 在
pkg/driver/driver.go以 30 秒輪詢等註冊,只回status.PluginRegistered、從不 surfacestatus.Error→ kubelet 持續回報 rejected 時,呼叫端只看到逾時、拿不到 kubelet 給的理由(診斷困難)· 自行修復 → PR #291 merged(把 kubelet 的拒絕理由一併回報,Closes #254,+161/-9、kind/bug、Prow 合併)· Issue 以 completed 關閉 -
kubernetes-sigs/kueue — Issue #14043
Issue(Bug · DRA · 配額會計)· DRA extended-resource 配額被記到 scheduler 未必會 allocate 的 DeviceClass:多個
DeviceClass宣告同一個spec.extendedResourceName時,resolveContainerExtendedResources取「List 回傳中第一個帶deviceClassMappings的 class」的 quota key,而非 scheduler 實際會 allocate 的那個 → 配額記錯 class · 自行修復 → PR #14044 merged(改為對 scheduler 會 allocate 的 class 計費,Closes #14043,+209/-33、kind/bug·release-note、Prow 合併)· Issue 以 completed 關閉 -
kubernetes-sigs/kueue — Issue #13998
Issue(Bug · 配額會計 · int64)· 正的 transformation 乘積 wrap 成負 request、再被 floor 到 0:
ResourceValue只守 CPU 路徑(走SafeMilliValue),其他資源直接q.Value()→ 超出 int64 範圍的量被靜默截斷(SafeValue就是為此存在、註解明講「避免resource.Quantity.Value()對超 int64 量的靜默截斷」)· 自行修復 → PR #14042 merged(改為每個資源都 clamp,Closes #13998,+91/-4、kind/bug·release-note、Prow 合併;release-0.18 backport #14113 計入 merged、非新 FF)· Issue 以 completed 關閉 - kubernetes-sigs/kueue — Issue #13985 Issue(Bug · 配額會計)· 用負係數寫的 per-unit allowance 被花到產生它的 transformation 之外:resource transformation 把 input 乘上各 output 係數並以該名字累加;負係數是「每單位額度(allowance)」的寫法,charge 應是請求超出額度的部分。但該額度會外溢、被算到不該碰的資源上 → 配額算錯 · 自行修復 → PR #13986 merged(把「transformation 產生的量」與「PodSet 請求的量」分開,Closes #13985,+313/-26、kind/bug·release-note、Prow 合併;release-0.18 backport #14033 計入 merged、非新 FF)· Issue 以 completed 關閉
-
kubernetes-sigs/kueue — Issue #13992
Issue(Bug · 配額會計)· Retain+multiplyBy 保留的是「乘積」而非「原請求量」:
applyResourceTransformations在multiplyBy設定時把迴圈的inputQuantity重新賦值成乘積,接著Retain又把這個已被乘過的值寫回 input 自己的名字下 → 被保留的量變成乘積、配額被灌大 · 自行修復 → PR #13986 merged(同一支 PR、一發三修,Closes #13992)· Issue 以 completed 關閉 -
kubernetes-sigs/kueue — Issue #13990
Issue(Bug · 配額會計 · 非決定性)· transformation output 與請求資源同名時,依 map 迭代順序被保留或丟棄:
applyResourceTransformations累加 transformation 的 outputs,卻用 assignment 寫回被保留/未轉換的 inputs → 當某 output 名字與請求資源同名,最後留下誰取決於 map 迭代順序、配額被保留或丟棄 · 自行修復 → PR #13986 merged(同一支 restructure 一併修好;#13986 cross-reference 本 issue、由本人以 completed 關閉,GitHub 未自動 link 故 #13986 的 closes 只列 #13985/#13992)· Issue 以 completed 關閉 - RocketPy-Team/RocketPy — Issue #1101 Issue(CI)· fork 來的 PR 每次都跑不了 Populate Changelog:GitHub 對 fork PR 扣留 secrets,changelog job 因而一律失敗 · 自行修復 → PR #1112 merged(讓 changelog job 也對 fork PR 執行,同一 PR 亦關閉維護者的自動化 issue #905)· Issue 以 completed 關閉
- RocketPy-Team/RocketPy — Issue #1096 Issue(文件)· CustomSampler 文件教的 reset_seed 其實什麼都沒做:文件示範一個無效的 reset_seed 用法、誤導使用者 · 自行修復 → PR #1097 merged(文件改成有效做法)· Issue 以 completed 關閉
- RocketPy-Team/RocketPy — Issue #1078 Issue(測試穩定性)· test_flight_animation_export_gif 間歇性 bus error(flaky):該測試偶發崩潰、汙染 CI 訊號 · 自行修復 → PR #1100(+#1098)merged · Issue 以 completed 關閉
-
RocketPy-Team/RocketPy — Issue #1093
Issue(Bug)· stochastic 模型裡每個 CustomSampler 都用同一個 seed 重置:兩個以
default_rng建的 sampler 從相同狀態出發、抽出逐位元相同的值(兩個不同均值/變異的 Gaussian 都吐0.466220770577340)→ 掃兩個參數實為掃一個、報出的相關性是 seeding 假象。改為每個 sampler 依 model seed + input 名字派生獨立子流(以名字為 key、crc32 求跨行程穩定)· 自行修復 → PR #1102:整條 7-commit branch 已併入develop(PR 顯示 closed 而非 merged、走 merge 鈕以外路徑,commit 如 6d66bde5 可查)· Issue 以 completed 關閉 -
RocketPy-Team/RocketPy — Issue #1094
Issue(Bug)· 抽樣出的降落傘幾何從未進到 StochasticRocket 建的火箭:
StochasticParachute.create_object()依完整抽樣建出Parachute(10 個欄位),StochasticRocket.create_object()隨即丟棄、只取其中 6 個欄位重建 → 抽樣到的降落傘幾何沒進到實際模擬飛的火箭 · 自行修復 → PR #1098 merged(+104/-9、maintainer Gui-FernandesBR 合併)· Issue 以 completed 關閉 -
RocketPy-Team/RocketPy — Issue #1095
Issue(Bug)· StochasticParachute 拒絕自己 docstring 承諾可傳的 callable trigger:
_validate_trigger文件說 trigger 可傳函式,驗證卻只認數值/字串、把 callable 擋掉 · 自行修復 → PR #1103 merged(+150/-9、maintainer Gui-FernandesBR 合併)· Issue 以 completed 關閉 -
RocketPy-Team/RocketPy — Issue #1107
Issue(Bug · 封裝)· 宣告的相依下限低到裝了也 import 不了套件:
setup寫numpy>=1.13、scipy>=1.0,照這最低相依裝起來根本 import 不了 RocketPy · 自行修復 → PR #1108 merged(把下限提到真正跑得起來的版本、maintainer Gui-FernandesBR 合併)· Issue 以 completed 關閉 -
RocketPy-Team/RocketPy — Issue #1099
Issue(CI)· docs build workflow 對 develop 的 PR 不會跑:只在 PR→
master觸發,但近期多數 PR 進develop(近 30 筆有 25 筆)→ 文件破圖要到進 master 才被抓到 · 自行修復 → PR #1104 merged(讓 PR→develop 也 build 文件、maintainer Gui-FernandesBR 合併)· Issue 以 completed 關閉 -
kubernetes-sigs/kueue — Issue #13913
Issue(Bug · area/core)· 正在被逐出的 workload slice 被誤選為 chain 的 active slice:
FindLatestActiveWorkload回傳仍持配額保留的最新 slice,但 eviction 是兩段寫入(先設Evictedcondition、後釋放保留),夾在中間觀察到的 slice 仍回報有保留 → 可能回傳配額正在釋放的 slice。elastic job ungater 拿它的 granted counts 當解除ElasticJobSchedulingGate的上限 → 放行過多 pod(舊 slice 給 1、evicting slice 給 3、兩個 gated pod 原本兩個都放行;回歸測試未修 count=2、修後 count=1)。附帶修normalizeActiveSlices同秒 slice 排序與FindNotFinishedWorkloads(#12931)不一致 · 自行修復 → PR #13914 merged(+256/-11、5 檔、kind/bug · release-note、Closes #13913、lgtm+approved、Prow 合併)· release-0.18 backport #13925 merged(計入 merged、比照 #13872 backport;非新 Found & Fixed)· Issue 以 completed 關閉 -
kubernetes-sigs/kueue — Issue #13778
Issue(Bug · area/integrations)· Workload slicing 在相容路徑丟失 WorkloadPriorityClass label 變更:對 elastic Job,pod set 數量沒變時改
kueue.x-k8s.io/priority-classlabel 不會更新既有 Workload:ensureOneWorkload的 slicing 分支一判定相容就 return,落在唯一套用優先權轉換的UpdateWorkloadPriority之前,label 變更被接受卻無效、無事件(合法 class 改成另一個合法 class 也照吞)· 自行修復 → PR #13780 merged(+1020/-11、kind/bug · release-note,Closes #13778,maintainer mimowo approved)· backport:release-0.19(robot #13871;該 CP 誤把已發布的 exportedUpdateWorkloadPriority簽名改成 variadic、破壞 0.19.0 API,本人 #13876 還原簽名、variadic 形式改走 unexported helper,merged)、release-0.18 由本人手動 cherry-pick(auto-CP 衝突後改workloadpatching.PriorityClassName→workload.PriorityClassName)#13872 merged(同樣把 exported 簽名帶成 variadic,本人 #13877 還原 0.18 API、merged)· Issue 以 completed 關閉 -
kubernetes-sigs/dra-driver-google-tpu — Issue #26
Issue · prepareDevices 把 TPU 專屬檢查套到別 driver 的 allocation result:一個
ResourceClaim可由多個 driver 一起滿足,prepareDevices卻對整包Results都跑 full-chip 數、allocatable查找與 container edits → claim 同時含別 driver 裝置時,完整 TPU 配置反被拒、錯誤訊息還文不對題 · 自行修復 → PR #25 merged(只處理result.Driver == DriverName的 result,把官方 dra-example-driver 本就有的守衛補回,Fixes #26,kind/bug、Prow 合併)· Issue 以 completed 關閉 -
IBM/power-dra-driver — Issue #322
Issue · prepareDevices 的 result 迴圈對別 driver 的裝置回 not allocatable:config 路徑的
GetOpaqueDeviceConfigs早就跳過別 driver,result 迴圈卻對每筆 result 都查自家allocatable→ 混用兩 driver 的 claim 整包not allocatable、pod 起不來 · 自行修復 → PR #323 merged(result.Driver != DriverName就跳過,Fixes #322,maintainer prb112 合併)· Issue 以 completed 關閉 -
open-telemetry/opentelemetry-cpp — Issue #4288
Issue · HttpServer 在 handleConnectionClosed() 以
map::erase銷毀 Connection 後仍存取它(use-after-free):m_connections是std::map<Socket, Connection>,handler 回傳 -1 觸發handleConnectionClosed()的 erase 後,processRequest()未 return 就續寫conn.response.*、組 status line、對已關 socketsendMore· 自行修復 → PR #4289 merged(Fixes #4288)· Issue 以 completed 關閉 -
open-telemetry/opentelemetry-cpp — Issue #4296
Issue · Elasticsearch 同步匯出可能因遺失通知永久阻塞:
ResponseHandler::waitForResponse()在無述詞的cv_.wait(lk)上等待;OnResponse在釋放鎖後才notify_all,通知早於 waiter parking 即遺失、匯出執行緒永久阻塞(OnEvent失敗路徑更未持鎖、未記任何狀態,Destroyed亦不通知不記錄),spurious wakeup 又把在途請求誤報失敗 · 自行修復 → PR #4298 merged(改於鎖內記錄明確CompletionState、以述詞等待,Fixes #4296,maintainer Marc Alff 合併)· Issue 以 completed 關閉 -
open-telemetry/opentelemetry-cpp — Issue #4291
Issue · SocketAddr(char const *) 讀取未初始化位元組:host 複製進未初始化的
char[16]並於固定索引截斷,凡 host 短於 15 字元inet_pton即讀到不定值,髒堆疊上把1.2.3.4:80靜默解析成0.0.0.0:80· 自行修復 → PR #4292 merged(Fixes #4291,同 PR 一併修 #4290,屬ext/http稽核 #4287)· Issue 以 completed 關閉 -
open-telemetry/opentelemetry-cpp — Issue #4290
Issue · SocketAddr(char const *) 在 Windows 越界寫:host 複製迴圈以
sizeof(buf)(位元組數)為界卻索引WCHAR[200]陣列,逾 200 字元的位址最多寫穿 400 位元組 · 自行修復 → PR #4292 merged(兩平台改用單一inet_pton解析器+valid/invalid 契約,Fixes #4290、#4291、屬ext/http稽核 #4287、maintainer Marc Alff 合併)· Issue 以 completed 關閉 - kubernetes/kubernetes — Issue #140436 Issue · DRA structured allocator 在拒絕或回溯候選 device 時,未回滾已保留的 counters 與 constraints,造成 reserved-state 洩漏(sig/node · wg/device-management)· 自行修復 → PR #140431 merged 進 Kubernetes 核心(kind/bug · release-note)· Issue 以 completed 關閉
- kubernetes/kubernetes — Issue #140434 Issue · DRA structured allocator 的 counter cache 以 pool 名稱為 key,導致不同 driver 的同名 pool 互相碰撞(sig/node · wg/device-management)· 自行修復 → PR #140435 merged 進 Kubernetes 核心(kind/bug · release-note)· Issue 以 completed 關閉
- kubernetes/kubernetes — Issue #140433 Issue · DRA structured allocator 會把共用 counter 重複計算:當一個 allow-multiple 裝置只以 share ID 被記錄下來時,allocator 沒認出它已經是既存配置,於是又扣了一次同一個 counter(sig/node · wg/device-management)· 自行修復 → PR #140437 merged 進 Kubernetes 核心(kind/bug · release-note · sig/scheduling + sig/node)· Issue 以 completed 關閉
-
kubernetes/kubernetes — Issue #140441
Issue · consumable-capacity 的 roundUpRange 對大請求 int64 溢位:
min+step*n溢位成負,配額會計因此把一個實際上無法滿足的 device 判成可配置(sig/node · wg/device-management)· 自行修復 → PR #140442 merged 進 Kubernetes 核心(kind/bug · release-note)· Issue 以 completed 關閉 -
kubernetes/kubernetes — Issue #140472
Issue · 已修好的除零 panic 又回來了:#139653 報過、#139698 修過的
validRange.step除零,在 step 為2^64的倍數時重新出現:那道守衛用的是精確的Quantity.Sign(),但後續算術用的是超出 int64 就截斷的Quantity.Value(),於是同一個值Sign()==1通過守衛、Value()==0直接除零(sig/node · wg/device-management)· 自行修復 → PR #140666 merged 進 Kubernetes 核心(kind/bug · release-note)· Issue 以 completed 關閉 -
cncf-tags/container-device-interface — Issue #320
Issue · 單字元的 vendor 或 class 名稱會讓 parser slice-bounds panic:
validateVendorOrClassName對name[1:len(name)-1]沒有len(name)==1的守衛,於是算出低界大於高界的name[1:0];報告中指出兄弟函式ValidateDeviceName本來就有同一道守衛,因此是疏漏而非刻意拒絕 · 自行修復 → PR #321 merged · Issue 以 completed 關閉 - intel/intel-resource-drivers-for-kubernetes — Issue #73 Issue · QAT kubelet plugin 的 Unprepare 在 multi-PF claim 時中途 return、per-device 反註冊 checkpoint,留下未釋放的 device(資源洩漏/生命週期缺陷) · 自行修復 → PR #74 merged(Fixes #73)· Issue 以 completed 關閉
- kai-scheduler/KAI-Scheduler — Issue #1873 Issue · DRA GPU 數量加總溢位會低估佇列需求,擋掉本應成立的 GPU reclaim(受害的不是那個過大的工作負載,而是同佇列裡被抵銷掉需求的正常工作負載)· 自行修復 → PR #1874 merged · Issue 以 completed 關閉
- kubernetes-sigs/dranet — Issue #255 Issue · MergeNetworkConfig 只用 destination 去重,導致同一 destination 但不同 routing table 的路由被丟掉 · 自行修復 → PR #256 merged(kind/bug · release-note,Fixes #255)· Issue 以 completed 關閉
- kubernetes-sigs/dranet — Issue #253 Issue · route/rule 驗證放行 IPv4 與 IPv6 混用的設定,但 kernel 實際會拒絕(驗證層與核心行為不一致)· 自行修復 → PR #254 merged(kind/bug · release-note,Fixes #253)· Issue 以 completed 關閉
- kubernetes-sigs/dranet — Issue #250 Issue · 診斷 relocated kubelet --root-dir 致 dranet 註冊失敗(硬編 /var/lib/kubelet plugin 目錄),並與相似 #19 區隔 · 自行修復 → PR #251 merged
- kubernetes-sigs/kueue — Issue #12896 Issue · DRA device count 溢位導致超額 Workload 被 admit、並汙染 ClusterQueue 已用配額 · 自行修復 → PR #12897 merged · Issue 以 completed 關閉
- kubernetes-sigs/kueue — Issue #12908 Issue · counter-charge 乘法溢位(#12896 的 follow-up,再揪出配額計算的乘法溢位)· 自行修復 → PR #12909 merged · Issue 以 completed 關閉
-
ocudu/ocudu — Work Item #577(GitLab)
Issue · NTN 的
--k_mac是唯一沒有 CLI 範圍檢查的參數(3GPPkmac-r17定義為 INTEGER 1..512;其餘 NTN CLI 參數如cell_specific_koffset、ta_common皆有 CLI::Range)· 自行修復 → MR !1045 merged 進 dev(Fixes #577)· Work item 已結案 - ocudu/ocudu — Work Item #579(GitLab) Issue · NTN 的 ta_common + ta_common_offset 之和可溢出 ASN.1 taCommon-r17 合法範圍(0..66485757)且無任何驗證(3GPP R17 NTN 定時提前)· 自行修復 → MR !1047 merged 進 dev(校驗總和落在範圍內,Fixes #579)· Work item 已結案
- ocudu/ocudu — Work Item #658(GitLab) Issue · MAC · sib_pdu_assembler 在 remove-then-re-add 未變內容後把 SI 訊息廣播成全 0(encoder 向量每次 reconfig 縮放、content cache 只單向增長 → 兩向量生命週期不一致致 null encoder)· 自行修復 → MR !1162 merged 進 dev(修正 SI buffer 快取生命週期並補回歸測試,Closes #658)· Work item 已結案
-
kubernetes-sigs/cluster-api-provider-aws — Issue #6129
Issue · 把既有的
spec.secondaryControlPlaneLoadBalancer設為 null 移除時,AWSCluster 的 validating webhook 以 nil pointer dereference panic(ValidateUpdate只在新舊值皆為 nil 時跳過該組,oldlb != nil、newlb == nil因而走進既有 LB 分支解參考newlb)· 自行修復 → PR #6130 merged(kind/bug · release-note,改為明確拒絕移除並回傳驗證錯誤)· Issue 以 completed 關閉 -
volcano-sh/volcano — Issue #5620
Issue · capacity plugin 的 DRA 配額會計直接在原生
int64上加總使用者可控的 device count,溢位後把超額 Workload 判成可配置(與已 merged 的 kueue #12896 同一 int64 溢位家族)· 自行修復 → PR #5621 merged(新建 SaturatingAdd/Mul · CNCF Incubating)· Issue 以 completed 關閉 -
akhenakh/sgp4 — Issue #10
Issue ·
FindPosition對 deep-space 軌道靜默回傳 err == nil 的錯誤結果(SGP4/SDP4 邊界未拒絕)· 自行修復 → PR #11 merged(拒絕 deep-space 靜默錯誤;另 #12 Vallado SGP4-VER 正典驗證)· Issue 以 completed 關閉 -
kubevirt/kubevirt — Issue #18541
Issue · vGPU 的
countConfiguredMDEVRamFBs把「present 但enabled未設」的 ramFB 當成關閉,與SetDefaults_FeatureState(未設補 true)矛盾,導致 VM/VMIRS 接受但 VMI 被拒 · 自行修復 → PR #18542 merged(kind/bug · release-note · CNCF Incubating)· Issue 以 completed 關閉 - kubernetes-sigs/dra-driver-cpu — Issue #253 Issue · dracpu 只處理 SIGINT、不處理 SIGTERM,正常 Pod 終止(kubelet 送 SIGTERM)時關閉清理不會執行 · 自行修復 → PR #257 merged(攔截 SIGTERM 讓 graceful shutdown 正常執行)· Issue 以 completed 關閉
C · 我回報、上游據以修復並合併,或仍在審查中(誠實揭露,不計入 merged)
下列為代表性回報與審查中修正;系統性的成群缺陷收在 Audits。完整回報清單(含未逐一列出的長尾)見 GitHub。
-
我回報、由社群其他貢獻者修復並合併(RocketPy 7 則、kueue 5 則、test-infra 1 則、scheduler-library 1 則、spinifex 1 則)
Issue(回報 → 社群修復)· 我找出並回報、由專案其他人提 PR 修好合併的缺陷——「找到 bug、促成上游修復」的貢獻,修正非本人提交、不計入 merged/FF:RocketPy parachute trigger 每時間節點評估兩次(#1086)、coverage 六分之五 matrix 報告被丟棄(#1088)、parachute pressure noise 不在 Monte Carlo seed tree 內(#1091)、MonteCarlo 輸入輸出非原子寫入(#1110)、
dict_generator連initial_solution這種非隨機的 tuple 也一併抽樣(#1109,以 #1122 修)、MonteCarlo 每次模擬把 flight dictionary 抽三次導致記錄下來的輸入與實際飛行不符(#1090,以 #1126 修)——以上由 thatrandomasiandev 修;parachute 拒絕 numpy 整數 trigger 卻接受 float(#1106,abhi-0203 修)。kueue pod_scheduling_gate_removal metric 缺 replica_role label(#14457,gangadhar-res 修)、負的 pod_scheduling_gate_removal_seconds 觀測值未夾為零(#14456,Antrikshgwal 以 #14474 修)、MPIJob ValidateUpdate 排序一個它並不擁有的 slice(#14476,abdelrahmanmagdii 修)、KubeRay presubmit 測到 raymini 版本更新後過期的 image(#14518,維護者 tenzen-y 以 #14523 修)、DRA extended-resource resolver 把負的 request 保留成負的 logical charge(#14216,pujitha24 以 #14367 修)。另 kubernetes-sigs/scheduler-library 的過期ClusterSnapshotwrapper 可以改到共享 snapshot、而下一次 refresh 不會察覺(#9,維護者 brejman 以 #19 修;本人自提的 #11 於其合併後撤回);另 kubernetes/test-infra 的 DinD 委派讓 Go 的 container-awareGOMAXPROCS看不到實際生效的祖先 CPU quota(#37727,stmcginnis 以 #37733 修);另 mulgadc/spinifex 的 insomniacslk/dhcp pin 早於 nclient4 ReadFrom 修復、我回報後由維護者 juliansommer 修(#803)· 不計入 merged/FF -
zephyrproject-rtos/zephyr — Issue #114739
Issue(Bug · 嵌入式/顯示驅動)· MIPI DBI Type A(6800)模式在 dcnano_lcdif 永遠對不到輸出格式:
mcux_dcnano_lcdif_dbi_configure()的format_map[]拿 Type A 常數當寬度 key,任何 Type A(6800)模式都解析不出 output format · 由 maintainer(NXP)以 PR #115197 修復、Issue 以 completed 關閉、不計入 merged - kubernetes-sigs/kueue — Issue #13933 Issue(Docs · RBAC)· external integration 指南給的是 core/v1 Event RBAC,但 jobframework 實際透過 events.k8s.io 記事件:照指南設 RBAC 的自訂整合會因權限對不上而記不了事件 · 由社群 PR #14021 修復、Issue 以 completed 關閉、不計入 merged
- kubernetes-sigs/kueue — Issue #13987 Issue(Docs · KEP 一致性)· KEP-2941 寫 DeviceClass mapping 唯一性為絕對、把放寬列為未來工作,但 validator 早已實作放寬:文件與實作不一致、誤導讀者 · 由社群 PR #13993 修復、Issue 以 completed 關閉、不計入 merged
-
kubernetes-sigs/cluster-autoscaler — Issue #37
Issue(Bug · kind/bug · wg/device-management · needs-triage)· DRA Provider snapshot 直接共用 informer 的 ResourceClaim 指標,改 snapshot 會寫進 informer 快取:
Provider.Snapshot從 ResourceClaim lister 取指標後直接存進 snapshot(沒深拷貝),但 informer lister 回傳的物件是共享、契約上須當唯讀。未 fork 的 snapshot 其 base layer 即 top layer,ensureClaimWritable因而把 base claim 當成已可寫、原封回傳 → 對 snapshot 的任何修改直接改到 informer 快取裡的共享*ResourceClaim、污染其他 consumer 與後續 reconcile。應在放入 snapshot 前深拷貝 · 回報中、待修,不計入 merged -
kubernetes-sigs/karpenter — Issue #3221
Issue(Bug · needs-triage)· DRA device-allocation controller 把 admin-access 結果當一般 occupancy 計入:Karpenter 把已配置
ResourceClaim的DeviceRequestAllocationResult依(driver, pool, device)摺進 per-device occupancy(獨佔或已耗用容量),但contributionsForResults(pkg/controllers/dynamicresources/deviceallocation/controller.go)從頭到尾沒讀result.AdminAccess。admin-access 配置(feature gateDRAAdminAccess)依 API 定義「無視所有一般 claim 的存取模式與資源配置」、只授權存取而不保留或耗用裝置 → 卻被當成一般佔用累加,controller 因而高估裝置 occupancy、可能誤判節點已滿而做出錯誤的 provisioning/consolidation 決策 · 回報中、待修(needs-triage),不計入 merged -
kubernetes-sigs/kueue — Issue #13820
Issue(Bug · area/integrations)· UpdateWorkloadPriority 每個 Workload 各自 resolve WorkloadPriorityClass,一次 reconcile 可寫進同一 class 的不同值:
UpdateWorkloadPriority→PrepareWorkloadPriority→ExtractPriority每次都自己Get一遍,N 個 Workload 就 N 次讀取、彼此不共享結果。LeaderWorkerSet 最尖銳:parallelize.Until把更新 fan-out 成 N 個 goroutine 併發各自 resolve,class 值若在 fan-out 途中變動,各 component 就被寫成同一 class 的不同值;一般路徑是同形狀的 sequential 版(#13780 的 scale-up 又多一處:quota-reserved slice 與待替換 replica 在同一 reconcile 一起更新)。且不會自癒:WorkloadPriorityClassReconciler靠 class 名稱 list,發散後雖仍同名、卻得等下一次該 class 值更新才被一起拉回 · 承 #13778/#13780 同一子系統的更深一層;自修 → PR #13904(改為每次 reconcile 只解析一次 LWS 優先權、+310/-32、kind/bug·release-note)審查中(Closes #13820);另 #13866:WPC 值變更趕在任何 Workload reference 該 class 之前被 reconcile → 該次無事可做、更新被吃掉;Workload 事後帶自查的舊值進來、controller 不 watch Workload,兩者再也對不上、停在過時 priority · 自修 → PR #13920(加上對 Workload 的 watch:開始 reference 某 class 的 Workload 入列該 class、由既有 reconcile 修值;整體比對 reference、僅在 reference 變動時入列以避開自身寫入,用 event handler 而非 map function 以免把離開的 class 也入列、+314/-1、3 檔、kind/bug·release-note)WIP · 不計入 merged -
open-telemetry/opentelemetry-cpp — Issue #4339
Issue(Bug)· OTLP ForceFlush 可能在請求仍在途時回報成功、且等的是 exporter timeout 而非 caller 剩餘時間:
OtlpGrpcClient::ForceFlush的 wait loop 對「任一通知」就break(wait_for != timeout在被喚醒時為真),而 loop 條件才是唯一讀finished_request_counter的地方、被這個 break 跳過 → 多個在途請求只要一個完成就結束等待、還回傳剩餘時長而非 predicate;兩個 client 又都以 exporter 的export_timeout為界、不理會 caller 傳入的截止時間(overrun)· 自修 → PR #4357(+78/-12)審查中(maintainer owent 已確認反向比較;改以 loop 條件決定、wait 以 caller 剩餘時間為界;屬部分修正、尚未 close #4339,不計入 merged) -
open-telemetry/opentelemetry-cpp — Issue #4360
Issue(Bug · triage/accepted)· 生產用 curl HTTP client 會「回報失敗卻仍把請求送出」、並對一次操作送出兩個 terminal event(
ext/src/http/client/curl/,每個 HTTP exporter 都跑這支):三處契約違反:(1) gzip 失敗時OnEvent(CreateFailed)後沒return,直接落到SendAsync、把可能只壓一半、沒Content-Encoding標頭的 buffer 送出去;(2)Cancelled與OnResponse可同時觸發、export 結算兩次;(3) 一次 setup 失敗同時派ConnectFailed與CreateFailed、數 terminal state 的 handler 數到兩次。提案立契約:每次SendRequest恰一個 terminal event、送出一個後不再有 bytes 上線 · 自修 → PR #4363(+105/-6)merged(Marc Alff 合併,先收斂 cancelled/response-after 的重複結算;#4360 仍 open、其餘兩處 gzip fall-through 與雙 setup event 待修)· 不計入 merged 的是 issue 本身,#4363 已計入 Merged(見 Ledger) -
ocudu/ocudu — Issue #726(GitLab)
Issue(Bug · 安全/DoS · Open Fronthaul)· OFH U-plane 解碼器遇到不支援的壓縮型別時整個 gNB process 退出:dynamic U-plane decoder 對使用未支援 compression type 的 section 直接 crash → 一個來自 fronthaul 的畸形上行封包就能讓整個 gNB 停擺(crafted packet 即可觸發,dev branch commit
b81cbcec2f重現)· 自行修復 → MR !1296(對不支援的壓縮型別直接丟棄該 U-plane 訊息、不再 crash,審查中,Closes #726)· 不計入 merged - apache/airflow — Issue #71748 Issue(Bug · Airflow cncf-kubernetes provider)· KubernetesPodOperator 過了 durable reattach 的 uid 檢查後,仍只靠 pod name/namespace 運作:uid 只在從 task state store 讀回 identity 時檢查一次(關掉 reattach 情境),但之後 operator 仍以 name+namespace 操作 → 原 pod 消失、同名新 pod 頂上時,後續操作打到錯的 pod(承 #71743、關聯 #71744)· apache/airflow 屬 Apache(ASF)· 回報中、待修,不計入 merged
-
kubernetes/kubernetes — Issue #141212
Issue(Bug · sig/scheduling · wg/device-management)· per-device nodeSelector 有多個 term 時通過驗證、卻中止整個排程週期:
Device.NodeSelector契約要求「恰一個 term」,slice-level 的ResourceSliceSpec.NodeSelector在 validation 有強制、device-level 卻沒有 → 畸形的多-term device selector 通過 API validation;structured allocation 選到該裝置時 allocator 以 hard error 拒絕,但該錯誤沒被ErrFailedAllocationOnNode包裝,DynamicResources Filter plugin 因而回傳 framework Error(而非只拒當前節點)→ 取消其餘節點搜尋、中止當前排程週期,且畸形 ResourceSlice 未修正前每次 retry 都重現 · 回報中、待修,不計入 merged -
kubernetes-sigs/scheduler-library — 可變快照一致性稽核(#6/#7/#8/#9/#12)
Issue(Bug 群 · scheduler/snapshot)· 可變 ClusterSnapshot 的 add/remove/rollback/Unpreempt 污染共享快照,undo error 被吞卻回報成功:
RestoreState吞掉 undo error 又照樣還原(#12)、rollback/Unpreempt 回報成功卻沒真的還原(#7)、add/remove 遺留 snapshot-wide affinity(#8)、stale ClusterSnapshot wrapper 可寫進共享 store(#9)、採用上游 framework constructor 會改變語意(#6)· 回報中、待修,不計入 merged - koordinator-sh/koordinator — reservation controller 稽核(#3145/#3148/#3149/#3151/#3152/#3154/#3157/#3158) Issue(Bug 群 · scheduler/reservation)· koordinator reservation 一整叢生命週期與一致性缺陷:terminating 或已被取代的 Reservation 仍可被排程並 bound 到 Available(#3154);同名 replacement 認到 stale UID-qualified workqueue key(#3157)、並把舊 reserve pod 孤兒留在排程佇列(#3152);reserve pod cycle 不帶 revision、stale node decision 被存到當前 identity 下(#3158);controller 在其 pod index 反映觸發事件前就先動作(#3151);reservation plugin cache 更新與依賴它的 wake-up 之間無 happens-before(#3148);resync 無法停用或停止(#3149);Reservation plugin 漏註冊其餘 QueueingHint event source(#3145)· 回報中、待修,不計入 merged
-
zephyrproject-rtos/zephyr — i2s/mipi_dbi/dma 驅動稽核(#113310/#113333/#114739/#114741/#115250/#115251/#115499/#115502/#115503/#115504/#115505)
Issue(Bug 群 · drivers)· Zephyr 驅動一叢資源生命週期與設定缺陷:esp32 i2s 每次 DROP 洩漏 mem-slab block、之後
i2s_buf_write()永久 hang(#113310);i2s_buf_write()文件寫-EAGAIN/-ENOMEM卻以K_FOREVER配置、TX slab 耗盡就靜默且不可 kill 地 hang(#113333);esp32I2S_DIR_BOTH的 fatal error 留另一方向仍在跑、PREPARE 回 READY 卻沒停(#115499);mipi_dbiMIPI_DBI_SPI_CONFIG_DT()以 controller-wide 檢查設cs_is_gpio、卻 per-device 索引 GPIO(#115251);dcnano_lcdif Type A (6800) 模式永遠比不到format_map(#114739);mipi_dbi api 測試被 node label typo 到處濾掉(#114741);compliance 沒檢查 public header 的 designated initializer 是否照 C++ 宣告順序(#115250);esp32 DMA 的 descriptor 耗盡檢查解參考超出陣列尾端一格、dma_esp32_reload()還寫進那一格(#115502)、dma_esp32_stop()在 M2M 區塊後 fall through、同一方向被停兩次(#115503);esp32 i2s TX start 失敗弄丟已取出佇列的 mem-slab block(#115504)、deferred TX timer 從不取消、DROP 後或下一段串流才觸發(#115505)· #115502/#115503/#115504/#115505 已自行修復並合併(#115507/#115523/#115725,計入 Found & Fixed、見上方 B 組),其餘回報中、待修,不計入 merged -
kubernetes/kubernetes — DRA allocator 稽核額外八則(#140424/#140468/#140797/#140799/#141103/#141117/#141214/#141216)
Issue(Bug 群 · sig/node · wg/device-management)· Kubernetes 核心 DRA allocator 更深一批正確性缺陷(延續已合併的 5 支 v1.37 修正):device request count 未定上界/溢位安全契約(#140424);算 node-allocatable demand 前未拒負的 ConsumedCapacity(#140468);
allowMultipleAllocations關閉後 dedicated 配置可與 live 的 persisted shared 配置重疊(#140797)、且保留 create validation 會拒的 capacity requestPolicy(#140799);ExtendedResourceCache 供 stale 對應、跨 DeviceClass 更新與碰撞會丟掉 winner(#141103);GatherPools 完整性在 ResourceSliceCount 不一致時順序相依(#141117);malformed ResourceSlice nodeSelector term 數應 per-node fail-closed(#141214,承 #141212);device 的consumesCounters可為負、validateDeviceCounter不做 sign check,allocator 以Sub從 counter set 扣除時負值反而墊高 available → over-commit 共用 counter set(sibling 的 consumable-capacity 路徑早有errNegativeCapacity守衛、counter 路徑漏了,#141216)· 回報中、待修,不計入 merged -
ocudu/ocudu — #689/#690(GitLab)
Issue(Bug)· OCUDU du_high remote-command 的驗證與實際 encode/apply 對不上(同一
du_high_remote_commands.cpp,非 #ntn-audit 的 SIB19 路徑):#689 SIB3/SIB4 的 neighbour/carrier 清單,parser 不檢查長度、但 RRC ASN.1 encoder 有界(sib3 intra-freq 1..16、sib4 inter-freq 1..8)→ 超長清單通過驗證、被寫進 live SIB 內容並 bumpsystemInfoValueTag,直到 pack 才失敗、且失敗走ocudu_assert(Release build 編掉)→ Release 下等於把壞的 SI state 提交了;#690rrm_policy_ratio_set驗證並存了dedicated_ratio,但du_cell_manager的 applier 只用強制ded_rbs=0的雙參數建構子、且只在有minimum_ratio/maximum_ratio時才處理 → dedicated-only 或 no-op 請求被接受卻靜默不套用 · #689 已由維護者 Mateusz Michalski 以 !1259 修復並關閉(2026-08-13)——本人回報、維護者修復,屬社群修復、不計入本人 merged/FF;#690 仍回報中,不計入 merged -
Apache YuniKorn — YUNIKORN-3329(Apache JIRA)
Issue · gang scheduling 的 task-group placeholder 需求可從未經驗證的 annotation 溢位成負值:
minMember與minResource兩個運算元都直接取自yunikorn.apache.org/task-groupspod annotation 且未設上界,因此乘積、跨 task group 的加總、乃至Quantity的 int64 accessor 本身都可能 wrap,最終把負的PlaceholderAsk送進 core(Bug · Major · shim - kubernetes)· 由 YuniKorn PMC 成員 Wilfred Spiegelenburg 分類並指派給我 · 修復 PR #1053 仍在審查中(尚未合併,不計入 merged 數) - OpenAirInterface 5G — Issue #1035 Issue · EURECOM GitLab · 5G 核心開源實作的 bug report(GitHub 不到的另一個平台)
D · 上游 PR 審查 — 審他人的貢獻(62 筆)
除了送自己的 PR,也審他人的上游 PR,多集中在自己深耕的領域。數字為 GitHub 搜尋 reviewed-by:thc1006 -author:thc1006 的權威計數(60)。完整清單見 GitHub。
- kubernetes/kubernetes · 15 筆:DRA kubelet/scheduler、TAS placement 等
- kubernetes-sigs/kueue · 10 筆:DRA extended-resource、workload priority、scheduler snapshot
- zephyrproject-rtos/zephyr · 8 筆:以 M5Stack Platforms Maintainer 身分審 M5Stack/ESP32 硬體支援與顯示驅動 PR、含 backport
- 其餘 27 筆散落 RocketPy、kubernetes/autoscaler、多個 DRA driver(dra-example-driver、dra-driver-nvidia-gpu、ROCm/k8s-gpu-dra-driver、intel-resource-drivers)、volcano、controller-runtime 等