免费国产精品自在自线-91精品国产色综合久久久浪潮-99热久久免费频精品-国产精品国模在线观看-久久亚洲国产精品成人?V秋霞-久久国产一级A片免费播放-亚洲国产欧洲综合97久久-久久国产白嫩美女呻吟高潮

ARTICLE DETAIL

資訊詳情

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

AI Agent驅(qū)動開發(fā)閉環(huán):構(gòu)建-測試-修復(fù)循環(huán)實戰(zhàn)指南

AI Agent驅(qū)動開發(fā)閉環(huán):構(gòu)建-測試-修復(fù)循環(huán)實戰(zhàn)指南 1. 為什么要讓 Agent 自己跑完開發(fā)閉環(huán)先說個實際的場景。很多團(tuán)隊現(xiàn)在已經(jīng)讓 AI 幫著寫代碼了但寫出來的代碼總是要有人接手去構(gòu)建、去跑測試、去修失敗。修完之后再跑一輪可能又掛了再修再跑。這么一個“構(gòu)建→測試→修復(fù)→循環(huán)”的過程如果全靠人肉盯著那 AI 寫代碼省下來的那點時間又全填回調(diào)試?yán)锪?。我自己最早接觸這個概念是在做一個內(nèi)部工具的時候團(tuán)隊產(chǎn)出越來越快可 CI 上的紅燈越來越頻繁每天光看構(gòu)建失敗日志就占用大量精力。后來我干脆把整條鏈路交給一個 AI Agent 去跑——它負(fù)責(zé)構(gòu)建、它負(fù)責(zé)發(fā)現(xiàn)問題、它負(fù)責(zé)提修復(fù)甚至它負(fù)責(zé)確認(rèn)自己改對了沒有。效果比預(yù)期好很多不是說它能一次把所有問題都修完而是它能把人從重復(fù)性的“看日志→猜原因→改代碼→重新跑”里徹底解放出來。這篇文章想跟你聊的就是怎么把“構(gòu)建→測試→修復(fù)→循環(huán)”這八個字落成一個真實的、可運(yùn)行的 AI Agent 工作流。內(nèi)容適合已經(jīng)在用 LLM 寫代碼的開發(fā)者也適合在做 CI/CD 流水線優(yōu)化的人。我會把我實際搭過的方案、踩過的坑、以及一些不太容易在文檔里找到的細(xì)節(jié)全部攤開講。這里使用的核心關(guān)鍵詞是 AI Agent、構(gòu)建、測試、修復(fù)、循環(huán)。先把這幾個詞串起來理解AI Agent 是大腦構(gòu)建是入口測試是裁判修復(fù)是動作循環(huán)是流程。2. Agent 驅(qū)動開發(fā)閉環(huán)的架構(gòu)設(shè)計2.1 這個閉環(huán)到底是什么很多人一聽到“AI Agent 自己跑開發(fā)閉環(huán)”第一反應(yīng)是是不是讓 AI 完全替代程序員不是的。這里說的閉環(huán)指的是讓 Agent 在一個受限的范圍里自動完成“寫代碼→驗證→修復(fù)→再驗證”的循環(huán)直到通過預(yù)定義的驗收標(biāo)準(zhǔn)或者達(dá)到某個退出條件。一個典型的閉環(huán)包含這幾個環(huán)節(jié)構(gòu)建Agent 在給定代碼庫上執(zhí)行構(gòu)建命令比如mvn compile、npm run build、python -m build。構(gòu)建失敗信息是 Agent 后續(xù)行動的輸入。測試構(gòu)建通過后Agent 接著運(yùn)行測試集。測試可以是已有的測試套件也可以是 Agent 根據(jù)需求新生成的測試用例。修復(fù)Agent 分析失敗原因定位到相關(guān)文件生成修復(fù)補(bǔ)丁。循環(huán)修復(fù)后再次執(zhí)行構(gòu)建和測試如果還是失敗基于新的失敗信息繼續(xù)修復(fù)。這里的關(guān)鍵不是“Agent 能寫多少代碼”而是“Agent 能不能可靠地收斂”。如果它一直在同一個錯誤上打轉(zhuǎn)或者越改越亂那這個閉環(huán)就是失敗的。所以架構(gòu)設(shè)計的重心不是在“調(diào)用大模型的能力”上而是在如何為 Agent 構(gòu)建一個良好的“感知—決策—行動”循環(huán)。2.2 核心組件拆解我梳理了一下一個能真正跑起來的閉環(huán)至少需要五個組件。缺一個循環(huán)就有斷層。第一個是代碼倉庫工作區(qū)。Agent 需要一個隔離的、干凈的工作目錄。不能直接在主干分支上修代碼否則一次錯誤的修復(fù)可能污染整個倉庫。最好用臨時分支或者臨時目錄Agent 每次修改都生成 patch由外部系統(tǒng)決定要不要合入。第二個是執(zhí)行器。Agent 本身不直接執(zhí)行命令而是通過執(zhí)行器調(diào)用構(gòu)建工具和測試工具。執(zhí)行器需要捕獲命令的輸出、退出碼、耗時等元數(shù)據(jù)并把它們結(jié)構(gòu)化之后回傳給 Agent 的上下文。第三個是事件日志系統(tǒng)。這個組件是我強(qiáng)烈建議加的。記錄每一次嘗試的情況包括命令、輸出摘要、退出碼、Agent 的決策、生成的補(bǔ)丁內(nèi)容。不光是用來排查問題還能在 Agent 陷入循環(huán)時給人工介入提供判斷依據(jù)。第四個是 Agent 運(yùn)行框架。這個框架負(fù)責(zé)編排整個流程。它會告訴 Agent 當(dāng)前處于哪個階段、下一步應(yīng)該做什么、有哪些約束。它的核心是一套狀態(tài)機(jī)狀態(tài)之間有明確的切換條件。第五個是大模型接口層。這是大家最熟的部分但也是導(dǎo)致很多 Agent 跑不起來的重災(zāi)區(qū)。API 的穩(wěn)定性、token 成本、上下文長度管理都要在這一層處理。把這五個組件事先捋清楚后面寫 Agent 邏輯的時候就會順很多。我見過不少項目一上來就寫 prompt結(jié)果跑兩步就卡住再回頭補(bǔ)結(jié)構(gòu)反而更浪費時間。2.3 為什么 LLM 不等于 Agent說到 AI Agent很多人會誤以為“接一個大模型的 API 就是 Agent”。這也是熱搜詞里“agent 和 llm 和 ai模型 有什么區(qū)別”這個問題出現(xiàn)頻率高的原因。LLM 是一個靜態(tài)的知識映射器。你給它一段輸入它給你一段輸出它本身不具備持續(xù)行動的能力。而 Agent 不一樣它有循環(huán)、有工具調(diào)用、有內(nèi)外狀態(tài)反饋、有目標(biāo)驅(qū)動的行為規(guī)劃。用一個不太嚴(yán)謹(jǐn)?shù)芎美斫獾念惐萀LM 像是一個很聰明的實習(xí)生你問他問題他答得頭頭是道但 Agent 更像是一條流水線——它把一個大的任務(wù)拆開每完成一步就檢查一次結(jié)果然后根據(jù)檢查結(jié)果決定下一步動作。所以在這個閉環(huán)里L(fēng)LM 承擔(dān)的是“生成修復(fù)建議”、“生成代碼 diff”、“解讀失敗日志”這些具體動作而 Agent 框架承擔(dān)的是狀態(tài)流轉(zhuǎn)、條件判斷、退出機(jī)制、工具調(diào)用等控制邏輯。兩者缺一不可。2.4 工具選型與執(zhí)行環(huán)境在實際落地時執(zhí)行環(huán)境怎么選直接影響閉環(huán)的穩(wěn)定性。我用的比較多的是 Docker 容器方案。為什么要用容器因為構(gòu)建環(huán)境、測試依賴、系統(tǒng)庫版本這些必須得鎖定。同一個項目本地跑得好好的一上 CI 就掛往往就是環(huán)境差異導(dǎo)致的。Docker 的執(zhí)行方式也很簡單Agent 通過 Docker SDK 啟動一個容器容器內(nèi)掛載代碼目錄執(zhí)行預(yù)設(shè)命令然后把日志和退出碼返回給 Agent。有一點要注意容器不要用特權(quán)模式尤其當(dāng)代碼倉庫是不可信來源時要給容器加上資源限制比如 CPU、內(nèi)存、磁盤配額。理由是防止 Agent 在循環(huán)中跑出一些失控的測試程序把宿主機(jī)資源打滿。另外對于測試環(huán)境我建議盡量用真實環(huán)境。少用 mocks。原因很直接Agent 修代碼依據(jù)的是測試的失敗信息如果測試用的 mock 和真實行為差太遠(yuǎn)那修復(fù)出來的代碼很可能是錯的。比如一個接口返回數(shù)據(jù)格式變了mock 里面還是舊格式那測試永遠(yuǎn)測不出這個 bugAgent 自然也就無從修起。在編程語言的選擇上我沒做太多限制。Python、Java、Node 項目都跑過。關(guān)鍵在于你的 Agent 框架要能適配不同語言的構(gòu)建工具。拿我自己寫的框架來說構(gòu)建命令不是硬編碼的而是通過項目文件自動識別的看到pom.xml就調(diào) Maven看到package.json就調(diào) npm看到pyproject.toml就調(diào) pip 加 pytest。這樣一套體系可以覆蓋大多數(shù)主流項目。3. 構(gòu)建環(huán)節(jié)的實現(xiàn)讓 Agent 看見失敗3.1 構(gòu)建信息的結(jié)構(gòu)化解構(gòu)構(gòu)建環(huán)節(jié)是整個閉環(huán)的入口也是最容易被低估的一環(huán)。很多 Agent 項目失敗不是修代碼的能力不行而是對構(gòu)建失敗信息的理解太淺。先說說通常的執(zhí)行結(jié)果長什么樣。一個構(gòu)建命令跑完無非三種結(jié)果成功、失敗、異常中斷。成功最好處理直接進(jìn)入測試階段。異常中斷比如超時、內(nèi)存溢出、環(huán)境錯誤這種通常不是代碼問題Agent 就不該去改代碼。真正需要重點處理的是失敗——但失敗的信息非?!芭K”。你拿到的是一大坨終端輸出里面混著編譯錯誤、警告、日志、堆棧甚至還有一些無關(guān)的裝飾性字符。如果直接把這一大坨全部塞給 LLM有幾個問題。第一是 token 消耗巨大一次失敗日志幾百上千行幾次循環(huán)下來上下文就爆了。第二是噪音太大真正有用的錯誤信息被淹沒模型容易“跑偏”。所以我在這個環(huán)節(jié)做的事情是把原始輸出結(jié)構(gòu)化成幾條核心信息。這一條我會詳細(xì)展開因為直接影響后面修復(fù)階段的效果。三條核心信息分別是錯誤類型、錯誤位置、錯誤描述。錯誤類型用來區(qū)分是語法錯誤、類型錯誤、依賴錯誤、還是測試斷言失敗。這個分類決定了 Agent 后續(xù)的修復(fù)策略。比如依賴錯誤可能需要改配置而不是改代碼測試斷言失敗則要先看斷言邏輯再決定是修產(chǎn)品代碼還是修測試代碼。錯誤位置通常包括文件路徑和行列號。很多構(gòu)建工具已經(jīng)把這些信息打印出來了比如File.java:42: error: cannot find symbol。這些信息要單獨提取出來作為 Agent 定位代碼的錨點。錯誤描述就是真正說明原因的那句話。像 Java 里的cannot find symbol、Python 里的NameError: xxx is not defined、前端構(gòu)建里的Module not found: xxx這些一看就能大概猜到問題方向。結(jié)構(gòu)化工作做在前面后面 Agent 的決策質(zhì)量會高很多。實操中可以通過兩個思路來做要么寫正則提取要么直接調(diào)用構(gòu)建工具的 JSON 輸出模式。像 TypeScript 編譯器有--json參數(shù)ESLint 也有 JSON 格式輸出能拿到結(jié)構(gòu)化數(shù)據(jù)就盡量用。3.2 構(gòu)建失敗的分級響應(yīng)策略有了結(jié)構(gòu)化的信息還不夠你得給 Agent 定義“什么情況下該做什么事”的分級響應(yīng)策略。這是我反復(fù)調(diào)整后總結(jié)出來的經(jīng)驗。我把構(gòu)建失敗分成三個級別。初級單文件語法錯誤、缺失 import、拼寫錯誤。這類問題修復(fù)風(fēng)險低Agent 可以直接改不用請示。中級跨文件接口變更、依賴版本沖突、構(gòu)建腳本問題。這類問題建議讓 Agent 先出一份修復(fù)方案再動手改方案里有風(fēng)險說明。高級構(gòu)建環(huán)境異常、系統(tǒng)級依賴缺失、權(quán)限問題。這類問題 Agent 不應(yīng)該碰代碼直接中止并通知人來處理。這個分級機(jī)制看起來簡單但在實際效果上非常顯著。沒有分級之前Agent 碰到任何錯誤都會嘗試改代碼結(jié)果遇到系統(tǒng)級問題改了一通代碼根本不是問題根源浪費好幾輪循環(huán)。有了分級Agent 在“行動”之前先判斷“該不該行動”路徑清晰多了。3.3 依賴管理與本地倉庫準(zhǔn)備構(gòu)建失敗的另一個高頻原因是依賴問題。代碼在開發(fā)者本地能編譯但在 Agent 的工作區(qū)里報“包找不到”十有八九是依賴緩存沒有準(zhǔn)備好。我踩過一個大坑在構(gòu)建環(huán)節(jié)沒有做依賴預(yù)熱Agent 第一次構(gòu)建時下載依賴花了十幾分鐘然后超時了它就以為是代碼問題瘋狂改 codepointer結(jié)果越改越亂。正確的做法是分兩步。第一步提前構(gòu)建一個帶依賴緩存的鏡像或工作區(qū)。比如 Java 項目先跑一遍mvn dependency:go-offline把依賴?yán)玁ode 項目用npm ci安裝完后把node_modules做成快照Python 項目用pip cache加上預(yù)裝虛擬環(huán)境。這個工作在 Agent 循環(huán)開始之前做一次性投入。第二步給 Agent 的執(zhí)行環(huán)境加上網(wǎng)絡(luò)策略。如果項目依賴都是內(nèi)部倉庫確保容器能訪問內(nèi)部鏡像源如果項目依賴的是公網(wǎng)包那就讓容器有必要的默認(rèn)路由。但我個人建議盡量把依賴層面的事情放在前置準(zhǔn)備階段不要在 Agent 的循環(huán)過程中頻繁訪問網(wǎng)絡(luò)。4. 測試環(huán)節(jié)Agent 的質(zhì)檢員4.1 測試套件的接入與選擇構(gòu)建通過之后Agent 要面對的就是測試。測試在這里起到質(zhì)檢員的作用——它決定了 Agent 的修復(fù)到底算不算有效。測試套件的選擇不是越大越好而是要跟“修復(fù)驗證”這個目標(biāo)匹配。這個點是我在實際跑閉環(huán)后深刻體會到的。最開始我把整個項目能跑的測試全塞給 Agent單測、集成測試、端到端測試全跑。結(jié)果就是每次修復(fù)都要跑好久而且失敗信息五花八門有時候是集成測試掛了Agent 跑去修單測的邏輯改了半天單測過了集成還是掛反饋太慢收斂效率極低。后來我調(diào)整了策略把測試分成兩個層級。第一層級是快速驗證層。只跑跟改動文件有直接關(guān)聯(lián)的測試用例優(yōu)先用測試覆蓋率掃描出來的關(guān)聯(lián)關(guān)系。比如改了一個 Python 函數(shù)就只跑調(diào)用這個函數(shù)的那幾個測試文件里的用例。這一層講究的是快一兩分鐘內(nèi)要能給出來結(jié)果用于判斷基礎(chǔ)修復(fù)是否生效。第二層級是完整回歸層。全部測試跑一遍用于最后驗收。這一層慢但是必須跑防止 Agent 在修復(fù)一個 bug 的時候破壞了別的東西。這個分層的邏輯其實跟人開發(fā)時做“先跑局部測試再看全部回歸”是一樣的只不過 Agent 需要你用代碼把這種決策固化下來。4.2 測試失敗信息的二次加工測試失敗信息的處理比構(gòu)建失敗信息更講究。原因是測試失敗通常不是“編譯不過”這么直接而是跟斷言邏輯強(qiáng)相關(guān)。你經(jīng)常會看到一堆 assertEquals 失敗的信息拿給 Agent 看它可能自作聰明地覺得“既然測試期望的值是 A而實際是 B那我把測試改成 A 不就過了嗎”——這就是經(jīng)典的“作弊修復(fù)”。為了避免這個問題我對測試失敗信息做了一層“可信度標(biāo)注”的處理。分兩步第一步如果某個測試用例在本次修復(fù)之前就已經(jīng)失敗了歷史失敗那這個失敗信息對 Agent 來說是不可信的不參與當(dāng)前修復(fù)的反饋。因為可能是之前那個迭代引入的問題Agent 參考它會得到錯誤的方向。第二步如果某個測試用例是本次“因為 Agent 的修改”而失敗的也就是上次通過、這次掛了那這個失敗信息才是 Agent 需要重點關(guān)注的。為了拿到這個信息你需要記錄每一個測試用例在歷次循環(huán)中的執(zhí)行結(jié)果做一次差分。這個數(shù)據(jù)結(jié)構(gòu)類似{用例ID: [上一次結(jié)果, 這一次結(jié)果]}。如果出現(xiàn)[PASS, FAIL]就是“回歸失敗”Agent 必須處理如果是[FAIL, FAIL]就說明這個用例一直沒修復(fù)好Agent 需要繼續(xù)修但同時也說明 Agent 的修復(fù)方案可能沒到位。這個二次加工的邏輯很多人會忽略但它對 Agent 決策質(zhì)量的影響是決定性的。沒有這層差分Agent 就像一個沒有歷史記憶的測試工人每次都從零開始判斷完全無法利用“這個用例之前是過的”這條關(guān)鍵線索。4.3 測試提示詞的設(shè)計技巧如果你用的是 LLM 來生成測試用例——比如給 Agent 布置“為這個功能補(bǔ)充單元測試”的任務(wù)——那提示詞的設(shè)計就有講究了。我不推薦上來就寫“請為這個函數(shù)寫測試”這種太寬泛生成出來的測試往往是套模板的廢代碼。我一般會用三層提示結(jié)構(gòu)。第一層是任務(wù)目標(biāo)明確指定測試對象和方法。比如“針對order_service.py中的create_order函數(shù)用 pytest 編寫單元測試覆蓋正常下單、庫存不足、用戶不存在三個場景”。第二層是基線約束指定測試的預(yù)期行為。比如不能改變業(yè)務(wù)代碼來將就測試、不能 mock 被測函數(shù)本身、測試數(shù)據(jù)要使用獨立的臨時數(shù)據(jù)源等。這些約束可以在一定程度上抑制 Agent 的“作弊”傾向。第三層是成功標(biāo)準(zhǔn)。告訴 Agent 什么樣的測試算完成測試全部通過才算完成如果業(yè)務(wù)代碼有 bug 導(dǎo)致測試失敗不要修改業(yè)務(wù)代碼來掩蓋問題而是報告問題。這一節(jié)有一個經(jīng)驗可以直接抄在使用這條 prompt 之后我需要隨后運(yùn)行一次覆蓋率工具看看 Agent 生成的測試有沒有真正覆蓋到關(guān)鍵分支。不要依賴 Agent 自己的描述。覆蓋率工具不會說謊。5. 修復(fù)環(huán)節(jié)讓 Agent 擁有“靠譜的動手能力”5.1 修復(fù)補(bǔ)丁的生成與落地修復(fù)環(huán)節(jié)是整個閉環(huán)里技術(shù)含量最高的部分。Agent 需要在理解失敗原因的基礎(chǔ)上生成一個可以落地的補(bǔ)丁。這個補(bǔ)丁必須滿足三個條件格式正確、改動最小、效果可驗證。格式正確這一點很多人會忽略。實際場景里L(fēng)LM 生成的修復(fù)代碼直接應(yīng)用到代碼庫上經(jīng)常出現(xiàn)縮進(jìn)錯亂、語法殘缺、甚至文件編碼問題。所以我建議不要把 LLM 輸出的文本直接當(dāng)作補(bǔ)丁而是交給一個統(tǒng)一的補(bǔ)丁服務(wù)去處理。我的做法是讓 Agent 輸出標(biāo)準(zhǔn) diff 格式之后用git apply來應(yīng)用。在應(yīng)用之前先做一次 dry-run 檢查是否可以干凈合入。如果無法合入報錯反饋給 Agent讓 Agent 基于沖突信息重新生成。改動最小是第二個約束。很多 LLM 在修復(fù)的時候容易“發(fā)揮過度”比如修復(fù)一個函數(shù)順手把整個文件的格式調(diào)了一遍修復(fù)一個 bug順手重構(gòu)了相鄰模塊。這種超出范圍的改動在 CI 合入時會造成大量沖突也讓 review 變得困難。我加的約束是只允許修改與失敗原因直接相關(guān)的行其他改動一律不允許。第三個約束效果可驗證這個已經(jīng)在測試環(huán)節(jié)覆蓋了。Agent 修復(fù)完必須跑相關(guān)的測試來證明修復(fù)有效。不能讓 Agent 修完就交差沒有驗證的修復(fù)只是猜測。5.2 避免“越改越亂”的機(jī)制“越改越亂”是 AI Agent 自動化修復(fù)中最大的痛點。具體現(xiàn)象就是Agent 修好了 A 問題又把 B 弄壞了再修 B又把 A 弄壞了。典型振蕩。我做了兩個機(jī)制來壓低這個概率。第一個機(jī)制是“修改前快照”。每次 Agent 嘗試修復(fù)之前先把當(dāng)前工作區(qū)的狀態(tài)做一個快照。如果這一次修復(fù)導(dǎo)致的可通過測試數(shù)比上一次少了那就回滾到上一次的快照讓 Agent 在干凈的基礎(chǔ)上重新?lián)Q一個修復(fù)策略。第二個機(jī)制是“差異限制”。計算 Agent 本次修改的 diff 行數(shù)如果超過預(yù)設(shè)閾值比如 30 行就要求 Agent 解釋為什么需要這么大的改動并把解釋和 diff 放入人工評審隊列。它本身就是一個認(rèn)知偏誤的糾正機(jī)制——大改動往往是因為 Agent 沒有準(zhǔn)確定位問題。這兩個機(jī)制加在一起讓 Agent 的振蕩收斂速度明顯提升。你可以把整個循環(huán)失敗率降到可接受的范圍關(guān)鍵是不要讓一個失敗“滾雪球”。5.3 修復(fù)策略的上下文管理還有一個經(jīng)常被忽視的技術(shù)細(xì)節(jié)上下文管理。Agent 在修復(fù)的時候它的輸入包括失敗日志、文件內(nèi)容、測試報告、上次修復(fù)的記錄等。如果這些信息全部塞進(jìn) prompt很容易超長而且大量的舊信息會干擾模型對當(dāng)前問題的判斷。我做了兩層處理。第一層是“只保留最近兩輪”的信息。比如 round 3 的決策只看 round 2 的失敗信息和 round 3 自己改了什么更早的信息通過摘要帶入不要全量堆在 prompt 里。第二層是“定向提取文件片段”。因為 Agent 要修改的文件可能很大我不會把整個文件傳給模型而是根據(jù)失敗信息里的行列號和符號名用 AST 解析出相關(guān)函數(shù)或類的代碼片段只把這段代碼給 Agent 看。這兩層處理讓修復(fù)階段的輸入變得很精煉模型判斷也更聚焦。實測下來相同任務(wù)下token 消耗降低了約一半而且修復(fù)成功率反而更高——因為信息噪音少了。6. 循環(huán)控制如何優(yōu)雅地停在一個好結(jié)果上6.1 退出條件的設(shè)定循環(huán)不是無限轉(zhuǎn)的你得給 Agent 設(shè)定退出條件。這是我個人認(rèn)為整個閉環(huán)設(shè)計中最需要經(jīng)驗的地方。太寬松的退出條件比如“只要測試全綠就算完成”會放大假裝有效的風(fēng)險。太嚴(yán)格的退出條件比如“任何失敗都不允許”會讓循環(huán)無法收斂。我實際采用的是一組三元退出條件成功退出所有測試通過構(gòu)建正常Agent 在預(yù)設(shè)輪次內(nèi)完成。放棄退出達(dá)到了最大嘗試輪次比如 5 次仍然有失敗項。危險退出出現(xiàn)了不可控的異常比如 Agent 不斷修改同一個函數(shù)但結(jié)果越來越差、或者測試環(huán)境本身崩了。第三種退出條件很多時候會被遺漏但它恰恰是防止 Agent 把項目改壞的關(guān)鍵。我自己最開始搭的時候只設(shè)了前兩種結(jié)果有一次 Agent 在一個錯誤上來回橫跳了十個輪次把項目狀態(tài)搞得一團(tuán)糟。加了危險退出檢測之后只要檢測到“上一輪失敗項數(shù)量 前一輪失敗項數(shù)量 1”且連續(xù)發(fā)生三次就立即熔斷標(biāo)記為高危失敗人工介入。6.2 循環(huán)過程中的成本控制成本控制也是不可回避的話題。調(diào)用大模型 API 是有費用的而 Agent 的自動循環(huán)會放大調(diào)用量。每輪循環(huán)Agent 可能要調(diào)用 3 到 5 次大模型——一次解釋失敗日志一次生成修復(fù)方案一次處理測試反饋有時候還要再調(diào)用一次處理補(bǔ)丁沖突。十輪下來調(diào)用量相當(dāng)可觀。我做了三件事來壓成本。第一啟用緩存機(jī)制。把相同或高度相似的請求做緩存比如相同的一份失敗日志就不要重復(fù)丟給模型解析直接復(fù)用上一次的結(jié)構(gòu)化結(jié)果。實際場景里構(gòu)建失敗在循環(huán)中重復(fù)出現(xiàn)的概率非常高。第二設(shè)置模型分級。便宜的普通模型做首次分析復(fù)雜的修復(fù)策略生成用強(qiáng)模型。不要一個模型打天下。這個策略的效果挺明顯大約能省 30% 到 40% 的開銷。第三限制單輪上下文長度。每輪循環(huán)盡量把輸入控制在模型輸入窗口的一半以內(nèi)避免因為超長要求額外擴(kuò)容計費也減少模型在長上下文中的“健忘”問題。6.3 與 CI/CD 流水線的集成方案最后說一下這個閉環(huán)如何和現(xiàn)有的 CI/CD 流水線結(jié)合。我見過兩種主流方式。第一種是“后置觸發(fā)器”模式。流水線跑完后如果發(fā)現(xiàn)失敗就觸發(fā) Agent 閉環(huán)來處理。注意這里的實現(xiàn)要點流水線必須輸出可解析的失敗報告而不是只有一堆打印日志。Agent 需要的是結(jié)構(gòu)化信息比如失敗用例列表、對應(yīng)代碼位置、是編譯失敗還是測試失敗。這種方式適合從不穩(wěn)定的項目起步讓 Agent 處理最容易處理的失敗。第二種是“前置門禁”模式。在代碼合入之前Agent 先跑一輪完整的“構(gòu)建→測試→修復(fù)→驗證”確定沒有潛在問題后再合入。這種模式對 Agent 的質(zhì)量要求更高也不太適合剛從零開始的項目。我個人的建議是先從后置觸發(fā)器模式開始跑。讓 Agent 處理那些被 CI 抓到的基本錯誤比如低級語法問題、資源泄漏、缺失邊界判斷。這些修復(fù)是小而明確的Agent 的效果會很好。等 Agent 在閉環(huán)上穩(wěn)定了再逐步擴(kuò)大它的職責(zé)范圍。7. 實操案例一個 Python 項目的完整閉環(huán)光講架構(gòu)不夠這一節(jié)用一個真實的 Python 項目作為示例展示從零構(gòu)建這個閉環(huán)的過程。7.1 項目背景與初始狀態(tài)這個項目是一個簡單的“用戶積分管理系統(tǒng)”代碼量不大只有一個模塊points_service.py。我用它來驗證閉環(huán)的可行性是因為它的邏輯足夠簡單問題卻不簡單有幾個明顯的 bug比如用戶積分可能變成負(fù)數(shù)、數(shù)據(jù)庫鎖競爭導(dǎo)致死鎖、以及一個接口參數(shù)沒有做類型校驗。初始狀態(tài)下我寫了一批測試用例大部分能過但有三個用例失敗。我的目標(biāo)是讓 Agent 自己跑完構(gòu)建、測試、修復(fù)、再驗證的過程把這三個失敗用例修到全綠。7.2 Agent 的啟動指令與首次循環(huán)我給 Agent 下達(dá)的指令簡化如下你的工作目錄是/workspace/project網(wǎng)關(guān)命令是python -m pytest tests/ -x構(gòu)建命令是python -m compileall .。你的任務(wù)讓所有測試通過。每次修復(fù)后重新執(zhí)行測試命令以確認(rèn)結(jié)果。第一輪循環(huán)中Agent 執(zhí)行了構(gòu)建命令編譯失敗并沒有出現(xiàn)——這個項目語法上是好的。接著執(zhí)行了 pytest拿到了第一個失敗用例的堆棧test_negative_balance報錯 “ValueError: Insufficient balance”。Agent 分析后認(rèn)為問題出在deduct_points()函數(shù)沒有做余額校驗。于是它修改了函數(shù)在扣減前加了一個if balance points: raise ValueError(...)的判斷。第二輪循環(huán)測試執(zhí)行結(jié)果test_negative_balance通過但另一個用例test_concurrent_deduction掛掉了。它是有意設(shè)計的一個復(fù)雜場景兩個線程同時扣減需要保證數(shù)量一致。這時候 Agent 面臨一個典型困難并發(fā)問題的修復(fù)光靠“發(fā)現(xiàn)在賦值前后加鎖”很容易忽略鎖粒度。第一版修復(fù)它只是在deduct_points函數(shù)內(nèi)部加了一個threading.Lock()但鎖是每次調(diào)用都新建的等于沒有鎖測試還是失敗。7.3 第二輪循環(huán)中的修復(fù)優(yōu)化第三輪循環(huán)Agent 拿到第二次失敗的堆棧測試期望最終積分為 0實際卻是負(fù)數(shù)。這說明兩個線程的讀取和寫入交錯執(zhí)行了。Agent 這次意識到了問題把鎖提升為模塊級單例并對整個“讀余額→扣減→寫回”操作包成臨界區(qū)。第四輪循環(huán)測試全部通過。第三個用例test_invalid_user_id實際上在第一輪就被 Agent 順手修復(fù)了——它看到函數(shù)入口缺少類型校驗自己加了一個if not isinstance(user_id, int)的判斷。這個案例的過程非常清晰地展示了 Agent 閉環(huán)的價值不是一次就能把代碼改對而是通過“失敗→分析→修復(fù)→再失敗→再分析→再修復(fù)”的循環(huán)逐步逼近正確解。7.4 案例復(fù)盤Agent 表現(xiàn)好與不好的瞬間復(fù)盤這個案例有幾個細(xì)節(jié)值得展開。好的方面Agent 在沒有人工干預(yù)的情況下識別了三個獨立問題的修復(fù)優(yōu)先級沒有出現(xiàn)來回橫跳。這是因為它能看到每個測試用例的獨立狀態(tài)而不是只看“測試總量”。不好的方面在并發(fā)修復(fù)的那一輪Agent 第一次的鎖方案是不對的但它沒有能力提前判斷。真正讓它收斂的是“循環(huán)中看到測試失敗→生成新的修復(fù)嘗試→再驗證”的過程。這也印證了我的觀點Agent 的修復(fù)質(zhì)量是循環(huán)淘汰出來的不是一次生成出來的。另外有一點很關(guān)鍵Agent 在這個項目里的角色被限制在了“修代碼讓測試通過”而不是讓它自己重新設(shè)計整個系統(tǒng)的架構(gòu)。這個限制是必要的。如果讓 Agent 自由發(fā)揮它很可能把整個模塊重新寫一遍引入大量不相關(guān)的變更反而讓驗證失效。8. 遇到的問題與排查技巧8.1 構(gòu)建環(huán)境不一致導(dǎo)致的假失敗這是我跑第一個 Agent 閉環(huán)時遇到的高頻問題。本地構(gòu)建通過Agent 環(huán)境里構(gòu)建失敗。排查之后發(fā)現(xiàn)原因是 Agent 容器的 Python 版本比項目目標(biāo)版本低語法解析失敗了。解決的思路有兩個。第一個思路是把“構(gòu)建環(huán)境鎖定”前置化。在啟動 Agent 之前用項目自帶的環(huán)境配置文件比如requirements.txt、pyproject.toml、.nvmrc生成一個標(biāo)準(zhǔn)的鏡像和環(huán)境再做快照。第二個思路是給 Agent 的構(gòu)建命令前面加一個環(huán)境自檢步驟。自檢內(nèi)容包括系統(tǒng)版本、解釋器版本、依賴包版本。如果自檢失敗Agent 停止一切修復(fù)行為直接上報環(huán)境問題。為什么這個環(huán)節(jié)要單獨設(shè)置一個“不得修改代碼”的規(guī)則因為環(huán)境問題不屬于業(yè)務(wù)代碼 bugAgent 修改代碼無法解決而且很可能引入新問題。按照我之前講的分級響應(yīng)策略這就是典型的高級問題。8.2 測試用例不穩(wěn)定Flaky Test的干擾Flaky Test也就是測試本身不穩(wěn)定時好時壞是 Agent 閉環(huán)里最讓人頭疼的問題之一。原因很簡單Agent 基于測試結(jié)果做決策如果結(jié)果本身不穩(wěn)定Agent 的決策就失去了依據(jù)。它可能這次修好了下次跑又是失敗于是又修一遍修完又多出一堆無意義的改動。我應(yīng)對這個問題的方式是在“結(jié)果差分”模塊里增加一個標(biāo)記機(jī)制。同一個用例在連續(xù)兩輪中出現(xiàn)了 PASS/FAIL/PASS 這種模式就自動標(biāo)記為“不穩(wěn)定用例”從 Agent 的決策依據(jù)中降權(quán)。同時把它單獨放到一次“干擾排除”任務(wù)里去跑不再讓 Agent 基于它的結(jié)果繼續(xù)修復(fù)。這類問題的另一個處理思路是給測試用例加穩(wěn)定化改造。比如消除隨機(jī)數(shù)、固定時間種子、避免真實網(wǎng)絡(luò)調(diào)用、設(shè)置超時。這些都是測試工程里老生常談的方法但在 Agent 閉環(huán)里它的意義更多了一層——你不想讓 Agent 在無用信息上浪費輪次。8.3 模型幻覺導(dǎo)致的錯誤修復(fù)LLM 修復(fù)代碼時偶爾會“一本正經(jīng)地胡說八道”。最典型的是Agent 聲稱某個文件需要加一個不存在的模塊然后在代碼里寫了一個完全不存在的 API 調(diào)用。測試當(dāng)然繼續(xù)失敗Agent 看到失敗后再編一個理由再改陷入死循環(huán)。針對這類問題我做了兩件事。第一在 Agent 的修復(fù)指令中加入一條硬性約束不得使用項目中不存在的依賴、API、類或方法。如果引用了新的依賴必須先更新依賴配置文件否則視為非法修改。第二加強(qiáng)驗證環(huán)節(jié)的反饋。當(dāng) Agent 的修復(fù)包含不存在的符號時運(yùn)行完測試后把報錯信息“Cannot find module”或者“ImportError”完整反饋給 Agent。讓它在下一輪中基于真實的報錯去修正而不是靠記憶去猜。這兩件事都是為了讓 Agent 的“決策依據(jù)”盡量來自真實環(huán)境反饋而不是來自模型的內(nèi)部先驗知識。說到底Agent 修復(fù)代碼的本質(zhì)是“試探—驗證”的循環(huán)模型幻覺只能讓試探變慢但只要你讓驗證的反饋足夠清晰和結(jié)構(gòu)化Agent 最終還是會走到正確方向上的。8.4 長時間運(yùn)行的上下文失控一個復(fù)雜的修復(fù)任務(wù)Agent 可能需要跑十幾輪循環(huán)。每輪循環(huán)都會產(chǎn)生大量的中間信息包括失敗日志、測試輸出、生成的補(bǔ)丁、分析結(jié)論。如果不做上下文管理token 會很快超限而 Agent 會進(jìn)入“記憶錯亂”狀態(tài)——它開始引用之前幾輪的錯誤信息而不是當(dāng)前這輪的真實信息。我前面講過的“只保留最近兩輪信息”是一個基礎(chǔ)手段。這里再補(bǔ)充一個更細(xì)的技巧在進(jìn)入每一輪修復(fù)之前強(qiáng)制 Agent 生成一份“當(dāng)前狀態(tài)摘要”包含三塊內(nèi)容已經(jīng)修改了哪些文件、當(dāng)前剩余的失敗用例清單、基于最近一次失敗信息得出的下一步計劃。摘要生成后前幾輪的完整歷史就可以被清理掉只保留這份摘要作為新上下文的起點。這樣處理之后上下文長度始終是可控的而且模型的“決策狀態(tài)”也被壓縮得更干凈。這個操作在 Agent 框架里叫“狀態(tài)壓縮”或者“記憶摘要”它對于跑長鏈任務(wù)的 Agent 幾乎是一種必須的手段。8.5 補(bǔ)丁沖突與修改回滾Agent 在連續(xù)多輪修改后可能會在同一個文件的多個位置留下修改痕跡。此時如果再生成一個新的補(bǔ)丁補(bǔ)丁和當(dāng)前文件狀態(tài)可能沖突。受限于大模型的上下文限制它也未必能記住每個位置現(xiàn)在是什么狀態(tài)。我的應(yīng)對策略是放棄“讓 Agent 記住所有狀態(tài)”的思路轉(zhuǎn)而“在補(bǔ)丁應(yīng)用之前強(qiáng)制刷新狀態(tài)”。具體來說每一輪修復(fù)開始之前Agent 都會基于當(dāng)前磁盤上的文件實際內(nèi)容重新生成補(bǔ)丁而不是基于上一輪輪結(jié)束時它記憶中的文件快照。這樣可以降低補(bǔ)丁應(yīng)用失敗的概率。如果沖突還是發(fā)生我不會讓 Agent 直接重試修改而是讓它重新解析當(dāng)前文件內(nèi)容再重新生成補(bǔ)丁。沖突發(fā)生時干燥運(yùn)行一次確認(rèn)沒有沖突再正式應(yīng)用。這套機(jī)制非常簡單但極其有效。8.6 常見問題速查表現(xiàn)象可能原因處理方式構(gòu)建失敗但本地通過Agent 環(huán)境與開發(fā)環(huán)境不一致前置環(huán)境自檢、鎖定鏡像版本同一測試忽好忽壞Flaky Test標(biāo)記不穩(wěn)定用例從決策依據(jù)中降權(quán)Agent 引用不存在的 API模型幻覺硬性約束不存在的依賴必須先改配置上下文越跑越亂循環(huán)過多信息堆疊每隔幾輪做一次狀態(tài)摘要清理歷史補(bǔ)丁應(yīng)用報沖突基于舊記憶生成補(bǔ)丁每輪強(qiáng)制刷新磁盤狀態(tài)再生成補(bǔ)丁循環(huán)中出現(xiàn)大量無意義修復(fù)目標(biāo)不明確檢查退出條件和本輪目標(biāo)定義測試全綠但功能實際上還是壞的測試覆蓋不足檢查覆蓋率補(bǔ)充關(guān)鍵分支測試9. 經(jīng)驗總結(jié)與擴(kuò)展方向9.1 不要一上來就追求全自動我記得效果最好的跑法不是“扔給 Agent 一個項目讓它自己從頭到尾做完”而是先把閉環(huán)鏈路拆成幾個可控的環(huán)節(jié)每個環(huán)節(jié)單獨驗證。先驗證“構(gòu)建失敗信息能不能結(jié)構(gòu)化成 Agent 看得懂的輸入”再驗證“Agent 生成的補(bǔ)丁能不能干凈合入”最后再逐步放開循環(huán)輪次。這個階段很像訓(xùn)練一個新來的同事先給固定的、簡單的小任務(wù)等它對環(huán)境熟悉了再把更大的事情交出去。盲目追求一步到位到最后只會讓排查問題時無從下手。9.2 構(gòu)建失敗信息是 Agent 最好的老師如果把整個閉環(huán)的運(yùn)轉(zhuǎn)比作一場手術(shù)那構(gòu)建失敗信息就是手術(shù)臺上的監(jiān)測儀。信號越清晰手術(shù)就越安全。所以在這套體系里真正要花時間打磨的不是讓大模型的 prompt 更花哨而是把構(gòu)建和測試的輸出整理成 Agent 能快速理解的決策依據(jù)。9.3 讓 Agent 自己記錄自己的每一步我給 Agent 加過一個指令每一輪修改之后必須用一句話說明自己改了什么、為什么改、期望解決什么問題。這些記錄會自動寫入到運(yùn)行日志里同時也是后續(xù)人工介入時的參考依據(jù)。實際效果是Agent 每做一件事之前都會先想清楚邏輯日志的可用性大大提升。9.4 這個閉環(huán)還能怎么擴(kuò)展如果你已經(jīng)跑通了這個閉環(huán)下一步可以考慮幾個擴(kuò)展方向。第一個方向是多語言支持。把構(gòu)建、測試、補(bǔ)丁校驗這些能力抽象成與語言無關(guān)的接口讓同一個 Agent 框架能對接 Python、Java、Go 等不同生態(tài)。第二個方向是多 Agent 協(xié)作。不是讓一個 Agent 從構(gòu)建盯到修復(fù)而是拆分成“構(gòu)建檢測 Agent”和“修復(fù) Agent”——前者專職分析失敗原因后者專職生成補(bǔ)丁再有一個“驗證 Agent”收尾。這個模式在處理大型項目時會更有優(yōu)勢因為每個 Agent 的上下文負(fù)載都更小。第三個方向是沉淀修復(fù)知識庫。把 Agent 每次成功修復(fù)的問題類型、修復(fù)策略、涉及的模式存下來在后續(xù)類似問題上直接做相似度匹配大幅減少試錯輪次。這個方向我覺得很有意思本質(zhì)上是在給 Agent 積累“項目經(jīng)驗”。我自己的體會是AI Agent 跑開發(fā)閉環(huán)這條路越走越像在帶實習(xí)生你對反饋質(zhì)量和邊界定義得越清楚它就越靠得住你越是偷懶、越是讓它自由發(fā)揮后面收拾爛攤子的成本就越高。構(gòu)建→測試→修復(fù)→循環(huán)這套閉環(huán)的價值不是讓 Agent 替你聰明而是讓 Agent 在一次一次反饋中變得可靠。把它當(dāng)成一條工程流來建設(shè)才是它真正能落地的關(guān)鍵。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
中国女人做爰A片| 逼特逼在线免费播放| 婷婷月五天在线在线看| 久久伊人婷| 欧美在线视频99| 九九爱看亚洲| 六月香五月婷| 成人必爱视| 综合久久六月| AV色色天堂中文| 亚洲激情av| 免费久久这里只有精品99| 亚洲成人九九九| 六月色婷婷| 丁香五月综合激情性爱| 丁香五月婷婷大香蕉| 免看黄大片AA | 色色五月天丁香婷婷| 欧洲综合视频在线观看。欧洲,亚洲综合食品在线观看。 | 碰久久精品w| 亚洲激情婷婷| 这里有精品| 色色网站在线| 综合成人小说婷婷| 五月丁香天堂网| 丁香五月综合激情久久潮喷| 狠狠操狠狠爱| 亚洲综合字幕色色| 综合五月丁香久久| 热无码A∨| 激情综合五月| 欧美激情 日韩无码 婷婷 五月天| 五月天天堂久久| 九月婷婷人人操人人舔人人爱| 91超级碰碰| 天天操夜夜啊| 亚洲 综合中文| 久久伊人9| 婷婷五月色情| 日本色道视频网站| 婷香五月网在线| 人妻久久久久| 第四色婷婷色五月| 深爱激情69热| 成人va视频| 久久久精品人妻录| 99综合网| 久久久免费精彩视频| 狼人狠狠操| 综合激情站| 五月婷婷六月少妇激情| 丁香五月天堂| 九九99久久| 婷婷五月天久久久| 天堂成人A片永久免费网站| 色综合久| 九九综合九色欧美狠狠| www.99视频| 丁香六月啪| 婷婷伊人网| 婷婷五月丁香香蕉| 无码激情AAAAA片-区区| 人人97操| 99色在线视频| 中文不卡一二区| 天天夜天天色天天| 国产91视频| 日韩色色视频| 婷婷五月天丁香久久| 色站9/| 日本在线wwww| 激情五月综合色| 色七色九九| 亚洲九九99精品视频在线播放| 亚洲国产精品综合色区| 五月婷婷欧美| 免费操超碰| 色婷婷五月天偷拍| 丁香五月大片| 色欲丁香| 色噜噜狠狠狠狠色综合久欧美| 亚洲国产网站| 亚洲综合网激情小说| www·五月天| 日本AAAAAAAAAAAAAA片| 99综合网| 超级碰碰碰碰视频| 欧美亚洲操逼| 无码色色色| 色色综合网www| 香蕉AV福利精品导航| 9久热精品在线视频| 高清a片基地| 婷婷性爱视频在线| 婷婷色五月亚洲| 26uuu| 中文字幕在线免费观看视频| av在线婷婷| 嫩草国产| 婷婷五月天人妻| 色色五月天婷婷丁香| 91狠狠综合久久久| 久久综合播放| 五月天久久综合婷婷丁香| 久久婷网| 超级碰碰视频无码| 天天爽曰日爽| 人人爱操| 五月欧美色播| 色色99| 热久久999| 超碰免费大香蕉| 婷婷五月天激情五月天网站| 全部老头和老太XXXXX| 亚洲超级碰| 99精品7| 97丁香五月| 99精品视频免费观看近期发布| 性爱五月丁香| 婷婷五月天AV在线| 久久婷五月综合| 天天摸天天高潮天天爽| 免费看欧美成人A片无码| 六月色播| 色婷婷综合久久久久| 五月久久丁香| 色五月在线视频观看| 九九久久99| 成人视频一区| 六月丁香久久| 99热国产国产| 91精品国产综合久久久不卡电影| 狠狠色丁香婷婷综合久久97AV| 激情久久久| 大香蕉婷婷丁香| 亚洲A色| 久久五月天激情| 天天爽夜夜爽夜夜爽精| 色色丁香五月婷婷| 久久婷婷五月综合色丁香花| 婷婷五月精品中文字幕| 日韩AV一区二区三区| 婷婷五月激情欧美大胆视频| 亚洲无码影音| 亚洲综合激情五月久久| 182TV大香蕉| 丁香婷婷激情五月天无毒不卡蜜桃| 色五月丁香com| 日本人妻丁香婷婷久久寝取熟女五月| 最新高清无码专区| 17.c黄色| 99热费观看| 五月天天天色| 欧洲不卡视频| 日日做A爰片久久毛片A片英语| 色色是色N一| 色五月婷婷亚洲| 九玖视频这里只有精品| 免费无码毛片一区二区A片| 婷婷丁香成人在线视频| 丁香六月天婷婷色| 国产精品色色| 全亚洲最大的婷婷五月天网站COM| 色五月成人| 九月丁香婷婷综合| 成人无码髙潮喷水A片| 国内婷婷丁香社区在线播放| 色婷婷丁香AV综合| 综激情网| 五月天激情图| 中文字幕九九九九| 国产肥白大熟妇BBBB视频| 丁香五月天人体| 荫道BBWBBB高潮潮喷| 天天干天天操天天上| 久久44| 五月激情六月宗合| 激情四射五月天偷偷看婷婷| 婷婷日本在线| 伊人在线视频| 综合网五月| 婷婷丁香亚洲色综合91| 欧类av怡春院| 狼人婷婷久久| 久久成人综合五月天| 黄色AAAA韩国guochansanji| 99九九在线| 五月丁色AV| 久久婷婷超碰| 五月丁香影院| 丁香五月激情啪| 日韩抽插操逼| www.久久久久久| 99爱在线精品视频免费观看| 天天日夜夜帕| 激情美女五月天| 懂色av粉嫩av蜜臀av| 六月激情久久| 色婷婷五月天成人网| 超碰网站在线观看| 黄色片avv| 内射综合网| 伊人丁香五月| 久99久在线| 秋霞AV吧| 久久怡红院| 成人精品亚洲性爱| 色丁香婷婷美女视频网站| 久久婷婷人人| 色九九九综合| 日韩人妻白浆视频系列| 亚洲激情久久| 丁香五月婷婷啪啪啪| 色婷婷五月天激情在线播放| 亚洲不卡| 91九色熟女| 色五月亚洲| 9l视频自拍九色9l视频自拍九色9l社区| 免费AV黄在线播放| 久热这里只有精品性色AV| 亚洲色婷婷久久99精品91| 97色色色| 99精品热| 79精品视频在线观看,| 日韩五月丁香| 精品人妻久久久久| 色婷婷丁香五月天| 牛牛碰免费| 国产精品五月丁香| 国产视频久色| 日操| 热无码A∨| 欧美五月婷婷| 国产精品操| 久久五月情| 2050人人操免费工开爱| 国产偷人爽久久久久久老妇APP | 日本色五月| 国产精品色婷婷99久久精品| 婷婷五月天情色| 五月天激情网开心网| 深爱丁香网| 九九色热| 国产午夜精品一区二区三区嫩草| 亚洲精品久久久无码| 狠狠爱综合网| 色综合久| 欧美槡BBBB槡BBB少妇| 色五月综合在线| 婷婷成人综合| 丁香五月综合| 天堂无码人妻精品AV一区| 色色色色五月| 国产毛片欧美毛片久久久| 久久婷婷色| 六月婷婷开心| 免费看欧美成人A片无码| 日韩九区| tingtingcaobi| 午夜天堂一区人妻| 一级黄色片看看| 伊人狼人干| 亚洲操女| 十区AV| 九九精品热播| 丁香五月天激情网址| 思思久久网| 亚洲激情丁香五月天色| 天天天天天天噜| 亚洲aV写真天天综合网久久 | 日韩99视频| 女人天堂AV| 丁香激情五月天| 97人凄人人操人人爽| AV在线观看网站| 人妻中文在线| 610018岁成人视频| 成人AV中文字幕| 九九热精品99| 伊人丁香花综合影院| 少妇人妻综合色6699| 婷婷五月综合体验看| 综合视频久久| 少妇性按摩无码中文A片| 99精品偷自拍| 久久精品99久久久久久| 337p午夜影院| 日本久热| 亚洲AV日韩AV永久无码网站| 密黄站| 婷婷丁香五月久久| 五月激情小说| 久久综合五月天激情小说网站 | 久久精品4| 思思热在线观看| 狠狠色婷| 五月天伊人av| 丁香五月先锋| 玖玖婷婷五月天毛片| 蜜桃婷婷狠狠久久| 99精品7| 亚洲国产精品VA在线看黑人| 国产亚洲精品AAAA片APP| 色99免费视频中文| 丁香五月激情月| 五月丁香婷婷视频| 天堂在线观看视频| 96人人操人人操人人| 亭亭五月色男人| 日日噜噜夜夜狠狠久久丁香五月| 亚洲成片在线观看| 五月丁香六月婷婷a v| 激情综合99| 白人荫道BBWBBB大荫道| 就要去操亚洲成人精品五月天丁香婷婷| 亚洲va在线| 婷婷久热| 久热91精品| 激情亚洲五月| 日本色噜| 91超级碰| 玖玖在线| 色婷婷五月天| 五月丁香 狠狠爱| 色玖玖| 五月天色影院| 婷婷在线日韩综合| 亚洲看av的网站| 久久人人看| 东京热人妻一区二区三区在线| 日韩色色网| 思思99久久| 91精品91久久久久77777| 婷婷五月综合色中文字幕| 天天摸天天做天天爱天天爽| 99福利视频导航| 婷婷五月天直播| 在线中文字幕av| 色色色五月| 亚洲婷婷五月草久| 五月激情综合网| 日本久久天堂| 五月天.com| 色婷婷综合成人| 久机视频这只有精品| 伊人久久婷婷五月综合97色| 五月婷深深爱激情网| 婷婷九月色| 婷婷色亚洲| 丁香五月欧美激情| 97av在线视频| 欧美色五月| 人人人操Av| 五月天婷婷视频| 黄色激情久久| 婷婷六月丁| 欧美久热| 国产亚洲精品AAAAAAA片| 丁香六月婷婷综合激情欧美| 五月婷婷影院| 天天舔天天摸天天透| 色五月丁香com| 丁香五月天无码| 亚洲日本韩国| 婷婷六月久久综合导航| 伊人玖玖精品| 操人91| 777.色色| 色在线免费观看| 性天天中文网| 激情综合网五月| 五月丁香久久久久| 天天日,天天射,天天插| 草草色情综合网| 五月婷婷丁香狠狠撸久久| 99re久热| 五月激情啪啪啪| 激情五月天噢美| 成人美女网| 六月丁香综合网| 99爱在线| 另类小说五月天| 久色姿源| 99干99| 亚洲丁香花色| 丁香五月婷在线观看| 婷婷丁香综合| 亚洲综合色网| 欧美婷婷五月丁香| 99精品激情| 日欧一片内射VA在线影院| A网在线欧洲| 久久丁香九| 色婷婷操逼| 视色网在线播放| 亚洲无码影音| 色五月在线观看| 六月丁香综合网| 欧美WW在线网| 青草青草视频2免费观看| 亚洲激情精品| 九九国产视频| 久大香蕉| 亚洲色综久久五月| www.婷婷| 人人看人人97| 色婷婷成人做爰A片免费看网站 | 久久激情天堂| http://www.lingjunshare.com/ | 五月婷婷黄色| 五月丁香色停停啪啪啪| 婷婷六月色开| 色屌丝中文字幕| wWw色五月| 变态另类色图| 久久一级AV| 99热播放| 久久99网| 婷婷日日天天| 五月丁香六月婷婷在线小说视频| 一级性感黄色内射视频| 丁香九色不卡aaa| 天天玩夜夜操| 综合色五月天| 第四色五月婷婷| 99热大片| 婷婷丁香五月天综合网| 深夜男女福利刺激影院一区| 97干在线观看| 国产色香蕉精品五夜婷| 久久婷婷丁香花综合网| 农村熟妇高潮精品A片| 97婷婷狠狠| 可以免费看的AV网站| 亚洲AV激情五月综合网| 久久综合激情五月天| 99偷拍视频在线日本| 99国产精品白浆在线观看免费 | 九九色精品| 天堂综合久久| 午夜婷婷久久 | 直接看的av| 婷婷五月天亚洲精品| 婷香五月网在线| 丁香五月电影| 97人人干| 丁香婷婷色五月| 五月丁香婷婷婷激情爱爱| 夜夜骑天天玩天天日| 婷婷开心青青草| 丁香五月天欧洲在线| 色色爽爽天天| 超碰免费在线| 婷婷色五月激情| 99热r| 99ri视频| 99这里只有免费的小视频在线观看| 91seav| 一区视频网站| 九九色综合| 男女99免费视频| 五月婷精品| 大香蕉天堂| AV操逼网| 亚洲99激情| 草美女在线观看视频在线播放| 人人色人人摸人人看| 九色激情网| 丁香六月婷婷色XXXX| 九九热精品| 五月色综合| 成人在线视频网| 婷婷五月色| 色五月激情五月| 一点色成人网| 亚洲色区17| 97婷婷五月激情六月丁香伊人| 亚洲第一影院高清无码网站 | 97资源欧美日韩大香蕉超碰一区| 丁香婷婷五月综合色情| 另类综合激情| av中文网站| 久青草影院| 久久婷婷五月丁香网| 操一区| 色色色热| 国内在线99视频| 成人毛片在线免费观看| 日本精品在线噜噜噜| Av性爱网站| 密桃激情五月天综合网| 六月婷婷五月丁香| 91九九| 色婷婷在线视频观看| 大天天伊人| 91丨九色丨东北熟女| 99人这里只有精品| 五月亭亭狠狠| 日日干夜夜干| 99视频91| 日在线V视频在线播放| 九九色综合九九色| 激情五月天色色网| 1024亚洲| 青青操avbb| 色综合色综合色综合| 97久久人人操| 狠狠干在线| 99热免| 色操综合| 色婷婷丁香六月| 天天狠狠干| 天天精品视频免费观看| 看逼中文字幕| 激情丰满熟妇五月| 人妻av在线| 日本韩国视频在线观看社区免费的9| 久人操| 丁香五月大片| 丁香五月性| 碰碰碰97国产| 玖玖资源部在线播放| 天天操天天操天天操天天操天天操 | 丁香午月AV中文字幕| 五月成人天| 啪啪一区| 九九Av| 天天色亚洲| 97精品人人A片免费看| 久久久久网站| 99免费热视频| 丁香五月影| 99热这里只有精品26| 欧美五月婷婷| 久久婷婷网址| 色色丁香五月婷婷| 91九色精品熟女内射| 久久久jd| 欧美va在线观看| 超碰国产在线播放| 就爱干 在线| 欧美日韩成人在线| 色琪琪一综合久久激情五月视频| 99这里只有精品视频| 婷婷五月丁香亚洲| 能看的AV网站| 强辱丰满人妻HD中文字幕| 婷婷在线视频| www.久热| 六月丁香婷婷五月天| 激情丁香六月| 内射综合网| 天天操夜夜操| 天天肏高清在线| 亚洲精品永久久久久久| 99久久五月丁香野外| 国产精品香蕉| 97ai婷婷| 婷婷五月激情网| 婷婷五月六月| www.yw色| 五月伊人网| 久久久香| 欧韩性爱| 亚洲成av人影院| WWW.五月天9999| 99久久久久| 无码一区二区日韩| 亚洲日韩一页精品发布| 99aese| 日本婷婷激情四射中文字幕在线观看| 五月激情黄色小说| 色婷婷五月综合色婷婷| 久色激情| 丁香五月电影| 丁香婷婷综合激情五月色| 色五月丁香一区在线| 激情又色又爽又黄的A片| www.色婷婷。com| 色色色色色色色色色影院| 天天综合天天玩夜夜玩天天玩夜夜玩 | 色情五月天视频网| 免费看欧美成人A片无码| 99爱最新免费视频在线观看| 九九色婷婷Av| 久久久ww| 久久狠色噜噜狠狠狠狠97| 激情久久伊人| 丁香五月激情网| 伊人婷婷五月天| 丁香五月综合| 丁香五月婷婷在线观看| 超碰97人人操| 五月日韩中文字幕| 99性爱视频| 久久香蕉影院| 色色色香蕉五月婷| 99视频| 99热91| 婷婷在线中文字幕| 五月丁香激情综合啪啪| 欧洲亚洲免费视频9| 五月久久丁香| 狠狠色丁香| 五月婷婷免费视频| 91成人电影| 日日做A爰片久久毛片A片英语| 丁香六月婷婷综合啪啪| 九月丁香| www.一起草av| 色屌丝中文字幕| 99爱在线视频观看| 丁香蜜臀黄色婷婷五月天| 激情九月丁香婷婷| www,天天干| 丁香综合网| 欧美一级色| OYIWbGcPu8H| 狠狠干狠狠色| 激情五月婷婷丁香| 婷婷五月天AV激情| 大香蕉婷婷色| 9一精品视频观看| 国产在这里只有精品| 婷婷丁香五月综合激情小说| 激情五月综合色| 亚洲欧洲一二| 婷婷99综合| 久久人人妻| 天天舔天天爽| 色婷婷综合网站| 五月欧美色播| www.99久久久| 婷婷娌伦网| 色婷婷综合久久| 亚洲热综合| 天天爱天天狠天天透| 啪啪激情网站| 激情啪啪五月天| 色爽九九| 亚洲成人中心| 国产永久一黄| 亚洲AV成人精品网站在线播放| 色狠狠色| 五月亭亭开心网| 99热网址| 99只有这里有精品在线视频| 性99网站| 五月丁香婷婷激情澎湃四射| 少妇口诉沐足视频播放器网址| www.丁香五月| 九九人人操| 91九色在线视频| 婷婷五月丁香性爱| 一本久久婷婷| 狠狠色丁香乆乆| www.色五月| 丁香五月色| 五月天婷婷综合| 丁香五月影院| 天天插天天爱| 综合久久99| 五月丁香偷拍| 亚洲无码色| 婷婷五月天av| 开心激情站| 色五月婷婷在线| AA丁香综合激情| 六月婷婷综合| 第九色区av天堂| 日本猛少妇色XXXXX猛叫| 五月婷婷六月激情| 国产精品第一国产精品| 黄桃AV无码免费一区二区三区| 国产乱子轮XXX农村| 五月丁香亭亭| 久久性综合| 婷婷五月另类网站| 六月丁香激情| 狠狠久久婷五月| 97人人操人人爽| 色五月丁香五月| 色五月丁香五月| 色色色综合| 欧美成人猛片AAAAAAA| 秋霞少妇AV网站| 九97免费视频| 色碰干| 五月天日日操夜夜操| 综合激情五月丁香9999久久精| 五月丁香六月日逼| 欧美激情综合色丁香婷婷五月天| 五月激情综| 久久98热re| 狠狠色噜噜狠狠狠狠综合| 91久久久久久| 久久综合26p| 日韩久综合| 久久久久婷婷| 丁香五月天无码| 99色色色色| 9久久久久久久久久久| 九九热精品| 亚洲精级| 九色PORNY自拍成人精彩视频| 狠狠大香婷婷爱| 五月丁六月婷| 婷婷久久久久| 日曰躁夜夜躁2026| 五月久久网| 狠狠狠狠免费| 殴美综合激情五月天免费视频| 色婷婷www| 噢美99| 超碰九九热| 狠狠色狠狠色综合日日91| 六月天婷婷| 婷婷啪啪| 色婷婷精品视频| 婷婷六月色| 五月丁香婷婷激情四射迷人| 婷丁五月| 五月丁香成人网| 97色婷婷| 五月天色色婷婷| 五月婷婷色丁香| 超碰男人色| 国产性av| 丁香婷婷精品视频| 婷婷五月丁香五月| 亚洲av| 久久之人妻| 婷婷无码五月天| 欧美人与性动交CCOO| 综合一区二区三区| 婷婷六月激情在线视频| 亚洲黄色影视| 九色91视频| 丁香五月天啪啪a日本| 日本一级一级一级一级| 蜜臀av粉嫩av懂色av| 婷婷五月精品中文字幕| 天天干,夜夜爽| 五月丁香色色| 色五月婷婷亚洲最大| 熟女强人妻一区二区三区四区无| 女人露出p毛视频www网站| 人人干人人看| 亚洲AV无码电影| 丁香五月婷婷成人色区| 99热这里是精品| 成人色图情色成人网 www.5b5b5bcom 五月天 | 久久久久久五月天| 色五月激情五月| 伊人春天av| 色色五月丁香| 99热播放| 亚洲综合99| 人人性久久| 婷婷六月天激情| 丁香影院五月综合| 五月婷婷丁香色吧网| 天天狠狠插| 亚洲操b| 玖玖综合网| AV色婷婷| 天天肏在线观看| www.maotanji.com| 九九人人精品| 五月天天天天天天天天天天天婷婷婷| 激情婷| 婷婷五月天成人小说| 久久五月热| 久久这里有精品视频在线免费观看| 色综合久久之分久久| 五月婷婷六月激情在线| 四LLL少妇BBBB槡BBBB| 亚洲第一色色色色| 国产成人精品123区免费视频| 激情丁香婷婷五月天| 女人天堂AV| 日本熟女三区| 思思久久99热只有频精品66| 天天撸夜夜爽| 亚洲AV成人精品网站在线播放| 五月丁香六月香综合激情| 91丁香色五月| 五月丁香婷婷免费视频| 香蕉婷婷色五月| 六月婷婷av| 日韩色色色色色| a久久| 天天射天天射一道本日本社区 | 欧美五月丁香啪啪响视频| 久久久久人妻精品| 婷婷色色播五月天| 操比激情五月| 国产精品美女| 爱久久小说下载网| 丁香五月婷婷色播艳门照| 久久综合五月婷婷| 最新av在线观看| 久久久com| 免费无码毛片一区二区A片| 噜噜噜色噜噜| 91无码高清| 色色亚洲视频| 日本熟女一区二区| 射久久丁香五月| 另类图片天天影视在线观看| 五月激情综合激情五月| 五月天婷婷Av| 操97| 岛国av电影网站| 中文字幕av在线播放| 99性爱视频| 五月婷婷视频28| 九艹在线| 超pen个人视频97| 婷婷五月天社区| 五月天天丁香婷婷在线中| 成人五月丁香花| 久久婷婷综合国产| 亚洲爱爱无码婷婷色五月| 五月天丁香综合在线| 色色色com| 天天摸色吧天天摸色吧| 久久婷婷五月| 超碰中文字幕在线| 欧美在线干| 人。妻久久| 久久五月天婷婷视频| 奇米四色五月天| 五月天婷婷在线播放| 新精品99| 六月激情婷婷色| www.com色播五月天| 婷婷五月花| 超碰在线观看9| www.minyis.com【JT】币址百万U预算可预付QQ2101460746 | 九九热在线精品视频| 激情婷婷五月天日本系列| 另类图片天天影视在线观看| 色婷婷91激情小说| 99亚洲精品| 天天干天天操天天拍| 99热在线99| 国产精品色婷婷99久久精品| 9视频在线成人网站| 夜夜操夜夜操| 黄网在线观看免费| 国精产品一区二区三区| 伊人久久婷婷| 性色av大香综合| 久久婷婷艹| 色婷婷综合网| 91爱啪啪| 综合色影院| 九九九九这里只有精品| 五月天色婷婷小说| 开心五月六月婷婷| 色色色综合色| 美腿丝袜AV天堂网| 色色色丁香| 4399啪啪视频| 天天干天天插| 色色色综合色| 色五月综合激情| 亚洲精品色| 激情綜合W W W,激情五月天| WWW.桔色成人.COM| 婷婷 激情 五月| 狠色狠色狠狠色综合网| 激情四射五月天| 色色五月天网站| 九九人人自拍| 色婷婷国产精品综合在线观看| 色婷婷AV在线观看| 九九精品丁香花| 一本到不卡高清DVD| 丰满少妇乱A片无码| 欧美人与性动交CCOO| 香蕉婷婷| 少妇熟女视频一区二区三区 | 另类婷婷五月天啪帕帕| 九月丁香很很色| 国产成人综合亚洲| 三十熟女| 九九精品大香蕉| 色色色激情网| 9色天堂| 天天久久九九| 我想看国产大学生口爆吞精的视频| 婷婷中文综合网| 欧美碰碰| 色婷婷啪啪啪啪啪啪| 91九色在线视频| 色碰干| 色九月| 日本在线免费中文com.| 精品九九视频| 五月婷婷激情四月| 五月丁香六月婷婷姐| 亚洲人成色A777777在线观看| 丁香六月婷婷色播| 久99热| 色五月婷婷中文字幕| 国产亚洲成AV人片在线观黄桃| 双性美人被调教到喷水A片| 色色色五月天婷婷| 丁香五月手机视频| 99热免费精品| 婷婷五月天受日本法律保护| 亚洲成人AV电影在线| 天天插操| 77777亚洲午夜久久| 婷婷五月天久久| 精品无码av丁香五月激情| 99aese| 99热这里只有精品中文字幕| 中文字幕AV网址| 996er热| 激情五月婷婷综合网| 婷婷色情五月| 色婷婷成人| 色五月激情综合| 五月婷婷在线视频| 97人人干人人操| 国产精品扒开腿做爽爽爽A片唱戏 青青草国产亚洲精品久久 | 亚洲九九夜夜| 久久久久久久11111111111| 1囯产午夜仑鲁鲁| 99热精品在线播放| 天堂婷婷丁香六月网| 天天在线XXX| 激情综合亚洲| 9在线9在线婷婷在线国产| 日本久久人人| 丁香五月激情澎湃一区| 丁香婷婷色情| 97超碰婷婷五月天| 性爱人人网| 久久这有这里精品| 人妻啪啪啪| 啪啪啪综合网| 97久久久免费福利网址| 在线,国产,色,热视频| 99热99热在线| 思思99热| 9l视频自拍九色9l视频在线观看| 婷婷五月天另类视频| 99精品在线观看视频| 色99视频| 超碰97久久| 色五月色综合| 狠狠插狠狠操| 超色欲天天| 色丁香久综合在线久综合在线观看| 婷婷五月天网址| 色婷婷六月| 色色精品色| 俺去也婷婷| 久久五月天激情| 99综合视频一体| 激情五月天 婷婷| 风流少妇A片一区二区蜜桃| 婷婷操久久| 久狠日av| 嫩草极品| 婷婷色五月激情| 亚洲第一成人无码A片| 潮汕成人AV片在线| 青青草深爱激情网| 99久久6| 婷婷五月精品中文字幕| 99热这里只有精品最新| 日日操,天天操| 狠狠干狠狠干| 欧洲综合视频| 亚洲男女激情| 五月色亭丁香| 色色网站免费观看| 国产美女无遮挡裸体毛片A片 | 婷婷色色播五月天| 五月天色色色| 婷婷色婷婷| 日韩久久色| 五月婷婷综合影院| 五月丁香婷爱在线| 乱乱av| 千人斩操逼| 色情综合| 婷婷五月天综合激情| 五月婷婷偷拍| 婷婷色中文| 五月婷婷激情五月| 91精品丝袜久久久久久久久粉嫩| 丁香5月婷婷| 成人免费黄色短视频| 五月婷婷这里都是精品| 亚洲欧美成人在线| 五月开心婷婷极品激情| 五月丁香婷婷色| 99久久久免费| 天堂久久精品| 五月天久久婷婷| 中文字幕成人| 天天舔天天插天天爱| 亚洲色婷婷| 激情桃色网| 天天插天天射| 五月天婷婷激情干干| 亚洲乱码日产精品BD| 丁香五月天婷婷中文| 日本一级淫| 五月丁香六月欧美| 久草 tingting| 婷婷五月激情五月激情| 久久99jiu9| 99热精品免费| 九九AV在线| 五月天另类激情在线| 亚洲99激情| 九九九九操逼| 婷婷涩涩五月天| 97色婷婷在线观看| 久久久久9999| 九九热视频网站| 人人人舔人人人操人人人摸人人人97| 99丁香婷婷综合网| 尔尔AV一区| 九九热99免费视频| 亚洲激情网| 美女婷婷六月色| 亚洲成人日韩无码精品| 色色色色综合| 五月色网| BBWCUCKOLD精品熟妇| 丁香五月天啪啪激情综和网| 五月婷婷亚洲色图| 9999久久久久| 五月丁香久久久日婷婷久久婷婷日| 春色激情| 日韩成人电影在线播放| 激情五月开心五月在线视频| 中文字幕成人网站| 五月天网站亭亭| 日韩欧美颜射| 九九九激情综合| 天天综合网站| 五月天色导航婷婷资源婷婷| 极品精品一区二区三区在线| 无码99| 美女五月激情| 99天堂网最新| 久热这里| 色色色色色网站| 操久久网| www.丁香黄色五月天人与| 婷婷激情在线| 思思热在线精品视频网站| 区啪精品| 99ri视频| 激情综合五| 久草久青福利| 天色综合网| 国产精品扒开腿做爽爽爽A片唱戏| 色婷婷色婷婷五月| 久久狠狠欧美| 久艹久| 欧美大肥婆大肥BBBBB| 可以免费观看的AV| 插插网爽妇五月丁香| 99精品人人| 国产午夜精品一区二区三区嫩草| 天天日 天天草| 丁香六月婷婷综合网| 天堂久久性| AV片一区在线观看| 婷婷五月天综合网| va婷婷| 六月丁香婷婷亚洲中文玖玖| 丁香五月最新地址| 99久久户外勾搭| 五月激情婷婷丁香| 亚洲中文乱字字幕在线永久| 五月丁香六月色情网欧美| 猫咪伊人久久| 欧美激情-区二区三区| 婷婷五月综合激情| 日本99色| 激情深爱五月| 91黄址| 久热只有这里有精品| AV网在线| 色婷婷五月天在线| 人妻无码视频网| 亚洲Av成人在线观看| 无码AV免费精品一区二区三区| 乱码操操| www.com任你艹| 超碰亚洲欧美| 五月婷丁香| 婷婷丁香五月麻豆| 激情五月天综合网| 色色色色色色色色综合网| 五月五丁香婷婷| 99热这是里只有精品| 免费黄色视频网址| 狠狠干综合网| 久久五月天免费网站| 猫咪伊人AV| 丁香婷婷老熟女综合网| 国产成人精品一区二三区熟女在线| 日本色婷婷| 成人在线网| 六月丁香啪啪啪| 91免费看片| www.久久爱.com| www.婷婷| 丁香五月开心亚洲| 婷婷色操| 99热免费精品| 香蕉国产2013| 精品久久9| 婷婷丁香97| 99精品国产热久久91色欲| 亚洲在线操| 99啪啪视频| www.超碰| 久久五月视频| 久久久GOGO无码啪啪艺术 | 色九月丁香婷婷蜜桃在线观看| 色婷婷在线电影| 熟女色色一区二区| 色婷婷五月天av在线| 91国产精品视频播放| 99九九热播在线免费视频| 99碰碰碰| 无码动漫av| 97热这里精品在线视频| 伊人狠狠丁香婷婷综合尤物| 久久九九玖玖| 日本老女人黄页在线播放| 五月丁香婷婷无码中文| 五月丁香少妇A| 婷婷丁香五月天小说| 丁香婷婷视频一区二区| 噜噜色噜噜网| 色婷婷六月| 婷婷精品在线| 丁香色色网| 亚洲午夜成人av电影网| www.久久久久久久久久.com| 日韩另类在线观看| 色色综合成人网| 丁香五月AV在线| 五月婷婷婷自由综合| 天天精品视频免费观看| 久99综合婷婷| 99热只有| 狠狠色丁香乆乆| 日本专区久久| 亭亭五月丁香综合欧美| 久热这里只有精品99re,久热这里只有精品7| 婷婷五月天首页| 色色色网站| 天天舔天天爽| 91久久网站| 99在线资源| www。88热在线视频免费观看| 婷婷综合在线观看视频| 99热这里是精品| 婷婷成人五月天成人文学| 操人妻AV| A级毛片高清免费不卡播放谢谢谢谢| 婷婷色导航| 天天操,夜夜骑| 熟女激情网| 三级av在线| 非洲一级AV| 国产精品-91JQ就要激情网91JQ6.91JQ27.CASA:16888 | 五月天婷婷综合网| 日韩欧美婷婷丁| 9+1视频网址| 中国激情网| 日韩九九| 一区操| 五月丁香久人妻中文| 无码 色| 婷婷五月婷婷| 91日综合欧美| 久久6这里只有精品| 五日激情综合| 中文字幕丰满孑伦无码专区| 久久久久久久久久久月丁| 99热国产这里只有| 日日夜夜狠狠| 五月天久久色| 综合久| 激情欧美丁香五月| 亚洲精品久久久久久久久久吃药 | 久久这里只有国产| 99热精品无码| 日本强伦片中文字幕免费看| 色碰干| www夜夜操com| www.夜夜操| 强伦轩人妻一区二区电影| 丁香六月天婷婷开心综合| 五月丁香六月欧美综合网站| 成人无码中文| 五月婷婷和六月| 日本久久综合| 色婷婷色| 99热在线观看亚洲区| 婷婷伊人綜合中文字幕| 操逼视频一区| 99在线精品视频免费观看20| 久久免费精彩视频| 久久免费9| 五月丁香六月婷婷色日| 综合久久婷婷99| 国产99精品免费视频| 激情久久久久| 玖玖婷婷色五月| 综合五月网| 五月伊人91| 色丁香在线视频| 五月丁香综合啪啪| 免费黄色片子| 色色色色色色色色五月先| 97成人在线视频精品| 丁香婷婷五月基地| 97在线观视频免费观看| 看黄的网站18禁| 五月丁香大香蕉| 在线成人网站| 亚洲综合五月天婷婷丁香| 99精品国产在热久久婷婷| 五月天天天色| 丁香婷婷老司机久操| 婷婷香五月| 另类丁香五月天区图| 另类激情五月| 色135综合网| 色婷婷综合五月| 国产亚洲精品AAAAAAA片| 五月激情婷婷图片基地| 深爱激情五月婷婷| 97人人操人人干| 天天精品视频免费观看| 狠狠综合| 九九热这里只有精品6| 性日本激情| 激情五月天小说网| 激情婷婷五月女| 亚洲综合在线视频| 五月婷婷六月丁香综合视频在线| 99色综合| 亚洲精品乱码久久久久99| 99色色网| 丁香久久五月天视频在线观看 | 粉嫩AV久久一区二区三区| 《》【无码】想被搞到爽AV应募而来的超M素人 西纯子 10musume-011723-01 | 天天干夜晚夜操|