欧美成人午夜精品久久久,国产?V天堂一区二区三区,欧美精品va在线观看,亚洲一区二区三区免费在线观看,av无码精品一区二区久久,欧美性爱视频不卡一区三区,欧美乱人伦视频在线观看,国产一级牲交高潮

ARTICLE DETAIL

資訊詳情

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

Happy × OpenCode 運行時協(xié)議追蹤實錄:從源碼跑通到消息-部件(message+parts)的權(quán)限、媒體與子會話對照

Happy × OpenCode 運行時協(xié)議追蹤實錄:從源碼跑通到消息-部件(message+parts)的權(quán)限、媒體與子會話對照 人工智能AI AgentAI 應(yīng)用移動開發(fā)CLI后端【免費下載鏈接】happyMobile and Web client for Codex and Claude Code, with realtime voice, encryption and fully featured項目地址https://gitcode.com/gh_mirrors/happy20/happy點擊查看免費下載本文是 Happy 項目針對 OpenCode 做的一輪協(xié)議層運行時追蹤從源碼啟動 OpenCode 服務(wù)、復(fù)制全局認證到隔離臨時根目錄、驅(qū)動真實樣例項目只相信「發(fā)給 OpenCode 的請求體、OpenCode 返回的 JSON、/event的原始 SSE 日志、以及 OpenCode 源碼」四類證據(jù)從而回答一個核心問題——OpenCode 的實時同步與轉(zhuǎn)寫模型到底是什么樣Happy 的轉(zhuǎn)寫與同步層又該從中借鑒什么。讀完本文你將掌握 OpenCode 目錄路由、權(quán)限詢問、媒體輸入、子會話四類真實協(xié)議的完整載荷與事件序列并理解docs/plans/provider-envelope-redesign.md中「消息 部件」改造方案的證據(jù)來源。一、追蹤背景與證據(jù)邊界這份追蹤記錄撰寫于 2026-03-21是較早一輪競品分析缺失的協(xié)議級補充。其方法非常直接運行 OpenCode 源碼把全局安裝里的認證復(fù)制進一個隔離的臨時根目錄驅(qū)動一個真實的小項目并且只信任以下證據(jù)發(fā)送給 OpenCode 的精確請求體OpenCode 各端點返回的精確 JSON 響應(yīng)OpenCode/event的原始 SSE 日志OpenCode 源碼本身。在 Happy 一側(cè)這份文檔只信任 Happy 倉庫內(nèi)的代碼。換言之這是一份「用真實運行軌跡說話」的對照文檔而不是紙面推測。1.1 實際使用的環(huán)境項值OpenCode 源碼檢出../happy-adjacent/research/opencode作者本地外部檢出目錄檢出版本commit2e0d5d230893dbddcefb35a02f53ff2e7a58e5d0樣例項目倉庫內(nèi)的 environments/lab-rat-todo-project純前端靜態(tài)小項目index.html、app.js、styles.css、README.md隔離運行時根/tmp/opencode-trace-dev.ptZAVJ認證來源~/.local/share/opencode/auth.json復(fù)制到/tmp/opencode-trace-dev.ptZAVJ/share/opencode/auth.json復(fù)制后的認證文件中僅保留了openai一個 provider key1.2 服務(wù)端啟動命令XDG_DATA_HOME/tmp/opencode-trace-dev.ptZAVJ/share \ XDG_CACHE_HOME/tmp/opencode-trace-dev.ptZAVJ/cache \ XDG_CONFIG_HOME/tmp/opencode-trace-dev.ptZAVJ/config \ XDG_STATE_HOME/tmp/opencode-trace-dev.ptZAVJ/state \ OPENCODE_CONFIG_DIR/tmp/opencode-trace-dev.ptZAVJ/profile \ OPENCODE_DB/tmp/opencode-trace-dev.ptZAVJ/share/opencode/opencode.db \ bun run --cwd packages/opencode --conditionsbrowser src/index.ts \ serve --hostname 127.0.0.1 --port 4098 --print-logs --log-level DEBUG這套命令的要點在于通過XDG_*系列環(huán)境變量把 OpenCode 的數(shù)據(jù)、緩存、配置、狀態(tài)全部隔離到/tmp/opencode-trace-dev.ptZAVJ下OPENCODE_CONFIG_DIR指定獨立配置目錄OPENCODE_DB顯式指定 SQLite 數(shù)據(jù)庫路徑服務(wù)監(jiān)聽127.0.0.1:4098并以 DEBUG 級別打印日志。這樣既能復(fù)用全局認證只含 openai key又不會污染真實環(huán)境。支撐這套實測的關(guān)鍵 OpenCode 源碼文件作者本地檢出路徑從../happy-adjacent/research/opencode起packages/opencode/src/auth/index.tspackages/opencode/src/server/server.tspackages/opencode/src/server/routes/experimental.tspackages/opencode/src/session/message-v2.tspackages/opencode/src/session/prompt.tspackages/opencode/src/tool/task.tspackages/opencode/src/permission/index.ts二、什么是「真實」證據(jù)分散在四個面追蹤得出的第一個重要結(jié)論是OpenCode 有用的協(xié)議證據(jù)并不是一個大的隱藏 RPC 信封而是分散在四個面上發(fā)送到POST /session/:id/prompt_async的請求體從GET /session/:id/message讀到的持久化消息行從GET /event獲得的實時補丁流控制面端點如/path、/permission、/session/:id/children、/experimental/worktree、/experimental/workspace的響應(yīng)。這個區(qū)分對 Happy 至關(guān)重要。OpenCode 并沒有一條「一次性提供給 UI 全部所需」的 append-only 轉(zhuǎn)寫流而是由四類機制協(xié)同帶類型部件的穩(wěn)定消息行stable message rows with typed parts針對這些行的實時補丁事件live patch events權(quán)限與會話狀態(tài)的一等旁路事件first-class side-channel events轉(zhuǎn)寫之外的獨立 workspace / worktree 路由。三、Flow 0目錄路由、worktree、workspace 與「sandbox」的真實含義在觸碰任何 prompt 之前先驗證服務(wù)端如何限定請求范圍。關(guān)鍵路由輸入是請求頭x-opencode-directory: /Users/kirilldubovitskiy/projects/happy/environments/lab-rat-todo-project真實的GET /path響應(yīng){ home: /Users/kirilldubovitskiy, state: /tmp/opencode-trace-dev.ptZAVJ/state/opencode, config: /tmp/opencode-trace-dev.ptZAVJ/config/opencode, worktree: /Users/kirilldubovitskiy/projects/happy, directory: /Users/kirilldubovitskiy/projects/happy/environments/lab-rat-todo-project }當前項目對應(yīng)的真實空列表GET /experimental/worktree - [] GET /experimental/workspace - []這意味著項目限定是請求路由問題不是轉(zhuǎn)寫問題當前項目位于一個更寬的worktree根目錄之下以及一個更窄的directory之內(nèi)worktree 與 workspace 是顯式的控制面資源這些內(nèi)容不會以type: sandbox或type: workspace之類的轉(zhuǎn)寫部件出現(xiàn)。所以當 OpenCode 的產(chǎn)品語言說「sandbox」時落在具體實現(xiàn)上主要是三件事目錄限定、可選的 workspace 路由、可選的 git worktree 管理。它不是Happy 已經(jīng)擁有代碼的那種 OS/文件系統(tǒng)/網(wǎng)絡(luò)沙箱策略——后者可以參考 packages/happy-cli/src/sandbox/config.ts 中的buildSandboxRuntimeConfig它按sessionIsolationstrict/workspace/custom構(gòu)造文件系統(tǒng)allowWrite/denyRead/denyWrite白名單并按networkModeblocked/allowed/custom配置allowedDomains/deniedDomains/allowLocalBinding等網(wǎng)絡(luò)策略。這是兩種完全不同的「沙箱」語義。四、Flow 1圍繞apply_patch的權(quán)限詢問——最完整的一條真實鏈路這是整個追蹤中最干凈的一條鏈路因為它一次跑通了用戶 prompt 創(chuàng)建 → 助手步驟生命周期 → reasoning → 工具調(diào)用 → 權(quán)限請求 → 權(quán)限回復(fù) → 文件編輯副作用 → 助手最終跟進。4.1 會話創(chuàng)建強制詢問的編輯權(quán)限規(guī)則POST /session { title: trace permission ask, permission: [ { permission: edit, pattern: *, action: ask } ] }會話創(chuàng)建時顯式帶上權(quán)限規(guī)則把edit的*模式設(shè)為ask從而強制觸發(fā)權(quán)限詢問。4.2 實際發(fā)送的 Prompt 請求體POST /session/{sessionID}/prompt_async { agent: build, model: { providerID: openai, modelID: gpt-5.4-mini }, parts: [ { type: text, text: Create a new file named TRACE_PERMISSION.md in the current directory with exactly one line: rat permission trace. Then reply with one short sentence. } ] }注意prompt 本身就是「帶類型部件的數(shù)組」agent與model在消息外層顯式聲明。4.3 用戶消息被持久化{ info: { role: user, id: msg_d0f8263b50016s8bKlZ36Te52c, sessionID: ses_2f07d9c71ffeikGiLoOKqF2Evb }, parts: [ { type: text, text: Create a new file named TRACE_PERMISSION.md in the current directory with exactly one line: rat permission trace. Then reply with one short sentence. } ] }消息被持久化為info角色、id、會話 idparts有序類型部件兩層結(jié)構(gòu)與請求體形態(tài)一致。4.4 實時權(quán)限事件SSE真實 SSE 事件{ type: permission.asked, properties: { id: per_d0f826ef60011FReJ16cM2d0MK, sessionID: ses_2f07d9c71ffeikGiLoOKqF2Evb, permission: edit, patterns: [ environments/lab-rat-todo-project/TRACE_PERMISSION.md ], always: [*], tool: { messageID: msg_d0f8263b9001UcnDrNrnbyYeyT, callID: call_uJj6gIQfIPpSoBV9oOWBT7cF }, metadata: { filepath: environments/lab-rat-todo-project/TRACE_PERMISSION.md, files: [ { relativePath: environments/lab-rat-todo-project/TRACE_PERMISSION.md, type: add, after: rat permission trace\n, additions: 1, deletions: 0 } ] } } }這是追蹤里最重要的發(fā)現(xiàn)之一OpenCode 的權(quán)限不是簡單的「工具 X 想要批準」。這個請求攜帶了權(quán)限種類edit精確路徑模式patterns穩(wěn)定的請求 idper_...與工具調(diào)用的回鏈tool.messageIDtool.callID一份可直接渲染的 diff 載荷metadata.files帶type、after、additions、deletions。也就是說權(quán)限事件本身就為 UI 準備好了審批界面的全部素材。4.5 工具調(diào)用前后的助手消息批準后持久化的助手消息{ info: { role: assistant, finish: tool-calls, id: msg_d0f8263b9001UcnDrNrnbyYeyT }, parts: [ { type: step-start, snapshot: dfd3f0873ec51c2ddbf0b6b79acc154e5ab15c5d }, { type: reasoning, text: **Creating a file**\n\nI need to create a file..., metadata: { openai: { itemId: rs_..., reasoningEncryptedContent: gAAAAA... } } }, { type: tool, callID: call_uJj6gIQfIPpSoBV9oOWBT7cF, tool: apply_patch, state: { status: completed, input: { patchText: *** Begin Patch\n*** Add File: TRACE_PERMISSION.md\nrat permission trace\n*** End Patch }, output: Success. Updated the following files:\nA environments/lab-rat-todo-project/TRACE_PERMISSION.md } }, { type: step-finish, reason: tool-calls } ] }隨后 OpenCode 又發(fā)出第二條助手消息承載最終可見文本{ info: { role: assistant, finish: stop }, parts: [ { type: step-start }, { type: text, text: Done. }, { type: step-finish, reason: stop } ] }關(guān)鍵點工具調(diào)用攜帶自己的狀態(tài)機state.statuspending → running → completed且step-start/step-finish是獨立部件reasoning 也是獨立部件最終文本又落在單獨的 assistant 消息里。整條鏈在持久化層是自解釋的。4.6 實際看到的實時事件序列原始 SSE 流的順序18 步session.createdmessage.updated用戶消息message.part.updated用戶text部件session.status→busymessage.updated助手消息殼message.part.updated→step-startmessage.part.updated→reasoning大量message.part.delta塊流式推送 reasoning 文本message.part.updated→ 工具部件status: pendingpermission.askedpermission.repliedfile.editedfile.watcher.updatedmessage.part.updated→ 工具部件status: runningmessage.part.updated→ 工具部件status: completedmessage.part.updated→step-finish第二條助手消息攜帶最終textsession.status→idle文件確實在磁盤上被創(chuàng)建TRACE_PERMISSION.md: rat permission trace五、Flow 2媒體輸入失敗路徑——provider 拒絕前的誠實存儲失敗場景很有價值因為它展示了 provider 拒絕請求之前 OpenCode 到底存了什么。5.1 Prompt 請求體{ agent: build, model: { providerID: openai, modelID: gpt-5.4-mini }, parts: [ { type: text, text: Describe the attached image in one short sentence. Do not use any tools. }, { type: file, mime: image/png, filename: tiny.png, url: data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mP8/x8AAwMCAO7Z0XQAAAAASUVORK5CYII } ] }5.2 用戶消息被持久化原樣{ info: { role: user }, parts: [ { type: text, text: Describe the attached image in one short sentence. Do not use any tools. }, { type: file, mime: image/png, filename: tiny.png, url: data:image/png;base64,iVBORw0K... } ] }5.3 助手錯誤被持久化{ info: { role: assistant, error: { name: APIError, data: { message: The image data you provided does not represent a valid image. Please check your input and try again., statusCode: 400, isRetryable: false, metadata: { url: https://api.openai.com/v1/responses } } } }, parts: [] }實時流同時發(fā)出了session.error。這是一個 OpenCode「誠實」的好例子用戶側(cè)的file部件被原樣存儲失敗則成為助手/會話的錯誤狀態(tài)而沒有被「規(guī)范化」掉。對 Happy 而言這意味著消息層必須能表達失敗而不是把失敗折疊進某個模糊的文本里。六、Flow 3媒體輸入成功路徑——本地文件被 OpenCode 自行解析成功路徑完全不同因為輸入 URL 是本地file://...由 OpenCode 自己解析。6.1 Prompt 請求體{ agent: build, model: { providerID: openai, modelID: gpt-5.4-mini }, parts: [ { type: text, text: Describe the attached image in one short sentence. Do not use any tools. }, { type: file, mime: image/png, filename: logo.png, url: file:///Users/kirilldubovitskiy/projects/happy/logo.png } ] }6.2 規(guī)范化后的用戶消息{ info: { role: user }, parts: [ { type: text, text: Describe the attached image in one short sentence. Do not use any tools. }, { type: text, synthetic: true, text: Called the Read tool with the following input: {\filePath\:\/Users/kirilldubovitskiy/projects/happy/logo.png\} }, { type: file, mime: image/png, filename: logo.png, url: data:image/png;base64,iVBORw0K... } ] }這是session/prompt.ts的真實行為原文檔明確標注非猜測OpenCode 注入一條synthetic: true的文本部件描述這次讀取再把媒體本身作為file部件存儲且本地文件被解析成具體的data:URL。6.3 助手響應(yīng)被持久化{ info: { role: assistant, finish: stop }, parts: [ { type: step-start }, { type: reasoning, text: , metadata: { openai: { itemId: rs_..., reasoningEncryptedContent: gAAAAA... } } }, { type: text, text: A cute cartoon otter is lounging in water while using a laptop. }, { type: step-finish, reason: stop } ] }6.4 實時流證明了什么/event日志顯示message.part.updated合成讀取文本→message.part.updatedfile部件→ reasoning 創(chuàng)建 → 流式message.part.delta助手文本→session.status回到idle。所以真實的媒體故事是三段式用戶側(cè) prompt 部件type: file內(nèi)部轉(zhuǎn)寫展開synthetic text 具體file助手側(cè)回答普通文本輸出。七、Flow 4子任務(wù) / 子會話 / 權(quán)限約束——與 Happy 對照最重要的一環(huán)這是四類追蹤里與 Happy 做并排對照最重要的一條。7.1 Prompt 請求體含 agent 部件{ agent: build, model: { providerID: openai, modelID: gpt-5.4-mini }, parts: [ { type: text, text: Find the main files in this tiny project and report back briefly. }, { type: agent, name: explore } ] }7.2 用戶消息被改寫OpenCode沒有只存原始的agent部件而是把用戶消息重寫為{ info: { role: user }, parts: [ { type: text, text: Find the main files in this tiny project and report back briefly. }, { type: agent, name: explore }, { type: text, synthetic: true, text: Use the above message and context to generate a prompt and call the task tool with subagent: explore } ] }同樣是session/prompt.ts的真實行為追加一條合成文本把「派生子代理」這件事顯式寫進轉(zhuǎn)寫。7.3 父會話的助手消息與task工具部件{ info: { role: assistant, finish: tool-calls, id: msg_d0f855de2001b0RbgA3JGA5lzk }, parts: [ { type: step-start }, { type: reasoning, text: **Generating a task prompt**\n\nI need to call the task tool with the subagent explore... }, { type: tool, callID: call_OqUEr7ccnf3zEb2rgLYDp5uR, tool: task, state: { status: completed, input: { description: Find main project files, prompt: Inspect the repository and identify the main files in this tiny project. Focus on the key entry points, config files, and any top-level files that define how the project runs. Return a brief list of the most important files with one short note each about what they appear to do. Keep it concise and do not modify anything., subagent_type: explore }, output: task_id: ses_2f07a8dd6ffeRc23sIIgM4ZpMT (for resuming to continue this task if needed)\n\ntask_result\nMain files:\n\n- .../index.html ...\n- .../app.js ...\n- .../styles.css ...\n- .../README.md ...\n\nNo build/config files are present; it looks like a simple frontend-only static app.\n/task_result, metadata: { sessionId: ses_2f07a8dd6ffeRc23sIIgM4ZpMT, model: { modelID: gpt-5.4-mini, providerID: openai } } } }, { type: step-finish, reason: tool-calls } ] }兩個關(guān)鍵點父轉(zhuǎn)寫存儲task工具調(diào)用及其結(jié)果可恢復(fù)性由子會話 id 提供以task_id形式返回ses_2f07a8dd6ffeRc23sIIgM4ZpMT即子會話 id可用于續(xù)跑該任務(wù)。7.4 子會話真的被創(chuàng)建了真實GET /session/{parentID}/children響應(yīng)[ { id: ses_2f07a8dd6ffeRc23sIIgM4ZpMT, parentID: ses_2f07aa25affeqiZHSnBiN8pSyG, title: Find main project files (explore subagent), directory: /Users/kirilldubovitskiy/projects/happy/environments/lab-rat-todo-project, permission: [ { permission: todowrite, pattern: *, action: deny }, { permission: todoread, pattern: *, action: deny }, { permission: task, pattern: *, action: deny } ] } ]這是「OpenCode 子代理就是子會話」最干凈的證明子會話擁有自己的 id、自己的parentID指向父會話、自己的標題、繼承的目錄以及自己的權(quán)限規(guī)則這里顯式 deny 了 todo 寫入/讀取與再派生子任務(wù)防止無限遞歸。7.5 跨父子的實時流原始/event流父會話用戶消息創(chuàng)建父會話助手step-start父會話 reasoning 增量父會話task工具部件 →pending子會話session.created父會話工具部件 →running子會話內(nèi)出現(xiàn)子會話用戶消息子會話助手消息開始子會話 reasoning 增量流式推送子會話達到idle父會話工具部件 →completed結(jié)論OpenCode 并沒有在一條扁平消息泳道里「假裝」子代理而是使用父會話轉(zhuǎn)寫 子會話轉(zhuǎn)寫 父工具元數(shù)據(jù)鏈接到子會話 id。八、與 Happy 當前代碼的逐項對照以下對照只使用 Happy 代碼不做 Happy 運行時追蹤表中 OpenCode 側(cè)結(jié)論由日志/源碼證明主題OpenCode日志/代碼證明Happy代碼證明外層信封消息行已有頂層info 有序類型化partspackages/happy-wire/src/messages.ts 仍把較新格式包裝為role: session 內(nèi)層content: sessionEnvelope事件判別部件用頂層type如text、reasoning、tool、file、agent、subtask、step-startpackages/happy-wire/src/sessionProtocol.ts 仍把事件類型嵌套在ev.t之下sessionEventSchema是t判別聯(lián)合權(quán)限實時permission.asked/permission.replied事件攜帶工具回鏈與 diff 元數(shù)據(jù)packages/happy-app/sources/sync/reducer/reducer.ts 仍需通過合并類轉(zhuǎn)寫消息與加密agentState來重建權(quán)限狀態(tài)子代理帶parentID的真實子會話task_id是可恢復(fù)的子會話 idpackages/happy-wire/src/sessionProtocol.ts 的信封只有可選的subagent字段cuid2 校驗沒有子會話身份 轉(zhuǎn)寫級鏈接媒體用戶file部件 合成輔助text成功的本地文件變成具體data:URLpackages/happy-wire/src/sessionProtocol.ts 只有一種file事件形態(tài)計劃文檔提出直接采用photo/video/file變體沙箱 / 隔離路由靠 directory/workspace 與可選 worktree「sandbox」大多是 worktree/workspace 語言packages/happy-cli/src/sandbox/config.ts 已有具體的文件系統(tǒng) allow/deny 規(guī)則與網(wǎng)絡(luò)模式客戶端復(fù)雜度OpenCode 的 reducer 把實時補丁合并進已類型化的消息行packages/happy-app/sources/sync/typesRaw.ts 與 packages/happy-app/sources/sync/reducer/reducer.ts 仍保留多個 legacy 載荷族系agentEvent、session 事件、tool-call 等及復(fù)雜的重建邏輯對照結(jié)論非常直白OpenCode 擁有更干凈的轉(zhuǎn)寫形態(tài)Happy 擁有更強的真實沙箱配置Happy 當前的 reducer 復(fù)雜度是「不再保留多個明文載荷族系」的最強論據(jù)。關(guān)于沙箱這一點可以進一步說明Happy 的buildSandboxRuntimeConfig在sessionIsolation: strict時只允許寫入會話目錄 額外寫入路徑 共享 agent 狀態(tài)路徑~/.codex、~/.claude在workspace模式放寬到 workspace 根網(wǎng)絡(luò)側(cè)blocked模式把allowedDomains與deniedDomains都清空allowed模式則放行。這套文件系統(tǒng) 網(wǎng)絡(luò)的策略能力是 OpenCode 目錄路由式「沙箱」所不具備的。九、對provider-envelope-redesign.md的啟示當前規(guī)劃上下文來自 docs/plans/provider-envelope-redesign.mdDRAFT v2OpenCode 衍生現(xiàn)有判斷仍然成立p6 信封重設(shè)計工作位于 dirty worktree尚未進入已提交的分支歷史該工作已經(jīng)驗證了若干有價值的清理動作type放頂層、去掉外層role: session、引入parentId/agentId、轉(zhuǎn)寫級權(quán)限、直接媒體變體該計劃文檔中的現(xiàn)有提案仍是「記錄的方案」plan of recordOpenCode 的原始協(xié)議形態(tài)仍是鎖定 Happy 新穩(wěn)態(tài) schema 前最值得評估的外部參照Claude 更舊的類轉(zhuǎn)寫格式如果最終證明最簡單穩(wěn)定的模型更接近那段歷史仍是合理的回退選項。原文檔特別強調(diào)OpenCode并不主張照抄 ACP 包裝器行為而是主張照抄原始轉(zhuǎn)寫形態(tài)穩(wěn)定的消息行stable message rows類型化部件typed parts顯式的權(quán)限對象explicit permission objects顯式的子會話身份explicit child-session identity轉(zhuǎn)寫狀態(tài)與實時補丁傳輸?shù)那逦蛛x。這與provider-envelope-redesign.md的取舍一致該計劃采納 messageparts 形態(tài)但拒絕OpenCode「權(quán)限/問題走旁路 SSE 事件」的做法——計劃在工具部件狀態(tài)機中加入顯式blocked狀態(tài)讓權(quán)限請求與決策永久落在工具部件上block字段 decision: once | always | reject并拒絕以原始message.part.delta回放作為持久化同步模型改為可打補丁的規(guī)范消息pending → blocked → running → completed 原地演進同步發(fā)完整更新消息refetch 拿最新狀態(tài)。十、Happy 最難的部分加密存儲下的三個落地方案這是 OpenCode 與 Happy 分歧最大的地方。OpenCode 之所以能長期維持規(guī)范消息行 部件補丁是因為它的存儲層能看到明文會話狀態(tài)SQLite 明文行可隨意打補丁。而Happy 存儲的是不透明加密 blob。因此直接照抄 OpenCode 就必然要做一個存儲決策。以下是三個候選方案。方案 Aappend-only 規(guī)范轉(zhuǎn)寫事件存儲已規(guī)范化的、自身可持久化的加密記錄。示例心智模型{ kind: agent-event, type: tool-start, ... } { kind: agent-event, type: permission-request, ... } { kind: agent-event, type: tool-end, ... }優(yōu)點存儲不可變refetch 簡單匹配 Happy 當前的傳輸假設(shè)避免重放原始 delta 來重建可用轉(zhuǎn)寫。缺點不是對 OpenCode 補丁模型的字面照搬要么 start/end 事件永遠分離要么客戶端必須為 UI 便利推導(dǎo)「最新狀態(tài)」視圖。方案 B給規(guī)范加密消息行打補丁保留穩(wěn)定加密消息 id但當部件獲得新狀態(tài)時重寫加密載荷使 refetch 返回最新的規(guī)范快照。示例心智模型初始{ messageId: msg_123, parts: [ { type: tool, state: { status: pending } } ] }之后被重寫為{ messageId: msg_123, parts: [ { type: tool, state: { status: completed, input: { ... }, output: ... } } ] }優(yōu)點最接近 OpenCode 的服務(wù)端模型refetch 直接拿到最新規(guī)范狀態(tài)客戶端重建問題更少。缺點加密消息行變得可變同步/版本控制更微妙除非同時保留影子事件日志否則失去純 append-only 歷史。方案 C追加原始補丁事件客戶端重建存儲原始流客戶端重建消息狀態(tài)。示例心智模型{ type: message.updated, ... } { type: message.part.updated, ... } { type: message.part.delta, ... } { type: permission.asked, ... }優(yōu)點最接近 OpenCode 實時流只要每個補丁都被追加就是完全不可變的。缺點這恰恰是最可能復(fù)刻 Happy 當前 reducer 之痛的路線refetch 需要回放/物化加密存儲 遺留格式支持使其成為復(fù)雜度最高的選項。推薦結(jié)論如果 Happy 要向 OpenCode 借鑒應(yīng)該借形態(tài)shape而不是整套持久化策略。最強的兩個選項是append-only規(guī)范事件方案 A可打補丁的規(guī)范消息快照方案 B。最弱的選項是把原始補丁流重建作為主要持久化格式方案 C——那會保留太多我們正試圖消除的復(fù)雜度。方案 B 也正是docs/plans/provider-envelope-redesign.md選定的方向消息 id 穩(wěn)定、工具部件狀態(tài)演進時整體重加密并同步完整消息、refetch 直接拿最新狀態(tài)、不以 append-only 事件日志作為主存儲而 DB 行、seq排序、localId、v3 HTTP 消息 API、Socket.IO 失效通知與加密 blob 格式均保持不變。小結(jié)以真實運行軌跡為唯一證據(jù)可以確認 OpenCode 的協(xié)議核心是「穩(wěn)定消息行 類型化部件 顯式權(quán)限對象 顯式子會話身份 轉(zhuǎn)寫與實時補丁分離」。它對 Happy 的最大價值不是可照抄的傳輸層而是可作為穩(wěn)態(tài) schema 的參照形態(tài)而 Happy 真正的差異化優(yōu)勢文件系統(tǒng)/網(wǎng)絡(luò)級沙箱策略、端到端加密存儲決定了它必須把 OpenCode 的形態(tài)改造進自己的加密存儲約束之內(nèi)——這正是docs/plans/provider-envelope-redesign.md正在做的事。建議繼續(xù)閱讀同一研究系列中的 docs/competition/opencode/message-protocol.md 與 docs/competition/opencode/sources.md以及 docs/plans/provider-envelope-redesign.md 的完整方案。贊分享人工智能AI AgentAI 應(yīng)用移動開發(fā)CLI后端【免費下載鏈接】happyMobile and Web client for Codex and Claude Code, with realtime voice, encryption and fully featured項目地址https://gitcode.com/gh_mirrors/happy20/happy點擊查看免費下載相關(guān)推薦Happy Provider Envelope 重構(gòu)設(shè)計以 OpenCode messageparts 模型統(tǒng)一多 Provider 會話協(xié)議Happy Provider Envelope 重構(gòu)設(shè)計以 OpenCode messageparts 模型統(tǒng)一多 Provider 會話協(xié)議 本文基于 d人工智能AI AgentAI 應(yīng)用移動開發(fā)CLI后端OpenCode 消息協(xié)議深度剖析happy 項目借鑒的 Envelope Typed Parts 轉(zhuǎn)寫模型OpenCode 消息協(xié)議深度剖析happy 項目借鑒的 Envelope Typed Parts 轉(zhuǎn)寫模型 導(dǎo)讀 本文基于 happy 倉庫 docs/人工智能AI AgentAI 應(yīng)用移動開發(fā)CLI后端Happy 競品協(xié)議矩陣解析OpenCode、Codex、Claude、Superset 的傳輸、轉(zhuǎn)錄、權(quán)限與沙箱設(shè)計對照Happy 競品協(xié)議矩陣解析OpenCode、Codex、Claude、Superset 的傳輸、轉(zhuǎn)錄、權(quán)限與沙箱設(shè)計對照 本文基于 docs/competi人工智能AI AgentAI 應(yīng)用移動開發(fā)CLI后端上一篇Medusa 開源電商框架完整指南從零搭建可定制的 Commerce 后端下一篇開源項目推薦mir_eval創(chuàng)作聲明:本文部分內(nèi)容由AI輔助生成(AIGC),僅供參考
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
色婷婷综合久久| 五月丁香啪啪激情| 91要啪| 中文字幕 中文字幕明步| 亚洲色图啪啪| 免费无码毛片一区二区A片| 五月天玖玖狠狠色色| 性爱激情综合网| 六月 丁香 视频| 风流少妇A片一区二区蜜桃| 久久精品系列| 操大屄五月天视频| 欧美性色A片免费免费观看的 | 亚洲AV成人无码久久精品老人法拉利| 亚洲午夜电影| 婷婷久久免费| YW无码| 五月婷婷激情中文字幕| 一本久久亚洲五月婷婷| 婷香五月| www.91婷婷| 超pen个人视频97| 9久久久久| 97综合在线| 激情五月天www| 中文字幕乱轮| 日本久久99| 91精品久久久久| 97人妻碰碰碰久久| 日韩亚洲视频| 色欲一区二区三区精品A片| 99热这里只有精品1025| 四虎婷婷五月天| 97丁香五月| 久久精品国产色| 天天天干夜夜夜操| AV在线中文| 激情图片婷婷| 国产色网站| 99久re热| 九九亚洲小视频| 人妻肉射免费观看| www久久久久久久久久久| 激情综合五月激情XXXX| 图片区 小说区 区 亚洲五月| 丁香六月婷婷五月天| 五月六月激情| 五月天激情视频网站| 色狠狠综合| av在线免费播放观看| 色五月丁香五月| 超碰日韩人妻在线| www.超碰97| 91性人人| 人人澡玖玖一| 亚洲婷婷丁香五月视频| 婷婷五月成人有| 99亚洲精美视频在线观看| 欧美性生交XXXXX无码小说| 婷婷五月天无码| 色情五月天A片| 天天舔天天| 日本色频| 六月色色综合| 天堂AV在线看| www.久久综合| 天天综合久久| 日本熟女三区| 久久久久久五月天| 99久久精品国产色欲| 第四色五月婷婷| 俺去也五月天| 九九热最新| 激情五月天免费视频| 五月花综合网| 激情五月色在线播放| 森林影视大全,最好看的2019年视频 | 99青青草| 99色色网| 婷婷五月成人| 99热国品| 色噜久| 久碰久| 色婷婷丁香社综合| 99精品高潮| 国产精品丝| 国产.亚洲.欧洲视频在线| 538在线精品| 色色亚洲99com| 色色色欧美| 久思思久视频| 精品成人a v无码内射| 综合在线色婷婷| 超碰国产AV| 日本久久人人| 亚洲综合网在线| 91碰免费视频| www九九| 777色婷婷爱五月| 五月丁香色五月| 人人人舔人人人操人人人摸人人人97| 超碰成人在线观看| 99久久欧美| 9999综合99综合人| 久久婷婷成人视频| er99免费视频在线| 玖玖综合色| 久久性爱视频| 色九九九九| 国产精典视频在线观看| 99久久综合精品五月天| www.91久久| 久操婷婷| 久久综合无| 色综久久久| 5月婷婷五月天| 天天操电影院色狼性av| 激情九月综合| 五月天婷婷亚洲| 99色综合| 婷婷五月天久久| 国产毛片欧美毛片久久久| 久久婷婷五月综合色和| 激情五月激情综合网一级丸片| 伊人大香久久| 久久一级免费黄色片| 九九在线这里只有精品视频| 五月丁香在线国产| 婷婷五月激情片| 伊人激情综合| 日日干夜夜干| 91a片爽| 丁香五月婷婷成人综合| 97碰碰叉| 婷婷五月激情图片| 色99网| 婷婷啪啪| 五月久熟女| 五月婷婷九| 国产91视频| 啪啪日本欧美| 激情久久天天| 九月婷婷久久久| 丁香五月婷婷少妇| 天堂草在线看www| 粉嫩AV久久一区二区三区| 免费看无码视频A级| 四色 爱 婷婷 精品 亚洲 五月天| 天天插天天插| 五月婷婷天天色| 色欲婷婷五月天| 丁香五月手机视频| 欧美成人A片AAA片在线播放| 玖玖99婷婷| 九九视频这里是精品五月| 色婷婷五月在线| www狠狠爱com| 99热在线看| 操日本色| 性综合网| 色综合久久88色综合天天99| 九九热av| AV伊人青草丁香六月| 色婷天天| 激情婷婷丁香五月天小说| 精品9久| 五月婷六月| 久久在线视频免费观看| 这里只精品| 久热视频这里只有精品68| 丁香五月亚洲天堂| 色开心五月婷婷丁香HD| 激情婷婷丁香五月天小说| 类似婷婷激情综合网站| 4399亚洲视频| 激情深爱五月天| 草综合网| 亚洲操操| 天天舔日日肏夜夜爽| 香蕉久日夜| 久久这里有精品在线观看| 99在线精品免费视频| 色综合xx| 国产第99页| 99啪啪网| 成人婷婷五月| 无码髙清| 国产精品扒开腿做爽爽爽A片唱戏| 亚洲精品成人| www,999日本色| 婷婷丁香六月| 六月婷婷中文字幕| 五月丁香啪啪激情| 久久婷丁香五月| 99在线免费视频| 色婷婷六月丁香综合欲精品| 91ncm视频| 激情五月综合网| 色99亚洲| 丁香88AV五月婷婷| 热久久91| 五月综合影院| 日韩啪啪网| 五月丁香色| 超级碰碰碰91| 色欲天天综合网| 日韩婷婷| 黄色aa观看aaguochan| XX色综合| 丁香开心深爱| 色色色天堂网| 色色五月婷婷| 这里只有精品免费视频在线观看| 亚洲中文字幕AV| 全部老头和老太XXXXX| 五月天综合在线观看| www。五月天激情| 天堂美国久久| 99年操人人爽| 秋霞免费视频| 色色色综合网| 色呦呦美女| 精品人妻久久久| 色色五月丁香婷婷| 婷婷亚洲久久| 欧美激情 日韩无码 婷婷 五月天| 大香蕉九九| 天堂草在线观| 精品99爱免费视频在线观看| 激情无码五月天| 天堂在线婷婷| 亚洲AV日韩在线观看| 99热加勒比| 久久婷婷视频| 久热九九| 色情婷婷| 香蕉综合网| 日韩成人AV在线播放| 久久久精品人妻录| 丁香五月六月激情久久| 激情五月天www| 天天操夜夜爽天天操| 射琪琪| 91国产精品视频播放| 操一操干一干| 亚洲精品视频在线| 中文字幕乱码亚洲精品一区| 国产精品久久久久久久久久| 国产亚洲在线观看| 久久精品99国产精品日本 | 五月丁香拍拍激情综合| 凹凸探花电影| 五月天婷婷激情小说| 婷婷五月天免费小说| 日韩精品999| 婷婷色在线播放| 99久久終合| 97超级免费无码| 婷婷丁香综合网| 丰满老熟妇BBBBB搡BBB| 久久97久久99久久综合欧美| 婷婷综合婷婷| 五月丁香久久丝袜啪啪| 九九婷婷综合| 天天日日人| 99久久久国产大片| 日本特黄aaaaa| 天天爽天天弄| 另类五月激情| 五月婷综合激情| 中文字幕性爱视频| 大香蕉啪啪啪| 开心五月丁香啪| 亚洲AAAA网| 激情网五月婷婷| 国产乱妇乱子伦| 99热99热| 色情久久久| 日日天天干| 99精品热| 亚洲国产网站| 久久视频66| 五月激情综合激情五月| 亚洲欧美一区二区三区爱爱动图 | 亚洲第一第二网站| 久久精品A片777777| 色狠狠色综合久久久绯色aⅴ影视| 五月色情| 激情黄色小说色五月| 五月丁香999| 99re最新地址视频| 久久思思热视频| 婷婷丁香五月在线播放| 婷婷香五月天| 久久伊人大香蕉| 丁香色播五月天| 色综合网综合| 婷婷亚洲综合| www.ywav| 无码色色色色色| 甈吧vv| 天天婷婷色六月| YJLZZJLZZ亚洲乱熟无码| 天天操天天操天天操天天操天天操 | 日日操日日撸| 久久人视频| 99久久久免费| 伊人五月天婷婷| 99热天堂| 97操资源婷婷| 三区激情四射av| 2w在线视频| 91视频综合网| 超碰在线日夜| www.色99| 婷婷丁香激情综合色情| 久操大香蕉| 婷婷六月网| 五月天婷婷丁香社区| 欧美久久网| 色五月av| 97碰碰在线看视频免费| 五月天涩涩| 99热这里只有精品3| 激情五月天婷婷播播久久综合91| 在线成人网站| 婷婷免费视频| www。五月,com| 精品99在线看| 日日夜夜爽| 狠狠色丁香| 国产熟妇乱子伦hd| 婷婷五月天Av| 久婷五月| 国产亚洲精品AAAAAAA片| 婷婷色五月开心五月| 亚洲热综合| 大胆伊人久久| 九九久久综合网站| 99久久9| 日韩无码乱轮| ji'qing'luan'ren'lun| 五月丁香网站| 九九视频这里只有精品| 91九色国产在线| 婷婷的激情五月| 99久久黄色顶级视频| 激情小说婷婷五月| 国产9色在线/日韩| 在线日本www| 婷婷五月天中文字幕.| 91九色精品女同系列| 亚洲 六月 综合| 我要射综合| 人操综合| 丁香五月自拍| www,setingting| 色吧综合网| 男人的天堂婷婷色五月| 超碰人人操在线| 久久综合影院 | 久久伦乱| 久久久久久久久久久久久久人妻视频| 五月五丁香婷婷| 超碰激情网| 五月婷婷中文字幕AV| 一区二区中文字幕| 五月婷婷六月色| 婷婷五月天免费视频在线观看| 日本精品在线噜噜噜| 区美毛片子| 69人人操人人爽| 米奇影视资源婷婷狠狠色激情欧美五月丁香 | 婷婷亚洲丁香五月| 99爽视频| 亚洲免费99| 丁香五月影院| 91Chinese在线| 超碰资源在线| 久九色| 综合久久综合久久| 91viP在线看| 中文字幕成人| 婷丁香久综合| 黃色三级三级三级三级 qixing300.shrkbk.com www.jinbozs.com tianmiaosw.com | AV九九| 丁香九月综合| 天天综合色| 天天干夜夜操A片| 97九色视频| 激情久久久久久久久久| 婷婷色婷婷亚洲成人| a在线观看| 久久杏爱视频| 久久久久五月丁香| 激情六月婷婷| 亚洲第一色色色色| 丁香色情五月综合激情| 色域五月婷婷丁香| 色婷婷五月天天天天天天天天天| 1024人妻无码中文字幕| 五月99久久| 97久久视频| 超碰狠狠操| 超碰AAAAAAV| 免费看欧美成人A片无码| 丁香成人综合| 色欧美影院| 五月天色图| 婷婷五月天无码熟女| 激情五月黄色| 日韩成人无码人妻| 99热骚货| 五月天综合激情网| 日韩av变天就操逼不卡区| 日本操逼九九九九58日本操逼| 99热在线观看99| 97超碰综合| 五月婷婷成人w| 亚洲成人无码免费| 色婷婷亚洲婷婷| 69色色视频| 婷婷午夜精品久久久| 九九热在线视频| 五月丁香人妻| 婷婷五月丁香综合激情小说| 激情五月丁香六月综合AVXXXX| 97人人干人人操| 99色热综合| 毛片新网地| 97在线视频观看| 天天草天天摸| 亚洲射激情| 狠狠色色色| 97视频久久| 婷婷五月丁香成人| 久碰视频| 91色吧网| 欧美碰碰| 五月婷婷视频| 五月激情综合网| 99热在线观看这里只有精品| 99'无码| 色九亚洲| 精品99*| 二色av| 中文成人在线| 婷婷干五月综合在线播放| 久久精品爱爱| 五月丁香久久综合| 超碰93在线观看| 任我干视频在线观看| 五月丁香| 五月花婷婷| 婷婷操久久| 日日操天天| 天天 青草 制服丝袜 在线| 在线99精品| 精品成人在线| 日韩精品无码一区二区| 色婷婷综合视频| 激情久久久久久久久久久| 久久机只有这里精品| 九九这里只有精品在线视频| 99热老司机| 亚洲免费av观看| 伊人九九68| 免费视频WWW在线观看网站| 激情AV| 五月天激情小说| 五月婷婷 激情按摩| 色婷婷在线视频久| 日日夜夜天天| 天天插天天插天天插天天插| 久久五月综合| 色欲一区二区三区精品A片| 天天久久综合| 26uuu另类| 五月婷婷婷婷婷婷艺术| 草婷婷在线| 99 这里只有精品| AV 3P| 天天草狠狠擦| 丁香五月骚喷水视频| 琪琪理论片| 久久这里在精品视频| 久草大| 色吧五月| 在线VA视频| 26UUU亚洲欧美| 丁香五月天婷婷久久综合| 亚洲精品乱码久久久久久综合| 六月婷婷色综合| 亚洲人妻av| 久久精彩视频| 日韩色色色色| 影音先锋91在线资源站| 狠狠色丁香久久| 91一起操| 色综合综合色| 碰99在线| 玖玖色资源| 亚洲婷婷91丁香| 操一区| 婷婷第六色| xx综合网| 韩国激情五月天综合网| www.色情五月天.com| 毛片蕉地一二| 色婷婷小说| 婷婷综合激情五月中文字幕| 97韩国久久电影院| 亚洲综合在线播放| 国产精品久久久久久久久久 | 久久A V无码视频| 亚洲色情网站| 丁香六月激情综合| 操B无码视频国语| 婷婷综合av| 久久九九网| 99综合视频一体| 久久996re热这里只有精品无码| 婷婷五月天资源| 色色无码| 久久久久久久久久久久久久久久久精典| 26uuu国自产精品| 五月天啪啪啪| 丁香六月婷婷色XXXXX| 九九热最新| 31色区视频免费看| 色色网站免费在线视频| 黄色AAAAA| 色99网| 日韩中文字幕| 99A级片| 婷婷五月天视频在线观看| 日本成人噜噜噜| 婷婷99狠狠| 丁香社92视频| 啪啪干伊人婷婷| 狠狠色五月天| 久婷婷视平| 丁香五月亚洲激情婷婷射| 噜噜色com| 丁香六月啪啪| 久久HD| 丁香 婷婷 亚洲 熟女| 99热这里只有精品2| 久久资源综合| 青草热视频这里只有精品| 亚洲中文字幕网| 红桃91人妻爽人妻爽| 综合五月草| 欧洲亚洲午夜| 丁香色五月AV在线| 能直接看的AV网站| 亚洲精品V天堂中文字幕| 久草五月天| 久久机热思思热| 综合激情婷婷| 欧美日韩成人在线网| 婷婷国产综合| 久操人妻| 六月丁香大香蕉| 狠狠草狠狠草| 国产视频色色色色色色色| 久久丁香五月| 人人操人| av中文网站| 久久99最新地址| 激情 五月 婷婷 丁香| 色六月婷婷| 午夜激情久久| 伊人啪啪网| 嫩草免费视频| 五月丁香狠狠| 色综合色综合色综合| 韩国婷婷丁香五月| 亚洲精品久久久无码| 激情五月丁香五月| 婷婷99狠狠| 九色自拍| 91 九色 熟女| 五月丁香综合中文| WWW,五月| 丁香狠狠操| 综合九九| 五月天婷婷丁香人人操91| 婷婷五月天成人网站| 91精品国产综合久久久不卡电影| 婷婷瑟五月天久久综合| 99年操人人爽| 深爱五月日韩| 丁香五月综合久久| www.黄色片-久久成人国产精品在线播放-999AV| www久视频com| 深爱激情网五月天| 在线观看996精品| 99热99美国在线观看| 久99久视频精品| 婷五月天天| 色五月天成人| 99热这里只有精品1025| 五月丁香婷婷啪啪| 亚洲另类婷婷五月综合| 婷婷狠狠爱| 深爱婷婷网| 另类视屏| 五月天激情小说| 丁香五月天在线直播观看| 亚洲操操操| 伊人婷婷色| 91久久人人操| 五月天激情婷婷| 91久久久久久久久18| 开心激情网在线| 停停色综合伊人| 五月婷婷色欲| 激情综合网激情五月天| 五月婷俺去也| 久久与婷婷| 毛片九九九九九九九九18| 吉澤明步Av一區二區| 熟女五月天久久综合| 六月婷婷av| 午夜微拍福利| 日韩操逼大片| 天天操,天天插| 97精品综合久久内射| 婷婷永久在线| 99热777| 色婷婷操逼网| 色情婷婷| 激情婷婷啪啪| 九九性爱网| 丁香激情网| www.henhengan| 婷婷综合| 极品九九九九九九| 极品少妇XXXX精品少妇偷拍 | 综合色天天| 久久国产高清| 精品人妻伦九区久久AAA片| 色五月激情| 天天日天天狠狠操| 超碰人人操| 久久caop| 99色热| 婷婷九月丁香| 99久久思思| 五月婷亚洲精品AV天堂| 97操男人的天堂| 五月丁香综合激情| 大香蕉婷婷色| 久久99激情| 色婷婷a三区麻| 五月丁香六月在线| 成 久久| 成人网站av免费网站推荐| 国产SUV精品一区二区883| 婷婷成人视频| 99re鈥哸鈥唙| 久久在线人妻| 五月激情另类| 亚洲色婷婷色| 九九综合久久| 外国碰视频网站97| 操人精品| 狠狠色综合网站久久久久| 日韩av手机在线观看| 99热手机在线精品| 超碰人人在线| 五月丁香婷中文| 五月丁香影视| 国产日韩欧美| 久久久久99精品成人片| www.五月天性.com| 色五月天天| 久久激情综合| 五月丁香综合网色欲| 五月激情视频| www.超碰| 色五月综合婷婷久久综合婷婷久久综合婷婷久久综合婷婷久久 | 婷婷五月激情综合啪啪| 欧美电影在线播放| 成人精品视频99在线观看免费| av大香蕉| 久久99激情| 99人人操| 九九色综合网| 色婷婷欧美| 狠狠艹狠狠艹| 桃色伊人在线| wwwC0maV五月花| 婷婷色五月综合| 亚洲成人噜噜| 丁香五月天啪啪| www.91九色| 九九综合精品| 97人人超| 激情综合视频| 亚洲精品网址| 96丁香婷婷九月蜜桃综合久久| 又大又粗九一在线| 婷婷综合在线网| 丁香婷婷综合色五月激情国产基地| 亚洲视频另类| 9l视频自拍九色9l视频在线观看| 五月丁香婷中文| 97色婷婷| AV国产有码| 婷婷五月成人系列| 天堂中文国产| 成人在线视频网| 成 人片 黄 色 大 片| 666555。COm毛片| 中文字幕日产A片在线看| 人妻丰满精品一区二区A片| 热99色| 99ER热精品视频| 婷婷婷五月香蕉| 热五月婷婷| 五月丁香婷婷啪啪| www.伊人天堂偷偷婷婷| 亚洲综合激情五月久久| 婷婷五月成人| 欧美六月婷婷| 开心五月六月婷婷| 99亚州综合精品成人网| 久久人操| 99热这里只有精品99| 91碰碰视频在线观看| 九九热在线99| 丁香五月AV综合激情| 另类五月激情| 丁香五月影院| 99久久综合狠狠综合久久| 丁香五月欧美色综合| 99极品视频| 五月婷婷激情五月| 国产成人片| 五月天婷婷社区久久综合| 91色在线 | 日韩| 99热成人精品| WWW.17C亚洲精品| 丁香五月花婷婷开心| 成 人 色 色| 五月激情婷婷丁香| 免费色婷婷| 玖玖综合色| 黄色笑话深爱激情网丁香五月婷婷啪啪啪啪啪 | 97碰在线| 亚洲一区二区色图-亚洲精品国产精品乱码-成人AV | 婷婷五月天堂| 91丨九色丨老熟女激情| WWW.激情| 色婷视频| 狠狠穞A片一區二區三區| 1024在线观看免费视频| 婷婷色五月天综合网| www99精品| 中文字幕高清av| 亚洲色欲AAAAAA| 丁香五月激情综合| www.色色色com| 欧美在线视频9| 丁香色播五月天| 9有码中文| 免费日本aⅴ中文字幕| 精品视频99看在线视频| 99久在线精品99re8热| 免费成片在线观看| 五月综合影院| 91操黄| 5月丁香综合网| 26uuu色五月| 五月婷婷视频| 99A片| 久草热8精品视频在线观看 | 狠狠色婷婷7| 思思99热| 色色五月天丁香婷婷| 99热这里只有精品最新| 99碰网站| 久久人妻人人槡| 六月婷婷五月丁香| 丁香久月| 99热在线观看| 丁香六月综合| 狠狠插日日干撸| 婷婷五月综合啪| 97人妻碰碰碰久久香蕉| 91肏| 天天色凹凸| 狠狠色官网| 色色色地址| 影音先锋91网站在线观看| 亚洲免费99| 九九大香视频| 思思久久99| 婷色五月天| 羞羞嫩草视频| 天天天天天天天操| 婷婷97C| 99成人小视频| 99 福利 导航| 激情 婷婷 丁香五月天| 丁香五月在线观看| 99在线视频观看| www.五月婷婷| 秋霞九九无码| 丁香六月婷婷色播| 伊人婷婷大香蕉| 丁香99| 五月婷婷综合潮喷| 一区操| 97影院一级片| 日日操夜夜操狠狠操| 五月激情婷婷图片基地| 九一99| 亚洲激情六月丁香| 五月婷婷在线视频观看| 日韩高清成人| 九热免费视频| 亚洲婷婷丁香五月天激情小说| 91操人| 五月丁香六月停停| 玖玖激情网| 人人爽天天爽| 色六月天| 九九热视频99| 欧美性做爰大片免费看办公室| 久久婷婷婷婷伊人| 五月婷婷六月丁香首页| www狠狠| 色高清无码视频| 精品一区二区三区三区| 日日噜噜夜夜狠狠久久丁香六月| 成人羞羞啪啪 全 视频| 99热这里只有精品2| 综合色综合| 在线观看av网站| 五月色综合| 色五月婷婷久久| 色色色综合网| 色五月情| 婷婷97碰碰| 五月色情网| 爆乳熟女一区二区三区爆乳| 日韩啪| 99热只有精品综合| 丁香五月婷婷欧美性爱| 日韩在线视频中文字幕| 五月婷婷综合色拍| www.五月丁香av| 久久9精品| 五月天婷婷色在线视频免费观看 | 五月天激情综合首页| 九九久久久综合| xxxx五月| 丁香五月黄色| 国自产拍偷拍精品啪啪一区二区| 五月天综合色| 五月综合777| 久久总和99| 噢美99| 色五月婷婷在线| 99热99精品| 99久久精品网| 国产精品久久99| 色综合偷拍| 九色在线五月婷婷网址| 九九五月天| 五月天亭亭俺也| 六月丁香激情最新更新| 久久新地址| 啪啪色激情五月天| 精品国产AV色一区二区深夜久久| www.狠狠艹| 深爱激情九九五月天 | 69凹凸成人综合网| 丁香六月婷婷综合| 色五月激情| 婷婷五月天激情小说网站| 99草视频在线观看| 99re最新地址| 99久久九九| 日韩成人无码| 五月停停直播| 九九热99视频在线| 99久久亚洲精品视频| 99操无码视频观看| 亚洲Va成人| 伊人婷婷五月天| 色五月丁香五月五月婷婷| 久久9精品| 色五月婷婷av| 991国产精选视频在线播放下载| 久久久27操| CAoub青青超碰| 成人在线99| 再次出发二| 激情五月天色色色| 久久丁香综合精品综合| 欧美S码亚洲码精品M码| 九九精品热| 999热这里只有精品| 国产成人av在线播放| 超碰成人电影| 亚洲另类电影| 99精品在线观看| 大香蕉综合在线| 婷婷五月花西瓜| 五月丁香影视| 激情99| 国产亚洲色婷婷久久99精品91| 久久五月网| 天天操夜夜操| 激情六月天| 日本五月婷| 国产精品人成A片一区二区| 丁香六月天| 亚洲天堂制| 综合亚洲AV| 91精品无码| 久久这里都是精品免费| 午夜不卡成人一区二区| 五月丁香偷拍| 九九久久综合| 中文字幕1区2区。| 1024人妻无码中文字幕| 久久综合婷婷五月| 亚洲五月婷| 色高清无码视频| 99热这里只有精品在线播放 | 综合逼五月激情婷婷| 日本va网站| 五月丁香黄色| 影音先锋91资源站| 中文字幕无码人妻少妇免费视频| 日韩AV中文在线观看| 九九久久玖玖爱| 91九色国产熟女| 五月色情婷婷| 色综合网综合| 婷婷九月在线| 久操热| 激情AV| 色色色在线观看| 五月婷婷六月少妇激情| 婷婷久久五月天亚洲欧美国产日韩在线观看| 久久天堂加勒比| 9 1大香蕉| 99色色最新视频| 天天 青草 制服丝袜 在线| 国产操逼网站| 六月婷基地| 欧美经典片免费观看大全| 香蕉曰比| 丁香五月日韩| 五月婷免费视频| 无码四色色色| 深爱1激情网| a久久| 五月精品99综合| 在线播放成人网站| 久久99成人性爱高清视频| 久久99网站| 99亚洲精品综合在线| 99热黄| 久青青久| 岛国av电影网站| 婷婷的99视频网站| 天天天干夜夜夜操| 99综合99| 91超碰人人操| WwW天天干| 玖玖综合网| 丁香9月婷婷| 五月丁香日本在线视频观看| 九九99视频| 中文字幕按摩做爰| 996精品热视频| xfplayav在线| 99色性爰网络| 综合爱久久| 五月丁香婷婷久久| 色J香五月天| 国产成人综合亚洲| 99久久99久久综合| 26uuu欧美| 婷婷综合九色伊人| 久久99草五月婷婷| 五月开心六月婷婷在线播放网站| 激情综合网五月| 日本三级日本黄色| 激情床戏| 狠狠插狠狠插| 激情五月婷婷网| 激情婷婷五月| 91丨九色丨高潮丰满日本| 91操黄| 深爱激情小说五月婷婷| 99操视频| 九九热在线99| 欧美性爱中文字幕| 一级黄色操B| 婷婷五月天狠狠| 97色在线视频| 99啪啪网| 另类激情中文| 欧美久久久久久久久中文字幕| 操91| 亚洲激情AV| 91在线观看九区| 午夜精品777| 五月激情综合网| 亚洲欧洲99| 亚洲综合激情五月久久| 色欲天天综合| 欧美色99| 婷婷免费无马| 婷婷五月电影| 综合久久久| 婷婷狠狠18禁久久| 99久操| 97热在线精品| 日韩人妻无码精品| 亚洲AV日韩无码| 任我鲁这里有精品视频| 国产成人AV在线播放| 欧美日韩色色| 男人天堂亚洲综合| 久久久宗合视频88| 成人版视频在线观看| 婷色五月| 快乐婷婷五月天| 激情第四色| 综合久久丁香婷婷,五月婷婷六月丁香,开心激情综合网,六月丁香在线观看,婷婷丁 | 激情久久天天| 99热只有| 天天爽天天弄| 五月婷婷六月色| 婷婷综合网在线| 六月婷综合| 婷婷操婷婷干婷婷射| 涩综合网| www.婷婷.com| 少妇人妻人伦A片| 日本久久天堂| www久| 丁香婷婷五月综合影院| 欧美三级巜人妻互换| 九九热这里只有精品一| 婷婷伊人综合| 婷婷王月天影院| av第一二区| 99爱在线视频| 婷婷五月丁香五月丁香| seav天堂| 五月天色区| 亚洲第一影院高清无码网站| 五月天综合网| 婷婷五月天激情在线观看 | 大香蕉婷婷| 九九久久网| 免费成片在线观看| 狠狠做深爱婷婷久久综合一区| 色丁香五月婷婷婷| 亚洲综合色婷婷| 激情五月婷婷丁香六月| 激情综合网激情五月欧美| 大香网伊人久久综合| 色很久综合| 五月丁香亚洲婷婷| 亚洲天堂99| 五月天综合| 丁香婷婷色六月| 五月丁香色综合| 五月天社区| www、色色色| 99热日韩| 99久久婷婷综合| 亚洲AV成人在线| 丁香五月开心婷婷| 色婷婷AAA| 久久久久9久无码视频| 激情六月一二| 综合激情开心五月| 大香蕉五月天婷婷| 久久婷婷五月综合色丁香| 怡红院院久久| 久操激情| 9久热在线精品| 五月天色综合| 色婷婷www| 婷婷六月爽| 亚洲精品成人| 97五月天| 9久久婷婷国产综合精品性色| 五月丁香猫咪久久婷婷综合视频激情四射网入口 | 九九久久高清| 亚洲综合五月天婷婷丁香| 热99这就是精品视频| 婷婷欧美色| 午夜成人网站在线观看| 超碰在线观看三级片| 五月天丁香网| 婷婷五月天堂| 丁香六月毛片| 久久激情五月天| 日逼影音先锋AV男人资源站| 五月丁香六月婷| 色婷婷狠狠干芒果TV| 99精品视频在线6| 成人噜噜网| 色碰碰| 婷婷丁香黄色| 国产精品久久久久久喷浆| 五月婷婷成人| 久久婷婷内射| 久久激情五月婷婷| 婷婷色狠狠| 五月婷婷精品视频| 蜘蛛女免费观看完整版高清电影 | 婷婷五月成人| 色五月婷婷综合| 色婷婷丁香| 伊人深爱综合| 只有精品在线观看| 97碰碰在线看视频免费| 色噜噜97视频在线观看| 日韩AV一区二区三区| 日本全黄一级999| 免费看欧美成人A片无码| AV九九| 999热在线视频| 久热69| 欧美大道不卡| 天天做天天爱天天爽| 日本色色色| 九九视频这里有精品| 亚洲另类婷婷五月丁香在线播放| 九九re精品视频在线观看| www色综合亚洲92| 婷婷WWW久久| av免费在线网站| www.久久久久久久久久.com| 亚洲激情四谢| 97日本在线播放| 影音先锋美国A| 色欲婷婷五月天| 色区久久| 夜精品无码A片一区二区蜜桃| 激情综合五月天| 色九网| 色五月在线观看| 色五月婷婷基地| 120分钟婬片免费看| 成人做爰高潮A片免费视频| 婷婷五月天免费99| 精品综合网在线| 91综合在线观看| 99啪在线| 99在线视频播放| 亚洲精品国产成人AV在线| www色色com| 成人电影在线免费试看| 深爱五月激情综合| 五月丁香六月婷婷中文版| 天天久久综合| 夜丁香五月婷婷| 18av天堂| 五月天综合色| 激情色播| 色五月在线| 婷婷成人五月天成人文学小说| www.久久av.com| 天天天在线观看| 69色婷婷| 婷婷五月天丁香花| 97在线观看| 五月天综合色| 色狠狠色综合久久久绯色AⅤ影视| 中文字幕不卡+婷婷五月| 亚洲区,视频区,视频区免费| 激情综合网址| 5月丁香婷婷| 五月天婷综合| 丁香五月成人| 婷婷大香焦| 91精品又长又大又粗又爽又猛| 超碰人人色| 亚洲激情97五月天| 成人网在线视频| 国产99热| 九色视频入口91| 久久精品熟女亚洲AV麻豆| 日操夜操天天操不卡| 91色色色| 婷婷五月丁香激情色情| 天天狠狠夜夜狠狠2023| 久操操| 丁香六月婷婷基地| 狠狠色婷婷| 五月婷婷婷婷婷| 51XX午夜影福利| 成人va在线| 五月开心婷婷网| 夜夜骑天天玩天天日| 亚洲激情97五月天| 99热九九热| 亚洲愉拍99热成人精品| 东京热人妻一区二区三区在线| 国产亚洲成AV人片在线观黄桃| 婷婷五月天激情网| 六月丁香久久| 少妇2做爰HD韩国电影| 99久久婷| 天天影院色| 色情丁香五月婷婷精品| 婷婷久久五月| 日本色色影院| 99热免费精品热久久66| 91精品综合久久久久久五月丁香| 久热伊人在91| 日 日干 日日做| 精品一二三区久久AAA片| 麻豆精品| 国产欧美精品AAAAAA片| 啪啪啪大香蕉| 99精品国产热久久91色欲| 国产精品成人AV在线| 色婷婷av在线观看| 狠狠狠狠狠狠草| 婷婷五月六| 天天综合色| 丁香五月网| 九九精品视频在线6| 九九av| 婷五月天六| 婷婷久久六月费| 狠狠狠色激情综合适合| 人妻视频一区而且二区| 婷婷六月丁香1| 五月激情婷婷丁香| 久久婷婷五月天激情四射| 亚洲天天| 少妇出轨做爰高潮A片| 99久久亚洲精品视频| 欧美天天干天天草| 五月丁香婷婷色啪| 久香草视频在线观看| 香蕉婷婷| WWW.五月天9999| 99精彩视频| 婷婷香蕉| 综合激情站| 精品香蕉99久久久久网站| 亚洲一个色| 婷婷色综合| 五月综合亚洲婷婷| 日本色婷婷| 呦呦v线| 激情色播| 色人久久|