supercov-cli 0.0.37__py3-none-win_arm64.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
Binary file
|
|
@@ -0,0 +1,238 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: supercov-cli
|
|
3
|
+
Version: 0.0.37
|
|
4
|
+
Classifier: Development Status :: 2 - Pre-Alpha
|
|
5
|
+
Classifier: Environment :: Console
|
|
6
|
+
Classifier: License :: OSI Approved :: MIT License
|
|
7
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
8
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
9
|
+
Classifier: Programming Language :: Python :: 3.14
|
|
10
|
+
Classifier: Programming Language :: Rust
|
|
11
|
+
Classifier: Topic :: Software Development :: Testing
|
|
12
|
+
License-File: LICENSE
|
|
13
|
+
Summary: Zero-configuration, runner-aware structural and MC/DC coverage
|
|
14
|
+
Keywords: coverage,testing,mcdc,cli
|
|
15
|
+
License-Expression: MIT
|
|
16
|
+
Requires-Python: >=3.12
|
|
17
|
+
Description-Content-Type: text/markdown; charset=UTF-8; variant=GFM
|
|
18
|
+
Project-URL: Homepage, https://supercov.com
|
|
19
|
+
Project-URL: Repository, https://github.com/supercorp-ai/supercov
|
|
20
|
+
Project-URL: Issues, https://github.com/supercorp-ai/supercov/issues
|
|
21
|
+
|
|
22
|
+

