nightytidy 0.3.7 → 0.3.9

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.
Files changed (37) hide show
  1. package/bin/nightytidy.js +1 -1
  2. package/package.json +1 -1
  3. package/src/agent/git-integration.js +4 -1
  4. package/src/claude.js +1 -1
  5. package/src/prompts/manifest.json +138 -138
  6. package/src/prompts/steps/02-test-coverage.md +181 -181
  7. package/src/prompts/steps/03-test-hardening.md +181 -181
  8. package/src/prompts/steps/04-test-architecture.md +130 -130
  9. package/src/prompts/steps/05-test-consolidation.md +165 -165
  10. package/src/prompts/steps/06-test-quality.md +211 -211
  11. package/src/prompts/steps/07-api-design.md +165 -165
  12. package/src/prompts/steps/08-security-sweep.md +207 -207
  13. package/src/prompts/steps/09-dependency-health.md +217 -217
  14. package/src/prompts/steps/10-codebase-cleanup.md +189 -189
  15. package/src/prompts/steps/11-crosscutting-concerns.md +196 -196
  16. package/src/prompts/steps/12-file-decomposition.md +263 -263
  17. package/src/prompts/steps/13-code-elegance.md +329 -329
  18. package/src/prompts/steps/14-architectural-complexity.md +297 -297
  19. package/src/prompts/steps/15-type-safety.md +192 -192
  20. package/src/prompts/steps/16-logging-error-message.md +173 -173
  21. package/src/prompts/steps/17-data-integrity.md +139 -139
  22. package/src/prompts/steps/18-performance.md +183 -183
  23. package/src/prompts/steps/19-cost-resource-optimization.md +136 -136
  24. package/src/prompts/steps/20-error-recovery.md +145 -145
  25. package/src/prompts/steps/21-race-condition-audit.md +178 -178
  26. package/src/prompts/steps/22-bug-hunt.md +229 -229
  27. package/src/prompts/steps/23-frontend-quality.md +210 -210
  28. package/src/prompts/steps/24-uiux-audit.md +284 -284
  29. package/src/prompts/steps/25-state-management.md +170 -170
  30. package/src/prompts/steps/26-perceived-performance.md +190 -190
  31. package/src/prompts/steps/27-devops.md +165 -165
  32. package/src/prompts/steps/28-scheduled-job-chron-jobs.md +141 -141
  33. package/src/prompts/steps/29-observability.md +152 -152
  34. package/src/prompts/steps/30-backup-check.md +155 -155
  35. package/src/prompts/steps/31-product-polish-ux-friction.md +122 -122
  36. package/src/prompts/steps/32-feature-discovery-opportunity.md +128 -128
  37. package/src/prompts/steps/33-strategic-opportunities.md +217 -217
package/bin/nightytidy.js CHANGED
@@ -1,3 +1,3 @@
1
- #!/usr/bin/env node
1
+ #!/usr/bin/env node
2
2
  import { run } from '../src/cli.js';
3
3
  run();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "nightytidy",
3
- "version": "0.3.7",
3
+ "version": "0.3.9",
4
4
  "description": "Automated overnight codebase improvement through Claude Code",
5
5
  "license": "MIT",
6
6
  "author": "Dorian Spitz",
@@ -71,7 +71,10 @@ export class AgentGit {
71
71
  }
72
72
 
73
73
  async _exec(cmd, args) {
74
- const { stdout } = await execFileAsync(cmd, args, { cwd: this.projectDir });
74
+ const { stdout } = await execFileAsync(cmd, args, {
75
+ cwd: this.projectDir,
76
+ maxBuffer: 50 * 1024 * 1024, // 50 MB — large diffs from 33-step runs
77
+ });
75
78
  return stdout;
76
79
  }
77
80
  }
package/src/claude.js CHANGED
@@ -52,7 +52,7 @@ import { cleanEnv } from './env.js';
52
52
  const DEFAULT_TIMEOUT = 45 * 60 * 1000; // 45 minutes
53
53
  const DEFAULT_RETRIES = 3;
54
54
  const RETRY_DELAY = 10000; // 10 seconds
55
- const STDIN_THRESHOLD = 8000; // chars
55
+ const STDIN_THRESHOLD = 0; // Always pipe via stdin — cmd.exe on Windows corrupts -p prompts with special chars
56
56
  const SIGKILL_DELAY = 5000; // grace period before SIGKILL after initial kill
