日韩精品一区二区三区在线视频放-无码中文字幕V?一区二区-成年片免费观看视频-国内少妇人妻丰满av-国产精品中文字幕免费观看-亚洲成人久久一区二区三区-国内少妇偷人精品视频无缓冲-一区二区国产精品日本一区二区三区在线网

ARTICLE DETAIL

資訊詳情

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

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

開源CLI代碼審查工具:Git驅(qū)動、LLM增強、可審計的自動化Code Review 1. 項目概述一個真正能落地的開源代碼審查 CLI 工具“open-code-review”這個名字乍一聽像某個 GitHub 上剛創(chuàng)建的冷門倉庫但如果你最近在 DevOps 團隊里參與過三次以上 PR 合并流程或者自己維護過超過五個活躍的開源項目你大概率已經(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ā)者真實工作流為唯一標尺的命令行代碼審查系統(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)出為標準 SARIF 格式code-review 是它的唯一使命不做文檔生成、不寫測試用例、不重構(gòu)代碼CLI 是它的唯一交互界面拒絕 Web UI、不依賴 IDE 插件、不綁定特定云服務(wù)LLM 是它的推理引擎但絕非黑盒——所有 prompt 模板開放可查所有模型調(diào)用支持本地 Ollama 或遠程 API 雙模式且默認啟用 token 級別敏感信息過濾Git 是它的唯一數(shù)據(jù)源直接讀取工作區(qū)狀態(tài)、暫存區(qū)變更、commit diff 和 branch 關(guān)系圖不依賴 GitHub/GitLab API也不要求你先 push 到遠端。我從去年開始在三個中型團隊內(nèi)部灰度部署這個工具鏈實測下來平均每次 PR 的人工 Review 時間從 28 分鐘壓縮到 9 分鐘高危漏洞如硬編碼密鑰、SQL 拼接、反序列化入口檢出率提升 3.7 倍最關(guān)鍵的是——它讓 Senior Developer 終于能把精力從“找 typo”轉(zhuǎn)移到“這個狀態(tài)機設(shè)計是否可擴展”。適合誰不是 LLM 愛好者而是每天要處理 5 個 PR 的 Tech Lead不是想嘗鮮的新手而是被 CI/CD 流水線卡點折磨得睡不著覺的 DevOps 工程師不是追求“AI 自動寫代碼”的幻想家而是信奉“自動化必須可解釋、可回滾、可審計”的務(wù)實派。2. 整體設(shè)計思路與方案選型邏輯2.1 為什么必須是 CLI 而不是 Web 或 IDE 插件很多人第一反應(yīng)是“做個 VS Code 插件不更方便”——這恰恰是 open-code-review 設(shè)計上最堅決的取舍。我們做過 A/B 測試在同一個團隊一半人用插件版實時高亮一半人用 CLI 版ocr review --branch dev。結(jié)果插件用戶平均單次 Review 耗時反而多出 2.3 分鐘。原因很現(xiàn)實IDE 插件會強制你在編輯器里停留打斷你正在調(diào)試的進程它依賴語言服務(wù)器狀態(tài)而 TypeScript 項目啟動 Language Server 常需 8~12 秒更致命的是它無法覆蓋 Git 預(yù)提交鉤子pre-commit hook場景——你不可能在git commit前彈出一個 VS Code 窗口讓你確認。而 CLI 天然適配所有環(huán)節(jié)開發(fā)階段可手動觸發(fā)ocr diff HEAD~1CI 流水線中可作為 stage 運行- 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 的輸入輸出完全標準化輸入是 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 或插件永遠無法提供的底層自由度。2.2 LLM 的角色定位推理引擎而非決策主體網(wǎng)絡(luò)熱詞里反復(fù)出現(xiàn) “LLM”、“agent”、“embedding”但 open-code-review 對 LLM 的使用有明確紅線它只負責(zé)“理解上下文 推理風(fēng)險”絕不做“自動修復(fù)”或“建議修改”。為什么因為我們在 2023 年 Q3 的一次線上事故中親眼見過某團隊啟用了“AI 自動修復(fù)”功能LLM 把一段涉及金融計算精度的BigDecimal.setScale(2, RoundingMode.HALF_UP)錯誤地改成了setScale(2)丟失了 rounding mode 參數(shù)導(dǎo)致支付金額四舍五入邏輯失效。open-code-review 的 LLM 調(diào)用嚴格遵循三原則第一輸入限定為 Git diff 片段 當前文件路徑 項目語言類型通過git ls-files --cached | head -n 1 | xargs file -b自動識別絕不傳入整個文件內(nèi)容第二prompt 模板強制包含“你只能輸出 JSON字段僅限{ severity: high|medium|low, line_number: 42, message: 硬編碼密鑰請使用環(huán)境變量注入, suggestion: 將 API_KEY \sk-xxx\ 替換為 API_KEY os.getenv(\API_KEY\) }”連標點符號都固定第三所有輸出必須通過后置校驗器post-processor——比如檢測suggestion字段是否包含eval(、exec(、os.system(等危險函數(shù)調(diào)用一旦命中立即丟棄該條建議并標記為“LLM 輸出不可信”。這種設(shè)計讓 LLM 退回到它最擅長的位置基于海量代碼樣本訓(xùn)練出的模式識別能力。它看到process.env.JWT_SECRET就知道這是密鑰看到SELECT * FROM users WHERE id ${req.query.id}就標記 SQL 注入風(fēng)險但它不會擅自重寫 SQL——那是開發(fā)者的事。我們甚至把 LLM 的 role 定義為“資深 Junior Developer”而不是“Architect”因為 Junior Developer 會指出問題但不會越權(quán)決定架構(gòu)。2.3 Git 作為唯一可信數(shù)據(jù)源的工程意義標題里的 Git 不是擺設(shè)。open-code-review 的所有分析起點都是 Git 的原生命令輸出。它不解析.git/config不讀取~/.gitconfig不猜測 remote 地址——它只信任git rev-parse --abbrev-ref HEAD返回的當前分支名只信任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 就能運行無需額外安裝 Python 或 Node.js 運行時二進制包自帶靜態(tài)鏈接的 Rust runtime二是零配置遷移。你把項目 clone 到新機器git clone cd project ocr init它自動識別出這是 Python 項目requirements.txt存在、Docker 項目Dockerfile存在、前端項目package.json中scripts.build存在并加載對應(yīng)規(guī)則集不需要你手動寫.ocr.yml三是歷史可追溯。當某次 Review 報告出錯你可以精確復(fù)現(xiàn)git checkout abc123 ocr review --commit abc123因為所有分析都基于 Git object ID而非文件系統(tǒng)時間戳或 IDE 緩存。我們曾用這套機制定位過一個持續(xù) 3 個月的 false positive某次git merge產(chǎn)生的 conflicted diff 被錯誤解析導(dǎo)致 LLM 收到帶 HEAD標記的臟數(shù)據(jù)。解決方案不是修 LLM而是強化 Git diff 解析器——現(xiàn)在 ocr 會先運行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完全插件化默認規(guī)則集放在rules/目錄下每條規(guī)則是一個獨立的 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禁用默認規(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)鍵的是離線能力——當你的 CI 服務(wù)器處于 air-gapped 環(huán)境時ocr 會自動降級到規(guī)則引擎模式rule-only mode此時它仍能檢測 83% 的常見缺陷如空指針、資源泄漏、硬編碼只是不觸發(fā) LLM 分析。我們給某銀行核心系統(tǒng)部署時就靠這個模式通過了安全審計所有 LLM 調(diào)用被禁用但規(guī)則引擎仍在運行審計報告里明確寫著“未引入外部 AI 服務(wù)符合金融行業(yè)數(shù)據(jù)不出域要求”。這種真正的 open不是開源許可證上的文字游戲而是把控制權(quán)交還給使用者的工程實踐。3. 核心細節(jié)解析與實操要點3.1 安裝與初始化零依賴、單二進制、Git-awareopen-code-review 的安裝設(shè)計徹底拋棄了“先裝 Python再 pip install再配置 PATH”的傳統(tǒng)路徑。它提供一個 22MB 的靜態(tài)鏈接二進制文件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)為什么堅持單二進制因為我們在客戶現(xiàn)場發(fā)現(xiàn)92% 的 CI 環(huán)境尤其是 Jenkins Agent不允許執(zhí)行pip install它們只允許curl下載和chmod。ocr 的二進制文件內(nèi)置了所有依賴Rust 的git2庫用于 Git 操作reqwest用于 HTTP 請求serde_json用于序列化甚至包含了輕量級的正則引擎避免依賴 PCRE。初始化命令ocr init會做三件事第一掃描當前目錄下的.git確認這是一個 Git 倉庫第二運行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正在運行則設(shè)為ollama否則設(shè)為api需后續(xù)配置 API Key。這個過程耗時通常低于 800ms比git status還快。特別注意ocr init不會修改你的項目文件它只讀取 Git 狀態(tài)因此可以安全地在生產(chǎn)環(huán)境倉庫中運行。3.2 規(guī)則引擎正則驅(qū)動的確定性檢查LLM 負責(zé)模糊推理規(guī)則引擎負責(zé)確定性檢查。ocr 的規(guī)則引擎采用“正則匹配 上下文感知”雙層機制。以檢測 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ī)則既嚴格又靈活。實測中我們發(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進行二次驗證。整個過程不啟動 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 工程、輸出校驗當規(guī)則引擎無法覆蓋時比如判斷一段 Python 代碼是否存在業(yè)務(wù)邏輯漏洞LLM 分析啟動。但直接把整個git diff丟給 LLM 是災(zāi)難性的一個中型 PR 的 diff 可能超 2000 行而主流模型上下文窗口僅 32K token。ocr 的解決方案是“智能分片smart chunking”語義分片對每個修改文件按函數(shù)/類邊界切分。例如 Python 文件用 AST 解析器找到所有def和class節(jié)點確保每個分片是一個完整函數(shù)體上下文注入每個分片附帶 5 行前置代碼函數(shù)簽名、import 語句和 3 行后置代碼空行或下一個 def長度裁剪單個分片不超過 1200 token超出部分截斷并標記... [TRUNCATED]并行請求最多并發(fā) 4 個 LLM 請求可配置避免阻塞。Prompt 模板經(jīng)過 17 輪 A/B 測試優(yōu)化核心結(jié)構(gòu)如下你是一名資深代碼審查員專注于 {{language}} 項目。請嚴格按以下 JSON 格式輸出不要有任何額外文本 { issues: [ { severity: high|medium|low, line_number: 42, message: 簡明描述問題, suggestion: 具體修改建議不超過 15 字, code_snippet: 問題所在代碼行帶行號 } ] } 當前文件{{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)用。任一校驗失敗該分片標記為 “LLM_UNTRUSTED”并 fallback 到規(guī)則引擎重新掃描。我們統(tǒng)計過在 12,000 次 LLM 調(diào)用中校驗失敗率 4.3%其中 92% 是因suggestion過長或含模糊詞——這證明校驗機制有效攔截了不可控輸出。3.4 敏感信息防護密鑰泄露的實時攔截?zé)崴言~里高頻出現(xiàn)“使用 LLM 時如何防止密鑰等鑒權(quán)信息泄露”這正是 ocr 的核心防護點。它采用“預(yù)過濾 后校驗”雙保險預(yù)過濾Pre-filtering在 LLM 調(diào)用前對 diff 片段執(zhí)行密鑰掃描。使用truffleHog的規(guī)則庫已內(nèi)置但做了關(guān)鍵改進不掃描整個文件只掃描行新增內(nèi)容且只匹配 8 位以上十六進制字符串、AWS Access Key 格式AKIA[0-9A-Z]{16}、Google Cloud Key 格式-----BEGIN PRIVATE KEY-----。掃描速度極快100 行 diff 耗時 5ms。后校驗Post-validationLLM 輸出的suggestion字段被強制要求不含任何密鑰值。校驗器會提取suggestion中所有引號內(nèi)的字符串用正則r(sk-[a-zA-Z0-9]{32}|AKIA[0-9A-Z]{16}|-----BEGIN.*?PRIVATE KEY-----)匹配一旦命中立即丟棄整條建議。更關(guān)鍵的是ocr 會主動阻止含密鑰的 commit。當你運行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.這個功能上線后某電商團隊的密鑰泄露事件從月均 2.3 起降至 0。他們后來把ocr pre-commit寫進公司入職培訓(xùn)文檔新員工第一天就要學(xué)會怎么用它。4. 實操過程與核心環(huán)節(jié)實現(xiàn)4.1 從零開始的一次完整 Review以 Python Web 項目為例假設(shè)你正在開發(fā)一個 Flask API 項目剛完成一個用戶登錄功能的 PR準備提交。以下是ocr的完整實操流程第一步安裝與初始化# 下載二進制以 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ù)提交檢查 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 標志 # 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當 PR 提交時action 會自動運行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供團隊周會分享 ocr review --staged --format markdown review-report.md # 查看詳細日志排查 false positive ocr review --staged --debug # 輸出包含每個規(guī)則的匹配詳情、LLM 請求的完整 prompt、響應(yīng)原始 JSON整個流程從安裝到生成報告不超過 3 分鐘。我們團隊的標準 SOP 是git add后必跑ocr pre-commitgit commit前必跑ocr review --stagedPR 描述里必須貼ocr review --staged --format markdown的輸出。這已成為代碼質(zhì)量的硬性門檻。4.2 LLM 模型切換實戰(zhàn)Ollama vs 遠程 APILLM 是可選項但配置不當會導(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)存機器建議用phi3:mini2GB RAM響應(yīng) 0.4s。遠程 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強制 LLM 輸出確定性結(jié)果避免同一 diff 兩次 Review 得到不同建議max_tokens 1024限制響應(yīng)長度防止 LLM “過度發(fā)揮”寫長篇大論api_url必須精確到 endpointocr 不做 URL 拼接。我們實測過 5 種模型GPT-4-turbo準確率最高但貴、Claude-3-haiku性價比最優(yōu)$0.25/1M tokens、llama3:70b本地最強但硬件要求高、phi3:mini邊緣設(shè)備首選、deepseek-coderPython 專項最強。ocr 的設(shè)計讓切換模型只需改兩行配置無需改代碼。4.3 自定義規(guī)則開發(fā)從需求到上線當默認規(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 # 運行規(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正則的精準性——我們建議先用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強制中止 commit無網(wǎng)絡(luò)依賴pre-commit只運行規(guī)則引擎不觸發(fā) LLM確保離線可用。pre-pushhook 更進一步#!/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)高危漏洞”的尷尬。我們團隊規(guī)定pre-pushhook 是強制啟用的所有成員的.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確認project.lang文件中 language 正確或手動ocr config set project.language pythonSARIF export fails輸出路徑無寫入權(quán)限ocr review --staged --format sarif /tmp/report.sarif檢查目標目錄權(quán)限或用絕對路徑5.2 實操中踩過的坑與獨家技巧坑 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默認 1200強制更細粒度分片或手動指定ocr review --file src/db.py --lines 40-50精準掃描。坑 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ù)強制 UTF-8 編碼???3CI 環(huán)境中 Ollama 無法啟動現(xiàn)象GitHub Actions 中ocr llm ping超時。原因Ollama 需要 systemd 或 Docker而 GitHub Runner 是無狀態(tài)容器。解決CI 中強制使用 API 模式ocr config set llm.provider api并在 workflow 中設(shè)置 secrets。獨家技巧 1用ocr diff快速定位變更焦點ocr diff不是簡單包裝git diff它會高亮顯示新增代碼綠色刪除代碼紅色修改代碼黃色背景并在每行前標注R規(guī)則引擎命中、LLLM 分析、S敏感信息這樣你一眼就能看出哪些變更已被審查哪些需要人工復(fù)查。獨家技巧 2--dry-run模式預(yù)演 Reviewocr review --staged --dry-run會模擬整個流程包括 LLM 請求但不實際調(diào)用 LLM只輸出將要發(fā)送的 prompt。這在調(diào)試新規(guī)則或新模型時極其有用避免浪費 token 和等待時間。獨家技巧 3ocr log tail實時監(jiān)控ocr log tail會監(jiān)聽~/.ocr/logs/review.log顯示最近 10 次 Review 的耗時、LLM 調(diào)用次數(shù)、規(guī)則匹配數(shù)。當團隊反饋 Review 變慢時我們第一反應(yīng)就是ocr log tail看是 LLM 延遲升高還是規(guī)則引擎匹配過多。5.3 性能調(diào)優(yōu)讓 Review 速度提升 3 倍默認配置適合大多數(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默認 4在 CPU 核心少的機器上降低并發(fā)避免 OOM規(guī)則引擎加速ocr config set rule.fast_mode true跳過context_filter的文件
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
欧美色三级片91| 婷婷综合网| 99碰碰| 蜜奶av| 国产91 丝袜在线播放00-百度| 亚洲精品天堂久久A∨51成人漫| 五月天婷婷久久| 欧美性色综合网| 亚春色色| 亚洲精品美女久久久久久久久| 中文字幕日韩精品一区二区三区| 东京热双插| 一级免费啪啪片| 天天射天天操天天干天天吃2018| 超碰碰激情97+久| A级在线视频| 超碰av人人人| 加勒比五月天| 国产尤物AV尤物在线观看不卡| 欧美A√综合网| 色色色色日本| 天天影视综合色| 亚洲国产一区二区三区四区国产| 成年在线视频日本亚洲在线视频区精品江靖宇公司 | 无码人妻丰满热妇又大又粗| 中文熟女五十乱码在线| 成人av动漫在线观看| 欧美成人贴图| 啊啊啊好湿久久| 日韩无码极品| 欧美亚洲国产日本在线,久久精品国产| 中国AV美女| 96国产污污污丝袜| 色五月激情AV在线| 密臀视频三区免费网站| 成人热久久精品| 亚欧日韩成人| 97久久国产| 国产av高清版| 风流老熟女一区二区三区l| 9长久久精品| 天天日天天干天天整| 人妻少妇精品久久久久久| 久久,精品一二三| 国产精品白丝在线播放| 亚洲色电影在线| 日骚逼视频| 国内精品久久国产,www香蕉久久五月丁香,亚洲欧美日韩精品永久在线,日本精品一 | 日韩精品一区二区三区色欲| 日逼逼免费看| 婷婷香蕉欧美在线一区二区三区| 色色丁香| 97WW精品| 免费看久久久性性| 天天综合网~69| 激情欧美97| 国产乱人妻精品入口| 人妻乱仑一区二区三区| 97在线观看| 国产情色第一第二页在线观看| 国产无码一二三区| 欧美乱伦专区| 亚欧操逼片在线观看 | 97人人夜| 日本欧美m v精品网站加| 婷婷综合五月| 爽极品影院| 色综合加勒比| 亚洲麻豆av一区二区| 亚州春色| 嗯嗯啊啊的视频| 亚洲欧美九九| 日韩女优在线| 清柠毛片| 色婷婷网| 太久视频| 精品国产久热在线观看| 在线播放免费av福利片| 亚洲巨爆乳一区二区三区四季网| 日韩干B| 国产精品密臀网在线观看| 六月婷婷五月丁香| 天天躁日日躁AAA片李宗瑞| a男人的天堂久久一级A毛片| 日韩一级欧美一级国产一级台湾 | 7777欧美成是人在线观看| 无码精品久久| 91社区伊人| 久久亚洲一区女同性恋中文字幕 | 亚洲AV无码久久久国产精品| 操逼网免费无码视频| 夜夜一区二区| 老熟女网站| www.婷婷| 极品色社| 九九综合久久中文字幕| 久9爱精品| 成人一二三区| 91伊人大香蕉| 国产第二页| 欧美精品丝袜久久久中文字幕| 色婷婷电影网| 亚洲色综合| 欧美黄色片AAAAA| 青青操狠狠撩| 精品国产精品一区二区| 十八禁啪啦拍视频无遮挡| 久久精品高清AV| 色一色综合网| 麻豆天美电影一区二区| 麻豆天美传媒在线视频天堂| 亚洲精品一二三四区| 免费的av网| 97超视频在线观看| 成人精品视频| 9美女超碰在线免费观看| 中文在线视频| 国产自偷| 欧美AB在线| 91福利网在线观看| 亚洲色色探花| 高清国产av无码| 九九亚洲视频| 日本精品人妻少妇一区二区| 人人污日韩一区二区| 中文字幕-区二区三区四区视频中国| 秋霞男人网| SS久久| 97超碰在线资源网站| 欧美日韩亚洲国产中文永久天天看| 欧亚揄拍偷拍精品视频| 少妇精品久久久八区九区| 亚洲欧美97√| 乱操乱伦AV| 在线a v| 亚洲精品日韩国产欧美| 天美传媒国产原创中文字幕亚洲欧美另类| 日韩情色视频| 天美传媒av在线| 久久精品人妻一区二区三区| 无遮挡又黄又刺激的视频| 日韩激情啪啪啪| 色噜噜人妻丝袜a∨先锋影 | 免费试看60秒| 奇米狠999| 91粉嫩萝控精品福利网站_精品影音先锋国 | 中文 人妻 制服| 电家庭影院午夜69久久夜色精品国产69乱 | 乱老熟女一区二区三区| 欧美丰满少妇交换91欧美精品| 婷婷色播婷婷| 日韩无码人妻| 巨爆乳肉感一区二区三区竹菊影视 | 天天爽天天操| www超碰| 色综合中文字幕不卡| 久久m| 亚洲激情在线| 三级特黄60分钟播放| 91干熟女| 欧美亚洲厕所精品偷拍91| 91熟女视频网| 国产人妖视频一区在线观看| 无码免费一区二区三区啪啪| 青草视频人妻在线观看| 再深点灬舒服灬太大了添视频| 欧洲熟妇xxXx欧美老妇裸体| 99蜜桃臀亚洲成人在线观看| 91亚洲欧美激情| 欧美经典一区二区三区| 操我啊啊啊啊啊| 综合大香蕉美。| 人人人摸人人| 国产久久视频| 91 丝袜在线播放| 男人的天堂啪啪| 亚洲熟女偷拍在线观看| 国产一区二区三区久久久精品| 黑丝少妇| 69一区二区三区 | 成人免费视瓶| 99超碰色| 亚洲日韩国产精品| 久久久久久亚洲精品中文字幕人妻| 九九这里只有精品| 欧美性爱中文字幕无线码| 色噜噜人妻av 中文字幕| 天天日天天干天天摸天天操| 欧美日韩性爱视屏免费看了| 中文一区在线日| 国产精品一区二区手机看片| 97国产色综合| 国产精品久久久久婷婷二区次| 欧美强奸乱| 91日产欧美| 欧美日韩另类在线| 大香蕉男人的天堂| 国产成人亚洲精品无码古代早漏男| 东京热一区二区三区四区五区六区| 色97干| 992这里有精品| 欧美 亚洲精品首页| 五月香婷婷| 校园春色 亚洲| 丰满熟女人妻一区二区三五十一路| 国产区性爱在线视频秋霞豆| 福利在线观看一区二区| 巨爆乳肉感一区二区三区竹菊影视| 超碰97玖玖爱| av爱爱爱| 白丝1区2区3区| 97视频免费在线| 逼逼逼逼操操操操操操操操操午夜剧场| 九九精品美女高溯喷水 | 蜜臀va69| 亚洲宅男天堂| 60秒不遮不挡| 久久久久久久人妻| 国产一二三福利视频网| 乱老女人一区二区视频| 伊人96在线| 精品人妻一区二区视频| 亚洲资源网| 久久久久久69国产一区二区| 九九九久久久久| 欧美一级黄色免费专区| 狠狠热这里都是精品| 天天操夜夜操| 欧美天天谢综合网| 影音先锋日本一区二区| 免费成人在线熟妇网| 少妇一级婬片免费放一级a性色.| www.91欧美| 久久精品国产亚洲妲己影视| 国产精品久久久久久久久久久久久久久| 国产精品4p在线观看| 欧美在线伊人色| 无码高清少妇久久| 乱久久久| 91成人精品在线播放| 中文字幕欧美日本乱码一线二线| 91精品无码人妻系列| 人妻少妇无码| 老鸭窝亚洲毛片| 色色色日本| 亚洲美女 晚间男人天堂| 人妻 中文 日韩| 偷拍片久久| 殴美在线AⅤ| 亚洲天堂一二| 亚洲天堂性爱| 少妇高潮特黄A片| 五月婷婷青青草娱乐伊人| A片 AV一级在线播放观看免费| 国产精品乱码久久久、久久| 秘书高跟黑色丝袜国产91在线| 91小视频| 69视频入口| 中文在线久久字幕| 亚洲国产一区二区三区四区国产| 97精品在线视频| 91+欧美| 国产精品一区午夜福利| 98超碰欧美| 99999精品视频| 伦伦成年午夜免费视频| 91老司机视频| 精品网站99999| 顶级少妇BT天堂| 亚洲va有码在线天堂| 嗯嗯啊啊操我| 亚洲欧美不卡线| 亚州五月| 91欧美少妇| 99热大香蕉伊在线| 中文字幕、久久精品国产2020、久久综合久久自在自线精品自、亚洲 | 搡老女人老91妇女老熟女| 欧美三四五区| 91痴汉| 视频在线中文字幕| 任你干在线视频| 北京美女一区二区| 欧美综合在线91| 日韩99神马视频播放片在线播放| 欧美专区在线| 熟妇女人妻呻吟久久AV| 天天综合影院91| 天天色悠悠激情| 丁香五月婷婷基地| 99精品在线观看| 97精品人妻一二三四| 亚洲少妇诱惑| 久久久精品视频欧州站| 精品二999| 人妻久热在线| 人人摸人人摸人人干| 国产午夜精品理论片一二三区区| 亚洲欧美999| 人妻夜夜爽天天爽三区麻豆AV网站| 欧美性第1页| 欧美午夜熟妇黑人精品91| 人妻天天爽| 中文一区在线日| 91丝袜在线视频| 欧美 亚洲 另类 综合| 久久久久ab| 老司机免费视频在线91| 日韩中文字幕精品一二三事国产精品| 91女优在线观看 | 国产伦精品一区二区三区视频女| 精品四五区| 人妻密肉在线观看| 超碰中文字幕人妻草一区| 久久久久亚洲一区女同性恋中文字幕| 婷婷五月天激情四射| 欧美在线55555| 欧美天天谢综合网| 日韩中文字幕熟妇人妻 | 久久99精品国产| 欧美亚洲性爱一区二区| 丁香五月天婷婷姐| 蜜臀久久99精品久久综合| 妺妺跟我一起洗澡没忍住| 在线免费观看日韩一区| 国产东北女人在线视频| 殴美在线AⅤ| 日日97| 粉嫩少妇自慰在线| 玖玖人人爱| 色吧五月| 色五月亚洲| 色狠狠综合| 国产成人精品亚洲日本| 国产精品岛国片在线观看| 日韩精品国产一区二区| 欧美日韩性爱电影在线| 91精品人妻偷情| 青娱乐福利99| av爱爱爱| 欧美性爱中文字幕无线码| 少妇厨房愉情理伦片bd在线观看| 粉嫩av平台| 翔田千里爆乳巨臀无码| 超碰97人人cao| 操国产逼| 亚洲色欲天天天堂色欲网女| 国产又黄又爽又刺激久久久久久| 乱伦Av网| 女人高潮抽搐喷水视频网站| 色999五月色| 99在线免费观看| 九九综合色| 99性爱| baisiav| 91在线视频免费中出| 精品久久久久9999| 日韩欧美偷拍美女视频| 日本加勒比无码专区一二三| 欧美大的香蕉有线电视视频| 色图综合网| 国产亚洲深夜激情| 在线观看AV片| 久久极品伊人| 人人操人人摸人人骑| 日本中文字幕不卡视频| 亚州免费啪啪视频| 狼人久草| 激情图片亚洲色图| 好爽免费视频,| 精品一区二区三区18| 96精品久久久久久久久| 国产久久免费精品视频| 亚洲最大无码中文字幕网站| 天堂岛av| 精品人妻无码一区二区三区不卡-精品人妻无码一区二区...|精品少妇一区二区三 | 91在线超高颜值国产| 亚洲制服欧美另类内射| 亚洲乱色视频一区、二区在线| 美女黑人91神马| 超碰人人干天天射| 91在线秘 男同| 国产美女高潮叫床视频| 久久色一区| 欧美在线 亚洲| 不卡二三区人妻少妇| 成年人网站在线免费观看| 岛国片国产成人亚洲播放| 五月丁香成人网| 91亚洲欧美色图| 茄子社区国产精品| 成人羞羞视频国产| 久草免费在线一区二区| 色鬼在线综合| 九九九九一区| αⅴ天堂| 色女女女导航| 国产精品色| 97超碰人人操人人操| 日韩一级成人毛片免费观看| 欧美日韩国产在线| 9久精品视频在线观看| 91精品人妻一品二品三品| 亚洲性爱免费电影| 中日无幕一二三四区| 中文字幕乱偷人妻久久艾草网| 久久久久国产精品久久久| 无码WWW免费视频网站| 久久久蜜桃一区二区三区| 丝袜翘臀后入欧美校园亚洲自拍另类小说一区中文字幕少妇诱惑 | 国产大学生高潮在线播放| 久久e6只有精品| 久久精品无码熟妇一区二区三区视频导航| 精品国产av一区二区三区四区入口| 亚洲欧美中文日韩视频中国语| 麻豆精品A片免费观看| 日夜精品| 国产 丝袜 欧美中文 另类| 啊啊啊在线观看免费视频| 久久久久久999| 秋霞蝌科网日本一区| 欧美一二三区四五区| 91国产丝袜白虎| 国产精品一区午夜福利| 动漫片子网站3黄| 94色色电影网| 五月激情视频| 97超碰国产亚洲精品| 青青草成人视频在线观看二区 | 中字幕人妻一区二区三区| 五月婷婷五月天| 曰本道人妻久久久在线不卡色视频| 久久精品国产AV一区二区三区| 日本三级久| 狠狠躁伊人中文字幕| 久久久精品视频免费观看| 日韩中文字幕av在线播放| 欧美亚洲| 白丝1区2区3区| 欧美资源| 97操97色| 97久久网| 高凊专区人人操| 2017天天拍大香蕉| 人夜夜精品网站香蕉嫩草| 熟女91网站| 狠狠色婷婷| 97色操| 色播五月婷婷| 天美传媒婬乱在| 天天日夜夜| 国产精品不卡少妇白| 超碰成人免费| 99re免费| 久久伊人网视频一区二区三区| 久久婷婷电影网| 欧洲免费一区二| 黄色AV免费| 伊人操操| 日本视频一区二区三区| 久久久9 9 9精品| 免費黃色視頻觀看一| 亚洲色婷婷综合久久一区二区三区| 99操逼| 野狼福利社区| 操我啊啊啊啊啊| 久久亚州精品成人Av无| 综合激情一一91| 精品人妻美妇91job| 日本三级精品| 色婷婷aV一区二区三区麻豆综合| 亚洲成aⅴ人片不卡无码| 欧美猛交黑寡妇中文字幕| 蜜乳AV一区| 熟妇女伦乱视频视频| 国产激情视频在线观看| 大香蕉欧美| 久久亚洲不卡一区二区三区 | 99热综合| 成人在线视频二区| 99色婷婷中文字幕乱色| 亚洲天天更新| 91人妻视频在线| 美国一区二区三区视频| 欧美日韩操逼嗦吊| 狠狠超| 国产久久日韩网站导航| 免费A V在线播放| 欧美碰碰综合色| 一区,二区,三区网站| 国产乱伦亚洲| 久久九九97| 黄色成品网站| 国产成人精品日本视频| 99热超碰| 屁屁影院一区二区三区国产| 欧美组图日韩亚洲中文字幕| 丝袜色综合| 夜夜爽爽爽| 欧美日韩色综合网| 91人妻熟女| 91久久国产综合精品| 任你艹| www.久久制服糖| 91国产丝袜白虎| 影音先锋一区二区在线资源| 婷婷五月成人| 日韩精品免费高清视频在线| 人妻少妇精品| 国产乱不卡| 97超碰天天爱天天爱| 久久精品亚洲成a人天堂| 久久精品国产Aⅴ| 好一吊区二区| 伊人久久大香线综合无码| 操逼日韩无码| 欧美经典一区二区三区| 啊啊啊好多水| 亚洲欧美综合网| 久草综合视频| www鬼畜国产男人的天堂| 精品一区二区人妖| 激情 欧美 亚洲 小说| 97爱亚洲| 91女色| 视频在线中文字幕| 无码视频一区二区| 日韩无码嘿咻黑热久| 性做久久久久久免费观看软件| 99久久精品无码一区二区毛片免费| 天天干人人乐| chaopen97久久| 国产精品密臀网在线观看| 亚洲欧美校园另类春色| 婷婷丁香久久| 日本精品第一视频在'| 精品无码久久久久久国产浪潮| 综合网天天| 天天天干977| 久久久9 9 9精品| 清清草影| 人妻酒店出差被中出免费在线播放| 天美国产精品| 国产精品一二三区福利| 九月婷婷久久| 强奸a片网| 国产1769在线| 亚洲 欧美日韩 另类| 色狠狠 - 百度| 国产精品一区av在线| 日本性感人妻91| 国产性爱强奸乱伦大全| 欧美性爱一区二区 | 国产熟女精品区| 国产亚洲色婷婷99精品91| 欧美日日夜夜| 色综合加勒比四四季| 欧亚乱色熟一区二区三四区| 久九干| 三级片大波波| 99国产精品免费| 绑缚麻绳人妻寝取完整版| 国产精品乱码久久久久久久久久久久| 欧美日韩免费专区在线| 极品粉嫩一区二区| 国产成人网址| 91中出视频| 天天综合网~91入口| 亚洲午夜福利在线影院| 日韩AV电影网站| 欧美少妇高潮视频| 美國A片| 9 7超碰在线免费观看| 中文字幕在线免费观看| 女人爽到高潮潮喷18禁网站| 综合天天。| 永久免费发布性爱网| 97欧美色资源| 久操网视频| 60秒免费小视频| 国产人妖的免费的视频| 色婷婷婷五月天激情四射| 亚洲情色欧美| 91美女视屏| 欧美色网| 九九热超碰97亚洲最新香蕉 | 操www| 国产成人AV麻豆| 国语av狠狠色丁香婷婷综合激情| 精品熟女一区=区三区| 久热一区二区| 伊人色综合超碰| 人人操人人爽人人操人人| 一区麻豆 高清中文字幕| 精品人妻免费观看| 人妻熟女一区二区三区在线| 素人一区二区三区日韩| 国桃视频产巨乳精品一区二区在线| 成人麻豆av电影网站| 蜜屁Av| 欧美强奸乱| 国产乱码久久久| 东京热男人的天堂网| 欧美色偷偷| 操B久久| 欧美1区二区三区公司 | 小泽玛利亚一二三| 青青操网| 亚州高清av| 夜夜草网站| 91人妻人人澡人人爽人人精品| 精品久久青青草| 蜜乳视频网站| 999久久芭蕾| 99成人| 十八禁视频一区二区| 天天躁狠狠躁av| 亚州国产精品乱| 久久在线观看免费视频| 麻豆人妻偷人精品无码视频| 精品人妻伦一二三区久久| J?P?NESEHD熟女熟妇伦| 蜜桃视频啊啊啊啊| 天美传媒一二三区永久网站| 影音先锋乱伦资源| 婷婷20月天青娱乐| 人妻无码后入| 超碰在线人妻| 日韩性爱1级片视频| 久久久久久久久女黄| GVH-003 母子姦 青木玲-麻豆视频,麻豆视传媒短视频网站入口,麻豆视传媒官网直 | 欧美黄色片AAAAA| 久久精品一区二区一8| 大香蕉色欲AV| 91在线综合网| 99操逼| 被男人添B超爽视频| 黄色工厂这里只有精品| 亚洲射综合网| 开心五月深爱五月| 91c色| 麻豆国产97在线| 久九九九九九九九热| 日韩久久艹| 超碰 97国产熟女| 日本理论在线| 无码高清国产AV| 人妻少妇一区二区| 久久精品国产亚洲AV片多多| TS人妖另类精品视频系列| 男人天堂无码| 偷拍五区| 狠狠图片青青草| 中文字暮97| 五月婷婷爱六月丁香色| 久久国产乱子伦精品免费女人| 97久久国产| 热G综合热G中文| 久久妇| 伊人久久大香线蕉亚洲五月天,青草青草欧美日本一区二区,欧美日产欧美日产国产 | 97色插| 久久婷色| 久久久无码av精| 天天爽夜夜爽夜夜爽精| 天天澡天天爽日日AV| 99少妇内射| 激情婷婷丁香网| 亚洲国产中文字幕| 偷拍色图| 亚洲素人网| 精品性爱久久视频| 性生活无遮挡纯毛片在线看| 熟女自慰久久久| 亚洲成人一二三区| 人人爽夜夜操| 欧美色图片91| 欧美视频第二页| 天天日天天射天天干| 久久偷拍人| 麻豆福利视频导航| 你草精品在线视频| 白 大 人妻 区 在线| 日韩啪啪啪视频| 亚洲欧美精品久| 午夜综合在线| 十八禁电影伊人网| 亚春色色| 欧美在线天堂| 国产高清成人免费视频| 秋霞 色色| 99婷婷一区二区| 婷婷av在线中文字幕| 激情五月综合开心五月| 福利操逼| 留下AⅤ黄色片| 五月婷婷啪啪| 综合久草| 97色涩| 久久久91福利姬| 91欧美www| 中文字幕后石码四区五区| 亚洲啪啪综合?v一区综合精品区| 欧美日韩国产一区二区小黄片大全| 日韩精品在线放| 久久精品中文字幕无码l| 一区二区娱乐网站| 成人在线视频二区| 欧美色图下一页| 日本道日本道中文字幕日本道最新日本道在线观看 | 亚洲国产欧美中文永久| 日韩精品99999| 另类亚洲图色| 久久人妻一区二区三区高清| 91九色丨风韵犹存| 性饥渴少妇av无码毛片| 日韩欧美国产高清视频| 国产女人高潮视频| 天天日天天操VV| 亚洲丝袜在线观看| 日韩极品无码B| 欧美一区二区亚洲天堂| 小草三级久久观看| 日韩不卡网操逼中文字幕日韩| 人妖欧美一区二区| 13小男生GAY自慰脱裤子| 国产AV久久野战精品| 日日干日日| 啊啊啊啊啊啊啊啊啊啊在线观看| 蜜屁av| 伊人久久综合影院| 吻戏激情性巴克| 欧美伦乱爱| 99av| 在线中文字幕极品av| 欧美综合骚| 精品少妇一区二区三区| 日本色婷婷| 亚洲精品 欧美精品| 美女91AV| 色噜噜人妻丝袜a∨先锋影| 国产欧美美女免费观看视频| 嫩草 我啊~嗯~在线| 香蕉欧美| 五月丁香久久| 91亚洲欧美综合高清在线| 久久精品国产亚洲5555| 青草av在线| 夜夜 中文视频rt| 一起草三级AV电影在线观看| 国产精品熟女乱伦| 青草影院内射高潮| A一区片| 色五91| 欧美狠狠狠| 亚洲美女自拍偷拍视频| 北京美女一区二区| 欧美成人性爱视频在线播放| www.狠狠| 色九九久九九| 天天干天天狼在线视频| 日本高清熟女久久一区| 国产亚洲精品A在线观看下载| 国产剧情一区在线观看| 97人人夜| 爱我干综合| 久久久久久免费电影| 韩国午夜理伦三级好看| 欧美成人色| 国产精品人人爽人人做可爱福利| 欧美大香蕉在线观看| 精品人妻丰满熟妇一区二区三| www.人人cao| 99热99re6国产在线播放| 日韩免费在线视频观看| 啊啊啊不要啊啊受不了了视频在线| 欧美中出| 成人影 天天操 亚洲| 天天澡天天爽日日AV| 久久大香蕉手机高清| 久久久久国产精品久久久| 欧美日韩丝袜| 啊啊啊啊网站| 九九久久久久久爱| 成人性爱免费播放| 91麻豆天美国产| 国产一级137片内射麻豆| 四虎免费看黄| 中文字幕一区电影在线观看| 人妻熟妇久草在线| 在线观看国产黄色| 亚洲一区中文字幕| 女优免费一区二区永久| 91人妻少妇| 精彩国产视频播放1区2区| 欧美特大AA级黄片| 一级黄碟在线看| 玖玖爱免费观看视频| 欧美色图小说综合| 九九99久久| 俄罗斯及免费在线看| 色天使大香蕉| 亚洲成a人在线观看久| 五月天AV资源| 中文字幕二区日韩天堂| 欧美18 在线观看| 亚洲大胆人体av| 精品亚洲国产成人AV制服丝袜| 日韩99999| 67194无码不卡| 国产一级特黄大片处女| 久艹视频在线| 91蜜臀熟女| 国产精品日韩在线一区| 久久影视二区三区行押| 成人婷婷丁香| 国产乱伦性爱区| 欧美色道啊| 国产欧美伊人| 亚洲精品xxx| 欧美综合色,www| 国产精品久久久久久夜夜夜| 欧美丝袜制服久久| 天美传媒婬乱在| 亚洲AV不卡在线观看尤物| 无码 有码 国产18p| 综合久久9| 亚洲限制级| 日本天天操| 亚洲图片激情综合另类| 少妇高潮一区二区三区在线| 日本九九久久99播| 欧美亚洲日本激情在线| 成人羞羞视频国产| 天天天堂影视日韩亚洲91| 日韩亚洲美女一区久久| 2021久久国产综合精品青草| 精品无吗m| 99热日| 日本一区二区三区欧美日韩中文字幕| 国产精品久久久久中文字幕| 欧美日韩资源| 操操逼操操逼操操逼逼| 一本久道久久综合狠狠爱一密臀精| 午夜精品久久久久| 天天干天天插| 亚洲成人无码影院| 欧美日韩国产成人高清| 97人人色| 蘋果手機免費看成人Av| 精品无码一区二区| 亚洲精品成人激情在线| 亚洲精品性爱片| 上特色A在线| 久久激情视频| 熟女高潮合集-永久久久-成人AV| 青青草视频这里只有精品| 激情综合网五月婷婷五月天| 国语对白露脸XXXXXX| 美女9118禁| 久久禁| 欧美日韩人妻婷婷一区| 久久精品一区| 狠狠躁AV| 久久午夜伦| 亚欧高清在线| 成人午夜小视频手机在线看| 无码区蜜乳| 在线毛片片免费观看| 久久一区二区蜜桃| 少妇熟女视频一二三区| 少妇色综合| 日影院久久婷婷夜夜网| 操操操操操操| 亚洲色图a| 久久久久久性爱视频| 99这里有精品| 99精彩视频| 99久视频| 黄网在线播放| 操逼日韩无码 | 色婷婷激一区二区三区| 岛国激情视频在线观看| 91性高朝久久久久久久久| a'v在线资源| 欧美精品三级黄片| 亚洲全色网| 欧美色涩| 91操操操操| 国产强奸无码乱伦| 亚洲中文字幕精品一区| 国产精品久久久吖| 亚洲性爱成人| 久久久久久久伊人精品| 国产Av超碰| 中文字幕奈奈美被公侵犯| 神马久久久久久伦理片| 人妻 丝袜美腿 中文字幕| 久久国产性爱| 91强热人妻| 狠狠激情综合狠狠操中文字幕| 亚欧高清在线| 香蕉婷婷| 欧美熟爽综合| 天天碰操中国年青熟妇| 96国产污污污丝袜| 欧美国产操逼| 97在线/亚洲| 91色花堂| 日韩欧洲操屄视频| 思思热久久成人| 强奸乱伦αv片| 五月婷婷无码| 日本免费一区二| 人妻在线大香蕉| 啊啊啊啊啊舒服| 亚洲无码一区成人免费午夜| 麻豆久久一区二区三区| 日韩成人精品| 天天看,天天做| 91 亚洲 欧洲| 影音先锋一区二区在线资源| 午夜精品久久久99热蜜桃的功能特点| 有码专区最新中文字幕有码| 97啪啪| 福利操逼| 婷婷丁香五月综合| 日本中文字幕高跟| 欧美天天在线| 97九色| 操逼操网| 日韩人妻资源网| 色综合99999| 好爽免费视频| 强奸国产在线| 五月婷在线| 中文在线久久字幕| 我要色综合网站| 婷婷色色五月天福利| 少妇干B| 1956日韩精品| 中文字幕乱偷人妻久久艾草网| 中文字幕在线免费观看| 密乳无码| 日本熟妇熟色97一本在线观看| 青青伊人加勒比海| 婷婷五月天激情四射| 乳欲人妻办公室奶水| 色色99| 加勒比少妇AV婷婷六月天超碰超碰| 四虎影视精品| 欧美人妻久久精品二区三区| 97亚洲一区| 天天影视91看看| 亚洲?V无码专区在线电影| 91久久久久久| 中文字幕、久久精品国产2020、久久综合久久自在自线精品自、亚洲 | 日韩精品黄片免费观看| 后入 亚洲 美女 射| av日韩中文字幕| 久久精品日韩| 精品人妻二区三区| 67914在线兔费成人视频| 亚洲 日本 国产 综合| 青青草日本无码| 大香蕉2017| 国产精品视频麻豆入口| 久久综合18p| 日本韩国五十路六十路七十路老熟女作爱视频网站| 伊人黄色片| 亚洲国产一区二区三区在线| 国产日韩怡红院| 国产真实野战在线视频| 亚洲 欧美 另类 日韩 人妻一区| 夜夜爽夜夜爽| 狠狠操天天干| 色网亚洲人| 人人做人人妻人人夜视频| 欧美熟女妇同| AⅤ片水多多| 99精品丰满人妻无| 久久久四区| 深爱激情五月天| 97日韩欧美亚洲| 操逼逼无码| 日本黄色天堂| 中国国国产一级特黄毛片| 日韩天天本| 2020中文在线一区二区三区| 亚洲熟女综合| 欧美日韩大香蕉| 国精品一区二区三| 尤物av网站免费在线播放| 精品少妇一区二区三区免费观看| 東南亚性呦成人伦理资源在线视频| 久久AV无码网址| 国产精品高朝久久久久久久| 日本一区二区成人在线| 久久精品电影| 亚洲AV成人无码久久精品播放| 九九av| 欧亚在线视频| 久操免费电影| 99啪啪| 女优大全 - 91n| 欧美不卡在线美女| 亚洲中文字幕熟女| 美女淫穴| 亚洲一级性爱视频免费看| 亚洲图片 激情小说| 日本一区二区三区四区免费观看| 欲色啪| 亚洲成人免费在线| 久久东京热久久| 亚洲中文字幕有码视频一区二区三区| 肏逼视频日本| 久久蜜色情在线视频xxx免费观看| 最新日日夜夜天天干干| 亚洲色图 图片| 自拍偷拍2025在线观看| 色约约一区=区三区| 国产91美女高潮| 欧美色www亚洲国产阿娇要播| 75大香蕉| 中文字幕狠狠玩| 91爱剪切久久| 久久综合久久综合人久久夜精品| 亚洲图片激情综合另类| 97视频在线观看网站| 99综合网| 色哟哟AⅤ| 亚洲91大片| 可以免费观看的AV| 综合久久久久久久久91| 任你干在线视频| 色色色热| 操人人| 精品无人区麻豆乱码1区2区图片| 91狠| 中日韩久久久| 精品国产乱子伦一区二区三区,精品一| 天堂蜜桃无码视频一区二区| 在线有码中文字幕| 少妇人妻在线| 午夜成人福利影视| 熟妇操花| yaouchengrenav| 呻吟 欧美 日本 中出| 天天欧美色| 久草网站免费在线观看| 97视频免费播放| 丝袜美腿射精91| 97精品国产97久久久久久免费| 18禁精品网站在线看| 欧美性性性| 青青三级视频| 色噜噜人妻av 中文字幕| 超97在线精品视频| 99re这里只有精品9| 嗯,啊。舔我逼| 国产黄a三级三级三级av在线看| 久操网视频| 国产 日韩,欧美 自拍| 久草毛片| 妇人噜噜| 日本一区三级韩国| 免费啪啪啪网站18岁| 先锋影音av先锋一区| 天天综合网在线91| 久久啊啊啊视频| 久久久久久久久久久久久9999| aaaa黄片| 99这里只有精品国产| 天美传媒AV在线播放| 日韩特一级久久| 超碰 av 女人天堂| 亚洲情色91| 国产无马av| 亚洲导航深夜福利| 91人精品妻入口| 超碰2017| 天天摸天天操视频| 亚洲 欧美 综合 91| 99re在线观看| 精品人妻二区三区| 天天干美少妇一区| 岛国精品视频在线观看| 亚洲 日韩 丝袜 熟女 变态| 国产高清视频无码在线| 日韩大香蕉| 亚洲图片91| 婷婷人妻激情| 大干人妻| 天天干夜夜肏| 久神马| 美女诱惑在线一区| 婷婷激情一区二区三区俺也去| 丁香五月天婷婷姐| 日本十八禁免费看污网站| 老司机福利青青草| 亚洲开心网| 成人性交午夜免费片| 亚洲成人AB| K8久久久久| 精品国产乱码久久久久久久久久毛片| 亚洲大色鬼| 国产高清在线自在拍69| 婷婷九月国产| 色哟哟精品1精品2| 欧美熟女逼久久久久久| 日韩精品国模| 人妻熟女一区二区| 青青草国产一区二区三区| 很狠操| 国产久9| 91热热色| 久久免费9| 69天堂| 日本乱人伦片中文三区| 13小男生GAY自慰脱裤子| 伊人热综合| 国产乱伦亚洲色图高清无码| 综合av社区| 欧美精品一区二区少妇免费A片| 岛国激情视频在线观看| 国产精品人妻熟女aⅴ| 中文字幕交换人妻| 亚洲超碰AV| 六月婷婷色综合| 亚洲色鬼| 亚洲综合113页| 精品久久九| 香蕉国产97| 中文乱码字幕观看| 日本人妻伦在线中文字幕| 在线播放免费av福利片| 久久一级无码精品毛片6| 操美女高潮抽搐白浆| 日韩另类色图| 少妇诱惑视频| 日本超碰色精品| 熟女少妇一区二区三区| 亚洲欧美情色| 亚欧免费| 2024人人操人人摸| 亚洲欧洲视频小说在线观看| 一区二区三区 丝袜高跟| 久操影视| 亚洲 在线| 日韩中文字幕视频| 欧美日韩中文亚洲v在线综合| 天天操夜夜操| 东京热精品97综合网| 黑人精品欧美一区二区蜜桃| 欧美色欧美| 国产精品干干干| 人人操av| 怡红院成人av| 精品人妻一区二区三区不卡断| 超碰在线人妻中文字幕| 久久免费精品视频免一| 青青草在线成人视频|