習(xí))
1、核心思路把一次性完成的編程任務(wù)拆成“理解需求—設(shè)計(jì)—分模塊實(shí)現(xiàn)—測(cè)試—聯(lián)調(diào)—修復(fù)”的連續(xù)流程流程總覽閱讀 README - 需求總結(jié)與任務(wù)優(yōu)先級(jí)劃分 - 按模塊分別開發(fā)與單元測(cè)試 - 整體聯(lián)調(diào) - 根據(jù)bug進(jìn)行修復(fù)2、具體流程2.1 閱讀readme需求總結(jié)與任務(wù)劃分先讓AI閱讀README輸出題目目標(biāo)和最終交付物輸入、輸出以及約束條件已有代碼結(jié)構(gòu)和可復(fù)用部分運(yùn)行方式、測(cè)試方式和驗(yàn)收標(biāo)準(zhǔn)不明確或存在風(fēng)險(xiǎn)的地方然后按優(yōu)先級(jí)拆分需求核心任務(wù)不完成就無(wú)法通過(guò)主流程的基礎(chǔ)能力重要任務(wù)影響主要功能完整性的拓展能力優(yōu)化任務(wù)邊界增強(qiáng)、代碼質(zhì)量、性能和體驗(yàn)優(yōu)化先保證核心任務(wù)在根據(jù)時(shí)間處理任務(wù)二和任務(wù)三避免一開始陷入細(xì)節(jié)角色資深系統(tǒng)架構(gòu)師。 任務(wù)閱讀項(xiàng)目根目錄的 README.md 和現(xiàn)有代碼結(jié)構(gòu)不要寫任何代碼。 輸出要求嚴(yán)格按以下格式輸出到 problem.md 1. 目標(biāo)與交付物用一句話說(shuō)清最終產(chǎn)出。 2. 輸入/輸出/約束明確數(shù)據(jù)格式、邊界值如最大長(zhǎng)度、運(yùn)行環(huán)境限制。 3. 現(xiàn)有資產(chǎn)列出 utils/ 或 common/ 中可復(fù)用的函數(shù)及接口。 4. 運(yùn)行與驗(yàn)收啟動(dòng)命令、測(cè)試命令、評(píng)分標(biāo)準(zhǔn)如通過(guò)率要求。 5. 風(fēng)險(xiǎn)與澄清點(diǎn)凡是描述模糊的地方必須標(biāo)記 [待確認(rèn)]嚴(yán)禁假設(shè)。 完成后按 MoSCoW 原則拆分需求 - P0 核心主流程必須打通的基礎(chǔ)能力。 - P1 重要錯(cuò)誤重試、邊界處理等完善功能。 - P2 優(yōu)化代碼優(yōu)雅性、日志、性能微調(diào)。2.2 設(shè)計(jì)文檔實(shí)現(xiàn)路徑寫代碼前讓AI 生成并確認(rèn)設(shè)計(jì)文檔至少包括總體方案和技術(shù)選型模塊拆分和目錄結(jié)構(gòu)每個(gè)模塊的職責(zé)和依賴關(guān)系類、函數(shù)、接口/API 設(shè)計(jì)數(shù)據(jù)結(jié)構(gòu)、狀態(tài)流轉(zhuǎn)和異常處理開發(fā)順序與每一步的驗(yàn)收標(biāo)準(zhǔn)測(cè)試策略和關(guān)鍵測(cè)試場(chǎng)景明確要求不同職責(zé)拆分到不同的python文件中不要把所有邏輯寫在一個(gè)文件里角色Python 技術(shù)專家追求簡(jiǎn)潔高效的工程結(jié)構(gòu)。 任務(wù)基于 problem.md 設(shè)計(jì)實(shí)現(xiàn)方案要求優(yōu)先考慮穩(wěn)定交付而不是最復(fù)雜高端輸出到 task.md。 硬性條件方案至少包括 1、總體方案和技術(shù)選型 2、模塊拆分和目錄結(jié)構(gòu) 3、每個(gè)模塊的職責(zé)和依賴關(guān)系 4、類、函數(shù)、接口設(shè)計(jì) 5、數(shù)據(jù)結(jié)構(gòu)、狀態(tài)流轉(zhuǎn)和異常處理 6、開發(fā)順序和每一步的驗(yàn)收標(biāo)準(zhǔn) 7、測(cè)試策略和關(guān)鍵測(cè)試場(chǎng)景2.3 每個(gè)模塊單獨(dú)開新會(huì)話開發(fā)一次只處理一個(gè)模塊并把設(shè)計(jì)文檔中對(duì)應(yīng)的內(nèi)容提供給AI說(shuō)明當(dāng)前模塊的目標(biāo)、輸入輸出和接口約束按設(shè)計(jì)實(shí)現(xiàn)代碼保持與其他模塊的接口一致同步編寫該模塊的單元測(cè)試和基礎(chǔ)測(cè)試運(yùn)行格式檢查、類型檢測(cè)和測(cè)試記錄結(jié)果新會(huì)話有助于減少上下文干擾角色高級(jí) Python 工程師追求一次性交付高質(zhì)量代碼。 任務(wù)完成模塊 [模塊名] 的全部開發(fā)代碼 單元測(cè)試僅輸出最終產(chǎn)物。 請(qǐng)按以下內(nèi)部工作流自行執(zhí)行 1. 先根據(jù) task.md 定義該模塊的 Schema 和自定義異常類。 2. 實(shí)現(xiàn)主路徑邏輯以及必要的異常捕獲。 3. 編寫對(duì)應(yīng)的 pytest 單元測(cè)試覆蓋正常場(chǎng)景和至少 2 個(gè)邊界異常場(chǎng)景。 4. 在輸出前在腦海中模擬運(yùn)行測(cè)試確保主用例邏輯無(wú)誤。 輸出格式 - 第一部分實(shí)現(xiàn)代碼例如 src/processors/calculator.py - 第二部分測(cè)試代碼例如 tests/test_calculator.py - 第三部分簡(jiǎn)要的自檢說(shuō)明標(biāo)注已覆蓋了哪些關(guān)鍵場(chǎng)景 約束嚴(yán)禁在輸出中詢問“是否繼續(xù)”或“請(qǐng)確認(rèn)”直接給出最終完整代碼。2.4 當(dāng)前模塊通過(guò)測(cè)試再進(jìn)入下一個(gè)模塊先確認(rèn)當(dāng)前模塊的主流程和邊界條件測(cè)試失敗時(shí)優(yōu)先定位根本原因不要直接堆疊補(bǔ)丁修復(fù)后重新運(yùn)行相關(guān)測(cè)試確保沒有引入回歸更新設(shè)計(jì)文檔和接口說(shuō)明保持文檔與代碼同步2.5 全部完成后整體聯(lián)調(diào)新開會(huì)話進(jìn)行整體檢查模塊之間的接口、參數(shù)和返回值是否一致主流程能否從入口順利跑通配置、文件路徑和環(huán)境變量是否正確異常處理、日志和資源釋放是否完整基礎(chǔ)測(cè)試、集成測(cè)試是否通過(guò)是否存在重復(fù)代碼、單文件過(guò)大或未實(shí)現(xiàn)的TODO聯(lián)調(diào)階段主要驗(yàn)證“模塊組合后能不能工作”而不是重新設(shè)計(jì)全部代碼角色測(cè)試架構(gòu)師。 任務(wù)檢查所有模塊的裝配與端到端流程。 檢查清單請(qǐng)逐項(xiàng)驗(yàn)證并輸出結(jié)果 1. 入口檢查main.py 能否正確調(diào)用 orchestrator 或 core.process() 2. 依賴檢查是否存在循環(huán) import模塊間是否通過(guò)參數(shù)傳值而非全局變量 3. 資源釋放打開的文件流是否使用了 with 上下文管理器 4. 冒煙測(cè)試用題目提供的示例數(shù)據(jù)跑一遍完整流程記錄輸出是否一致。 5. 代碼健康度是否有未使用的 import、硬編碼的絕對(duì)路徑、超過(guò) 100 行的巨型函數(shù)2.6 提交判分提交后看判分結(jié)果把失敗測(cè)試點(diǎn)、錯(cuò)誤信息和復(fù)現(xiàn)條件原樣給AI讓AI解釋失敗原因和涉及的代碼路徑要求給最小范圍的修復(fù)方案修復(fù)后運(yùn)行失敗用例及相關(guān)回歸測(cè)試再次提交重復(fù)驗(yàn)證直到核心測(cè)試通過(guò)不要只根據(jù)測(cè)試每次猜測(cè)問題要結(jié)合完整報(bào)錯(cuò)、輸入輸出和調(diào)用鏈分析角色高級(jí)故障排查專家。 任務(wù)針對(duì)評(píng)測(cè)機(jī)返回的失敗點(diǎn)進(jìn)行根因分析與修復(fù)。 請(qǐng)粘貼以下信息 - 測(cè)試用例輸入[粘貼數(shù)據(jù)] - 期望輸出[粘貼預(yù)期] - 實(shí)際輸出與錯(cuò)誤棧[粘貼完整報(bào)錯(cuò)] 分析要求 1. 先解釋根本原因是數(shù)據(jù)類型錯(cuò)了、索引越界、還是浮點(diǎn)數(shù)精度問題。 2. 給出最小改動(dòng)的修復(fù)代碼并說(shuō)明該改動(dòng)為什么不會(huì)破壞其他 P0 功能。 3. 將該失敗用例補(bǔ)充到對(duì)應(yīng)的單元測(cè)試中防止回歸。別人實(shí)際情況使用的提示詞 1、我們可以看到提交后判題系統(tǒng)一共會(huì)檢測(cè)59個(gè)用例你目前自測(cè)的只有20多 而且判題系統(tǒng)的復(fù)雜用例的18個(gè)目前只過(guò)了一個(gè)說(shuō)明現(xiàn)在在復(fù)雜場(chǎng)景的邏輯下遠(yuǎn)遠(yuǎn)不足 你再根據(jù) README.md 檢查一下 sample_testcases/run_sample_testcases.py 有什么完善的用例 2、你根據(jù)這個(gè)log首先檢查一下是腳本 sample_testcases/run_sample_testcases.py 和 readme.md 不一致的問題 還是確實(shí) main.py 里實(shí)現(xiàn)存在問題