57
57
  export const INACTIVITY_TIMEOUT_MS = 3 * 60 * 1000; // 3 minutes — no stdout or stderr data
58
58
 
@@ -1,138 +1,138 @@
1
- {
2
- "version": 1,
3
- "sourceUrl": "https://docs.google.com/document/d/e/2PACX-1vRtQJyud1t-ESLJqKXTdBGTzFnkxFvZRKJ8_MrOjSGn4fmBluXWVTvJZFIxgSefVag8MoAW8bd0-A6K/pub",
4
- "steps": [
5
- {
6
- "id": "01-documentation",
7
- "name": "Documentation"
8
- },
9
- {
10
- "id": "02-test-coverage",
11
- "name": "Test Coverage"
12
- },
13
- {
14
- "id": "03-test-hardening",
15
- "name": "Test Hardening"
16
- },
17
- {
18
- "id": "04-test-architecture",
19
- "name": "Test Architecture"
20
- },
21
- {
22
- "id": "05-test-consolidation",
23
- "name": "Test Consolidation"
24
- },
25
- {
26
- "id": "06-test-quality",
27
- "name": "Test Quality"
28
- },
29
- {
30
- "id": "07-api-design",
31
- "name": "API Design"
32
- },
33
- {
34
- "id": "08-security-sweep",
35
- "name": "Security Sweep"
36
- },
37
- {
38
- "id": "09-dependency-health",
39
- "name": "Dependency Health"
40
- },
41
- {
42
- "id": "10-codebase-cleanup",
43
- "name": "Codebase Cleanup"
44
- },
45
- {
46
- "id": "11-crosscutting-concerns",
47
- "name": "Cross-Cutting Concerns"
48
- },
49
- {
50
- "id": "12-file-decomposition",
51
- "name": "File Decomposition"
52
- },
53
- {
54
- "id": "13-code-elegance",
55
- "name": "Code Elegance"
56
- },
57
- {
58
- "id": "14-architectural-complexity",
59
- "name": "Architectural Complexity"
60
- },
61
- {
62
- "id": "15-type-safety",
63
- "name": "Type Safety"
64
- },
65
- {
66
- "id": "16-logging-error-message",
67
- "name": "Logging & Error Message"
68
- },
69
- {
70
- "id": "17-data-integrity",
71
- "name": "Data Integrity"
72
- },
73
- {
74
- "id": "18-performance",
75
- "name": "Performance"
76
- },
77
- {
78
- "id": "19-cost-resource-optimization",
79
- "name": "Cost & Resource Optimization"
80
- },
81
- {
82
- "id": "20-error-recovery",
83
- "name": "Error Recovery"
84
- },
85
- {
86
- "id": "21-race-condition-audit",
87
- "name": "Race Condition Audit"
88
- },
89
- {
90
- "id": "22-bug-hunt",
91
- "name": "Bug Hunt"
92
- },
93
- {
94
- "id": "23-frontend-quality",
95
- "name": "Frontend Quality"
96
- },
97
- {
98
- "id": "24-uiux-audit",
99
- "name": "UI/UX Audit"
100
- },
101
- {
102
- "id": "25-state-management",
103
- "name": "State Management"
104
- },
105
- {
106
- "id": "26-perceived-performance",
107
- "name": "Perceived Performance"
108
- },
109
- {
110
- "id": "27-devops",
111
- "name": "DevOps"
112
- },
113
- {
114
- "id": "28-scheduled-job-chron-jobs",
115
- "name": "Scheduled Job & Chron Jobs"
116
- },
117
- {
118
- "id": "29-observability",
119
- "name": "Observability"
120
- },
121
- {
122
- "id": "30-backup-check",
123
- "name": "Backup Check"
124
- },
125
- {
126
- "id": "31-product-polish-ux-friction",
127
- "name": "Product Polish & UX Friction"
128
- },
129
- {
130
- "id": "32-feature-discovery-opportunity",
131
- "name": "Feature Discovery & Opportunity"
132
- },
133
- {
134
- "id": "33-strategic-opportunities",
135
- "name": "Strategic Opportunities"
136
- }
137
- ]
138
- }
1
+ {
2
+ "version": 1,
3
+ "sourceUrl": "https://docs.google.com/document/d/e/2PACX-1vRtQJyud1t-ESLJqKXTdBGTzFnkxFvZRKJ8_MrOjSGn4fmBluXWVTvJZFIxgSefVag8MoAW8bd0-A6K/pub",
4
+ "steps": [
5
+ {
6
+ "id": "01-documentation",
7
+ "name": "Documentation"
8
+ },
9
+ {
10
+ "id": "02-test-coverage",
11
+ "name": "Test Coverage"
12
+ },
13
+ {
14
+ "id": "03-test-hardening",
15
+ "name": "Test Hardening"
16
+ },
17
+ {
18
+ "id": "04-test-architecture",
19
+ "name": "Test Architecture"
20
+ },
21
+ {
22
+ "id": "05-test-consolidation",
23
+ "name": "Test Consolidation"
24
+ },
25
+ {
26
+ "id": "06-test-quality",
27
+ "name": "Test Quality"
28
+ },
29
+ {
30
+ "id": "07-api-design",
31
+ "name": "API Design"
32
+ },
33
+ {
34
+ "id": "08-security-sweep",
35
+ "name": "Security Sweep"
36
+ },
37
+ {
38
+ "id": "09-dependency-health",
39
+ "name": "Dependency Health"
40
+ },
41
+ {
42
+ "id": "10-codebase-cleanup",
43
+ "name": "Codebase Cleanup"
44
+ },
45
+ {
46
+ "id": "11-crosscutting-concerns",
47
+ "name": "Cross-Cutting Concerns"
48
+ },
49
+ {
50
+ "id": "12-file-decomposition",
51
+ "name": "File Decomposition"
52
+ },
53
+ {
54
+ "id": "13-code-elegance",
55
+ "name": "Code Elegance"
56
+ },
57
+ {
58
+ "id": "14-architectural-complexity",
59
+ "name": "Architectural Complexity"
60
+ },
61
+ {
62
+ "id": "15-type-safety",
63
+ "name": "Type Safety"
64
+ },
65
+ {
66
+ "id": "16-logging-error-message",
67
+ "name": "Logging & Error Message"
68
+ },
69
+ {
70
+ "id": "17-data-integrity",
71
+ "name": "Data Integrity"
72
+ },
73
+ {
74
+ "id": "18-performance",
75
+ "name": "Performance"
76
+ },
77
+ {
78
+ "id": "19-cost-resource-optimization",
79
+ "name": "Cost & Resource Optimization"
80
+ },
81
+ {
82
+ "id": "20-error-recovery",
83
+ "name": "Error Recovery"
84
+ },
85
+ {
86
+ "id": "21-race-condition-audit",
87
+ "name": "Race Condition Audit"
88
+ },
89
+ {
90
+ "id": "22-bug-hunt",
91
+ "name": "Bug Hunt"
92
+ },
93
+ {
94
+ "id": "23-frontend-quality",
95
+ "name": "Frontend Quality"
96
+ },
97
+ {
98
+ "id": "24-uiux-audit",
99
+ "name": "UI/UX Audit"
100
+ },
101
+ {
102
+ "id": "25-state-management",
103
+ "name": "State Management"
104
+ },
105
+ {
106
+ "id": "26-perceived-performance",
107
+ "name": "Perceived Performance"
108
+ },
109
+ {
110
+ "id": "27-devops",
111
+ "name": "DevOps"
112
+ },
113
+ {
114
+ "id": "28-scheduled-job-chron-jobs",
115
+ "name": "Scheduled Job & Chron Jobs"
116
+ },
117
+ {
118
+ "id": "29-observability",
119
+ "name": "Observability"
120
+ },
121
+ {
122
+ "id": "30-backup-check",
123
+ "name": "Backup Check"
124
+ },
125
+ {
126
+ "id": "31-product-polish-ux-friction",
127
+ "name": "Product Polish & UX Friction"
128
+ },
129
+ {
130
+ "id": "32-feature-discovery-opportunity",
131
+ "name": "Feature Discovery & Opportunity"
132
+ },
133
+ {
134
+ "id": "33-strategic-opportunities",
135
+ "name": "Strategic Opportunities"
136
+ }
137
+ ]
138
+ }