FailTrace

io.github.LBarimi由 GitHub 帳號 LBarimi 發布v1.5.0更新於 Oct 24, 2026

Debugging experiments for coding agents: reproduce failures and verify fixes with test evidence.

已驗證STDIO僅桌面開發者工具安全與監控

概覽

AI 產生的概覽

FailTrace 是本地 MCP 伺服器,協助編碼代理重現偶發測試失敗、儲存基準,並以測試證據驗證修正方案。

可以做什麼
擷取失敗的測試或失敗訊息並重複執行,建立有上限的基準,並在多次試驗間保留失敗特徵。比對正常與失敗試驗,在 Git 歷史中找出引入失敗的變更,並最小化重現所需的輸入。針對已儲存的基準驗證修補,區分已觀察到、正常樣本與不確定的結果。無需重跑指令即可讀取已儲存的試驗與日誌頁面,並把一次調查打包成可重播的組合。
適用情境
適用於測試偶發失敗、代理即將修改程式碼時,先擷取失敗再對照檢查修正。也適合追蹤某個 NUnit 或 Unity 測試直到修正完成,或排查是哪次 Git 變更引入回歸。
執行需求
透過 npx 啟動的本地 stdio 程序,需要 Node.js 22.12 以上版本與 npm。需在專案目錄中執行,例如使用 mcp 子指令並指定專案絕對路徑。不需要 AI API、帳號或遙測;脈絡擷取與二分搜尋依賴 Git。
安裝前請注意
指令以你的權限執行,程序清理為盡力而為。保留的 stdout 與 stderr 預設每次試驗上限 16 MiB、每次執行上限 256 MiB,歷次調查會分別累積在磁碟上。分享打包前請檢查日誌、指令與所選檔案;打包仍需目標專案的相依套件與設定。樣本通過並不代表缺陷已消失。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 FailTrace,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

FailTrace

Reproduce the failure. Check the fix.

A test fails intermittently. Your coding agent changes the code. One passing retry leaves you guessing.

FailTrace repeats the same check, saves a failing baseline, and checks the proposed fix against it. Use the CLI or MCP tools to get trial results, a smaller reproducer, and evidence your agent can inspect before accepting a patch.

[CI] [License: MIT]

Local execution. No AI API, account, or telemetry required. Keep your existing test runner and assertions.

Quick start

With Node.js 22.12+ and npm, run this in any working directory:

sh
npx --yes failtrace demo

[FailTrace demo: capture a failure, reduce its input, reject an unrelated crash, and check a patch]

Static walkthrough · Static poster · Demo guide

The demo reduces six input items to ["BUG"], rejects a patch that crashes for another reason, and checks a working patch. It saves the evidence in .failtrace/ and prints a replay command.

For coding agents

Connect the local stdio MCP server through your client's configuration:

sh
npx --yes [email protected] mcp --cwd "/absolute/path/to/your/project"

Copy the MCP configuration and check the connection →

Your client launches this command. Running it alone in a terminal waits for MCP requests. The guide includes Windows setup.

Then ask your agent:

Use FailTrace to capture this test failure before editing. Choose the exact test or failure message, save a bounded baseline, and inspect the matching trial. After the change, verify against that baseline and explain any unrelated errors or incomplete evidence.

The seven MCP tools share the CLI's Core engine. They retain the failure signature and investigation evidence across repetition, comparison, regression search, minimization, verification and replay. Agents can retrieve saved trial and log pages without rerunning the command. Shell-capable agents can also use the CLI with --json.

[MCP workflow: capture the target, inspect saved stderr, and verify a declared patch]

The agent can inspect the saved failure before checking the patch.

Recheck an existing unit test

Follow an exact NUnit or Unity test through a fix. Each attempt gets a fresh NUnit 3 report. Missing or skipped tests and unrelated failures stay inconclusive, so an agent cannot accept them as evidence that the selected test passed.

Connect your test or try the original EditMode example →

NUnit support is included in 1.3.0 through CLI and MCP. The documented Unity validation covers the Windows EditMode example.

[NUnit evidence: a failing baseline, a passing candidate, and a skipped test kept inconclusive]

The selected test stays the same; a skipped report is not accepted as a passing test.

Use it on your own failure

From your project, replace the command and message with your own:

sh
npx --yes [email protected] run "npm test -- checkout" --repeat 20 --stderr-contains "checkout failed" --capture-context

Run this before editing in a Git project. --capture-context records source identity for Verify; outside Git, select files with --context-source. Each trial saves its output, and exit 1 can mean the target was captured successfully. Then edit and verify the patch →

Your next questionCommand
How often does this failure appear?run
What differs between a healthy and failing trial?compare
Which Git change introduced it?bisect
What input is enough to reproduce it?minimize
What happened after the proposed fix?verify
How can I replay this investigation?bundle

Command reference · Literal executable arguments · Reusable project scripts

[A reduced input packaged with a replay entry point reproduces the target failure]

The demo's bundle reproduces its original failure with exit 1. Keep the source, input and replay together; supply the target's prerequisites when packaging your own investigation.

What the results establish

FailTrace reports observations under the chosen settings. Verify separates a target observed, a healthy sample without that target, and inconclusive evidence. Bisect reports a sampled first-parent boundary; minimization rechecks its result without promising the smallest possible input.

The demo shows controlled example outcomes, not performance measurements. A passing sample does not prove a bug is gone.

Commands run with your permissions, and process cleanup is best effort. Retained stdout/stderr is capped by default at 16 MiB per trial and 256 MiB per run or bisect/minimization. Previous investigations accumulate separately. Review logs, commands and selected files before sharing; bundles still require the target's dependencies and setup.

Result and exit-code reference · Resource limits · Storage inventory · Bundle guide

Availability and contributing

The quick start uses npm's latest release; the verified version is 1.5.0. MCP configuration and repeatable installation examples keep that exact version pinned: installation options, GitHub release, and MCP Registry entry.

Version 1.5.0 adds: short run references, Verify readiness and next-step guidance, and intermittent-minimization guidance. See the changelog.

Documentation: choose your next task →

Development instructions · Compatibility · Roadmap · Third-party notices

來源:README.md,提交 2fc59dd

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

1
  1. v1.5.0最新Sep 16, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分