99精品久久精品一区二区-亚洲熟妇无码?v在线播放-日本国产精品无码字幕在线观看-久久久亚洲永夜AV-亚洲一级无码一区二区一-免费国产成高清人在线视频-中文字幕乱码免费观看-国产毛片精品妇女久久久

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運營的一線實戰(zhàn)洞察。

開源代碼評審工具open-code-review:靜態(tài)分析+語義模型,讓Code Review告別肉眼掃Diff

開源代碼評審工具open-code-review:靜態(tài)分析+語義模型,讓Code Review告別肉眼掃Diff 干過幾年研發(fā)的人多多少少都被“代碼評審”這事折磨過。小團(tuán)隊還好大家坐得近改完代碼喊一聲“幫我看一眼”就行但團(tuán)隊一超過十個人或者開始跨時區(qū)協(xié)作評審就會變成一場災(zāi)難大PR幾百上千行diffreviewer點開掃兩眼就點了approve新人提的代碼沒人把關(guān)問題一路流到生產(chǎn)環(huán)境才炸評審時的口頭意見散落在聊天記錄里過兩周連當(dāng)事人都不記得當(dāng)時聊了什么。我后來認(rèn)真想了想這事的本質(zhì)是評審這件事本身太重、太依賴人的狀態(tài)而且意見永遠(yuǎn)沉淀不下來。open-code-review這個項目本質(zhì)上就是我對這個問題的回答。它是一套開源的代碼評審增強工作流核心思路是把“人工看diff”這件事拆成幾道自動過濾網(wǎng)先用git變更分析把改動切干凈再用靜態(tài)規(guī)則把低級問題攔掉接著讓可插拔的語義模型從邏輯層面找隱患最后把結(jié)果聚合成結(jié)構(gòu)化報告直接接到MR和CI流程里。它不是要取代人工評審而是替人把那些重復(fù)、機械、靠眼睛硬掃的活先干完讓reviewer把有限的注意力留給真正需要判斷力的問題。這篇文章我會把整個項目從設(shè)計、實現(xiàn)到落地踩坑的過程完整過一遍適合正在搭團(tuán)隊評審流程、或者準(zhǔn)備自己寫一套評審工具的工程師參考。1. 項目概述與設(shè)計思路1.1 這個工具解決的三個真實痛點先說第一個痛點大變更的認(rèn)知負(fù)荷。人腦對一千行以上diff的注意力曲線是斷崖式下跌的實驗數(shù)據(jù)我不多引單說體感——我見過太多reviewer對著五百行以上的PR點完approve之后連改動涉及了哪些文件都說不全。這不是態(tài)度問題是認(rèn)知負(fù)荷超出承載了。open-code-review第一步就是把diff切成可消化的小塊按文件、按函數(shù)、按變更類型切分再算出一個“本次變更有多復(fù)雜”的量化分分太高的PR會在報告里被單獨標(biāo)紅提醒“這個PR需要至少兩個人認(rèn)真看”。第二個痛點評審標(biāo)準(zhǔn)不統(tǒng)一。老手關(guān)注并發(fā)和邊界新手盯著格式和命名結(jié)果同一個錯誤在A的PR里被批得體無完膚在B的PR里安然度過。這個不能用“多培訓(xùn)”來解決標(biāo)準(zhǔn)必須固化下來。我把團(tuán)隊里散落的評審經(jīng)驗做成了聲明式規(guī)則哪些命名不允許、哪些模式是反模式、哪些改動必須寫測試全部寫成配置。規(guī)則分級為error、warning、info三級分別對應(yīng)“必須修”、“建議修”、“僅供參考”標(biāo)準(zhǔn)一旦進(jìn)配置就不依賴某個人的臨場狀態(tài)。第三個痛點評審意見不沉淀。口頭評審的保質(zhì)期很短當(dāng)時聊通了事后連個記錄都沒有幾個月后同樣的坑又在另一個模塊踩一遍。工具把所有評審結(jié)果輸出成結(jié)構(gòu)化報告——Markdown給人在網(wǎng)頁上看JSON給下游系統(tǒng)解析HTML帶定位和展開上下文——并且可以和CI綁定每次提交都留痕。你回頭看三個月前的每次評審當(dāng)時發(fā)現(xiàn)了哪些問題、哪些改掉了、哪些被忽略都能查得到。1.2 為什么我選了“本地CLI 多引擎”而不是機器人評審最開始我考慮過直接寫一個機器人掛在代碼托管平臺上PR一開就自動評論。這個方案效果很直接但有個繞不開的問題機器人要訪問倉庫要么給很高的Token權(quán)限要么單獨部署一個服務(wù)小團(tuán)隊根本養(yǎng)不起而且機器人的反饋是異步的從提交PR到拿到意見要等一兩分鐘這個延遲很消磨耐心。后來我定了一個原則本地先跑CI兜底。open-code-review做成CLI開發(fā)者在自己電腦上就能對當(dāng)前分支跑評審幾秒鐘出結(jié)果改完再推CI里再跑一遍作為合并前的最后一道閘門。兩層作用完全不同本地跑是為了讓開發(fā)者提交前自檢CI跑是為了給團(tuán)隊的評審留個記錄。這個“開發(fā)者本地先過濾CI做門禁”的模式比單純掛個機器人靈活得多機器人能做的事它都能做機器人做不了的事它也能做。架構(gòu)上整個工具拆成四個相互獨立的引擎git變更分析引擎負(fù)責(zé)從倉庫里撈diff、算變更度量規(guī)則引擎負(fù)責(zé)跑靜態(tài)規(guī)則支持內(nèi)置規(guī)則和自定義規(guī)則語義評審引擎是可選模塊通過配置接入模型服務(wù)做邏輯層面的分析報告引擎把前面的結(jié)果聚合成統(tǒng)一格式。四個引擎通過標(biāo)準(zhǔn)數(shù)據(jù)接口串起來改其中一個不影響另外三個。1.3 整體工作流程從git diff到評審報告的完整鏈路工具的運行鏈路大概長這樣輸入一個對比范圍比如從main分支到當(dāng)前分支git引擎用底層命令拉取變更集然后做三步處理——第一步按文件類型過濾只留代碼相關(guān)的文件第二步按變更類型歸類區(qū)分新增、修改、刪除、移動第三步提取變更函數(shù)和類級別的上下文為后續(xù)規(guī)則和語義分析準(zhǔn)備數(shù)據(jù)。這套準(zhǔn)備做完才輪到規(guī)則引擎做靜態(tài)掃描接著語義引擎做深度分析最后報告引擎把所有發(fā)現(xiàn)去重、排序、打分輸出報告。整個鏈路的執(zhí)行順序是有講究的。規(guī)則引擎必須跑在語義引擎前面因為規(guī)則引擎掃出的問題可以直接在本地提示不讓它們進(jìn)入語義分析的上下文能省大量模型請求語義引擎只拿到規(guī)則引擎過濾后的“高價值片段”分析更聚焦。報告引擎最后做一次全局去重——有些問題規(guī)則引擎和語義引擎都會發(fā)現(xiàn)按置信度保留更準(zhǔn)確的不重復(fù)報警。2. 核心功能拆解與實現(xiàn)細(xì)節(jié)2.1 配置體系把評審標(biāo)準(zhǔn)變成團(tuán)隊共識配置是整個工具的靈魂。我用的是YAML格式見名知義注釋友好。初始化命令會生成一份帶完整注釋的默認(rèn)配置不會讓用戶面對空白文件發(fā)呆。配置的核心是規(guī)則集、閾值、路徑過濾三塊。# .open-code-review.yaml project: name: my-service language: python rules: python: no-print: { level: error, message: 禁止使用print調(diào)試請使用logging } no-bare-except: { level: error, message: 禁止裸except必須捕獲具體異常 } func-limit: enabled: false # 默認(rèn)關(guān)閉打開后需要配合max_line參數(shù) thresholds: max_total_changes: 800 # 超過800行變更的PR會被標(biāo)為“高復(fù)雜度” max_complexity_score: 20 # 單文件復(fù)雜度分上限 max_files_changed: 30 # 單PR文件數(shù)上限 ignore_paths: - **/migrations/** - **/generated/** - docs/** suppress: - pattern: no-print paths: [scripts/**] # 特定路徑下豁免特定規(guī)則配置里每個規(guī)則不是簡單的開關(guān)而是帶著級別、消息、建議修復(fù)方式的結(jié)構(gòu)化對象。比如一個error級別的規(guī)則報告里會明確寫“這條不修合并會被阻斷”而warning級別的規(guī)則只做提示不會讓CI變紅。這套分級很重要如果所有規(guī)則都是error團(tuán)隊會產(chǎn)生“狼來了”效應(yīng)見到紅叉也麻木。團(tuán)隊落地的時候我建議把配置放在倉庫根目錄并強制同步。也可以單獨建一個配置倉庫用include字段引用公共配置再在每個項目里覆蓋個性化部分。公共配置可以沉淀新成員加入、團(tuán)隊復(fù)盤出問題了就把教訓(xùn)轉(zhuǎn)成一條規(guī)則加進(jìn)去這么持續(xù)滾動半學(xué)期你會發(fā)現(xiàn)自己團(tuán)隊的標(biāo)準(zhǔn)開始近乎自動執(zhí)行。2.2 git diff解析評審的“切片”能力git diff解析這層看著簡單做細(xì)了非常磨人。工具用的是git log --oneline加git diff --stat拿到范圍再用git diff --unified0拿純變更行。但純diff有個大問題它只有行號沒有函數(shù)邊界。不看上下文的話一條變更在哪個函數(shù)里、影響哪條調(diào)用鏈完全不知道。所以我做了一層“變更上下文注入”拿到diff之后用正則加括號配平把變更行所在的函數(shù)名識別出來再往上追溯它屬于哪個類、哪個模塊。這樣規(guī)則引擎可以做到“函數(shù)級”的檢查。比如Java里有一條規(guī)則叫“修改public方法必須同步修改調(diào)用方的測試”如果沒有函數(shù)邊界信息這種規(guī)則根本寫不出來。變更度量上我不單純看“改了多少行”而是用四圍指標(biāo)算復(fù)雜度新增行數(shù)、刪除行數(shù)、涉及文件數(shù)、涉及函數(shù)數(shù)。參考的是圈復(fù)雜度的思路經(jīng)權(quán)重組合得出一個值實踐下來比純行數(shù)有效得多。有一段代碼長得離譜但全是重復(fù)代碼純行數(shù)分?jǐn)?shù)很高但實際是安全的機械替換而一段只改了三行的代碼動的是核心狀態(tài)機這種變更反而是最需要重點看的——復(fù)雜度模型會捕捉這種“小改動大風(fēng)險”。2.3 靜態(tài)規(guī)則引擎先過濾低級問題規(guī)則引擎我先后實現(xiàn)了兩套掃描方式。第一套是正則模式簡單粗暴對“不要出現(xiàn)print”、“不要用比較浮點數(shù)”這類模式匹配問題夠用性能也好。第二套是AST解析模式它把語法樹完整讀出來能做的事就多很多——比如Python里能查出“except后直接pass”、“函數(shù)參數(shù)名與全局變量沖突”、“資源句柄沒有關(guān)閉”這類模式問題還能順手做基礎(chǔ)的風(fēng)格一致性檢查。內(nèi)置規(guī)則庫目前覆蓋Python、JavaScript/TypeScript、Go三種語言每種語言大概五十到上百條規(guī)則。但內(nèi)置規(guī)則只是起步真正的價值在自定義規(guī)則。工具提供了Python接口用戶可以自己寫規(guī)則函數(shù)接收變更上下文對象返回發(fā)現(xiàn)問題列表。因為接口是函數(shù)級別的老手可以寫出“檢查Redis Key有沒有加上業(yè)務(wù)前綴”、“檢查新增的接口有沒有加權(quán)限注解”這種業(yè)務(wù)強相關(guān)的規(guī)則——這一下子規(guī)則引擎的價值就不再被語言自身限制住了。這里必須強調(diào)去噪。評審工具最大的敵人不是漏報是誤報。誤報多了團(tuán)隊會無視一切告警再好的工具也是廢鐵。所以規(guī)則引擎做了三層降噪一是ignore_paths生成文件、遷移腳本、第三方代碼目錄直接跳過二是per-rule閾值比如行數(shù)超限這類規(guī)則可以設(shè)置“只在函數(shù)超過80行時才提示”避免大量擦邊告警三是suppress注釋在代碼里寫# open-code-review: disableno-print可以針對單點豁免注意是“單點豁免”而不是“全文件豁免”這是硬性設(shè)計——全文件豁免會變成一根大水管任何規(guī)則都能從那里被排走。2.4 語義評審模塊把大模型用作評審助手規(guī)則引擎的極限很明顯它能查出“你做了什么不對勁”但查不出“這件事本身該不該做”。比如一個支付模塊的函數(shù)改了金額類型從int改成float規(guī)則引擎檢查不出任何問題因為語法正確、命名規(guī)范、格式標(biāo)準(zhǔn)——但要害在精度上。這種問題需要語義理解所以工具把模型服務(wù)做成可插拔的語義引擎。接入方式不復(fù)雜配置里加一個engine段即可semantic: enabled: true provider: custom api_base: https://your-model-endpoint.example.com/v1 api_key_env: LLM_API_KEY model: your-model-name timeout_seconds: 30 max_concurrency: 4 diff_batch_size: 1但要想讓模型產(chǎn)出高質(zhì)量的評審意見直接丟一段diff是沒有用的——這點我反復(fù)踩過坑。模型需要結(jié)構(gòu)化的“評審上下文”我會在prompt里組裝成下面這種結(jié)構(gòu)這段代碼的項目類型和背景、它屬于哪個業(yè)務(wù)模塊從倉庫讀README和目錄結(jié)構(gòu)推斷、完整的函數(shù)上下文而不是只有幾行diff、以及讓它關(guān)注的幾個評審維度安全、性能、可維護(hù)性、并發(fā)正確性。而且我會要求它返回嚴(yán)格JSON{ issues: [ { severity: warning, file: services/order.py, line: 42, title: 金額使用float存在精度風(fēng)險, detail: Decimal替代float, confidence: 0.87 } ], summary: 整體邏輯清晰但建議關(guān)注金額精度處理 }結(jié)構(gòu)化輸出可以直接進(jìn)報告引擎也可以被CI解析并決定是否阻斷。關(guān)鍵詞是“取舍”四個維度的評審不會一次全開而是用參數(shù)控制比如--focussecurity,performance。默認(rèn)值我設(shè)成security和correctness兩個維度因為這兩類問題靠人肉review最容易看漏反過來像“可讀性差”這種意見不適合讓模型提——機器說“這段代碼讀起來不順暢”非??斩赐皆鲈肼?。2.5 報告與CI集成讓評審結(jié)果可追溯報告引擎做三件事聚合、去重、格式化。聚合是把四個引擎的結(jié)果合并標(biāo)注每個問題的來源git分析/規(guī)則引擎/語義引擎這樣用戶能看出哪類問題哪層發(fā)現(xiàn)得多反向指導(dǎo)規(guī)則調(diào)整。去重是跨引擎消重比如語義引擎提到的“金額用float有精度風(fēng)險”如果規(guī)則引擎也命中了一條float相關(guān)規(guī)則按置信度保留其中一條另一個降為“關(guān)聯(lián)參考”。格式化則輸出三種格式Markdown人在網(wǎng)頁或本地查看按文件分組按嚴(yán)重級別排序每個問題帶定位、說明、建議JSON給CI鏈路和其他工具用字段穩(wěn)定方便二次開發(fā)HTML離線也能看得舒服帶代碼上下文折疊。CI集成上給了兩個最常用的模板。GitHub Actions的場景是在PR觸發(fā)時跑一遍把報告作為artifact上傳同時用注釋和PR關(guān)聯(lián)GitLab CI類似。關(guān)鍵配置是fail策略--fail-onerror表示只有error級別問題才讓流水線失敗warning只評論不阻斷。我強烈建議團(tuán)隊第一天只讓工具“潛水觀察”——跑但只生成報告不阻斷任何東西堅持兩三周把誤報閾值調(diào)到穩(wěn)定區(qū)間后再開email阻斷直接上阻斷團(tuán)隊體感很差會集體把工具當(dāng)噪音屏蔽掉。3. 實操過程從零跑通一次完整評審3.1 安裝、初始化和第一份基線報告我以Python環(huán)境為例說明安裝流程。建議用pipx而不是直接pip install全局裝因為工具依賴獨立環(huán)境更干凈pipx install open-code-review裝完先跑版本號確認(rèn)成功open-code-review --version。接著在一個要接入的項目根目錄執(zhí)行初始化命令它會生成默認(rèn)配置文件和一個.gitignore條目然后初始化一個本地緩存目錄cd ~/work/my-service open-code-review init初始化完成后先跑一次基線掃描我習(xí)慣稱之為“把自己家底摸清楚”open-code-review scan --base HEAD~1 --head HEAD這條命令比較的是最近一次提交和它上一次提交的差異范圍。因為是第一跑結(jié)果大概率很多不要慌。這份基線報告很有價值——它告訴你這個項目現(xiàn)狀的“技術(shù)債水位線”后續(xù)每次改動只要不超過這個基線水位很多都是可接受的反而突然在某個PR冒出一個聞所未聞的規(guī)則錯誤那才是值得優(yōu)先看清的大坑。3.2 團(tuán)隊公共配置如何落地如果你有多個項目想統(tǒng)一評審標(biāo)準(zhǔn)不要在每個倉庫里復(fù)制粘貼同一份配置那個維護(hù)起來就是給自己上刑。建議建一個單獨的code-review-config倉庫公共部分寫在一個base配置里項目側(cè)的做法是# 在項目的 .open-code-review.yaml 里寫 extends: - git::https://github.com/your-org/code-review-config/base.yaml project: name: my-service description: 訂單服務(wù) rules: # 項目特有的規(guī)則覆蓋 java: no-system-out: { level: error }extends字段支持git倉庫和本地路徑兩種方式拉取后做深度合并項目級配置的rules覆蓋base的同名規(guī)則不重名的保留在base規(guī)則。整個配置合并邏輯要保證在本地也能跑打開配置調(diào)試開關(guān)可以看到最終生效的完整配置這個功能建議經(jīng)常開不定時你會發(fā)現(xiàn)某些規(guī)則一直沒生效是因為被后來者微妙地覆蓋了。團(tuán)隊公共配置建議按“發(fā)現(xiàn)-固定-分享”的節(jié)奏來迭代每次評審中發(fā)現(xiàn)一種沒有規(guī)則覆蓋的錯誤類型先人工討論清楚統(tǒng)一口徑然后給公共配置加一條規(guī)則同時更新changelog讓所有項目平滑同步。3.3 用真實案例演示一次完整評審我構(gòu)造一個非常典型的小案例在分支上給登錄接口增加了一個“記住我七天”的選項改動涉及Redis存取邏輯。跑一下open-code-review scan --base main --head feature/remember-me --semantic-enable很快會得到一份報告抽幾條核心輸出給大家感受一下{ issues: [ { severity: error, source: rules, file: services/auth.py, line: 128, title: Redis key缺少業(yè)務(wù)前綴, detail: key應(yīng)該以auth:或login:開頭避免與其他業(yè)務(wù)模塊沖突, suggestion: 改為 flogin:token:{uid} }, { severity: error, source: rules, file: services/auth.py, line: 141, title: Token過期時間硬編碼, detail: 配置中心維護(hù)不允許在代碼里出現(xiàn)魔法數(shù)字, suggestion: config.get(auth.token_ttl, 604800) }, { severity: warning, source: semantic, file: services/auth.py, line: 155, title: remember_me參數(shù)影響token有效期建議區(qū)分token類型, detail: 同一套token機制下短期會話token與長期token混用會增加密碼重置后token未失效的風(fēng)險, confidence: 0.82 } ], summary: 本次變更整體風(fēng)險中等2個阻塞問題需處理1個建議確認(rèn)。 }這個案例很能說明問題前兩條是規(guī)則引擎掃到的低級錯誤改法確定第三條是語義引擎提出的跨字段風(fēng)險——這不是“代碼不合法”而是“邏輯設(shè)計上有隱患”它把決策價值交還給了人。我拿著這個報告去問寫這個需求的同學(xué)他立刻判斷確實是設(shè)計時沒想到的情況。如果當(dāng)時直接讓reviewer硬讀那段diff這條風(fēng)險很可能在一堆格式修改里被忽略掉。3.4 把評審接到PR工作流接入PR工作流的重點不是寫配置文件而是在恰當(dāng)?shù)沫h(huán)節(jié)跑、把結(jié)果送到正確的人眼前。最小可用版建議三步走。第一步在開發(fā)者側(cè)裝一個pre-push鉤子推送前對當(dāng)前分支相對主干跑一次本地掃描發(fā)現(xiàn)問題直接提示但不要阻止推送——阻止推送這里是強制攔截后面會逐漸變成用戶本能的逆反心理不要做。第二步CI里跑完整評審生成報告和comment可以設(shè)置error級別阻斷。GitHub Actions的例子name: code-review on: pull_request: types: [opened, synchronize] jobs: review: runs-on: ubuntu-latest steps: - uses: actions/checkoutv4 with: fetch-depth: 0 - uses: actions/setup-pythonv5 with: python-version: 3.12 - run: pipx install open-code-review - run: | open-code-review scan \ --base origin/${{ github.event.pull_request.base.ref }} \ --head HEAD \ --semantic-enable \ --format json \ --output review-report.json \ --fail-onerror - uses: actions/upload-artifactv4 with: name: code-review-report path: review-report.json注意fetch-depth必須設(shè)為0否則工具拿不到完整的git歷史diff范圍會出錯——這是新手接入時遇到最多的問題之一原因就是默認(rèn)的淺克隆把歷史裁掉了。第三步把報告里高置信度的有趣問題以評論方式發(fā)到PR里這里可以用腳本讀取JSON把最棘手的三條挑出來用markdown格式評論而不是把整個幾十條評論全量刷到PR里否則刷屏不但讓人覺得編輯沒完沒了人心散了后面就不看了。4. 常見問題與排查實錄4.1 大倉庫diff分析慢到懷疑人生我見過最夸張的案例一個單體倉庫一次評審跑了將近二十分鐘團(tuán)隊直接放棄使用。原因有三個git blame全量跑、AST解析覆蓋了所有目錄、語義引擎對每個函數(shù)都發(fā)一次請求。解法也對應(yīng)三條。第一git blame不開全量只在規(guī)則引擎需要追查“這一行是誰引入的”時才單文件調(diào)用而且默認(rèn)關(guān)閉需要配置開關(guān)打開。第二AST解析配合ignore_paths過濾生成目錄、第三方源碼目錄必須排除Reporting文件實際上分析收益極低但開銷很大。第三語義引擎默認(rèn)只分析新增和修改函數(shù)的上下文不分析調(diào)用鏈開銷從O(整個文件)降到O(變更函數(shù))。另外做一個增量緩存每個文件的規(guī)則掃描結(jié)果按文件hash緩存文件沒變直接從緩存拿。實踐下來一個兩百個文件左右的中型項目全量跑從三分鐘降到了二三十秒增量跑只要幾秒。4.2 “AI評審報告寫得像廢話”怎么辦語義引擎上線第一階段“這段代碼看起來不錯但建議補充單元測試”這類廢話滿天飛reviewer看兩篇就免疫了。排查下來問題是prompt太寬模型沒說清楚“從哪里看、看到什么程度算問題”。后來我給語義引擎加了三個約束第一必須給出具體line和severe級別以及置信度數(shù)字置信度低于0.7的問題不要輸出廢話通常置信度很低第二每個問題必須同時給出“為什么是問題”和“怎么改”兩段否則這條直接丟棄第三禁止輸出style和readability類意見——這類意見開源社區(qū)的模板里價值極低本質(zhì)上是模型在重復(fù)格式化偏好。還有個大招是把倉庫的README、最近一次commit message、相關(guān)模塊的目錄結(jié)構(gòu)塞進(jìn)prompt做項目背景。模型知道這是“訂單服務(wù)”還是“調(diào)度系統(tǒng)”之后輸出質(zhì)量是天壤之別。這套改造完成后語義引擎產(chǎn)出的意見可采納率從不到兩成提到了大概五成剩下的兩成雖有歧義但也能給人提供線索。4.3 私有化環(huán)境沒有外網(wǎng)模型服務(wù)可以用金融、政企類客戶一般要求代碼不出內(nèi)網(wǎng)這個訴求很合理。但我的思路是語義引擎本來就是可插拔的沒有外網(wǎng)模型就把語義引擎關(guān)了靜態(tài)規(guī)則和git分析依然能跑已經(jīng)覆蓋了大量基礎(chǔ)問題。如果實在想要語義分析也可以在內(nèi)網(wǎng)部署自托管的模型服務(wù)一個中等規(guī)格的推理機器就能扛住一個上百人團(tuán)隊的評審流量配置上只要把api_base從“外部服務(wù)地址”改成“內(nèi)網(wǎng)服務(wù)地址”即可代碼一行不用動。需要提一句如果你用的自托管的模型能力不強對輸出質(zhì)量要降低預(yù)期同時調(diào)高confidence閾值到0.8寧可少報也別報一堆錯的東西毀掉團(tuán)隊對工具的信任。工具的信任一旦崩塌重建成本遠(yuǎn)高于一開始的保守配置。4.4 自定義規(guī)則誤傷正常寫法自定義規(guī)則是最容易出閘事故的地方。我之前寫過一個“禁止在for循環(huán)里調(diào)用sleep”的正則模式結(jié)果誤傷了所有含“sleep”字符串的業(yè)務(wù)日志——因為日志文本里也有sleep這個詞正則沒做詞邊界直接匹配上了。改成AST解析才算真正準(zhǔn)判斷for循環(huán)體內(nèi)有沒有Call節(jié)點指向sleep函數(shù)而不是文本里有沒有sleep四個字母。這個教訓(xùn)后來被我固化成指南能用AST實現(xiàn)的規(guī)則不要用正則正則永遠(yuǎn)只能做初篩涉及語義和結(jié)構(gòu)的規(guī)則必須走AST層。另外一個建議是新規(guī)則上線先降級為warning級別跑一輪歷史數(shù)據(jù)看誤報率誤報率低于1%再晉級為error并且配置灰度只針對某個模塊生效。寧可花兩周觀察規(guī)則也不要上一個三天兩頭誤傷隊友的規(guī)則。4.5 CI里每次全量掃描太慢且結(jié)果不好合并這個問題在CI接入兩周后一定會出現(xiàn)。每次PR全量掃描幾個并行MR同時跑構(gòu)建隊列直接堵死。解法是CI只跑增量--base設(shè)置成目標(biāo)分支的merge-base只分析這個PR自身引入的變更不重新掃描整條線。工具默認(rèn)就做了行號偏移和上下文綁定報告里標(biāo)記的行號是PR合并后的目標(biāo)行號方便在diff視圖定位。還有報告合并的問題如果同一個PR推了三次每次CI都生成一份報告結(jié)果就是三份孤立的報告沒人看。我的建議是把報告以固定路徑上傳為artifact不按時間戳生成這樣PR頁面始終只看最新一份--fail-onerror做合并前的最后阻斷但如果團(tuán)隊還在潛水期就把這個開關(guān)關(guān)掉。下面是一個快速排查表現(xiàn)象原因處理掃描到的錯誤行號和代碼對不上fetch-depth為0導(dǎo)致淺克隆歷史被截斷CI里設(shè)置fetch-depth: 0規(guī)則沒生效項目配置覆蓋了公共配置的同名規(guī)則開啟配置調(diào)試看最終合并后的生效配置語義分析超時模型請求積壓并發(fā)設(shè)得過高被限流把max_concurrency調(diào)低到2~3加大timeout_seconds報告里有大量純格式類告警內(nèi)置style規(guī)則默認(rèn)沒關(guān)在配置里關(guān)掉style規(guī)則或降級為info本地跑得動CI跑不動本地有緩存CI無緩存CI里配置緩存路徑或者保持全量但不跑語義引擎5. 我踩過的最大一個坑以及接下來的打算這個工具走到現(xiàn)在我最深的一點體會是評審工具成敗不在于能發(fā)現(xiàn)多少問題而在于能讓人愿意長期跑下去。版本初期我追求“告警多”一個PR恨不得報五十條團(tuán)隊成員直接線上集體抗議——質(zhì)量再高工具被棄用就是零。后來我學(xué)會做減法默認(rèn)關(guān)閉一切低置信度檢查規(guī)則分級明確報告排序永遠(yuǎn)只把最該看的三條放在最前。工具像一位謹(jǐn)慎的資深顧問不是咆哮的鬧鐘這個定位想清楚了落地就順了。接下來我打算做的事比較具體一是把自定義規(guī)則整理一個公共市場用戶可以把配置發(fā)布出來共享不同團(tuán)隊不用重復(fù)造輪子二是把VSCode插件排上日程在編輯時就能實時提示部分規(guī)則問題而不是等到提交后才發(fā)現(xiàn)三是語義引擎里增加一個“相似問題檢索”能力如果某個問題歷史上出現(xiàn)過并修過可以把修復(fù)commit關(guān)聯(lián)過來降低閱讀報告的心智負(fù)擔(dān)。如果你正準(zhǔn)備在團(tuán)隊里推行類似的評審工具我的建議就一句話先跑一個月“只讀不阻斷”把誤報清干凈再開阻斷。這個“只讀期”不是浪費時間而是讓工具用真實表現(xiàn)贏得團(tuán)隊信任的必經(jīng)之路。沒有信任再優(yōu)秀的規(guī)則集也活不過第一周。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
婷婷,五月天,丁香,第一| 色五月丁香婷婷久草| 99爱在线视频| 色婷婷综合久久久久| 亚洲第一综合| 狠狠色噜噜色狠狠狠综合久久成人波| 婷婷丁香五月基地| 欧美色99| 婷婷五月天福利| 激情婷婷内射| 一级性感毛片| 狠狠干无码| 丁香五月婷婷婷婷欧美综合| 在线观看免费狠狠色丁香香综合| 久久思思热| 久久激情五月婷婷| 激情久久四色| 欧美一级色| 中文av网| 操操操Av| 亚洲综合99| 嫩草视频在线观看| 91丨九色丨丰满人妖| 婷婷婷婷色| 六月亚洲婷婷6月中文字幕| 丁香五月综合久久| 无码人妻少妇色欲AV一区二区| 婷婷激情欧美| 激情婷婷色色| 91啦丨九色丨刺激中文| 色伦专区97中文字幕| 日日懆天天懆| 欧美综合激情五月丁香| 丁香五月影视| 婷婷爱五月| 91精品久久久久久| 夜夜躁爽日| 五月天大香蕉| 8区视频在线| 99色在线| 亭亭色色五月天| 色综合色色色色色| 91大神操美女| 婷婷99狠狠| 懂色av粉嫩AV蜜臀AV| www久| 丁香五月天色婷婷| 五月丁香久久久久| 九九热中文| 五月天婷婷综合| 丁香五月成人社区| 99国产性感视频| 99激| 激情五月激情综合俺也去婷婷小说| 123草逼网| 三人荫蒂添的好舒服A片| 韩国真做片在线观看| 日本3级片一区2区| 操操操Av| 婷婷五月丁香五月| 九一九九黄色| 丁香五月天婷婷91| 天天操天天日天天爱| 狠爱婷色| 综合色影院| 九九操屄| 性色九九| 在线sebiav精品视频| 色爆五月| 五月婷婷激情在线| 激情婷婷黄色五月| 丁香五月天在线视频| 五月色 亚洲| 色99日韩| 欧美激情凹凸丁香网| 夜夜干天天干| 色婷婷亚洲婷婷| 综合久久高清| 99ri视频在线播放| 五月天婷婷基地综合网| 亭亭五月丁香综合欧美| 欧美va亚洲va在线播放| 99热精品观看| 久久ri精品| 午夜成人片400| 成人看片网站| 1024成人在线观看| 激情五月色综合国产精品| 天天精品视频在线观看视频| 五月天婷婷丁香花| 精品综合五月| 开心激情网五月| 五月天 另类图片| 中文久久婷婷| 丁香五月欧美婷婷综合| 99色激| 五月婷婷大香蕉| 亚洲丁香五月美女| 狠狠色成人影片| 五月丁香影视| 日本一级一片免费视频| 骚。com| 亚洲热久久| 狠狠爱婷婷爱| 欧美丰满熟妇BBB久久久| 五月丁香狠狠爱婷婷综合| 久久久91| 97视频.干com| 都市激情亚洲| 韩国天天婷婷| 人碰人人人玩91| 九九综合精品| 九九亚洲综合| 99热线观看9| 五月丁香福利| 99九九玖玖| 操操啪| 天天插天天插| 五月丁香婷婷啪啪网| 碰97久久| 99热成人| 日亚二欧美| 天天插夜夜爽| 91热在线| 性爱激情久久| 国语精品探花| 久久综合五月天| 国模狼狼| 99精品无码视频| 激情激情激情网| 九九热精品视频| 中文字幕五月久久婷| 欧美va亚洲va在线播放| www.超碰97| 五月大香蕉| 亚洲激情综合| 激情五月综合久久| 五月丁香婷婷色色| 一本久道综合色婷婷五月| 激情综合网五月天天| 国产精品日韩十五区| 五月婷婷啪啪| 人人爱操| 色色色网站| 丁香婷婷五月激情| www夜夜| 丁香婷婷五月天成人| 思思久久精品视频| 操91综合网| 五月综合色| 99网| 人人看人人要| 色亭亭九月| 天天射天天射一道本日本社区 | 天天做天天爱天天做| 熟女少妇内射日韩亚洲| 99er这里只有精品视频| 久久曰曰| 丁香五月天欧洲在线| 第四色激情网| 婷婷综合五月天激情| 色婷婷狠狠| 婷婷久久六月天| 国产精品第一国产精品| 色婷婷五月婷婷五月婷婷五月| 在线另类| 色五月丁香伊人五月| 9久9久9久女女女九九九一九| 亚洲综合色棒| 91男人资源站| 亚州AV超碰人人操| 91操在线视频| 不卡在线超碰| 深夜A片| 五月深情久久| 色色色免费视频| 色五月开心婷婷| 成人无码精品1区2区3区免费看| 久久人人人人妻| 色色婷婷综合| 91丨九色丨东北熟女| 99热这里只有精品10| 久久久91精品| 五月天激情图片| 久久婷婷五月天激情新地址| 婷婷5月久久综合网站| 五月香六月婷| 99久久精彩视频。| 九九九九九九九九九九九九九国产精品| 天天综合天天玩夜夜玩天天玩夜夜玩 | 久久hd| 五月婷丁香久久综合| 激情五月天婷婷在线网址发给我| 天堂爱啪啪| 99综合| 天天爱天天做天天爽| 99久久婷婷五月| 久久久97| 国产亚洲色婷婷久久99精品91| 思思热天天看| 欧美性爱中文字幕| 牛牛澡牛牛爽| 国产日韩欧美| www99热| 九九视频精品在线免费 | 久久婷婷五月天激情四射| 婷婷亚洲综合| 亚洲情色一区| 99热在线这里| 天天天天天天天操| 婷婷色播色五月五色五月天色妇| 91porn一起草| 大香蕉久久伊人网| 日韩ww| 五月天久久久| 中美日韩成人在线| 99re久热只有精品6在线直播| 亚洲人成网站999久久久综合| 99热这里只有精品中文字幕| 99久久www| 精品99爱免费视频在线观看| 成人羞羞啪啪 全 视频| 欧美婷婷色五月网| 亚洲狠9| 婷婷久久五月| 九热免费视频| 狠狠爱五月婷婷| 婷婷十月丁香| 婷婷五月图片小说网| 91婷婷丁香五月天免费视频网站| 五月婷婷偷拍| 婷婷激情视频| 五月婷婷六月丁香在线| 3DAV亚洲香蕉久久 一区二区| 很很干夜夜干| 新精品99| 天天操天天操天天操天天操天天操天天操| 五月丁香六月合| 欧美性二区| 任你操精品免费| 五月丁香婷婷激情图片| 色噜婷婷| 婷婷色操| 色综合综合色| 国产激情视频在线观看| 99re热在线视频| 国产精品汇聚精彩第二页 - 高清完整版在线 - 青蛙AV | 日本a片网址| 丁香五月激情棕合| 婷婷色在线观看| 99色久| 91操女| 精品99*| 麻豆AV一区二区三区| 另类天堂| 久久ri精品| 丁香婷婷五月色综合| 国产伦亲子伦亲子视频观看| 日韩av手机在线观看| 五月深爱激情网| 99热在线中文字幕| 99乱视频| 成人一级片| 婷婷五月综合社区| 天天日天天操心| 久久精品性爱| 男人的天堂婷婷色五月| 国产小网站| 久久亚洲天堂| 国产 码在线成人网站| 综合网色| 伊人综合网4| 午夜九九电影| 婷婷爱五月| 97干网站| 中文字幕无码AV| 99热国产在线| 操久久网| 蜜臀嫩草| 亚洲五月婷天天操| 婷婷五月婷| 日本天天色| 99精品一二三四视频| 97色在线视频| 国产午夜精品一区二区三区四区| 日本在线视频看se99| 婷婷操久久| 五月天婷婷六月激情网| 99热中文字幕久久| 激情五月天视频| 丁香久久在线| 97AV在线视频| 国产资源91在线| www.9797国产| 五月天婷婷狂暴白浆| 伊人丁香五月婷婷潮吹| 99r这里只有精品哦| 伊人网欧美在线男人天堂五月丁香 | 无码一级片| 91超碰人人操| www.henhengan| 婷婷射图| 成人免费网站免费看| 激情床戏| 久久免费婷婷视频| 综合激情五月丁香| www.久久爱.c n| 色欲人妻综合aaaaaaaa网| 五月丁香六月停停| 99免费在线视频| www99精品亚| 青青热视频| 天天综合网亚洲网站| 久热婷婷| 亚洲人妻Av| 99福利视频| 伊人网色婷婷五月天| 色五月婷婷基地| 九九黄色网| av无码电影| 亚洲射激情| 26.uuu丁香五月婷婷| 大战熟女丰满人妻AV| 美女黄频aⅴ视频| 久久九九大香蕉电院| 激情综合网五月婷婷| 久久婷婷原创视频| 99视频精品全部免费观看| 五月天色色网站| 人操91在线| 五月婷高清视频| 九九亚洲综合| 色天堂A| 99爱视频在线观看| 日本A片一区| 一本久久亚洲五月婷婷| 操99| 色爱综合视频| 大地9中文在线观看免费高清| aa久久| 丁香五月激情在线| 熟美女麻豆| PORNY九色9l自拍视频成人| 九色色| 熟女人妻一区二区三区免费看| 日本一级| 亚洲99热| 免费的日逼视频| 婷婷综合色| 一起肏在线视频| 亭亭五月天黑人2014| 噼里啪啦在线观看免费完整版视频| 色99综合色88| 侠女刀之记忆电影在线看免费| 九色自拍| 婷婷激情中文综合| 丁香激情网| 丁香五月AV在线| 天天操综合网| 色五月婷婷五月久久| 高清无码网址| 五月天深爱激情网| 欧美WW在线网| 丁香五月久久| 久热这里这里有精品| 婷婷在线视频| 午夜九九电影| 婷婷五月激情视频网| 99这里只有精品99| 婷婷欧美激情综合| 五月天激情小说网| 日日操,天天操| 91狼友视频在线观看| 五月天五月天激情网| 国产免费av网站| 色婷婷亚洲六月婷婷中文字幕| 综合激情婷婷| www.亚洲激情| 久久总和99| 99在线观看| 九九这里有精品视频| 欧美槡BBBB槡BBB少妇| 婷婷播播五月天| www.色欲丁香婷婷| 色丁香久久| 丁香五月天信号| 一级黄在线| 99久视频| 色五月婷婷丁香国产在线| 女人被躁到高潮嗷嗷叫小| 色天天综合| 九九偷拍网| 欧美日韩99| 五丁香激情综合| 色综合色色| 99综合婷婷五月| www狠狠爱com| 五月丁香六月婷| 久久五月激情| 精品99这里有| 激情五月婷婷啪啪| 成人国产欧美大片一区| 热99免费在线| 永久AⅤ1| 妻久久久久| 毛片蕉地一二| 丁香久久AV| 九九中文色色| 国产69久久久欧美黑人A片| 色色色色av色色色色| 伊人久久婷婷| 久久狠婷婷| 97色色色| 成人短视频在线免费观看| 色色五月天婷婷| 色综啪啪网| 久久婷婷综| 五月丁香婷婷在线| 激情丁香五月综合| 伊人在线视频| 99热综合网| 天天精品视频免费观看| 丁香五月婷婷激情123| 天天肏高清在线| 夜夜嗨一区二区三区直播内容 | 久操大香蕉| 这里只有精品在线免费视频| 热的国产,热的综合,热的有码| 色五月婷婷激情基地| 日韩丰满少妇无码内射| 五月天婷婷小说| 久久这里只有精品热在99| 99在线观看这里都是精品| 操人视频91| 91av传媒高清在线视频网| 91人人操人人| 狠狠色狠狠| 丁香五月电影| 五月婷婷亞洲中文| 伊人色欲五月天| 伍月婷丁香婷| 丁香婷婷人妻| 97色色婷婷| 人人插9| 开心婷婷五月综合| 97超级碰人人| 性爱激情五月| 久久99久久99精品,久国产,久久精品免费,99久在线,久久久久国产精品免费网站,9 | 国产成人AV在线| 色婷婷五月中文字幕在线dvd| 包操45分钟网站| 任你搞网站| 五月六月伦理| 夜夜骑天天操| 天天做天天爱天天爽综合网| 深爱五月网| 久久婷婷欧美| 久久这里99| 玖操97| 五月天婷婷激情干干| 玖玖资源站国产| 色婷婷免费观看| 97婷婷丁香| 亚洲乱码w在线观看| 色婷婷亚洲在线观看| 五月婷婷综合在线视频| 亚洲精品第一国产综合亚AV| 天天综合网~91| 婷婷五月综合中文字幕| 啪啪色激情五月天| 婷婷成人AV| 99视频在线观看网址| 91久久九色| 亚洲99一级无嗎特制在线| 丁香花大香蕉婷婷综合| 人人草碰| 97碰在线| 伊人国产婷婷五月天| 夜夜骑日日夜夜| 综合色综合| 欧美VA在线观看| 婷婷婷婷婷开心无码播放| 五月天婷婷综合免费| 激情五月婷婷五月丁香五月开心五月| 丁香九月婷婷综合| 国色天香成人网| 激情都市另类| 7777精品伊人久久久大香线蕉最新版| 久久9精品| 婷婷六月丁香在线| 99色最新在线视频网站| 97操碰在线视频| 日狠狠| 色综合久久久无码中文字幕999| 97超碰色| 思思视频久久| 九一99| 亚洲性爱电影| 亚洲亚洲人成综合网络| 婷婷色操| 九九成人精品| 九九热re99re6在线精品| 久热免费视频| 丁香五月婷婷婷桃花影院| 欧美婷婷日本| 亚洲情a| 久久久WWW| 人妻久久久| 偷偷操九九| 五月丁香综合啪啪| 亚洲另类视频| 99热伊人| 亚洲啪啪视频| 色色色色色色色色色色色色色色,网站| 九热免费视频| 久综合4| 久操热线| 天天日综合| 亚洲无码99| 91日精品| WWW.99热| 九九热精品| 亚洲AV免费国产电影| 激情五月婷婷网在线观看| 色色色无码| 国产亚洲精品久久久久久郑州| 色婷婷AⅤ| 日本特黄aaaaa| 亚洲成人在线免费| 欧美精品A片一区在线观看| 婷婷丁香五月天色播网站| 五月开心网| 99久久这里只有精品| 亚洲精品久久久久久久久久吃药 | 黑人无码一区| 日日舔夜夜操| 亚洲网在线观看| 婷婷五月天美女| 成人短视频在线免费观看| 99久久超级| 久久五月视频| 色色色热热热| 依人大香蕉| 婷婷五月色情| 日韩综合久| 久狠日av| 婷婷不卡基地| 五月婷在线视频免费播放| 五月综合色| 亚洲综合五月天婷婷丁香| 久热这里只有精品99re| 色五月丁香91| 婷婷五月天激情综合网| 成人.在线日韩| 五月花综合网| 六月天婷婷| 激情网第九色| 天天弄天天操| 99久久99热| 欧美色婷婷| 亚洲视频a| 99精品在这里| www.99热日韩.com| 91精品久久久久久77777| www.99热| 婷婷五月激情中文字幕| 欧美五月丁香在线| 国产精产国品一二三在观看| 综合xx网| 91在线观看九区| 五月涩涩网| 五月天天丁香婷婷| 婷婷午夜天| 丁香五月手机视频| 9999三级片| 91九色视频| 五月丁香免费看| 女性自慰系列第五页| 婷婷激情图片| 久香草视频在线观看| 中日韩美欧成人一区二区精品在线| 天天色综合色| 日逼影音先锋男人资源站| av性爱网站| 久久综合首页| 激情五月天色色| 99re思思精品视频在线观看| www.lchjjc.com| 六月丁香激情网| 金品在线视频99| 超碰激情网| 欧洲亚洲免费视频区| 亚洲亚洲人成综合网络| www,26uuu,c0m,色情| www.97干视频| 婷婷五月影院| 97婷婷五月| 91丨九色丨熟女|老版| 婷婷基地爱| 日本五月丁香| 欧美啪啪网| 精品人妻久久久久久| 99久久思思| 99久久新视频| 免费看欧美成人A片无码| 日韩欧美骚货| 久久五月婷| 99综合97| 思思热在线播放| 久久人妻高清中文| 超碰成人免费| 九九Y精品热播| 亚洲色五月| 丁香婷婷色五月天| 色五月激情综合网| 欧美日韩国产一二区| 五月色丁香| 久久网思思| 五月丁香无码| 99情色五月天| 婷婷五月花| 色婷婷精品视频| 五月花成人网| 九九五月天| 婷婷情色五月| 精国产品一区二区三区A片| 天天操天天插| 色综合天天天天做夜夜| 欧美va视频不用播放器的va视频网| 另类图片五月天激情| 国产激情综合| 97久久超碰| www.狠狠艹| 丁香五月婷婷六月婷| 久久精品婷婷五月丁香| www...com黄在线观看| 俺去也五月天婷婷| 97五月久久丁香婷婷| 色了色综合| 五月激情六月| 特黄三级片| 婷婷丁香五月天熟女丝袜| 99精品国产在热久久| 99在线小视频| 99爱爱| h在线看免费版在线看| 人人人人人人人草| 三级成人网站| 天天摸,天天爽| 玖玖国产视频一区| 久热91| 热久国产| 久久99久久99精品免观看粉嫩| 伊人成综合五月婷婷| 大香蕉色婷婷伊人在线| 第四色在线观看| 无套内射极品大美女| 91在线日本| 一区中文字幕电影| 久9热插入| 欧美精品狠狠色丁香婷婷| 大地9中文在线观看免费高清| 99热免| 丁香六月婷婷综合| 五月婷婷天| 色五月激情网| 亚洲日日操| 久久99精品九九久久久婷婷| 超碰在线人妻| 99视频只有精品| 超碰91在线| 大香蕉婷婷| 亚洲精品字幕在线观看| 亚洲亚洲人成综合网络| 亚洲熟妇AV乱码在线观看| 国产偷人爽久久久久久老妇APP| 欧美交换配乱吟粗大25P| 婷婷在线视频| 国产视频色色色色色色色 | 久9热在线视频| 91操网| 天天开心天天色| 久久欧洲久久| 思思色综合网站| 丁香五月婷婷手机| 思思热这里只有精品| 色婷婷综合影院| 久久停停超碰| 婷婷五月天影院| 五月日韩中文字幕| 五月天色色色色色| 97人人射| 99热这里精| 欧美黄色AA片哗啦啦啦| 97干在线观看视频| 97婷婷色| 97超级碰碰碰久久久| 伊人色综合久久久| 五月丁香婷婷网网网网| 5月丁香六月情| 人人干av| 丁香六月婷| 一本婷婷丁香久久| 综激情网| 襙逼网| 五月丁香影视| 五月丁香六月| 丁香六月成人网| 久久婷婷精品| 五月激情婷婷开心| 色婷婷综合视频| 国产精品国产成人国产三级| 亚洲天堂碰碰婷婷| 婷婷精品| 五月天另类小说| 99热这里只有精品3| 99cao婷婷| 99色色| 丁香婷五月| 91要啪| 激情小说色五月| 五月丁香六月成人| 国精产品一区二区三区| 国产超碰在线| 六月丁香开心婷婷欧美| 婷婷五月天伊人在线| 天天噜噜| 99精品国产在热久久| 色色婷婷丁香五月天| 最新激情五月天| 亚洲网站999| 久久se 综合网 | 色停停影院五月天| 五月丁香六月欧美综合| 综合色色婷婷| 五月综合激情| 99人人爽| 激情播丁香| 久久狠狠干| 麻豆忘忧草午夜| 亚州激情网站无码| 伊人久久大香蕉网| 色五月色五天色情网址| 99久久思思| 天天日夜夜爽| 亚洲另类婷婷综合| www.com在线操视频免费观看| 婷色人人狠| 色综合中文| 青草青草久9视频在线视频| 五月视频日本免费观看| 狠狠色噜噜狠狠狠狠综合| www热久久yy9| 亚洲狠狠干| 色婷婷狠狠禁18久久| 99热精品少| 99久久性爱| 99啪| 另类专区在线观看| 91超级碰在线视频| 色激情五月| 第五婷婷伊人丁香| 日欧大屏操| 五月深情久久| 天天爽,夜夜爽| 婷婷成人av| 色五月亚洲开心网| 丰满少妇乱A片无码| 色色亚洲无码| 丁香五月婷婷基地| 日韩一区二区在线播放| 婷婷综合网站| 婷婷色五月亚洲| 天天综合精品| 五月婷婷久久综合| 香蕉AV777XXX色综合一区| 五月婷庭丁香在线| 成人国产欧美大片一区| 激情五月天婷婷视频| 成人丁香婷婷| 5月婷婷五月天| 强奸幻女毛片| 五月丁香六月婷| 999精品乱码77777| 亚洲熟女色| 色五月综合网| 极品少妇XXXX精品少妇偷拍| 第四色婷婷最爱| 色色三级视频| 夜夜操,天天撸| 午夜日日| 五月丁香综合| 九九视频这里只有精品在线播放| 亚洲欧美在线观看| 久久人妻视步| www.综合久久.com| 五月天久久婷婷| 婷婷五月天伊人在线| ..真实国产乱子伦对白在线_欧| 天天舔天天| 欲色人妻| 综合婷婷久久| 伊人综合网4| 日本97在线看片| 久久艹99| 色国产五月| 久久免费干| 久久9视频欧美| 激情五月婷婷网在线观看| 97人碰人操| 成人av在线网址| 婷婷六月丁香开心深深爱| 蜜乳久AV| 色99色| 久久黄色免费视频| 2022久久婷婷| 五月丁香在线观看| 亚洲久热无码| 婷婷五月天久久| 免费观看全黄做爰的视频| 五月天色社区| 久久这里只有精彩| 丁香五月婷婷国产在线| 五月婷婷性爱| 婷婷五月图片小说视频| 97碰免费视频在线| 综合久久激情久久| 日本综合色色| 五月婷婷网站| 久久99久久99精品免视看婷婷| 97亚洲视频在线| 96精品久久久久久久久| 99久久综合网| 51成人| 国产97在线日韩亚洲女人被黑人巨大| 六月撸婷婷| 99热这里只有国产精品| 日韩成人av在线| 激情五月天.色网| 亭亭五月色男人| 五月丁六月香| 热无码A∨| 久久99精品日本| 深夜婷婷 丁香| 99久久9| 五月丁香天堂网| 国产Va视频| 激情五婷网| 另类图片五月天激情| 91丨九色丨熟女高潮| 五月综合激情| 久久视频这里99| 开心婷婷五月花| 91色综合| 超碰97久久| 亚洲精品第一国产综合亚AV| 欧美在线干| 色天堂A| 日本va欧美va欧美精品88| 五月丁综合在线观看| 精品五月视频婷婷在线观看| 大香蕉大香蕉在线影院| 欧美五月婷婷综合| 欧美顶级少妇做爰HD| 激情五月天色网站| 五月丁香综合| 5月婷婷6月六月丁香| 婷婷五月激情在线| 五月婷婷激情色情网| 婷香五月网在线| www.五月婷婷| 97影院一级片| 色综合香蕉| 9久热在线精品| 丝袜熟女一区二区三区| 亚洲AV在线免费看| 欧美69久成人做爰视频| www.狠狠操| 99在线观看| 五月天六月色| 五月花激情| 九九精品热| 久操大香蕉| 超碰成人免费| 97中文在线| 婷婷亚洲影院| 天天激情站| 99视频在线精品| 99只有精品| 久久精彩视频| 色色国产| 欧美特大片黄| 任我干视频在线观看| www.99riav99| 99碰碰。| 综合精品啪啪| 国产成人AV在线播放| 秋霞AV美国| 亚洲午夜视频| 淫荡家庭AV| 99视频地址| 五月丁香五月激情综合色综合| 婷婷丁香五月天欧美| 天天操夜夜玩!| 丁香五月婷婷俺也要去| 久久婷婷六月综合综合色| 深爱激情五月天| 色三级色三级| 91操人视频| 国产精品电| 亚洲av成人电影在线观看| WWW·色色色·COM| 色啪影院| 色 丁香婷婷| 激情小说视频图片网| 99热综合| 九九热99热| 欧美顶级少妇做爰HD| 五月婷性爱| 99视频网址| 五月婷婷免费在线| 久久这里只有精品无码| 丁香五月婷婷影院| 殴美日比视频| 无码AV免费精品一区二区三区 | 欧美色色网| 久热黄色| AA片在线观看视频在线播放| 久久激情婷婷| www久久久| 人人综合五月人人婷婷| 婷婷五月综合网| 五月天婷婷在线观看| 欧洲MV日韩MV国产| 色综合久久88| 色婷婷中文字母五月丁香| 99久久精品网| 一区视频网站| WwW色婷婷| 久久久五月五丁香| 开心五月婷婷在线视频免费观看| www夜夜操| 丁香六月啪啪| 婷婷之玖玖| 亚洲中文无码成人| 色播五月网| 天天综合网站| 2016日日夜夜操| 婷婷丁香五月天欧美| 五月天婷婷综合| 俺也去色| 九九热99免费视频| 久久婷婷亚洲五月天| 久久久91| 天天视频精品9| 五月丁香日本在线视频观看| 亚洲热热视频| 色色色综合网| 99资源在线视频| 玖玖精品资源| 99久久激情视频| 婷婷综合偷拍| 亚洲 在线 性爱 | 日本三级99人妇网站| 青草网在线观看| 激情五月天综合婷婷网| 九九99九九精品免费 | 亚洲综合在线播放| 久久婷婷网址| 夜夜骑日日夜夜| 俺去也五月| 天堂成人久久| 色五月婷婷五月丁香五月| 啪啪一区| 久久免费9| 久久免费精彩视频| av五月天婷婷丁香| 俺五月| 99啪啪| 操人91| 色婷婷9| 99丁香五月婷婷在线| av人人操| 男女啪啪做爰高潮无遮挡| 午夜婷婷丁香| 中文无码婷婷| 亚洲色图45p| 久久五月天综合| 亚洲成人综合网在线免费观看| 夜夜操少妇| 九九香蕉网| 久久久激情| 91久久综合亚洲鲁鲁五月天| 91 九色 入口| 丁香五月电影| 丁香九色不卡aaa| 永久地址 色| 超碰婷婷色| 色五月婷婷丁香婷婷| 丁香五月天社区| 丁香五月综合激情久久潮喷| 丁香五月Av| 91狠狠色丁香婷婷综合久久精品| 99精品自拍视频| 操逼视频一区| 日韩色五月| 亚洲在线操| 日韩操人| 秋霞免费三级片| 五月丁香六月情| 色色五月婷婷| AAA久久| 婷婷色无码| 人与禽A片啪啪| 亚洲日韩26uuu| 超碰在线日夜| 九九热精品6| 亚洲无码九九九| 色婷五月天| 丁香六月激情四射| 五月天婷婷视频| 久久视频66| 无码人妻少妇色欲AV一区二区| 婷婷激情综合色五月久久,色婷婷丁香花,丁香婷婷五月情天,久久婷婷五月综合色 | 久久久婷| 亚洲激情 久久| 午夜不卡久久精品无码免费| 丁香五月天激情网| 五月天堂色色| 91碰视频| 九九这里只这里只有精品| 爱爱网址9| 久草热视频在线观看| 99热第一页| 日韩成人免费电影| 深爱五月天婷综合| 中文字幕成人版| 五月婷婷丁香啪啪| 99激情网| 午夜成人av在线| 波多野结衣AV无码Porn| 97人人草| 天天激情站| 成人丁香五月天Av| 婷婷综合另类小说| 婷婷丁香成人色综合| 可以看的av网站| 97人人草| 国产一级黄色影片,| 久9热视频| 六月丁香五月婷婷首页| 五月婷婷激情在线| 久久婷婷亚洲| 婷婷天天综合| 亚州操逼网| 双性美人被调教到喷水A片| 99久久6| 婷婷激情小说网| 婷婷九月久久| 婷婷香蕉| 五月天五月天激情网| 色9999日韩国产| 五月婷婷综合激情小说| 五月丁香激情四射| 色色网站免费观看| 99色热视频| 丁香五月开心七月| 五月婷婷色色色| 开心五月激情五月丁香五月婷婷| 色天堂A| 日韩AV在线影片| 九九re精品视频在线观看| 日本熟妇人妻在线| 91色逼| 丁香六月成人| 色屌丝中文字幕| 99热精品在这里| 激情综合五月色在线| 久久五月婷婷丁香| 婷婷丁香九色| 日日操夜夜撸| 99精品在线观看| 色狠狠图片| 五月丁香综合啪啪| 色五月婷婷1| 丁香六月成人| 深爱五月婷婷| yellow视频在线观看91| 99re视频精品| 久久网站观看免费欧洲国产| 秋霞AV淫| 亚洲99一级无嗎特制在线| 亚洲激情综合| AV九九| 99热综合色图| 色婷婷五月中文字幕在线dvd| 广东99色在线| 九九亚洲视频| 色婷久九| 97热超碰| 91久久精品国产91性色TV| 丁香五月香蕉| 天天操无码| 天天干一干| 婷婷色正月| 99热这里只有精品1998| 亚洲天堂亚洲色色色| 操人91| 91九色|疯狂|高潮|对白|| 久久九九re热| 玖玖综合色区在线观看| 五月网站| 国产偷人爽久久久久久老妇APP| 久热无码| 色综合激情| 人人97碰| 五月婷婷中文字幕| 97色天堂| 成人综合视频在线| 婷婷狠狠97| 丁香六月婷婷色播| 五月天色区| 色五月在线播放| 99视频在线精品免费观看2| 天天天天天天天操| 色人妻五月| 蜜臀嫩草| 久久久精品人妻录| 26uuu欧美宗合| 丁香五月六月婷婷殴美综合| 日日做夜夜爱| 永久AⅤ1| 天天色天天爱天天爱天天爱y| 五月宗合激情网| 婷婷五月花丁香| 99热只有这里有精品| 五月丁香中文| 婷婷五月丁香欧洲| 热久国产| 婷婷五月天精品| 天天爽天天日| 这里只有精品视频| 超碰日韩成人| av人人操| 91精品又长又大又粗又爽又猛| 97婷婷狠狠久久综合9色| 丁香五月色五月| 色情五月丁香| 全网最新网黄大秀直播高清,主播国产录屏在线 | 99久久99热这里只有精品| 思思热在线视频99| 可以看的AV网站| 色五月激情| 亚洲色婷婷| 97超碰,人人舔,人人操,人人摸| 91五月花丁香| 婷婷丁香五月91| 九九成人精品免费视频| 青草久久五月婷伊人| 一区二区三区四区无码| 思思久久精品| AV电影在线播放| 大地9中文在线观看免费高清| 97搞在线| 久久香蕉福利| 99色看这里只有精品| 五月天色裸体视频| 伊人玖玖精品| 开心五月天激情网| 婷婷五月天成人视频| 五月丁香六月婷婷成人| 丁香五月天天哦| 色婷婷五月综合网| 色呦呦美女| 国产精品a无线| 色吊丝中文字幕| 就要爱综合| 丁香五月亚洲天堂| 999热在线视频| 精品亚洲国产成AV人片传媒| 9 1在线视频| 天天操夜夜啊| 亭亭五月色男人| 99视频精品在线| 亚洲一级 片内射网站在线观看| 五月天久久www| 五月天婷婷青青| 超碰人人99| 久久在线视频免费观看| 色日本综合| 激情五月丁香色婷婷| 99人妻碰碰碰久久久久视| 裸体做A爰片毛片A片免费| 亚洲激情五月| 热的国产,热的综合,热的有码| 五月天伊人网| 成人做爰高潮A片免费视频| 亚洲狠狠婷婷| 99久久成人| 激情五月婷婷综合| 99久久人人| 91丨九色丨熟女丰满| 26uuu国产| 婷婷色六月| 色五月婷婷五月久久| A在线观看| 激情AV综合| 色情五月天视频网| 久久久久久人妻| 电影91久久久| 亚洲一个色| 五月婷婷导航| 五月丁香狠狠爱婷婷综合| 人人操Av| 色婷婷19| 久久五月天激情婷婷| 久久99热 这里有精品| www.zbzhongsen.com| 99热精品超碰| 丁香色情五月综合网站| 狠狠狠狠狠| 超碰99久久| 天天做天天爽| 涩丁香91| 天天色天天噜| 91九色首页| 人妻av在线| 色哟哟精品| 91人人妻人人操| 天天色综合网1| 中文字幕有多少字| 有码人妻久久| 九九视频在线| 国产成人+综合亚洲+天堂| 91九色视频在线观看| 97人妻人人| 狠色色狠网| 久久ri精品| 五月永久激情| 色婷婷丁香A片区毛片区女人区| 综合亚洲六月婷婷在线| 成人国产综合| 热五月婷婷| 99玖玖在线视频| 97碰碰在线观看视频| 五月丁香六月色| 激情五月婷婷啪啪| 亚洲热视频| 91啪啪啪啪| 五月婷婷综合视频| 婷婷欧美激情| 日本WWW九九九| 色五月色图| 亚洲熟女色| 99热爱爱干干日| 激情婷婷色色| 一级片sese片.COM| 99色色网| 日日夜夜狠狠婷婷色| 99九九精品| 天天激情综合| 国产69久久久欧美黑人A片| 婷婷五月丁香高清无码| 欧美槡BBBB槡BBB少妇| www.色五月天.com| 激情五月天色色色|