Baz如何利用Amazon Bedrock AgentCore提升AI程式碼審查準確性
本文介紹了Baz如何使用Amazon Bedrock和Amazon Bedrock AgentCore構建其Spec Review代理,透過自動化程式碼審查流程,結合Figma設計規格和Jira功能需求,實現端到端的驗證,減少缺陷並加快合併速度。
程式碼審查長期以來一直是手動且低效的,因為程式碼與產品之間存在固有的脫節。開發人員可以審查程式碼是否編譯透過並正常工作,但無法驗證它是否滿足了所有功能和設計要求。過去,QA團隊需要花費數小時手動點選預覽環境,以確保功能按預期表現,並且需要更多時間來使實現與設計意圖保持一致。這種手動驗證拖慢了交付速度,引入了不一致,並增加了迴歸的可能性。隨著開發團隊速度的提升,Baz希望自動化這一缺失的驗證層,將意圖、行為和實現整合到一個審查工作流中。
本文介紹了Baz如何利用Amazon Bedrock和Amazon Bedrock AgentCore構建其Spec Review代理。我們將涵蓋架構決策、實現細節以及他們透過利用這些AWS服務自動化程式碼審查流程所取得的業務成果。
Baz試圖解決的關鍵問題
Baz旨在超越傳統的僅差異審查,轉向驗證功能是否滿足預期的產品需求。早期,Baz發現團隊在審查時往往關注語法而非行為,導致諸如“它工作嗎?”、“它符合規格嗎?”、“它按預期表現嗎?”等關鍵問題被推遲到後期手動回答。程式碼與產品意圖之間的這種差距拖慢了團隊速度,造成了設計不一致,並且嚴重依賴未文件化的QA內部知識。Baz透過構建能夠評估程式碼以及實際交付體驗的代理來彌補這一差距。
解決方案概述
Baz Spec Review代理編排了一個複雜的多階段驗證流程:在觸發(透過webhook或手動呼叫)時,它併發查詢Figma(透過MCP)和Jira(透過REST API)以聚合全面的需求工件,涵蓋技術、產品和設計規格。然後,系統生成獨立的子代理工作者(每個需求一個),負責驗證該需求。此子代理透過原始碼倉庫進行程式碼檢查,並結合使用Amazon Bedrock AgentCore瀏覽器工具進行動態執行時驗證。子代理與臨時環境互動,進行DOM檢查、事件模擬和視覺測試,以確保部署的實現與Figma設計規範和功能需求相匹配,透過AWS原生編排實現從規格到實現生命週期的端到端驗證。
下圖展示了Spec Reviewer架構,這是Baz和AWS的聯合解決方案,能夠在程式碼審查工作流中自動進行設計和產品驗證。整個代理流程由透過Amazon Bedrock提供服務的大型語言模型驅動,為整個管道提供可擴充套件且安全的AI推理。流程始於GitHub webhook在新Pull Request上觸發,將流量透過Application Load Balancer (ALB)和Network Load Balancer (NLB)路由到Amazon EKS叢集。Baz Platform作為中央編排層,協調多代理審查過程。
在Amazon EKS叢集內,Baz的Spec Review代理將驗證工作流分解為專門的子代理。Specification Subagent由Amazon Bedrock驅動,攝取來自Figma的視覺規格和來自Jira的功能規格,然後將其分解為離散的需求——視覺需求(如間距、顏色和元件層次結構)和功能需求(如驗收標準和使用者故事意圖)。
Implementation Subagents是此架構的核心。這些由Amazon Bedrock驅動的代理根據提取的規格進行深度程式碼分析,但它們的獨特之處在於與Amazon Bedrock AgentCore瀏覽器使用能力的整合。Implementation Subagents不僅依賴靜態程式碼分析,還可以在即時預覽環境中渲染實際實現,並視覺驗證UI是否與預期的Figma設計匹配,功能是否按Jira中指定的表現執行。這種程式碼理解與基於瀏覽器的驗證相結合,使Baz能夠捕獲傳統程式碼審查工具完全忽略的差異。
報告生成器將來自所有子代理的發現整合成一份連貫的審查摘要。審查完成後,發現會被分發到適當的渠道:評論直接釋出到GitHub PR,通知傳送到Slack以便團隊可見性,識別出的問題可以自動連結回Jira進行跟蹤和解決。
Baz如何使用Amazon Bedrock AgentCore應對這些挑戰
Amazon Bedrock AgentCore成為構建能夠驗證真實產品行為的AI程式碼審查員的基礎。其安全、隔離、無伺服器的瀏覽器會話允許Spec Reviewer代理開啟預覽環境,瀏覽功能,並像使用者一樣檢查UI行為。透過結合Amazon Bedrock AgentCore執行時(執行與工單系統整合的MCP伺服器)、Amazon Bedrock AgentCore瀏覽器工具以及輕量級自動化和上下文模組,Baz Reviewer可以比較即時行為和程式碼與工單和設計規格,而無需任何瀏覽器基礎設施或自定義編排。Amazon Bedrock AgentCore的隔離、沙箱和可觀測性幫助Baz擴充套件多個MCP伺服器,並允許代理安全可靠地執行全棧驗證。
利用Amazon Bedrock實現智慧程式碼審查
Amazon Bedrock驅動Spec Reviewer代理背後的推理和決策層,使其能夠解釋需求、理解設計意圖,並評估在瀏覽器中觀察到的行為的相關性。透過使用Amazon Bedrock託管基礎模型,代理可以綜合規格上下文,分析UI狀態,並生成關於功能是否滿足期望的精確、可操作的結論。Amazon Bedrock為生產級代理工作流提供了所需的可靠性、安全性和可擴充套件性,允許Baz將複雜的解釋和驗證邏輯解除安裝到高效能LLM,同時將瀏覽器執行隔離在AgentCore內。這種組合使得審查員能夠彌合意圖與實際構建之間的差距。
結論
Baz Spec Review代理展示了Amazon Bedrock和Amazon Bedrock AgentCore如何使組織能夠自動化以前需要大量手動工作的產品驗證工作流。透過利用Amazon Bedrock基礎模型進行需求解釋和決策,結合AgentCore的安全瀏覽器自動化能力,Baz建立了一個在整個開發生命週期中驗證實現是否符合規格的解決方案,將報告的缺陷減少多達50%,合併時間縮短30-70%。
採用Spec Review的客戶報告稱,手動產品驗證工作顯著減少,功能驗證提前到開發週期中,並在Pull Request時自動執行。團隊報告審查更快,迴歸更少,並且在合併前對變更符合需求的信心更高。