|
|
23
|
+
|
|
24
|
+
**Coverage for coding agents working overnight.**
|
|
25
|
+
|
|
26
|
+
**Supercov gives your coding agent the next useful test to write.** It runs the test command you already use, records local coverage evidence, and turns uncovered paths into small, actionable queries. Your agent writes a focused test, reruns the suite, proves what improved, and keeps going while useful gaps remain.
|
|
27
|
+
|
|
28
|
+
No account, config file, import, custom reporter, or hosted service is required. Supercov is local, free, open source, and MIT licensed.
|
|
29
|
+
|
|
30
|
+
[Website](https://supercov.com) · [Documentation](https://supercov.com/docs) · [npm](https://www.npmjs.com/package/supercov) · [GitHub](https://github.com/supercorp-ai/supercov)
|
|
31
|
+
|
|
32
|
+
Supported by [Supercorp](https://supercorp.ai).
|
|
33
|
+
|
|
34
|
+
## Start with the suite you already have
|
|
35
|
+
|
|
36
|
+
```bash
|
|
37
|
+
npx supercov -- npm test
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
Everything after `--` is your test command. Supercov runs it without changing your source, tests, runner configuration, or normal build output.
|
|
41
|
+
|
|
42
|
+
Then ask what is still uncovered:
|
|
43
|
+
|
|
44
|
+
```bash
|
|
45
|
+
npx supercov runs latest gaps --limit 10
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
After your agent adds a test, rerun the complete suite and prove the gain:
|
|
49
|
+
|
|
50
|
+
```bash
|
|
51
|
+
npx supercov -- npm test
|
|
52
|
+
npx supercov diff <previous-run-id> latest
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
Use whichever complete test command the repository already trusts:
|
|
56
|
+
|
|
57
|
+
```bash
|
|
58
|
+
npx supercov -- npx playwright test
|
|
59
|
+
npx supercov -- pnpm test:e2e
|
|
60
|
+
npx supercov -- cargo test
|
|
61
|
+
npx supercov -- cargo nextest run
|
|
62
|
+
npx supercov -- pytest
|
|
63
|
+
npx supercov -- python -m unittest
|
|
64
|
+
npx supercov -- bundle exec rspec
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
## Give Supercov a job
|
|
68
|
+
|
|
69
|
+
Paste one of these prompts into Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, or any coding agent that can run terminal commands.
|
|
70
|
+
|
|
71
|
+
### Write the first useful test
|
|
72
|
+
|
|
73
|
+
```text
|
|
74
|
+
Measure code coverage with `npx supercov`. Use the coverage evidence to choose
|
|
75
|
+
one useful missing test. Only edit tests. Run the repository's complete test
|
|
76
|
+
suite through Supercov again and report what improved.
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
### Use leftover tokens on coverage
|
|
80
|
+
|
|
81
|
+
```text
|
|
82
|
+
Measure code coverage with `npx supercov` and write tests til 100%. Only edit
|
|
83
|
+
tests. Keep going while useful gaps remain.
|
|
84
|
+
|
|
85
|
+
Run the repository's complete test suite through Supercov. Use
|
|
86
|
+
`npx supercov runs latest gaps --limit 5` to choose one useful target at a
|
|
87
|
+
time. Write a focused test, rerun the same complete suite, and use
|
|
88
|
+
`npx supercov diff <previous-run-id> latest` to verify the gain.
|
|
89
|
+
|
|
90
|
+
Never weaken assertions or change application code to make coverage easier.
|
|
91
|
+
Stop if the suite fails, the evidence is incomplete, or no useful gaps remain.
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
## The agent loop
|
|
95
|
+
|
|
96
|
+
1. **Run the real suite.** Supercov executes the command after `--` in an isolated workspace.
|
|
97
|
+
2. **Find one useful gap.** Short, paginated queries show uncovered files, lines, branches, decisions, and value paths without loading a large HTML report into context.
|
|
98
|
+
3. **Write one focused test.** The coding agent changes tests—not application code or coverage configuration.
|
|
99
|
+
4. **Rerun and prove the gain.** `diff` shows exactly what the new test covered.
|
|
100
|
+
5. **Repeat while useful gaps remain.** Failed tests, incomplete evidence, or ambiguous scope stay visible instead of being rounded away.
|
|
101
|
+
|
|
102
|
+
Supercov supplies the coverage signal and evidence. It does not host, schedule, or replace your coding agent.
|
|
103
|
+
|
|
104
|
+
## Use leftover tokens on coverage
|
|
105
|
+
|
|
106
|
+
Before a reset—or overnight—turn idle agent time into coverage that stays with the repository. Each pass closes a small number of useful gaps and finishes with evidence that the tests still pass and coverage improved.
|
|
107
|
+
|
|
108
|
+
## Use it in a software factory
|
|
109
|
+
|
|
110
|
+
Add Supercov as a repeatable quality loop in an automated software factory. Your factory schedules the work; Supercov gives each agent a bounded next task and an immutable record of the result.
|
|
111
|
+
|
|
112
|
+
Every pass runs the real suite, chooses an uncovered path, writes a focused test, reruns, and proves the gain. Fresh executable evidence lets agents keep iterating around the clock while failed tests and regressions stop the loop before they ship.
|
|
113
|
+
|
|
114
|
+
## Coverage agents can act on
|
|
115
|
+
|
|
116
|
+
From lines and branches to MC/DC, every gap becomes a concrete test target. Supercov measures:
|
|
117
|
+
|
|
118
|
+
- lines, statements, functions, and branches;
|
|
119
|
+
- MC/DC independence witnesses;
|
|
120
|
+
- optional-chain, default-value, and logical-assignment paths;
|
|
121
|
+
- `try`/`catch` and zero-iteration control-flow paths; and
|
|
122
|
+
- per-test provenance where the runner exposes exact test boundaries.
|
|
123
|
+
|
|
124
|
+
The denominator comes from source structure before the run, so adding or removing tests cannot silently change what 100% means. Ambiguous source scope, uninstrumented code, and missing evidence remain visible as completeness blockers.
|
|
125
|
+
|
|
126
|
+
## Install for your language
|
|
127
|
+
|
|
128
|
+
The same binary ships through each language's own package manager, at the same version, from one release:
|
|
129
|
+
|
|
130
|
+
```bash
|
|
131
|
+
npx supercov -- npm test # npm
|
|
132
|
+
uvx --from supercov-cli supercov -- pytest # PyPI
|
|
133
|
+
gem install supercov && supercov -- bundle exec rspec # RubyGems
|
|
134
|
+
cargo install supercov && supercov -- cargo test # crates.io, built from source
|
|
135
|
+
```
|
|
136
|
+
|
|
137
|
+
`pip install supercov-cli` and `gem install supercov` install a wheel or gem that carries the binary for your platform; nothing is compiled. The crate builds from source and needs Rust 1.95.
|
|
138
|
+
|
|
139
|
+
## Supported languages
|
|
140
|
+
|
|
141
|
+
| Language | Status | Start with |
|
|
142
|
+
| --- | --- | --- |
|
|
143
|
+
| JavaScript | Available | `npx supercov -- npm test` |
|
|
144
|
+
| TypeScript | Available | `npx supercov -- npm test` |
|
|
145
|
+
| Rust | Available | `npx supercov -- cargo test` |
|
|
146
|
+
| Python | Available | `npx supercov -- pytest` |
|
|
147
|
+
| Ruby | Available | `npx supercov -- rspec` |
|
|
148
|
+
| Zig | Coming soon | — |
|
|
149
|
+
| PHP | Coming soon | — |
|
|
150
|
+
| C | Coming soon | — |
|
|
151
|
+
|
|
152
|
+
Supercov requires Node.js 22 or newer. Rust support currently uses Rust 1.95; cargo-nextest 0.9.138 and 0.9.140 are supported. Python support requires CPython 3.12 or newer and measures pytest and unittest runs. Ruby support requires Ruby 3.3 or newer (3.4 or newer for full measurement) and measures RSpec, Minitest, test-unit and Cucumber runs.
|
|
153
|
+
|
|
154
|
+
## Supported operating systems and architectures
|
|
155
|
+
|
|
156
|
+
The CLI is a single native binary. `npx supercov` selects the build for the machine it runs on; nothing is compiled during installation.
|
|
157
|
+
|
|
158
|
+
| Operating system | Architectures | Notes |
|
|
159
|
+
| --- | --- | --- |
|
|
160
|
+
| macOS | arm64 (Apple silicon), x64 (Intel) | macOS 11 or newer |
|
|
161
|
+
| Linux | arm64, x64 | glibc 2.28 or newer (Debian 10, Ubuntu 18.10, RHEL 8 and later), or musl (Alpine); chosen automatically |
|
|
162
|
+
| Windows | arm64, x64 | Windows 10 or newer |
|
|
163
|
+
|
|
164
|
+
On Windows, JavaScript and TypeScript suites are verified on every release; Python, Ruby, and Rust suites are not yet verified there. Containers, VMs, and remote executors run the same Linux builds. Every release publishes the same binaries to npm, PyPI (`supercov-cli`, a wheel per platform) and RubyGems (`supercov`, a gem per platform except arm64 Windows, which Ruby has no platform for), and the source to crates.io (`supercov`).
|
|
165
|
+
|
|
166
|
+
## Supported test suites
|
|
167
|
+
|
|
168
|
+
Supercov uses exact per-test attribution where an adapter is available. For other supported runners, it reports aggregate structural coverage instead of guessing which test covered a path.
|
|
169
|
+
|
|
170
|
+
| Runner | Coverage attribution |
|
|
171
|
+
| --- | --- |
|
|
172
|
+
| Playwright | Exact per test, worker, retry, outcome, action, and assertion phase |
|
|
173
|
+
| Vitest | Exact per test, with setup execution kept separate |
|
|
174
|
+
| Jest | Exact per test, including concurrent and parameterized tests |
|
|
175
|
+
| `node:test` | Exact per test |
|
|
176
|
+
| AVA and Mocha | Aggregate structural coverage |
|
|
177
|
+
| Cargo's standard libtest runner | Exact test and attempt identity |
|
|
178
|
+
| cargo-nextest | Exact test, attempt, retry, and binary identity |
|
|
179
|
+
| RSpec | Exact example and before/example/after phase identity |
|
|
180
|
+
| Minitest and test-unit | Exact test and setup/test/teardown identity |
|
|
181
|
+
| Cucumber | Exact scenario and hook-phase identity |
|
|
182
|
+
|
|
183
|
+
Supercov works with Vite, Next, Turbopack, Webpack, esbuild, SWC, and projects with no build step. One command can collect evidence from several supported runners into a single run.
|
|
184
|
+
|
|
185
|
+
See [Supported languages and test suites](https://supercov.com/docs/supported-suites) for exact compatibility and attribution boundaries.
|
|
186
|
+
|
|
187
|
+
## Read the result
|
|
188
|
+
|
|
189
|
+
```bash
|
|
190
|
+
# Recent runs and the latest summary
|
|
191
|
+
npx supercov runs --limit 5
|
|
192
|
+
npx supercov runs latest
|
|
193
|
+
|
|
194
|
+
# The most useful open coverage obligations
|
|
195
|
+
npx supercov runs latest gaps --limit 10
|
|
196
|
+
|
|
197
|
+
# Details for a file or source location
|
|
198
|
+
npx supercov runs latest file app/checkout/session.ts
|
|
199
|
+
npx supercov runs latest decision app/checkout/session.ts:64
|
|
200
|
+
npx supercov runs latest line app/checkout/session.ts:64
|
|
201
|
+
|
|
202
|
+
# What changed between two runs
|
|
203
|
+
npx supercov diff <previous-run-id> latest
|
|
204
|
+
```
|
|
205
|
+
|
|
206
|
+
Collections accept `--limit` and `--offset` and print a copyable next-page command. Machine-readable output is available with `--json` when an integration needs it.
|
|
207
|
+
|
|
208
|
+
## Local, private, and zero-edit
|
|
209
|
+
|
|
210
|
+
Everything Supercov writes lives under one hidden `.supercov/` directory: run evidence in `.supercov/runs/<run-id>/` and the isolated build cache in `.supercov/workspaces/`. It ignores itself in Git, so there is nothing to add to your `.gitignore`.
|
|
211
|
+
|
|
212
|
+
The Supercov CLI does not contact a Supercov service during a coverage run. Package tools such as `npx` may contact the npm registry to download Supercov when it is not already cached.
|
|
213
|
+
|
|
214
|
+
Supercov does not rewrite your source files, tests, imports, reporter list, runner configuration, dependency tree, or normal build output. An existing user-created `supercov/` directory is never adopted.
|
|
215
|
+
|
|
216
|
+
```bash
|
|
217
|
+
npx supercov clean --dry-run # preview cleanup
|
|
218
|
+
npx supercov clean --keep 20 # keep the 20 newest runs
|
|
219
|
+
npx supercov clean # remove all runs and the build cache
|
|
220
|
+
```
|
|
221
|
+
|
|
222
|
+
## Documentation
|
|
223
|
+
|
|
224
|
+
- [Getting started](https://supercov.com/docs/getting-started)
|
|
225
|
+
- [Agent workflow](https://supercov.com/docs/agent-loop)
|
|
226
|
+
- [Troubleshooting](https://supercov.com/docs/troubleshooting)
|
|
227
|
+
- [CLI reference](https://supercov.com/docs/cli)
|
|
228
|
+
- [Supported languages and test suites](https://supercov.com/docs/supported-suites)
|
|
229
|
+
- [Understanding coverage](https://supercov.com/docs/coverage-model)
|
|
230
|
+
- [Runs and evidence](https://supercov.com/docs/evidence)
|
|
231
|
+
- [Files, privacy, and cleanup](https://supercov.com/docs/workspace-isolation)
|
|
232
|
+
- [Trusting a result](https://supercov.com/docs/verification)
|
|
233
|
+
- [Speed and storage](https://supercov.com/docs/performance)
|
|
234
|
+
|
|
235
|
+
## Free and open source
|
|
236
|
+
|
|
237
|
+
[MIT licensed](LICENSE). Inspect, extend, and run it anywhere.
|
|
238
|
+
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
supercov_cli-0.0.37.data/scripts/supercov.exe,sha256=3_qDs49d4fpy4cOrqM-b4uv3qEuUS1hFnrHMutUqwY4,10038784
|
|
2
|
+
supercov_cli-0.0.37.dist-info/METADATA,sha256=X89DSSO5hl5YclJvkPa8xg2jW6vtxRr6vEi4GJOH2q0,11432
|
|
3
|
+
supercov_cli-0.0.37.dist-info/WHEEL,sha256=7PI8xgd4V55WjJRxuKeduDWzcYj7CmQ0ytHeUIIgFjk,107
|
|
4
|
+
supercov_cli-0.0.37.dist-info/licenses/LICENSE,sha256=YiNx68gS05Gyj-_L8nOAJZUUWrtbkW_DFNrDfEEnBZ4,1078
|
|
5
|
+
supercov_cli-0.0.37.dist-info/RECORD,,
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Supercov contributors
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|