vibe-and-thrive 1.8.3 → 1.8.5
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.
package/.claude/commands/idea.md
CHANGED
|
@@ -115,17 +115,11 @@ Once the user confirms, write the idea file:
|
|
|
115
115
|
- Any unresolved decisions
|
|
116
116
|
```
|
|
117
117
|
|
|
118
|
-
3.
|
|
119
|
-
```bash
|
|
120
|
-
open -a TextEdit docs/ideas/{feature-name}.md
|
|
121
|
-
```
|
|
122
|
-
|
|
123
|
-
4. Say: "I've written the idea to `docs/ideas/{feature-name}.md` and opened it in TextEdit.
|
|
118
|
+
3. Say: "I've written the idea to `docs/ideas/{feature-name}.md`.
|
|
124
119
|
|
|
125
120
|
Review it and let me know:
|
|
126
121
|
- **'approved'** - Ready to split into PRDs
|
|
127
|
-
- **'edit [changes]'** - Tell me what to change
|
|
128
|
-
- Or make edits in the file and say **'done'**"
|
|
122
|
+
- **'edit [changes]'** - Tell me what to change"
|
|
129
123
|
|
|
130
124
|
**STOP and wait for user response. Do not proceed until they say 'approved' or 'done'.**
|
|
131
125
|
|
package/package.json
CHANGED
|
@@ -273,17 +273,8 @@ async function verify(options: VerifyOptions): Promise<VerifyResult> {
|
|
|
273
273
|
|
|
274
274
|
// Capture actual console.error calls
|
|
275
275
|
if (type === 'error') {
|
|
276
|
-
//
|
|
277
|
-
|
|
278
|
-
'favicon',
|
|
279
|
-
'DevTools',
|
|
280
|
-
'Failed to load resource', // Browser's generic 404/network error message
|
|
281
|
-
'.map', // Sourcemap 404s
|
|
282
|
-
'net::ERR_', // Network errors
|
|
283
|
-
'the server responded with a status of 4', // 4xx errors
|
|
284
|
-
];
|
|
285
|
-
const shouldIgnore = ignoredPatterns.some(pattern => text.includes(pattern));
|
|
286
|
-
if (!shouldIgnore) {
|
|
276
|
+
// Only ignore truly benign noise (favicons, devtools)
|
|
277
|
+
if (!text.includes('favicon') && !text.includes('DevTools')) {
|
|
287
278
|
consoleErrors.push(text);
|
|
288
279
|
}
|
|
289
280
|
}
|
|
@@ -392,15 +383,23 @@ async function verify(options: VerifyOptions): Promise<VerifyResult> {
|
|
|
392
383
|
// Check network errors
|
|
393
384
|
result.networkErrors = networkErrors;
|
|
394
385
|
if (options.checkNetwork && networkErrors.length > 0) {
|
|
395
|
-
//
|
|
386
|
+
// Filter out truly benign 404s (static resources)
|
|
396
387
|
const criticalErrors = networkErrors.filter(e =>
|
|
397
388
|
!e.includes('favicon') &&
|
|
398
389
|
!e.includes('.map') &&
|
|
399
|
-
!e.includes('hot-update')
|
|
390
|
+
!e.includes('hot-update') &&
|
|
391
|
+
!e.includes('.woff') &&
|
|
392
|
+
!e.includes('.ttf') &&
|
|
393
|
+
!e.includes('.png') &&
|
|
394
|
+
!e.includes('.jpg') &&
|
|
395
|
+
!e.includes('.svg') &&
|
|
396
|
+
!e.includes('.ico')
|
|
400
397
|
);
|
|
401
398
|
if (criticalErrors.length > 0) {
|
|
402
|
-
|
|
403
|
-
|
|
399
|
+
// Show actual URLs so Claude knows what to fix
|
|
400
|
+
result.errors.push(`Network errors (fix these):`);
|
|
401
|
+
criticalErrors.slice(0, 5).forEach(e => result.errors.push(` ${e}`));
|
|
402
|
+
result.pass = false;
|
|
404
403
|
}
|
|
405
404
|
}
|
|
406
405
|
|