Skip to content

Conversation

@mudcube
Copy link
Contributor

@mudcube mudcube commented Jan 3, 2026

No description provided.

claude added 5 commits January 2, 2026 22:31
Phase 1 - Critical Fixes:
- Fix dist/ dependency violations: site now uses @goobits/docs-engine workspace link
- Add pnpm-workspace.yaml for proper monorepo setup
- Update all site imports to use package paths instead of dist/
- Add comprehensive tests for cli-executor.ts (security-critical)
- Fix dependency version inconsistencies between packages (glob, typescript, p-limit, tsup)

Phase 2 - Quick Wins:
- Remove duplicate /utils/ folder (inferior implementations)
- Consolidate escapeHtml() imports in 4 Hydrator components

Phase 3 - Refactoring:
- Extract shared processScreenshotImage() function in screenshot-service.ts
- Eliminates ~180 lines of duplicated image processing code

All 521 tests pass.
Split parser functions (JSON, env, SQL, grep) into dedicated files
under src/lib/generators/parsers/ to improve maintainability and
reduce the size of the generator module.
Create reusable useHydrator utility that encapsulates the common
lifecycle pattern used by all Hydrator components:
- Browser environment check
- afterNavigate subscription for SPA navigation
- Deferred initial hydration (queueMicrotask + requestAnimationFrame)
- Optional MutationObserver for dynamic content

Updated 7 Hydrator components to use the new composable, reducing
boilerplate and ensuring consistent behavior.
Add 20 tests covering JSON, ENV, and SQL parsers:
- JSON: array parsing, object conversion, nested paths
- ENV: variable parsing, categories, comments, quotes
- SQL: CREATE TABLE, columns, constraints, comments
Use execFile() instead of exec() for improved security:
- Does not spawn a shell, preventing shell injection attacks
- Arguments are passed directly to the executable
- Added parseCommand() to handle quoted argument parsing
- Fixed error code handling for Node.js error types

This change provides defense in depth alongside the existing
allowlist and dangerous character blocking.
@mudcube mudcube merged commit 11b26f7 into main Jan 3, 2026
0 of 3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants