QA report: Nutlope/logocreator at 268916b
The application is functional across core UI workflows, with one low-severity issue allowing whitespace-only company names to bypass required input validation.
Testing covered 12 scenarios evaluating form validation, Together AI API key management, style and color selectors, advanced settings toggles, theme persistence, and informational modals. Eleven scenarios passed without issue.
The single confirmed defect occurs when submitting a company name consisting solely of whitespace characters. Rather than rejecting the submission at the form validation layer, the interface accepts the input and proceeds to make a generation request.
Because the test environment did not have a valid Together AI API key configured, generation requests returned 401 Unauthorized responses. The run successfully verified error handling for missing and invalid keys, but end-to-end generation of rendered logos could not be exercised.
Run summary
| Metric | Count |
|---|
| Scenarios executed | 12 |
| Passed | 11 |
| Failed | 1 |
| Blocked | 0 |
| Findings raised | 1 |
| Issues after the audit | 1 |
| Withdrawn by the audit | 0 |
| Critical / high / medium / low | 0 / 0 / 0 / 1 |
Target: http://localhost:3000 · Testing level: deep_feature · Stack: node / pnpm (next)
Issues
Low severity
F1 · Company name field accepts whitespace-only input without validation
Severity: low · Type: functional · Verdict: confirmed · Scenario: S12
The evidence clearly shows the form accepts whitespace-only input and proceeds to submit, which is an application validation defect independent of the subsequent 401 API error caused by the missing key. The page reported 1 console error during the scenario.
Expected: The application should reject whitespace-only input with a validation error for the required Company name field and prevent form submission.
Actual: The form treats whitespace-only input as a valid company name, submits the logo generation request, and fails on the API key check ("Couldn't generate Your API key is invalid.") rather than validating the required field.
Steps to reproduce:
- Navigate to http://localhost:3000/
- Enter multiple spaces into the 'Company name' textbox
- Click the 'Generate logo' button
Evidence: screenshots/S12-6.png
Environment limitations
These failures came from the test environment, not from the application: a credential the sandbox does not hold, a demo nobody may write to, a resource it cannot reach. They are not counted as issues. They record what this run could not exercise.
- S1 could not exercise this: API request fails with 401 Unauthorized during logo generation. The API request fails with a 401 Unauthorized error due to the sandbox lacking a configured API key. The audit recorded the test environment as the cause, so it is not counted as an issue.
- S4 could not exercise this: Feeling lucky shortcut API request fails with 401 Unauthorized. The API request fails with a 401 Unauthorized error because a valid API key is missing from the environment. The audit recorded the test environment as the cause, so it is not counted as an issue.
Scenario results
| Scenario | Priority | Result | Issues |
|---|
| S1 Missing API key generation handling | high | pass | none |
| S2 Company name required field validation | high | pass | none |
| S3 Save and remove Together AI API key | high | pass | none |
| S4 Feeling lucky shortcut without API key | medium | pass | none |
| S5 Advanced settings expansion and Monochrome toggle | medium | pass | none |
| S6 Visual style and color selection updates | medium | pass | none |
| S7 Logo history empty state and dismissal | medium | pass | none |
| S8 Theme toggle state persistence | medium | pass | none |
| S9 Variations selector updates | medium | pass | none |
| S10 From website button interaction | low | pass | none |
| S11 What's this informational popover | low | pass | none |
| S12 Company name whitespace-only validation | low | fail | F1 |
The audit
The Critic reviewed 1 finding and re-verified 0 of them live in the browser, replaying the reported steps on a fresh page.
- Multiple scenarios resulted in 401 Unauthorized console errors because the sandbox environment lacks a valid Together AI API key, limiting end-to-end coverage for successful logo generation.
What to fix first
- Trim whitespace when checking whether the company name field is populated prior to initiating generation requests (Issue F1).
Coverage and caveats
In scope: Logo generation form validation; Configuration UI state (Advanced settings, Variations); API key modal lifecycle and state handling; Logo history viewing; Theme toggling persistence.
Not covered: Successful logo generation via Together AI; Logo history filled state.
- We cannot test successful logo generation or the filled history state because they depend on a valid external Together AI API key.
- The 'Design a logo in seconds' dialog on load does not block interaction with the main page, or can be implicitly closed by clicking outside it.
By the numbers
| Metric | Value |
|---|
| Scenarios | 11 passed, 1 failed, 0 blocked of 12 (30 planned steps) |
| Browser actions | 174 (42 clicks, 14 inputs, 15 navigations, 103 snapshots) |
| Screenshots | 34 (4 explore, 30 scenario, 0 critic), 29 captioned |
| Coverage | 1 pages, 2 forms, 4 flows, 1 console errors |
| Audit | 1 findings, 0 re-verified live, 1 confirmed, 0 promoted, 0 withdrawn |
| Model calls | 149 |
| Tokens | 802,983 input, 7,573 output, 15,990 thinking |
| Time | 7 min |
| Stage | Calls | Input | Output | Thinking | Seconds |
|---|
| explore | 30 | 180,590 | 1,716 | 1,604 | 87 |
| plan | 1 | 3,546 | 1,811 | 4,891 | 51 |
| test | 116 | 612,432 | 3,305 | 5,881 | 271 |
| critique | 1 | 4,770 | 522 | 3,262 | 28 |
| report | 1 | 1,645 | 219 | 352 | 5 |