ECC's module-regression skill reruns everything downstream of the module you changed
The ECC plugin added a skill called module-regression. After a change, it runs the module you touched and every module that depends on it. If any of them fails, your change is not done.
Agents check the module they changed and miss the one it broke
Modifying A may break B.
The defect appears days later, when an aggregate, export, or external behavior is wrong.
In a large repository, modules depend on each other. People and agents tend to verify only the module they changed. So a downstream consumer fails silently, and a wrong total or export turns up days later.
A ledger names each module's consumers and the command that proves it works
The skill keeps that map in a file called REGRESSION.md. Each module lists its downstream consumers, a command that proves it still works, and a rule for which consumers must rerun after a change.
Consumers come from the dependency graph, never from a guess
The consumer lists come from the repository's build tooling or a reproducible import scan. An edge the scan cannot establish is marked unverified, and an affected unverified edge blocks an all-green result until a person confirms it.
The verdict is the exit code, not a model's review
The verdict is the exit code, not a model looking and finding no problem. A module with no acceptance command is a gap, never a pass. One red consumer means the change is unfinished, and the author fixes it.
Ledger commands are shown for review before they run
Ledger commands count as untrusted repository content. The skill lists them with their risks, timeout and network needs, and asks before any new authority. Codex runs it only when you call it by name.
test-collaboration ties each requirement and bug to a TEST-ID
A bug fix without a TEST-ID or a recorded manual exit is not closed.
The companion skill, test-collaboration, gives each requirement, business rule and bug a stable test ID with a state. A bug fix with no test ID, and no recorded manual check, does not count as closed.
Covered means a passing command and assertions on behavior
A test ID is marked covered only when its command exits zero and its assertions check behavior. A test that only confirms a call happened, or got an HTTP 200, does not count, and neither does a green CI run.
Separate green client and server tests do not prove they agree
When a frontend and backend are built apart, one machine-readable contract feeds the contract, consumer and provider tests. One test ID also needs a real cross-boundary path, or a recorded gap.
One optional install module, in beta and off by default
Both skills ship together as one optional install module, marked beta and off by default. Only the full profile includes it. It targets fourteen harnesses, among them Claude Code, Codex, Cursor and OpenCode.
ECC's module-regression skill reruns everything downstream of the module you changed
Merged to main. The latest tagged release, from Oct 1, predates it.
The two skills are on main. ECC's latest tagged release, from October first, came out before them. ECC's module-regression skill reruns everything downstream of the module you changed. It's pull request 3413 in the ECC repository.




















