smart-test-runner-and-inventory

Orchestrates incremental test execution with hash-based caching and dual-queue worker pools.

Updated May 16, 2026
One-click install
npx skills add https://github.com/alimtvnetwork/img-pdf-v2 --skill smart-test-runner-and-inventory-alimtvnetwork
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: smart-test-runner-and-inventory
Source: https://github.com/alimtvnetwork/img-pdf-v2/tree/main/.agents/skills/smart-test-runner-and-inventory
Command: npx skills add https://github.com/alimtvnetwork/img-pdf-v2 --skill smart-test-runner-and-inventory-alimtvnetwork

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Running full test suites on every change wastes time and compute. This Skill maintains a centralized test inventory manifest and executes only tests whose source or test files have changed, skipping unchanged tests instantly. ## Core Features & Use Cases - Incremental Dirty Tracking: Tests run only when the target file hash, test file hash, or an explicit filter matches; unchanged tests are skipped as cached. - Dual-Queue Concurrency: Slow tests and fast tests run in separate worker pools with distinct batch caps to prevent disk and process contention. - Failure Isolation & ETA Telemetry: Failing tests write diagnostics to a dedicated failures folder while a live ETA file lets AI agents sleep instead of polling. - Use Case: After editing a Go example file, record the change in the inventory and run the local CI runner so only the affected tests execute, with results and timings tracked in the manifest. ## Quick Start Ask the agent to record the modified source file in the test inventory and run the smart incremental test runner for the affected package.

Frequently Asked Questions about smart-test-runner-and-inventory

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I run only the tests affected by my code changes?

Record the modified file with the test inventory generator using the --record flag, then run the local CI runner. The runner compares stored file hashes and executes only tests whose target or test files changed, skipping the rest as cached.

How does incremental test caching detect changed tests?

The inventory stores hashes of both the target source file and the test file. A test reruns only when either hash changes or an explicit --pkg or --file filter matches it; otherwise it is skipped instantly with zero overhead.

Can I change the slow test threshold for test classification?

Yes. The default slow threshold is 4.0 seconds, and it can be overridden with the GITMAP_SLOW_TEST_THRESHOLD environment variable or the --slow-threshold command-line flag.

Where are failing test logs stored?

Failing test diagnostics are written to .ai-memory/temp/failures/<test-id>.log. Passing tests produce no console output and create no files, keeping the workspace clean.

How should an AI agent wait for a long test run to finish?

The agent reads the runner-eta.json telemetry file, sleeps for the estimated remaining time or 60 seconds, then rechecks. It repeats this sleep-and-check cycle instead of actively polling until the run completes.