国产成人欧美一区二区三区vr_久久国产精品人人爽人人爽_国产精品永久免费播放_肉欲啪啪a∨无码精品一区二区_国产超短裙jk丝袜在线_亚洲AV片高清资源在线观看_国模无码一区二区三区久久_国产成年人未进视频_中文字幕无码精品夜_一区二区三区在线视频免费看_亚洲成AV人片在线观看网址_日本激情视频高清综合久久_亚洲午夜视频福利_国内大量揄拍人妻精品視_久久国产精品福利二区三区

ARTICLE DETAIL

資訊詳情

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

開源CLI代碼審查工具:Git驅(qū)動、LLM增強(qiáng)、可審計的自動化Code Review

開源CLI代碼審查工具:Git驅(qū)動、LLM增強(qiáng)、可審計的自動化Code Review 1. 項目概述一個真正能落地的開源代碼審查 CLI 工具“open-code-review”這個名字乍一聽像某個 GitHub 上剛創(chuàng)建的冷門倉庫但如果你最近在 DevOps 團(tuán)隊里參與過三次以上 PR 合并流程或者自己維護(hù)過超過五個活躍的開源項目你大概率已經(jīng)默默忍受過這樣的場景人工 Code Review 耗時占到 PR 周期的 40% 以上新人提交的 commit message 寫著“fix bug”卻改了三處核心邏輯關(guān)鍵函數(shù)缺少邊界校驗但 reviewer 沒注意到更糟的是有人把.env文件誤提交密鑰明文躺在 Git 歷史里——而這些本該在git push后的 30 秒內(nèi)就被攔截。open-code-review 不是另一個“用 LLM 包裝 git diff 的玩具 CLI”它是一個以 Git 為輸入源、以可審計性為設(shè)計底線、以開發(fā)者真實工作流為唯一標(biāo)尺的命令行代碼審查系統(tǒng)。它不替代人而是把人從重復(fù)檢查中解放出來專注在架構(gòu)權(quán)衡、業(yè)務(wù)邏輯合理性、安全邊界設(shè)計等真正需要經(jīng)驗判斷的地方。核心關(guān)鍵詞 open-code-review、CLI、LLM、code review、Git 全部不是裝飾詞——open 指其規(guī)則引擎完全可配置、模型調(diào)用鏈路全程透明、審查結(jié)果可導(dǎo)出為標(biāo)準(zhǔn) SARIF 格式code-review 是它的唯一使命不做文檔生成、不寫測試用例、不重構(gòu)代碼CLI 是它的唯一交互界面拒絕 Web UI、不依賴 IDE 插件、不綁定特定云服務(wù)LLM 是它的推理引擎但絕非黑盒——所有 prompt 模板開放可查所有模型調(diào)用支持本地 Ollama 或遠(yuǎn)程 API 雙模式且默認(rèn)啟用 token 級別敏感信息過濾Git 是它的唯一數(shù)據(jù)源直接讀取工作區(qū)狀態(tài)、暫存區(qū)變更、commit diff 和 branch 關(guān)系圖不依賴 GitHub/GitLab API也不要求你先 push 到遠(yuǎn)端。我從去年開始在三個中型團(tuán)隊內(nèi)部灰度部署這個工具鏈實測下來平均每次 PR 的人工 Review 時間從 28 分鐘壓縮到 9 分鐘高危漏洞如硬編碼密鑰、SQL 拼接、反序列化入口檢出率提升 3.7 倍最關(guān)鍵的是——它讓 Senior Developer 終于能把精力從“找 typo”轉(zhuǎn)移到“這個狀態(tài)機(jī)設(shè)計是否可擴(kuò)展”。適合誰不是 LLM 愛好者而是每天要處理 5 個 PR 的 Tech Lead不是想嘗鮮的新手而是被 CI/CD 流水線卡點(diǎn)折磨得睡不著覺的 DevOps 工程師不是追求“AI 自動寫代碼”的幻想家而是信奉“自動化必須可解釋、可回滾、可審計”的務(wù)實派。2. 整體設(shè)計思路與方案選型邏輯2.1 為什么必須是 CLI 而不是 Web 或 IDE 插件很多人第一反應(yīng)是“做個 VS Code 插件不更方便”——這恰恰是 open-code-review 設(shè)計上最堅決的取舍。我們做過 A/B 測試在同一個團(tuán)隊一半人用插件版實時高亮一半人用 CLI 版ocr review --branch dev。結(jié)果插件用戶平均單次 Review 耗時反而多出 2.3 分鐘。原因很現(xiàn)實IDE 插件會強(qiáng)制你在編輯器里停留打斷你正在調(diào)試的進(jìn)程它依賴語言服務(wù)器狀態(tài)而 TypeScript 項目啟動 Language Server 常需 8~12 秒更致命的是它無法覆蓋 Git 預(yù)提交鉤子pre-commit hook場景——你不可能在git commit前彈出一個 VS Code 窗口讓你確認(rèn)。而 CLI 天然適配所有環(huán)節(jié)開發(fā)階段可手動觸發(fā)ocr diff HEAD~1CI 流水線中可作為 stage 運(yùn)行- name: Run Open Code Review\n run: ocr review --pr-id ${{ github.event.number }}甚至能嵌入到 Git 的 pre-commit 鉤子里#!/bin/sh\nocr diff --staged exit 0 || exit 1。更重要的是CLI 的輸入輸出完全標(biāo)準(zhǔn)化輸入是 Git 的 diff 輸出git diff --no-color -U0輸出是結(jié)構(gòu)化 JSON 或 SARIF這意味著它可以無縫接入 SonarQube、DefectDojo、Jira Automation 等任何已有系統(tǒng)。我們曾用 17 行 Bash 腳本把 ocr 的輸出轉(zhuǎn)成 Jira ticket整個過程不需要改一行 ocr 源碼。這種“管道化”能力是 GUI 或插件永遠(yuǎn)無法提供的底層自由度。2.2 LLM 的角色定位推理引擎而非決策主體網(wǎng)絡(luò)熱詞里反復(fù)出現(xiàn) “LLM”、“agent”、“embedding”但 open-code-review 對 LLM 的使用有明確紅線它只負(fù)責(zé)“理解上下文 推理風(fēng)險”絕不做“自動修復(fù)”或“建議修改”。為什么因為我們在 2023 年 Q3 的一次線上事故中親眼見過某團(tuán)隊啟用了“AI 自動修復(fù)”功能LLM 把一段涉及金融計算精度的BigDecimal.setScale(2, RoundingMode.HALF_UP)錯誤地改成了setScale(2)丟失了 rounding mode 參數(shù)導(dǎo)致支付金額四舍五入邏輯失效。open-code-review 的 LLM 調(diào)用嚴(yán)格遵循三原則第一輸入限定為 Git diff 片段 當(dāng)前文件路徑 項目語言類型通過git ls-files --cached | head -n 1 | xargs file -b自動識別絕不傳入整個文件內(nèi)容第二prompt 模板強(qiáng)制包含“你只能輸出 JSON字段僅限{ severity: high|medium|low, line_number: 42, message: 硬編碼密鑰請使用環(huán)境變量注入, suggestion: 將 API_KEY \sk-xxx\ 替換為 API_KEY os.getenv(\API_KEY\) }”連標(biāo)點(diǎn)符號都固定第三所有輸出必須通過后置校驗器post-processor——比如檢測suggestion字段是否包含eval(、exec(、os.system(等危險函數(shù)調(diào)用一旦命中立即丟棄該條建議并標(biāo)記為“LLM 輸出不可信”。這種設(shè)計讓 LLM 退回到它最擅長的位置基于海量代碼樣本訓(xùn)練出的模式識別能力。它看到process.env.JWT_SECRET就知道這是密鑰看到SELECT * FROM users WHERE id ${req.query.id}就標(biāo)記 SQL 注入風(fēng)險但它不會擅自重寫 SQL——那是開發(fā)者的事。我們甚至把 LLM 的 role 定義為“資深 Junior Developer”而不是“Architect”因為 Junior Developer 會指出問題但不會越權(quán)決定架構(gòu)。2.3 Git 作為唯一可信數(shù)據(jù)源的工程意義標(biāo)題里的 Git 不是擺設(shè)。open-code-review 的所有分析起點(diǎn)都是 Git 的原生命令輸出。它不解析.git/config不讀取~/.gitconfig不猜測 remote 地址——它只信任git rev-parse --abbrev-ref HEAD返回的當(dāng)前分支名只信任git diff --cached --name-only返回的暫存文件列表只信任git show :package.json | jq -r .engines.node返回的 Node.js 版本約束。這種“Git-first”哲學(xué)帶來三個關(guān)鍵收益一是跨平臺一致性。Windows 用戶用 Git BashmacOS 用戶用 TerminalLinux 用戶用 zsh只要git命令可用ocr 就能運(yùn)行無需額外安裝 Python 或 Node.js 運(yùn)行時二進(jìn)制包自帶靜態(tài)鏈接的 Rust runtime二是零配置遷移。你把項目 clone 到新機(jī)器git clone cd project ocr init它自動識別出這是 Python 項目requirements.txt存在、Docker 項目Dockerfile存在、前端項目package.json中scripts.build存在并加載對應(yīng)規(guī)則集不需要你手動寫.ocr.yml三是歷史可追溯。當(dāng)某次 Review 報告出錯你可以精確復(fù)現(xiàn)git checkout abc123 ocr review --commit abc123因為所有分析都基于 Git object ID而非文件系統(tǒng)時間戳或 IDE 緩存。我們曾用這套機(jī)制定位過一個持續(xù) 3 個月的 false positive某次git merge產(chǎn)生的 conflicted diff 被錯誤解析導(dǎo)致 LLM 收到帶 HEAD標(biāo)記的臟數(shù)據(jù)。解決方案不是修 LLM而是強(qiáng)化 Git diff 解析器——現(xiàn)在 ocr 會先運(yùn)行g(shù)it diff --check驗證沖突狀態(tài)再決定是否跳過該 commit。這種對 Git 原語的深度信任讓整個系統(tǒng)具備了傳統(tǒng)靜態(tài)分析工具難以企及的魯棒性。2.4 “Open”的真實含義可審計、可替換、可離線熱搜詞里“open code review”常被誤解為“開源代碼”但這里的 open 指的是開放治理模型。ocr 的規(guī)則引擎rule engine完全插件化默認(rèn)規(guī)則集放在rules/目錄下每條規(guī)則是一個獨(dú)立的 YAML 文件例如python/hardcoded-secret.yamlid: python-hardcoded-secret language: python trigger: r\b[A-Z_]{3,}\s*\s*[\\].*[\\]i severity: high message: 檢測到硬編碼密鑰請使用環(huán)境變量管理 suggestion: 將 {{match}} 替換為 os.getenv(\{{key}}\)你可以隨時ocr rule add ./my-rules/sql-injection.yaml加載自定義規(guī)則也可以ocr rule disable python-hardcoded-secret禁用默認(rèn)規(guī)則。LLM 模型層同樣開放ocr config set llm.provider ollama切換到本地 Ollamaocr config set llm.model llama3:70b指定大模型ocr config set llm.api_url https://your-llm-gateway.com/v1接入私有 API。最關(guān)鍵的是離線能力——當(dāng)你的 CI 服務(wù)器處于 air-gapped 環(huán)境時ocr 會自動降級到規(guī)則引擎模式rule-only mode此時它仍能檢測 83% 的常見缺陷如空指針、資源泄漏、硬編碼只是不觸發(fā) LLM 分析。我們給某銀行核心系統(tǒng)部署時就靠這個模式通過了安全審計所有 LLM 調(diào)用被禁用但規(guī)則引擎仍在運(yùn)行審計報告里明確寫著“未引入外部 AI 服務(wù)符合金融行業(yè)數(shù)據(jù)不出域要求”。這種真正的 open不是開源許可證上的文字游戲而是把控制權(quán)交還給使用者的工程實踐。3. 核心細(xì)節(jié)解析與實操要點(diǎn)3.1 安裝與初始化零依賴、單二進(jìn)制、Git-awareopen-code-review 的安裝設(shè)計徹底拋棄了“先裝 Python再 pip install再配置 PATH”的傳統(tǒng)路徑。它提供一個 22MB 的靜態(tài)鏈接二進(jìn)制文件Linux/macOS/Windows 全平臺下載即用# Linux/macOS curl -fsSL https://github.com/open-code-review/ocr/releases/latest/download/ocr-linux-amd64 -o /usr/local/bin/ocr chmod x /usr/local/bin/ocr # Windows (PowerShell) Invoke-WebRequest -Uri https://github.com/open-code-review/ocr/releases/latest/download/ocr-windows-amd64.exe -OutFile $env:ProgramFiles\ocr.exe # 添加到 PATH [Environment]::SetEnvironmentVariable(Path, $env:Path;$env:ProgramFiles, User)為什么堅持單二進(jìn)制因為我們在客戶現(xiàn)場發(fā)現(xiàn)92% 的 CI 環(huán)境尤其是 Jenkins Agent不允許執(zhí)行pip install它們只允許curl下載和chmod。ocr 的二進(jìn)制文件內(nèi)置了所有依賴Rust 的git2庫用于 Git 操作reqwest用于 HTTP 請求serde_json用于序列化甚至包含了輕量級的正則引擎避免依賴 PCRE。初始化命令ocr init會做三件事第一掃描當(dāng)前目錄下的.git確認(rèn)這是一個 Git 倉庫第二運(yùn)行g(shù)it ls-files --cached獲取所有 tracked 文件按后綴分組.py,.js,.java等生成project.lang文件記錄語言構(gòu)成第三創(chuàng)建~/.ocr/config.toml其中default_provider根據(jù)系統(tǒng)自動選擇——如果檢測到ollama serve正在運(yùn)行則設(shè)為ollama否則設(shè)為api需后續(xù)配置 API Key。這個過程耗時通常低于 800ms比git status還快。特別注意ocr init不會修改你的項目文件它只讀取 Git 狀態(tài)因此可以安全地在生產(chǎn)環(huán)境倉庫中運(yùn)行。3.2 規(guī)則引擎正則驅(qū)動的確定性檢查LLM 負(fù)責(zé)模糊推理規(guī)則引擎負(fù)責(zé)確定性檢查。ocr 的規(guī)則引擎采用“正則匹配 上下文感知”雙層機(jī)制。以檢測 Java 中的System.out.println為例規(guī)則文件java/debug-print.yamlid: java-debug-print language: java # 第一層快速正則匹配 trigger: rSystem\.out\.println\s*\(i # 第二層上下文過濾避免誤報 context_filter: - type: file_path pattern: test/|Test.java$ - type: line_content pattern: // NOCHECK # 輸出模板 output: severity: low message: 檢測到調(diào)試輸出請移除或替換為日志框架 suggestion: 使用 SLF4J 的 logger.info() 替代這里的關(guān)鍵是context_filter它不是簡單地跳過 test 目錄而是精確到“該行所在文件路徑是否匹配test/或以Test.java結(jié)尾”以及“該行是否包含// NOCHECK注釋”。這種設(shè)計讓規(guī)則既嚴(yán)格又靈活。實測中我們發(fā)現(xiàn)單純用正則會導(dǎo)致大量誤報比如System.out.println出現(xiàn)在注釋里而加入上下文過濾后誤報率從 37% 降至 1.2%。規(guī)則引擎的執(zhí)行流程是先用trigger正則批量掃描所有 diff 文件再對每個匹配行提取前后 3 行代碼git show :file | sed -n $((line-3)),$((line3))p最后應(yīng)用context_filter進(jìn)行二次驗證。整個過程不啟動 LLM純 CPU 計算1000 行 diff 的規(guī)則檢查耗時約 120ms。你可以用ocr rule list查看所有啟用規(guī)則用ocr rule show java-debug-print查看具體配置甚至用ocr rule test --file src/main/java/Service.java --line 42實時驗證規(guī)則效果——這比改完規(guī)則再跑一遍ocr review快得多。3.3 LLM 分析流水線Diff 分片、Prompt 工程、輸出校驗當(dāng)規(guī)則引擎無法覆蓋時比如判斷一段 Python 代碼是否存在業(yè)務(wù)邏輯漏洞LLM 分析啟動。但直接把整個git diff丟給 LLM 是災(zāi)難性的一個中型 PR 的 diff 可能超 2000 行而主流模型上下文窗口僅 32K token。ocr 的解決方案是“智能分片smart chunking”語義分片對每個修改文件按函數(shù)/類邊界切分。例如 Python 文件用 AST 解析器找到所有def和class節(jié)點(diǎn)確保每個分片是一個完整函數(shù)體上下文注入每個分片附帶 5 行前置代碼函數(shù)簽名、import 語句和 3 行后置代碼空行或下一個 def長度裁剪單個分片不超過 1200 token超出部分截斷并標(biāo)記... [TRUNCATED]并行請求最多并發(fā) 4 個 LLM 請求可配置避免阻塞。Prompt 模板經(jīng)過 17 輪 A/B 測試優(yōu)化核心結(jié)構(gòu)如下你是一名資深代碼審查員專注于 {{language}} 項目。請嚴(yán)格按以下 JSON 格式輸出不要有任何額外文本 { issues: [ { severity: high|medium|low, line_number: 42, message: 簡明描述問題, suggestion: 具體修改建議不超過 15 字, code_snippet: 問題所在代碼行帶行號 } ] } 當(dāng)前文件{{file_path}} 修改類型{{add|delete|modify}} diff 片段 {{diff_chunk}}注意modification_type字段——LLM 會根據(jù) diff 符號/-判斷這是新增、刪除還是修改這對判斷風(fēng)險至關(guān)重要。比如新增eval()是高危而刪除eval()是安全行為。所有 LLM 輸出必須通過三層校驗第一層 JSON Schema 校驗確保字段存在且類型正確第二層內(nèi)容校驗suggestion不能含TODO、FIXME等占位符message不能含maybe、probably等模糊詞第三層安全校驗正則匹配suggestion是否含os.system、subprocess.call、exec等危險調(diào)用。任一校驗失敗該分片標(biāo)記為 “LLM_UNTRUSTED”并 fallback 到規(guī)則引擎重新掃描。我們統(tǒng)計過在 12,000 次 LLM 調(diào)用中校驗失敗率 4.3%其中 92% 是因suggestion過長或含模糊詞——這證明校驗機(jī)制有效攔截了不可控輸出。3.4 敏感信息防護(hù)密鑰泄露的實時攔截?zé)崴言~里高頻出現(xiàn)“使用 LLM 時如何防止密鑰等鑒權(quán)信息泄露”這正是 ocr 的核心防護(hù)點(diǎn)。它采用“預(yù)過濾 后校驗”雙保險預(yù)過濾Pre-filtering在 LLM 調(diào)用前對 diff 片段執(zhí)行密鑰掃描。使用truffleHog的規(guī)則庫已內(nèi)置但做了關(guān)鍵改進(jìn)不掃描整個文件只掃描行新增內(nèi)容且只匹配 8 位以上十六進(jìn)制字符串、AWS Access Key 格式AKIA[0-9A-Z]{16}、Google Cloud Key 格式-----BEGIN PRIVATE KEY-----。掃描速度極快100 行 diff 耗時 5ms。后校驗Post-validationLLM 輸出的suggestion字段被強(qiáng)制要求不含任何密鑰值。校驗器會提取suggestion中所有引號內(nèi)的字符串用正則r(sk-[a-zA-Z0-9]{32}|AKIA[0-9A-Z]{16}|-----BEGIN.*?PRIVATE KEY-----)匹配一旦命中立即丟棄整條建議。更關(guān)鍵的是ocr 會主動阻止含密鑰的 commit。當(dāng)你運(yùn)行ocr pre-commit綁定到 Git hooks它會檢查git diff --cached如果發(fā)現(xiàn)新增行含密鑰直接退出并打印? CRITICAL: Detected AWS Access Key in src/config.py line 23 AKIAQWERTYUIOPASDFGH Please remove and use environment variables instead. Aborting commit.這個功能上線后某電商團(tuán)隊的密鑰泄露事件從月均 2.3 起降至 0。他們后來把ocr pre-commit寫進(jìn)公司入職培訓(xùn)文檔新員工第一天就要學(xué)會怎么用它。4. 實操過程與核心環(huán)節(jié)實現(xiàn)4.1 從零開始的一次完整 Review以 Python Web 項目為例假設(shè)你正在開發(fā)一個 Flask API 項目剛完成一個用戶登錄功能的 PR準(zhǔn)備提交。以下是ocr的完整實操流程第一步安裝與初始化# 下載二進(jìn)制以 macOS 為例 curl -fsSL https://github.com/open-code-review/ocr/releases/latest/download/ocr-darwin-arm64 -o /usr/local/bin/ocr chmod x /usr/local/bin/ocr # 初始化自動檢測 Python 項目 cd my-flask-app ocr init # 輸出? Initialized for Python project. Detected 12 .py files.第二步預(yù)提交檢查防止密鑰泄露# 修改代碼后暫存變更 git add . # 運(yùn)行預(yù)提交檢查 ocr pre-commit # 如果一切正常輸出? No sensitive patterns found. Proceeding with commit. # 如果發(fā)現(xiàn)密鑰會立即中止并提示位置第三步本地 Review聚焦邏輯缺陷# 提交前對本次變更做深度 Review ocr review --staged # 輸出示例 # # Python Analysis (2 files) # # src/auth.py:42 # ?? medium: Session cookie 設(shè)置未指定 HttpOnly 和 Secure 標(biāo)志 # Suggestion: Add httponlyTrue, secureTrue to make_response() # # tests/test_auth.py:15 # ? no issues found # # LLM Analysis (1 chunk) # # src/auth.py:38-45 # high: 密碼驗證邏輯未使用恒定時間比較存在時序攻擊風(fēng)險 # Suggestion: Replace with hmac.compare_digest()注意--staged參數(shù)——它只分析git add后暫存區(qū)的內(nèi)容不碰工作區(qū)未暫存的修改確保 Review 對象與即將提交的內(nèi)容完全一致。第四步CI 流水線集成GitHub Actions在.github/workflows/ci.yml中添加- name: Open Code Review uses: open-code-review/actionv1 with: token: ${{ secrets.GITHUB_TOKEN }} # 可選指定 LLM 模型 # model: llama3:70b # 失敗時不中斷流水線只輸出報告 continue-on-error: true當(dāng) PR 提交時action 會自動運(yùn)行ocr review --pr-id ${{ github.event.number }}并將結(jié)果以 comment 形式發(fā)布在 PR 頁面。報告包含 SARIF 格式附件可直接導(dǎo)入 GitHub Code Scanning。第五步結(jié)果導(dǎo)出與審計# 導(dǎo)出為 SARIF供 SonarQube 導(dǎo)入 ocr review --staged --format sarif report.sarif # 導(dǎo)出為 Markdown供團(tuán)隊周會分享 ocr review --staged --format markdown review-report.md # 查看詳細(xì)日志排查 false positive ocr review --staged --debug # 輸出包含每個規(guī)則的匹配詳情、LLM 請求的完整 prompt、響應(yīng)原始 JSON整個流程從安裝到生成報告不超過 3 分鐘。我們團(tuán)隊的標(biāo)準(zhǔn) SOP 是git add后必跑ocr pre-commitgit commit前必跑ocr review --stagedPR 描述里必須貼ocr review --staged --format markdown的輸出。這已成為代碼質(zhì)量的硬性門檻。4.2 LLM 模型切換實戰(zhàn)Ollama vs 遠(yuǎn)程 APILLM 是可選項但配置不當(dāng)會導(dǎo)致體驗斷層。以下是兩種主流模式的實操對比Ollama 模式推薦本地開發(fā)# 1. 安裝 Ollamahttps://ollama.com # 2. 拉取模型首次耗時較長后續(xù)秒級 ollama pull llama3:70b # 3. 配置 ocr 使用本地模型 ocr config set llm.provider ollama ocr config set llm.model llama3:70b # 4. 驗證連接 ocr llm ping # 輸出? Connected to Ollama. Model llama3:70b loaded.優(yōu)勢完全離線、無 API Key、響應(yīng)快平均 1.8s/chunk、隱私絕對可控。劣勢需要 24GB RAMllama3:70b小內(nèi)存機(jī)器建議用phi3:mini2GB RAM響應(yīng) 0.4s。遠(yuǎn)程 API 模式推薦 CI 環(huán)境# 1. 獲取 API Key如 Anthropic Claude # 2. 配置 ocr ocr config set llm.provider api ocr config set llm.api_url https://api.anthropic.com/v1/messages ocr config set llm.api_key sk-ant-api03-... # 3. 設(shè)置模型和參數(shù)Claude 要求 ocr config set llm.model claude-3-haiku-20240307 ocr config set llm.temperature 0.1 ocr config set llm.max_tokens 1024關(guān)鍵參數(shù)說明temperature 0.1強(qiáng)制 LLM 輸出確定性結(jié)果避免同一 diff 兩次 Review 得到不同建議max_tokens 1024限制響應(yīng)長度防止 LLM “過度發(fā)揮”寫長篇大論api_url必須精確到 endpointocr 不做 URL 拼接。我們實測過 5 種模型GPT-4-turbo準(zhǔn)確率最高但貴、Claude-3-haiku性價比最優(yōu)$0.25/1M tokens、llama3:70b本地最強(qiáng)但硬件要求高、phi3:mini邊緣設(shè)備首選、deepseek-coderPython 專項最強(qiáng)。ocr 的設(shè)計讓切換模型只需改兩行配置無需改代碼。4.3 自定義規(guī)則開發(fā)從需求到上線當(dāng)默認(rèn)規(guī)則無法覆蓋業(yè)務(wù)場景時你需要寫自定義規(guī)則。以“禁止在 Python 中使用pickle.load()”為例存在反序列化風(fēng)險步驟 1創(chuàng)建規(guī)則文件mkdir -p ~/.ocr/rules cat ~/.ocr/rules/python/pickle-load.yaml EOF id: python-pickle-load language: python trigger: rpickle\.load\s*\(i context_filter: - type: file_path pattern: migrations/|tests/ output: severity: high message: 檢測到 pickle.load()存在反序列化風(fēng)險請改用 safer 替代方案 suggestion: 使用 json.load() 或 dataclasses.asdict() EOF步驟 2啟用規(guī)則ocr rule add ~/.ocr/rules/python/pickle-load.yaml # 輸出? Added rule python-pickle-load步驟 3測試規(guī)則# 創(chuàng)建測試文件 echo import pickle; pickle.load(open(data.pkl, rb)) test.py # 運(yùn)行規(guī)則測試 ocr rule test --file test.py --line 1 # 輸出 # ? Matched rule python-pickle-load # Line 1: import pickle; pickle.load(open(data.pkl, rb)) # → high: 檢測到 pickle.load()存在反序列化風(fēng)險...步驟 4集成到 Reviewocr review --staged # 現(xiàn)在會報告 test.py 的問題整個過程不到 2 分鐘。規(guī)則開發(fā)的核心是trigger正則的精準(zhǔn)性——我們建議先用grep -n pickle\.load *.py在項目中驗證正則是否匹配真實代碼再寫入規(guī)則。context_filter是減少誤報的關(guān)鍵務(wù)必利用file_path過濾掉 migrations 和 tests 目錄。4.4 Git Hooks 深度集成讓 Review 成為肌肉記憶讓ocr真正融入工作流必須綁定 Git hooks。ocr 提供一鍵安裝ocr hook install # 在 .git/hooks/pre-commit 創(chuàng)建腳本 # 在 .git/hooks/pre-push 創(chuàng)建腳本生成的pre-commit腳本內(nèi)容精簡#!/bin/sh # ocr pre-commit hook if ! command -v ocr /dev/null 21; then echo ?? ocr not found. Skipping review. exit 0 fi if ! ocr pre-commit; then echo ? Commit aborted by open-code-review. exit 1 fi關(guān)鍵設(shè)計靜默降級如果ocr命令不存在腳本exit 0不阻斷提交避免新成員環(huán)境缺失導(dǎo)致無法工作顯式失敗ocr pre-commit返回非 0 時exit 1強(qiáng)制中止 commit無網(wǎng)絡(luò)依賴pre-commit只運(yùn)行規(guī)則引擎不觸發(fā) LLM確保離線可用。pre-pushhook 更進(jìn)一步#!/bin/sh # ocr pre-push hook # 檢查本次推送的 commits 是否有高危問題 ocr review --range $1..$2 --severity high # 如果發(fā)現(xiàn) high 問題阻止推送這能防止“本地沒發(fā)現(xiàn)問題但 CI 發(fā)現(xiàn)高危漏洞”的尷尬。我們團(tuán)隊規(guī)定pre-pushhook 是強(qiáng)制啟用的所有成員的.git/config中都有hook.prepushtrue。5. 常見問題與排查技巧實錄5.1 典型問題速查表問題現(xiàn)象可能原因排查命令解決方案ocr: command not foundPATH 未包含/usr/local/binecho $PATHexport PATH/usr/local/bin:$PATH并寫入~/.zshrcLLM_UNTRUSTED頻繁出現(xiàn)LLM 輸出格式不合規(guī)ocr review --staged --debug檢查--debug輸出中的 raw LLM response調(diào)整llm.temperature或更換模型pre-commit hook not workingGit hooks 權(quán)限不足ls -l .git/hooks/pre-commitchmod x .git/hooks/pre-commitNo issues found但明顯有 bug規(guī)則未覆蓋該語言ocr init確認(rèn)project.lang文件中 language 正確或手動ocr config set project.language pythonSARIF export fails輸出路徑無寫入權(quán)限ocr review --staged --format sarif /tmp/report.sarif檢查目標(biāo)目錄權(quán)限或用絕對路徑5.2 實操中踩過的坑與獨(dú)家技巧坑 1LLM 在長函數(shù)中漏報關(guān)鍵行現(xiàn)象一個 200 行的 Python 函數(shù)修改LLM 只報告了第 150 行的 bug卻忽略了第 42 行的 SQL 注入。原因智能分片時AST 解析器把函數(shù)切成了兩個分片第 1-100 行第 101-200 行而 SQL 注入在第一個分片但 LLM 由于上下文長度限制只關(guān)注了結(jié)尾部分。解決ocr config set llm.chunk_size 800默認(rèn) 1200強(qiáng)制更細(xì)粒度分片或手動指定ocr review --file src/db.py --lines 40-50精準(zhǔn)掃描???2Git diff 中的 Unicode 字符導(dǎo)致 LLM 解析失敗現(xiàn)象ocr review報錯invalid utf-8 sequence。原因某些編輯器保存文件時用了 BOM 或特殊 Unicode 字符Git diff 輸出包含非法字節(jié)。解決ocr config set git.safe_diff true啟用git diff --no-color -U0 --encodingUTF-8參數(shù)強(qiáng)制 UTF-8 編碼???3CI 環(huán)境中 Ollama 無法啟動現(xiàn)象GitHub Actions 中ocr llm ping超時。原因Ollama 需要 systemd 或 Docker而 GitHub Runner 是無狀態(tài)容器。解決CI 中強(qiáng)制使用 API 模式ocr config set llm.provider api并在 workflow 中設(shè)置 secrets。獨(dú)家技巧 1用ocr diff快速定位變更焦點(diǎn)ocr diff不是簡單包裝git diff它會高亮顯示新增代碼綠色刪除代碼紅色修改代碼黃色背景并在每行前標(biāo)注R規(guī)則引擎命中、LLLM 分析、S敏感信息這樣你一眼就能看出哪些變更已被審查哪些需要人工復(fù)查。獨(dú)家技巧 2--dry-run模式預(yù)演 Reviewocr review --staged --dry-run會模擬整個流程包括 LLM 請求但不實際調(diào)用 LLM只輸出將要發(fā)送的 prompt。這在調(diào)試新規(guī)則或新模型時極其有用避免浪費(fèi) token 和等待時間。獨(dú)家技巧 3ocr log tail實時監(jiān)控ocr log tail會監(jiān)聽~/.ocr/logs/review.log顯示最近 10 次 Review 的耗時、LLM 調(diào)用次數(shù)、規(guī)則匹配數(shù)。當(dāng)團(tuán)隊反饋 Review 變慢時我們第一反應(yīng)就是ocr log tail看是 LLM 延遲升高還是規(guī)則引擎匹配過多。5.3 性能調(diào)優(yōu)讓 Review 速度提升 3 倍默認(rèn)配置適合大多數(shù)場景但大型項目需要調(diào)優(yōu)禁用低價值 LLM 分析ocr config set llm.skip_low_severity trueLLM 只分析high和medium問題low問題全由規(guī)則引擎處理緩存 LLM 響應(yīng)ocr config set llm.cache_enabled true對相同 diff 片段的 LLM 響應(yīng)緩存 24 小時基于 SHA256 hash并行度調(diào)整ocr config set llm.concurrency 2默認(rèn) 4在 CPU 核心少的機(jī)器上降低并發(fā)避免 OOM規(guī)則引擎加速ocr config set rule.fast_mode true跳過context_filter的文件
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
色色香蕉| 亚洲人妻五月丁香婷婷| 综合久久中文字幕综合日韩精品| 亚洲熟女综合一区二区| 97精品久久久久中文字幕| 日韩少妇一区二区三区| 国产一区二区三区高清视频| 啊啊啊啊啊啊好多水| 久久久久久久久国产| 日韩影片中文字幕一区二区三区| 国产18精品亚洲精品| 欧美一级美片在线观看免费| 91熟女网| 狠狠干2020| 英伦大奶子熟妇吊带| 日韩黄色电影网站| 台湾成人无码AV| 另类图片综合| 97鸡把在线视频| 人人九九精| 天天夜夜久久| 日本九九久久99播| 亚洲日产专区| 啊啊啊啊嗯嗯嗯用力好爽| av在线观看不卡网站| 91无码西班牙视频在线| 18禁看网站一区| 久9综合在线| 夜夜操中文字幕| 中文字幕、久久精品国产2020、久久综合久久自在自线精品自、亚洲 | 91A欧美电影网站| 国产天天噜一噜久久久| 美女91色黄18| 黑人精品欧美一区二区蜜桃| 亚洲精品蜜桃久久久| 色哟哟精品1精品2| av亚欧| 97超碰9| 深夜激情| 国产又粗又长又大的视频| 岛国福利在线精品播放| 日本www操操操| 一级特黄aaa大片在线观看成人一级片在线观看 | 色婷婷亚洲婷婷| 色色五月婷婷| 你操综合| 日本熟人妻中文字幕在线|...久久国产精品-国产精品_日本一区二区三区中文字幕 | 免费久久一级毛片大黄| 大香网站| 国产成人网| 国产激情综合五月久久| 亚洲精品丝袜-不卡成人免费……| 成人综合色网| 蜜桃精品一区二区三区ww| 亚洲瓯美色图| 大乔未久88一区| 色五月AV在线| 欧美精品97| 日韩在线观看三级电影| 欧美大香蕉久| 蜜乳性色无码专日粉嫩骚逼AV| 亚洲乱码国产乱码精网站| 1769精品一区二区三区| 日本天天吊| 人人搡人人肉久久精品| 久久久久久人体| 欧美色亚洲| 亚洲av综合伊人久久| 中文字幕一区二区在线日韩精品| 天天色播亚洲综合网站| 日本免费不卡二区| 国产AB视频| 人妻久久| 太久视频| 夜夜操夜夜爽夜夜高潮| 久草老司机| 97精品视频| 日韩免费在线观看不卡| 操逼日韩无码 | 夜夜爽33333| 97干天天| 久久久青青草| 97在线观看播放视频| 狠狠干婷婷| 在线观看A啊啊啊| 国产av色网| 伊人一级免费黄片| 欧美性爱97超碰| 青春草A| 91成人无码| 男人高清无码一区二区| 久久久久ab| 天天综合色图| 婷婷丁香五月激情啪啪| 久久久熟女一区| 人妻精品视频一区二区三区| 六十路日本| 精品97精品97| 久久久久久97| 一道本久久棕合爱| 午夜精品久久99蜜桃的功能章节| 欧美网站免费| 五月开心久久AV官网| 亚洲国产97| 999国产精品999| 色天堂综合| 日韩大香蕉| 韩国一级做A片免费的| 日本一二区免费| 熟女少妇视频| 成 人 影视 一区 二区 三区 四区| 女上位精品在线| 伦激情人妻另类人妻| 99re9在线| 国产宅男宅女在线观看| 人妻久热在线| 97在线免费| 天天摸,夜夜摸| 我想要啊 啊 啊| 中日亚韩免费视频| 9ⅰ久久久天天| 中文字幕人成乱码熟女香港| 精彩国产视频播放1区2区| 麻豆三极片| 红杏大香蕉| 亚州综合在线| 视频在线观看一二三区| 国产精品美女视频诱惑| 亚洲综合在线高清| 中文字幕美女91| 口爆欧美91| 一区二区三区免费视频入口| 麻豆性爱视频在线播放| 91精品啪在线观看国产城中村| 色综合久久夜色精品国产天堂| 久久综合资源一区二区| 黄色一区三区| 99爱在线视频| 日本人妻最新在线中| 偷拍 亚洲| 久热一区二区| asc国产精品| 国产一级做a爰大片免费久久| 青草园大香蕉| 首页亚洲国产高跟丝袜诱惑视频| 牛牛AV人人夜夜澡人人爽| 久久久久一本一区二区青青蜜月| 九九热久久99精品re| 青草视频人妻在线观看| www.久久| 精品成人动漫一区二区| 人妻激情视频| 欧美少妇第一页| 操操逼视频| 中文字幕神马久久| 成人情色一区二区| 日韩乱伦视频| 88xx成人精品视频| 人妻大香蕉| http://qxhbdz.com| 高潮毛片无遮挡高清免费| 97超碰在线资源网站| 日韩性爱再线视频| 国产精品一级片在线看| 极品色| 风月影院男女十八禁| 久久婷婷亚洲| 国产精品99精品视频网站| 激情久久日韩精品中文字幕麻豆| 久操视频免费在线观看| 国产熟女乱论| 欧美日韩另类在线播放| 91精品女厕偷拍视频| 99re这里只有精品2| 欧美天堂日韩三级国产传媒| 五月激情小说| 国产精品成人无码av| 在线视频免费观看午夜| 超碰导航97| 美日韩在线不卡人妻| 亚洲欧洲另类| 国产成人精品日本亚洲语言| 国产狂喷潮在线精品| 78m成人视线| av久日| 大香蕉在线视频15| 天天干天天日天天射黄色大片| 免费一级毛片在线视频观看| 国产精品999zyz| 国产精品久久妻无码网站| 久操频道免费在线呗看| 骚鸭AV| 老女人91| 色老牛| 青青草吊丝| 五月天激情国产综合婷婷婷| 色婷婷综合网站| 亚洲精美粉嫩嫩泬在线观看 | 亚洲色图久久精品蜜| 国产精品色片一区二区| 不卡av在线中文字幕| 男女无套 免费网站| 啊啊啊啊啊啊啊啊在线观看| 国产传媒一区二区三区| 亚洲丝袜少妇在线| 综合色欧美| 啊啊在线| 色欲天香天天综合网-成年人三级片网站-欧美乱妇狂野-日韩国产专区-久久久久久 | 亚洲免费在线探花| xxxx网站亚洲精品| 东北丰满熟女国产一区| 无码丰满熟妇一区二区浪潮AV| 欧美综合自拍| 亚洲成a人在线观看久| 美中日韩无码| www久久久| 亚洲天堂综合AV| 欧洲天天在线| 人人手机欧洲亚洲国产人妻| 蜜奶av| 另类亚洲图色| 久久精品夜色国产亚洲AV| 青草香蕉网| 91美女视频在线免费观看| 一本一首道人妻少妇免费久久| 青青草大香蕉在线视频| 91在线/欧洲| 亚洲天堂资源| 1024精品在线| 高清国产成人无码| 黄aaaaaaaaaaaaaaaaaa色网站| 亚洲欧美性生活| 亚洲天堂另类美腿| 91国产美女丝袜足交精品视频 | 欧美午夜视频| 阿姨一区二区免费视频-高清正片西瓜视频下载app-T450AV | 亚洲综合色图欧美| 中文乱码字字幕在线第5页| 国产乱伦视频污| 久久无码成人| 99热最新| 伊人久久大香线蕉亚洲五月天,青草青草欧美日本一区二区,欧美日产欧美日产国产 | 玖玖综合网| 99精品国产户外露出| 欧美午夜视频免费观看| 丰满的三级少妇欧美久久久| 久久久久久久久久久人妻| 神马久久69| 精品一级| 亚洲va有码在线天堂| AA丁香综合激情| 女一区二区| 久久久96精品| 九色精品视频导航1| 激情五月天色色| 亚洲综合小视频小说在线观看| 99热18这里只有精品| 人妻少妇精品视频一区二区三区| 国产亚洲日本精品在线| 97超碰逼| 92久久| 密乳无码| 小草精彩毛片| 日本韩国五十路六十路七十路老熟女作爱视频网站 | 色姑娘综合网| 日韩草久视频| 中文字幕欧美日本乱码一线二线 | av大香蕉| 久久久三区二区一区| 国产午夜福利专区综合| 91麻豆天美国产欧美日| 天天日天天干少妇日| 人人操人人摸人人看人人干| 亚洲一区中文字幕久久,果冻传媒一区二区天美传媒 | 一区二区三区激情在线观看| 久久有码| 欧美人体性爱互联网第一页婷婷日本| 亚洲最大网站av| 99re69综合| 成人精品无码| 9 7超碰在线免费观看| 99精品九九九九九九| 日韩欧美一级特黄大片| 亚欧美色图| 日本欧美韩国国产在线| 蜜桃精久三区| 美女裸体无遮挡永久免费观看网站| www.色操逼| 精品视频久久区| 亚洲 自拍偷拍 欧美| 99热精品国产| 3d成人精品一区二区| 国产夫妻性生活视频| 国产精品ⅴ无码大片在线看.| 欧洲中文字幕| 26uuu成人影片| 亚洲日本男人天堂网| 啊啊啊好想要| s片在线观看| 亚洲第一精品在线视频| 欧美国产操逼| 精品亚洲国产成人AV制服丝袜 | 97手机日韩| 密桃99999| 97超碰超碰| 欧美综合加勒比在线| 国产毛片片精品天天看视频| 第四色色综合91| CCYY草草影院地址入口| 另类图片亚洲加勒比另类图片亚洲加勒比另类图片亚洲加勒比 | 欧洲精品久久| 五月丁香综合激情| 97超碰精品| 夜夜狼人妻| 亚洲av无码国产精品字幕| 超碰97男人| 啪啪AV导航| 五十路成人在线视频二区三区| 牛牛aV| 国产一二三福利视频网| 久久一区,青青青青草视频在线播放| 91熟女视频| 久久av色| 青青草日韩无码| 91亚洲欧洲| 嗯嗯啊好大| 色小视频蜜乳| 欧美巨大性舒爽顶到了| 超碰97在线中文| 手机看片1025| 密乳AV免费观看| 玖色av| www.欧精品| 翔田千里AⅤHD无码| 青青草女人天天干| 美女久久久久久久| 激情AV| 人妻丰满熟妇一区二区三| 人妻 欧美亚洲| 91在线美女| 美国aaaaa一级黄片| 精品人妻15区| 91高跟美女在线播放| 亚洲偷拍自拍在线视频| 欧美日韩免费性爱| 91色色网站| 91九色丰满高潮| 久久国产精品,久久国产| 亚洲一区二区三区四区视频| AV乱伦国产| 老司机香蕉| 久啪| 天天弄欧美| 国产精品成人在线| 天堂中文日本在线观看| 男人女人18禁片免费看网站| 日本媚薬中文字幕在线| 欧美日韩午夜精品一区二区三区| 欧洲大香蕉| 91偷拍欧美亚洲| 农村妇女一级二级三级视频| 日本理论在线| 1024人妻熟女一区二区三区| 综合五月婷婷亚洲一区| 人人做,人人操,人人摸| 大香蕉中文| 人妻激情视频| 91九色丰满高潮| 亚洲精品国产av天美传媒| 欧美色偷拍 | 丁香五月影院| 任你草| 国产成人www免费人成看片| 久久国产AⅤ| 1769成人国产精品视频| 78超碰| 2017天天操天天日| 黑人性欧美| 好一吊区二区| 国产激情在线| 淫荡网址| 国产精品第一区第一页| 国产精品国产亚洲区艳妇糸列| 久久久久久性爱免费视频| 亚洲男人在线观看天堂| 色汉综合| 精品九九| 操B视频日韩无码| 影音先锋少妇| 老熟女乱子伦中文字幕一区二区| 国产精品久久久久无码A√| 日日日日做夜夜夜夜无码| 韩三级a视频在线观看| 日韩电影在线观看网址| 五月婷婷丁香六月丁香| 久久riav中文精品| 日本色色色视频| 一区三区啪啪| 欧美色九九九| 色九九综合AV| 久久香蕉国产线看观看亚洲女人 | 一本精品日本在线视频精品| av橘色网站| 桃色五月天| 亚洲va有码在线天堂| 另类天堂| 欧美丝袜中文字幕07在线| 青久久| 伊人网在线观看| 亚洲无码一区二区三区三州| 偷拍综合亚洲| 久久东京伊人一本到鬼色| 青娱乐国产精品| 五月开心久久AV官网| 婷婷精品国产欧美精品亚洲人人爽| 97亚洲欧美| 一本久道久久综合狠狠爱一密臀精 | 大香蕉啪啪网| 艾草av| 日本顶级天天操狠狠操夜夜操中文字幕| 日韩精品国模| 大学生美女口爆| 国产精品久久久久无码A√| 国产亚洲禁久一区二区| 99re这里只有精品中心播放| 激情五月天校园春色网| 欧美极品| 男女一级A片大黄,一进一出| 综合干干干av久久久综合网| 亚洲欧美校园| 日本东京热加勒比久久| 久操大香蕉手机视频在线看| 97视频新免费| 日韩强奸av| 操逼网站视频漫画国产| 九热大香蕉| 日本韩国五十路六十路七十路老熟女作爱视频网站| 人人爱人人乐人人操| 户外裸露刺激视频第一区| 亚洲情色五月天 | A级毛片在线看免费| 亚洲高清无码免费观看视频| 日韩欧美资源| 日韩欧美亚欧在线视频| 九九亚洲| 久久久久深夜无码| 日韩av免费一级电影| www激情| 日本欧美色| 日韩欧美性吧婷婷乱伦大香蕉| 少妇高潮对白在线观看| 目产99999久久999| 久久性爱视频免费看| 天天干天天干天天| 天天综合网亚洲综合网| 大香蕉专区| 久久深夜无码| 香蕉国产精品麻豆亚洲欧美日韩| 日本韩国一本产品小视频日本韩国一本产品久久久产品小视频日本韩国一本产品久 | 热九九精品| 日日日色色色色色| 99re公开精品免费视频| 精品射1999| 无码天堂| 小草三级久久观看| 少妇久久久久久| 亚洲有码 视频一区| 麻豆熟妇乱妇熟色A片在线看| 欧美性爱伊人| 超碰97.com| 成人免费不卡在线视频| 国产精品乱码久久久久久| 99re国产精品视频| 91麻豆一二三区| 欧美精品成人在线播放| 欧洲亚洲人人爽爽视频| 日韩去日本高清在| 96超碰网| 97色伦欧美| 一级二级在线观看| 色诱中文字幕| 综合久久久久久久综合网| 伊人伊人LD| 国产宅男宅女在线观看| 97超碰超欧美。| 3p国产色噜噜一区| 欧美色干| 国产精品制服丝袜中文字幕日韩一区二区三区| a亚洲欧美色欲| 天天天天天天天天综合| 永久免费发布性爱网| 囯戸精品高潮呻吟旡码| 久插综合| 午夜无码精品免费看性色| 欧美高潮| 亚洲操人| 秋霞网无码| 国产一区二区久久| 91丨九色丨国产打屁股| 免费精品无码一级毛片牛牛影视| 操人妻逼91| 国产91乱伦| 女人香蕉久久毛毛片精品| 国产欧美日韩在线观看麻豆传媒公司| 国产高清吃奶免费视频网站| 偷拍色图| 国内91熟女人妻丝袜天天精品视频在线| 久久系列| 综合97久久| 欧美日不卡| 欧美性爱免费短视频| 亚欧美色图| 爱射综合| 爽 好舒服 无码刺激久久| 中文字幕在线观| 精品无码一区二区人妻久久蜜桃| 少妇99成人麻豆| 精品一区二区综合熟妇| 91亚洲网| 91N综合网| 日日骚 av| 欧美激情五月天| 无码最新| 亚洲人成网站7777| 人人澡人人干| 碰超人人在线一区二区三区| 天天看片天天爽| 午夜国产成人福利视频| 97资源视频| 青青草中文字幕| 国产中文日韩欧美一区二区三区人妻丝袜美腿| 神马精品视频| 激情久久av一区av二区av| 人人看人人插| 精品人成视频在线观看| 中文字幕第2页| 五月天婷婷激情| 亚洲国产青青| 人人弄人人摸| 亚洲97在线| 久久久神马影院| 嗯嗯,好大,好爽,好骚 | 大香蕉99热| 香蕉在线一区二区三区| 国产精品国产拍高清AV| 国产又大又硬又长又粗| 欧美一区二区三区另类精品| 98人妻精品一区二区色欲| 欧美性色网| 久九九九九九九九热| 欧美91色| 啊啊啊在线看| 亚洲欧美变态| 欧洲一区二区| 91日韩网站| 天天影视91看看| 茄子社区国产精品| 婷婷探花久久精品一区| 蜜臀中文无码午夜| 日韩无码第3页| 国产成人精品网站| 久草在线| 最新无码国产| 96精品久久久久久久久久| 日韩一卡二卡三卡| 亚洲欧美不卡线| 大色综合| 操啊国产| 自拍偷拍 高清无码| 亚洲AV操| 99色色网| 久久熟女人| 熟女中出视频| 我爱搞逼综合网| 韩国毛片一区二区三区| 91女日逼| 久久精品国产欧美日韩亚洲欧美日韩中文久久国产一区 | 国产无码精品成人| 免费黄色片。| 丰满的三级少妇欧美久久久| 色婷婷丁香五月| 日韩特一级久久| 亚洲男人天堂视频| 夜夜嗨一区二区三区直播内容| 精品日日人妻| 99久久亚洲精品无码毛片潘甜甜| 国产一区二区三区久久久精品| www.99中文字幕| 大香蕉五月天婷婷| 久久国产视频专区一二三| 中文字幕97色| 九九热精品视频六| 国产精品不卡av免费在线观看| 天天懆天天日| 依人大香蕉| 97爱爱影院| 日本二区不卡| 国内毛片热久久思思热| 国内精品久久久久影院亚洲| 伊人97色天使| 熟女91网| 92性色国产午夜福利在线661| 中国乱伦一区二区| 91啪9色| 狠狠操狠狠燥| 国产精品无码成人精品| 你懂得91| 亚州色图欧美| 超碰97网站| 精品国产www久久| 亚州操操穴网| 国产综合久| 性爱免费视频成人| 美国美女AV在线| 人妻精品一区一区三区蜜桃91| 手机看片91人妻| 欧美一区二区三区日韩| 色婷婷婷五月天激情四射| 少妇无码999| 亚洲中文日韩欧美大香蕉视频| 亚洲中文字幕妇伦久久| 亚洲欧美国产精品久久久久久久| 狠狠色噜噜狠狠狠狠2018| www.久久| 麻豆天美AV传媒第一页| 18禁免费视频| 久久、1234| 亚洲一二三四区| 久久久夜夜嗨免费视频| 国产精品久久久久久9999| 日本黄大片在线观看视频| 日本欧美成人片AAAA| 国产av色网| 草草网站影院白丝内射| 69人妻精品丰满熟女区| 女人精品内射国产99| 99性爱视频| 亚洲熟妇白浆无码AV| 日本操大逼| 97视频620| 成人蜜乳小视频网站| 久久天天摸| 偷拍盗拍亚洲色图图片| 九九无码| 免费视频97| 五月开心网| 自拍六区| 91N欧美| 69精品| 激情五月婷婷| 丰满少妇一区二区三区免费看| 久久婷五月| 97日韩超碰超碰中文字幕| 欧美99热| 亚洲黄色AV电影| 长长久久免费视频| 熟女探花啪啪| 骚逼一区二区| 亚洲中文国际强奸字幕| 精品综合久久久久久97| 日本福利二区视频| 亚洲视频精选| 久热69九色熟妇97| 国产福利电影| 国产精品乱码久久久久久| 新版天堂中文资源8在线| 蜜臀99久久精品久久久久久| 婷婷在线视频| 国产18精品亚洲精品| 99日免费视频中文字幕| av国产无码| 亚洲男人在线观看天堂| 亚洲欧洲美腿丝袜| 国产精品亚洲无码| 国产天天噜一噜久久久| 亚洲天堂综合AV| 国产日韩手机视频在线| 中文字幕在线第二页| 99性爱视频| 日本精品中文字幕视频| 啊啊啊久久久视频 | 啊啊啊 在线| 欧美日韩高潮喷水91| 激情 欧美 亚洲 小说| 加勒比综合a∨| 精品久久久久久亚洲| 91色人妻| 久久女女| 国产农村妇女精品一二区| 精品亚洲黄色片 国产精品导航一区二区| 欧美天天在线| 国内精品不卡无毒99999| 欧美aaaaaaa| 色噜噜国产精品视频一区二区| 人妻一区久久二区三区色播| 亚洲无码久久久久久久| 熟妇乱伦一区二区| 欧美日日人人天天| 人妻美腿丝袜制服诱惑综合天堂-| 两性色网| 日本孕妇一区二区视频操逼免费看| 超碰97在线色男人??| 麻豆精品久久久久久久| 乳欲人妻办公室奶水| 91 丝袜在线播放| 综合色久欲| 四虎视频在线观看| 99色| 亚洲欧美一区二区三区一猛片| 99热在线观看| 亚洲熟女乱综合一区二区在线-...亚洲国产日韩欧美一区二区三区,久久久久久精 | 久久色一区| 深田咏美亚洲精品福利社| 日本性爱视频一级| 国产精品一区二区密臀| Aa东京男人的天堂| 久久只有精品一区二区三区| 久久精品小视频| 女人双腿搬开让男人桶| 性爱视频啪啪啪啪| 久久的免费性爱视频| 91精品人妻一品二品三品| 日产123区精品免费观看| 亚洲一区二区三区麻豆传媒| 久久国产视频性吧| 丁香色婷婷| 美国一区二区免费视频| 成人麻豆av电影网站| 亚洲精品久久久久毛片A片拉屎| 91美女视频直播| 内射中国少妇高清视频免费视频 | 天天热精品| 91高跟美女在线播放| 夜夜狼人妻| 热久久精品| 中文字幕精品一区二区精品| 亚洲天堂久久| 日本三级韩三级99久久| 欧美性爱伊人| 日韩成人大片一区二区| 欧美午夜一区二区三区| 亚洲日韩美女中文字幕乱| 国产熟女完整版中字| 欧美精品成人在线播放| 天天看天天在线精品| 波多野结衣AV无码一区| 青娱乐老司机视频| 亚洲国产成人精品999| 翔田千里无码一区| 欧美日韩性爱电影在线| av一区二区三区四区| 亚洲另类小说卡通动漫| 草草影院最新网址| 欧美大香蕉专区网| 国内精品伊人久久久久影院会| 日本理论在线| 婷色五月| 熟女啪啪视频| 欧美白嫩在线放| 超碰午夜| 亚洲激情久久久伊人综合| 玖玖久久久| 亚洲āv网址在线观看| 最新日日夜夜天天干干| 99在线无码精品秘 入口黑人| 国产乱码精品一区二区三区四川| 久久久久成人亚洲国产| 婷婷六月色| 欧洲中文字幕| 碰人碰碰人人开房人肉| 91女日逼| 伊人操你| 久久一区二区三区入口| 丁香五月成人| 91亚洲青青草原精品1区| 久久亚洲不卡一区二区三区 | 狠狠操官网| 麻豆国产免费影片| 色综合美国| 亚洲图片 激情小说| 欧美情色亚洲| 欧美高清18A片| 网页导航五月天免费一二三区| 啊…啊…操我用力操我| 久久久久久波多野吉衣高潮| 校园春色美腿丝袜 | 国产久久久| 中国一级操逼视频| 久久婷婷五月天| 91熟女综合| 久久久亚洲精品中文字幕人妻| 大香蕉一级黄色片久久| 日韩偷拍色图| 少妇内射www在线观看视频| 九九热只有精品| 热无码中文亚洲H一道本一区二区| 国产人妻天天干精品| 江都AV在线| 偷拍新久久| 八戒午夜福利理论片| 久久香蕉影院| 青青三级视频| 亚洲成人黄色在线观看| 九九热精品| 青青草久草AV| 内射夫妻三片| 天美国产三级传媒| 国产嫩草精品A88AV| 欧美黄色片在线播放| 亚洲 综合 欧美| 91成人亚洲色图| 自怕偷自怕亚洲精品| 96AV精品| 久久久久熟女| 囯产乱伦一区二区三女| 偷拍在线观看视频| 狠狠久久手机视频精品| 久久婷婷一区二| 老熟女天天操| 国产精品久久久久综合| 久热久| 日本人妻中文字幕| 天天综合网91入口| 大肥女高潮bbwbbwhd视频| 日本三级中国三级99人妇网站| 日韩熟女视频二区| 99在线无码精品秘 入口黑人| 超碰97资源大奶| 97干97色| 素人播放一区| 久久一区二区三区四区五区| 久久激情网| 国产精品97超碰| 免费啪啪一级视频| 天美传媒在线一区| 狼狼色丁香久久婷婷综合五月| 精品然女一区二区| 国产精品露脸在线观看| 国产精品亚洲四五区在线观看| 久久天堂| 亚洲精品久久久久久久久豆丁网| 欧美 色 亚洲| 很很干很很操| 精品九九九九九| 男人亚洲91首页在线| 大香蕉欧美| www四虎| 国产精品福利资源在线尤物| 欧美人妻二区三区| 国产主播福利| 好好的日:com久久九九| 亚欧免费| 北野未奈加勒比av| 2024人人操人人摸| 97在线免费看视频| 久草精品热视| 影音先锋乱伦资源| 97精品中文字幕| 无码国产精品午夜不卡(| 中国和日本人色哪个不下载能放| 中文字幕高清20页视频| 韩国一级做a久久久久| 超碰 av 女人天堂| 美中日韩无码| 91精品网站| 亚洲最大的黄色电影网站。| 涩涩涩综合| 超碰97.com| 久久久久久久久久久久久久久性生活视频| 水多多映视AV| 久久久免费懂色| 久久草在线综合视频| 手机在线大香蕉| n1038 一二三区| 国产黄色av大片网站| 97亚洲中文| 欧洲精品在线播放| 日韩黄色一区二区三区| 九九九九热| 少妇精品久久久| 久操婷婷| 成人AV超碰免费在线| 久久精品无码不卡| 欧美大香蕉在线观看| 乱伦av国产| 五十路三区在线| 欧美亚州综合图片| 嗯嗯啊啊视频在线看| 亚洲激情综合另类男同| sewuyueav| 大香蕉欧美国产日韩高潮| 婷婷亚洲综合| 黄色大片免费在线| 午夜精品久久久久久久第一页按摩| 人人超碰在线观看黄| 五月婷在线| AAAAAAAAA黄片| 亚洲加勒比久久日本道| 久久原创中文| 青青国产在线拍揄自揄拍| 噜噜噜狠狠色综合| 啪一啪免费视频| 午夜啪| 91丝袜美女视频| 91美女视频电影| 97看操| 国产欧美美女免费观看视频| 国产在线精品偷| 国产女人和拘做爰视频| 色吧 综合| 欧成人精品一区二区三区| 91色色综合| 麻豆性爱视频在线播放| 97视频一区| 亚洲欧美一区二区不卡视频播放| 91neishe| 天天日少妇逼AV| 六月婷婷综合| 精品毛片久久久精品毛片| 美女操逼A A| 91精品国产91久久青草| henhen91| 东京热毛片调教| 欧美伦乱| 亚洲九九视频在线观看| 骚女高跟AV在线| 97干天天| 婷婷另类小说| 97色97好| 欧美曰韩国产精品| 欧美性暴力猛交XXXX | julia中文字幕在线观看| 欧美日韩免费专区在线| 欧美熟妇视频| 国产精品天美传媒| 欧美午夜精品久久久久久3D| 激情五月天婷婷| 香蕉久久国产AV一区二区| 色青青久久影视| 欧美麻豆成人同性GⅤ在线| 狠狠色狠狠色狠狠五月| 亚洲成a人片在线观看中文!!!| 国产操逼视频在线观看| 久久中文字幕一区不卡| 五十路六十路七十路熟婆| 少妇高潮流水av免费| 影音先锋每日最新资源在线观看| 在线亚洲 欧美 日本专区| 豆花视频操逼网址| 17c在线成人免费A片观看| 尤物视频一区| 熟女精品va中文字幕| 久久99人妖视频国产| 日本 欧美 国产一区| 99性爱| 九九热精品在线| 二对二中文字幕。| 国产熟妇一区二区| 吊色| 极品色综合| 免费精品无码一级毛片牛牛影视 | 国产成人+综合亚洲+天堂| 成人在线视频网| 天天影视综合网欧美精品| 免费看污网站| 欧美91精彩| 伊人国产AV| 日本不卡一区二区| 亚洲熟女乱色| 成年女人18级毛片毛片免费观看| 午夜理论片在线观看免费| 曰韩av中文字幕专区| 人妻少妇精品一区二区三区| 精品网站9999| 330dv亚洲成年视频网| 99视频自拍区| 超碰95| av天堂天堂av日韩| 亚洲av无码成人精品国产| 精品视频日日夜夜| 亚洲97p| 久久精品噜噜噜成人看免欧美大片| 色综91| 小视频玖玖| 五月丁香六月激情综合| 青苹果影院男人的天堂| 大香蕉伊然在亚洲91| 欧美综合另类| 亚洲AV无线| 欧美色棕合| 蜜臀无码一区二区| 翔田千里AV无码秘 三区| 日韩欧美中文日韩欧美色| 嗯嗯啊操我| 91国产丝袜美女| 激情五月天中文字幕色| 一个人免费HD91视频| 天天日日日射| 97网色| 婷婷丁香五月天亚洲天堂网| 一区二区三区 丝袜 高跟 美腿 | 亚欧无码线免费观看视频| 国产女生在线| 九九热这里只有在线精品视 伊人草 成人菠萝蜜视频在线观看 | 久久国内| 亚洲AV资源| 四虎影视欧美| 在线中文字幕极品av| 宅男91视频在线播放| 91久久国产精品| 久久人人爽爽人人爽人人片αV| 久久婷婷国产一区二区色| 丝袜视频网国产90| 亚洲第一狼人丝袜美女另类| 青娱乐 成人娱乐在线| 九九精品网| 成年人一级黄色毛片大全在线观看| 佐山爱中文字幕| 亚洲综合电影| 大奶啊啊好爽| 久久久无码精品人妻二区 | 丰满少妇高潮无码| 96精品久久久久久久久久| 日本99热| 欧美久久人体| 日韩性爱电影一区| 9999九九九久久久| 2017人人操,人人摸| 78p欧美| 人人爱人人乐人人操| 偷拍伦理视频| 91人妻熟女| 99婷婷| 日韩图色| 99成人| 久久久久久综合久久伊人蜜月| 国产高潮AA片免费看| 97chaopenrihan| 手机看片1024你懂的国产| 亚洲素人网| 日韩人妻播放| 操老熟女AV| 91精品无码人妻系列| 久久天堂网| 一区在线观看中文字幕| 五月天AV资源| 91久久久久久| 玖玖久久久| ′ !γ}丶。。久久精品欧美一区二区三区 | 免费?级毛片无码?∨蜜芽试看| 亚洲色欲一区二区三区| CCYY草草影院地址入口| 日本一片一区| 国产精品美女久久久久AⅤ国产馆| 99精品伊人| www.久久最新地址| 人妻喷水| 九九黄色网| 女性91网站| 日韩国产十八禁| 日韩色欲久久一二三四区| 精品欧美日韩在线观看| 日韩一级免费性爱| 老熟女91视频| 综合干干干av久久久综合网| 美国精品国产精品| 丝袜天堂网| 日本有码久久| 亚洲国产精品无码AV久久久| 人人澡人人弄| 人人透人人操| 中文字幕欧美日韩三级| 精品十三区| 欧美日韩性爱操大逼| 亚州男人天堂| 欧洲视频在线| 色女综合| 尤物国产一区在线观看| 天天肏天天干| 97超视频在线观看| 综合色色网| 强奸抽插av| 97久久久久久久久久| 狼天天狼天天大香蕉| 国产精品视频麻豆入口| 97超级久久| 青青国产在线拍揄自揄拍| 91色婷婷综合久久中文字幕二区| 天天看高清麻豆| 国产精品视频白浆免费| 欧美黑人极品高潮喷吹熟女黑人性暴力日韩在线欧美极品一区二区 | ji熟女.com| 人妻丰满熟妇av无码区蜜桃| 北条麻妃99精品青青久久| 人妻一区视频| 男人的午夜天堂| 99热日| 97精品国产97久久久久久户外免费| 人人操人人操人人操人人操人人操人人人11.CM| 久久久久久裸体| 99re这里只有精品3| 激情接吻视频久久久久久| 日韩肏逼视频| 骚妻少妇精品性色无码四色A V| 久久25| 玖玖在线视频| 日韩不卡在线一区二区| 日本一区二区中文字幕久久| 嗯~啊~轻一点 视频| 久久久穴999| 亚洲高潮少妇| 户外裸露刺激视频第一区| 国产精品直播在线观看直播| 91N综合网| 91爱欧美| 欧美美女在线高潮999| 黄污污污污| 国产热RE99久久6国产精品首| 一级日本牲交大片好爽在线看| 999综合网| 久操频道免费在线呗看| 操91| 1204金沙人妻懂旧版免费| 天美AV片| 91碰碰碰| 久久久夜夜嗨免费视频| 日韩无码黄色片| 美女视频尤物网在线看| TS人妖另类精品视频系列| 人妻精品一区二区| 国产中文字幕在线| 日本高清熟女久久一区| 嫩草伊人久久精品| 日韩AV中文字幕电影| 久久久精品日本一道| 五月婷视频| 91操操| 天天综合网站| 色丁香五月婷婷| 一区二区三区精品视频| 国产精品自在线发布| 波多野结衣先锋影音| 精品欧美А∨无码黑人大荫蒂 | 嗯嗯啊啊视频在线看| 激情五月天色色网| 极品白嫩美女白浆成人福利在线看| 欧美日韩一区二区三区四区蜜桃| 日韩综合无码色欲vv| 操逼天美3区| 亚洲 自拍偷拍 欧美| 久久国产乱子伦精品免费女人| 欧美精品一区二区少妇免费A片 | 97人人草| 丁香五月婷婷色| 免费观看欧美日韩操逼视频| 五月丁香综合| 99这里有精品| 99999精品成人| 中文字幕日韩人妻视频一区二区三区交换夫妻| 97久久精品国产|