great-cto 3.75.0 → 3.75.1

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.
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "great-cto",
3
3
  "description": "You already have the agent. This is everything around it. great_cto runs Claude Code as a pipeline of 72 specialist agents \u2014 an independent model checks each stage before the next builds on it, spending caps refuse rather than warn, and three decisions stay yours: what gets built, how, and whether it ships.",
4
- "version": "3.75.0",
4
+ "version": "3.75.1",
5
5
  "author": {
6
6
  "name": "Alexander Velikiy",
7
7
  "url": "https://hashnode.com/@Greatcto"
@@ -96,6 +96,16 @@ snapshots, binaries) are excluded, because their size is not review effort.
96
96
  passes if the function under test does nothing, so it asserts nothing), comments
97
97
  that lie, an abstraction that hides a bug. Match the surrounding code's idiom.
98
98
 
99
+ **Stub pass over new tests — do it for every test the diff adds.** Picture the
100
+ function under test replaced by a stub that returns nothing and does nothing, and
101
+ run each new test against it in your head. Assertions that something did *not*
102
+ happen (`not.toHaveBeenCalled`, `not.toThrow`, `resolves`, "is defined") pass
103
+ against that stub. A test made only of them asserts nothing, however correct the
104
+ code beside it: that is a **Finding (P2)**, not an Observation — the evidence is the
105
+ test line itself. Cite each such line, say it passes for a do-nothing function,
106
+ and name the positive assertion that is missing (the call that must happen, the
107
+ value that must come back). Judge the test, not your guess about the implementation.
108
+
99
109
  ## Calibration — apply `shared/agent-fragments/argument-quality.md`
100
110
 
101
111
  Every finding carries **severity + concrete evidence (file:line or a metric)**.
@@ -225,7 +225,7 @@ bash scripts/auditor-architectural-debt-scan.sh
225
225
 
226
226
  Runs all of Phase 4 (sections labeled in stdout):
227
227
  - **4A.0** intersects the top-20 largest source files with the top-20 most-git-churned files
228
- (last 6 months), writing scratch files to `/tmp/audit-{largest,churn,hotspots}.txt`. Every
228
+ (last 6 months), writing scratch files to ``$AUDIT_TMP/audit-{largest,churn,hotspots}.txt` (default `/tmp`). Every
229
229
  file in the intersection MUST receive concrete file:line citations in the findings table —
230
230
  these are the most expensive places to leave debt unaddressed. A hotspot with no test
231
231
  beside it gets "characterize before change" in its Recommendation: the first edit there
@@ -613,7 +613,7 @@ suite **catches**. A surviving mutant is a fault your tests would have shipped.
613
613
 
614
614
  Small tasks skip the run, not the question: the cheap form is the empty-implementation
615
615
  check — stub the function under test to do nothing; a test that still passes asserts
616
- nothing. senior-dev runs it at RED and code-reviewer flags it; if you see such a test
616
+ nothing. senior-dev runs it before GREEN and code-reviewer flags it; if you see such a test
617
617
  in a small task, report it.
618
618
 
619
619
  Run it on the **changed files only** — a full-repo mutation run is minutes-to-hours
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "great-cto",
3
- "version": "3.75.0",
3
+ "version": "3.75.1",
4
4
  "description": "One command install for the great_cto Claude Code plugin. Auto-detects your stack, picks the right archetype, bootstraps PROJECT.md.",
5
5
  "keywords": [
6
6
  "claude-code",