Skip to content

Releases: hmamut39/tewip

Tewip 0.50.0

Choose a tag to compare

@hmamut39 hmamut39 released this 11 Oct 23:15

18,457 real tests across two codebases nobody here wrote. Zero false accusations.

Saleor (commerce, Django) — 12,967 Python tests in 6.4s. OpenMRS (healthcare, Java) — 5,490 Java tests in 1.3s. Nothing was wrongly condemned in either, and every one of OpenMRS's 41 accusations was verified true by hand: 2 assertTrue(true) tautologies, 37 tests annotated @Test beside @Disabled, and 2 that catch their own failure and discard it.

Three bugs in Tewip itself, all of the same family — right about something nobody could use, or looking where the convention says instead of where the code is:

  • vouch: the quoted evidence was a comment. Saleor writes its tests # given / # when / # then, so the proof for all 166 crash-only findings was the single character #. The evidence is now the first line that does something.
  • tewip: bounded counts were reported as totals. Saleor has 4,698 files against a budget of 4,000, so the front door said "1218 test files" when there are 1,229. Counts now read "At least 1218" and the limits section says the glance was bounded.
  • schema: 44 Liquibase changelogs read as none. OpenMRS names them liquibase-*.xml in api/src/main/resources/, nowhere near a directory called changelog. A changelog is now found by its name as well as its path.

918 tests passing, up from 910.

npm install -g tewip-ai
tewip

Also available as a VS Code / Cursor / Windsurf extension, an MCP server, and a GitHub Action.

Tewip 0.34.0

Choose a tag to compare

@hmamut39 hmamut39 released this 10 Oct 17:19

Tewip proves software work — written by a person or by an agent. It triages a failing test to a cause with evidence, says whether a test could ever fail, breaks your code to find out whether the tests would notice, reads what a migration will do to a live database, and gives one verdict on whether a change is done. It answers "cannot say" rather than guessing.

Install

npm i -g tewip-ai

As a GitHub Action:

- uses: hmamut39/tewip@v0.34.0
  if: always()
  with:
    openai-api-key: ${{ secrets.OPENAI_API_KEY }}   # optional: without it only the rules run

Also available as a Claude Code plugin, in the MCP registry, and on Open VSX for Cursor, Windsurf and VSCodium.

What it does

Command Question it answers
tewip explain Why did each test fail? A real bug, flaky, the environment, test data, or a changed selector
tewip vouch Could these tests ever fail at all?
tewip prove Would the tests catch a bug in this file?
tewip pick Which tests could notice this change?
tewip schema What will this migration do to a live database?
tewip standards Does this change keep the rules our team wrote down?
tewip done Is this work actually finished?

What is measured

Every number comes from strangers' real code, never from fixtures:

  • Failure triage: 86–99% accurate across six real labelled datasets, $1.12 per 1,000 failures
  • vouch: 19 of 19 correct on 5,448 tests in 8 public projects
  • prove: found real gaps in expressjs/express
  • schema: 259 real Zulip and Mastodon migrations read
  • pick: 0 of 10 catching tests lost while running 7–9% of the suite

What is not measured is said so plainly, in the README and at the bottom of every report.

Built by Mamuti Aishan (Hasan).

Tewip for VS Code 0.6.0

Choose a tag to compare

@hmamut39 hmamut39 released this 26 Sep 17:01

Ten commands now. Download tewip-0.6.0.vsix below, then in VS Code (or Cursor, Windsurf, VSCodium): Ctrl+Shift+P → Extensions: Install from VSIX…. It needs the command line: npm install -g tewip-ai.

New in 0.6.0 — the capabilities from phases 15 to 19:

  • Has this happened here before? Paste an error and get the earlier failures that resemble it, what was decided, by which rule or which person, and the run each came from. No model is called.
  • Is this requirement covered, and passing? The thread from a plan to the test that covers it to the run that attempted it. Covered only when a real test can be named.
  • What should be done next about…? Give it a goal; it says what it would do next and why, in a fixed published order. It decides, it never changes a file.
  • What did Tewip check for this build? One artifact with the claims and their evidence, what it refused to decide, and what it did not check at all.

Also in 0.6.0: explain a report, why CI failed on this branch, risk review of this change, which flaky tests to quarantine, check secrets and dependencies, what our corrections add up to.

Your editor's AI assistant picks Tewip up as an MCP server with nothing to configure — fifteen tools, including the three above.

Tewip for VS Code 0.5.0

Choose a tag to compare

@hmamut39 hmamut39 released this 23 Sep 22:25

Install without the Marketplace: download tewip-0.5.0.vsix below, then in VS Code (or Cursor, Windsurf, VSCodium) open the Extensions view, click the ... menu and choose Install from VSIX….

It needs the Tewip command line: npm install -g tewip-ai.

Commands (Ctrl+Shift+P, then "Tewip"):

  • Explain a test report…
  • Why did CI fail on this branch?
  • Risk review of this change
  • Which flaky tests to quarantine
  • Check secrets and dependencies
  • What our corrections add up to

Your editor's AI assistant also picks Tewip up as an MCP server with nothing to configure, so you can ask it "why did CI fail on my PR?" in chat.

Tewip 0.4.0

Choose a tag to compare

@hmamut39 hmamut39 released this 19 Sep 16:50

First release under the name Tewip.

  • Command line: npm install -g tewip-0.4.0.tgz, then tewip explain report.xml, tewip ci owner/repo --pr 12, tewip mcp.
  • Editor extension for VS Code, Cursor, Windsurf and VSCodium: Extensions → … → Install from VSIX → tewip-0.4.0.vsix.
  • GitHub Action: uses: hmamut39/triage-agent@main (see QUICKSTART.md).