Split lib/utils.ts into:
- lib/utils.ts: Client-safe utilities only (no Node.js imports)
- lib/project-utils.ts: Server-only utilities with Node.js imports
This fixes the Next.js build error where client components were importing
modules that contained Node.js dependencies (fs, path).
All tests pass and build succeeds.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Replace spread operator with explicit field selection to avoid
duplicate commit field from getApks() and parseApkFilename()
- Add test case for commitId parameter filtering to ensure
the filter parameter works correctly with new metadata extraction
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Add parseApkFilename() integration to extract environment and commit info
- Return environment field (dev/sandbox/product/other) in API response
- Return commit field (short commit ID) in API response
- Add comprehensive test coverage for the new metadata
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Modified projects API route to return objects with name and displayName fields
- Added comprehensive tests for the updated API response structure
- Tests verify display name mapping and error handling
- All existing tests continue to pass
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>