QA report: external/berth.club at hosted
No defects were confirmed during testing of the token creation and validation workflows.
Testing focused on the token launch lifecycle, including input validation on required and optional fields, creator tax boundary constraints, duplicate submission prevention, and portfolio updates after launch.
Two initial findings were raised regarding strict validation rules on social media links and creator tax slider limits, but the audit withdrew both findings after confirming the application was behaving as designed. One scenario testing minimal field token launches was blocked before submission could complete due to tool call budget constraints during wallet connection.
Overall validation handling for empty, whitespace, and negative inputs performed consistently, and zero open defects were identified in this run. Completing end-to-end token launch submissions under minimal configurations remains a test coverage gap.
Run summary
| Metric | Count |
|---|
| Scenarios executed | 11 |
| Passed | 8 |
| Failed | 2 |
| Blocked | 1 |
| Findings raised | 2 |
| Issues after the audit | 0 |
| Withdrawn by the audit | 2 |
| Critical / high / medium / low | 0 / 0 / 0 / 0 |
Target: https://berth.club · Testing level: deep_feature · Stack: unknown
Issues
No issues survived the audit.
Withdrawn findings
The Critic re-examined these claims and found the evidence did not support them. They are kept here rather than deleted.
- Strict URL validation on social link inputs blocks submission when generic URLs are entered (S2, medium): Enforcing platform-specific URL formats for specific social inputs (like X and Telegram) is expected behavior, not a defect, and the application correctly provides inline errors to guide the user.
- Creator tax field allows values above 5% (up to 10%) and proceeds to token launch (S6, medium): The defect is based on an assumed 5% maximum limit, which contradicts the application's explicit design configuring the slider to allow up to 10%.
Scenario results
| Scenario | Priority | Result | Issues |
|---|
| S1 Launch token with minimum required fields | high | blocked (Ran out of tool call budget while connecting the wallet before form submission could be completed.) | none |
| S2 Launch token with all optional fields | high | fail | none |
| S3 Verify created token appears in user portfolio | high | pass | none |
| S4 Reject submission with missing Coin name | medium | pass | none |
| S5 Reject submission with missing Ticker | medium | pass | none |
| S6 Reject Creator tax above maximum boundary | medium | fail | none |
| S7 Reject negative Creator tax | medium | pass | none |
| S8 Reject whitespace-only required fields | medium | pass | none |
| S9 Validate maximum length for Coin name | medium | pass | none |
| S10 Prevent duplicate token launch submissions | medium | pass | none |
| S11 Reject malformed URLs in social fields | low | pass | none |
The audit
The Critic reviewed 2 findings and re-verified 0 of them live in the browser, replaying the reported steps on a fresh page.
- Both findings were withdrawn because they penalize the application for functioning exactly according to its explicit design.
- Scenario S1 failed to complete its execution due to exhausting the tool call budget during the wallet connection phase.
Coverage and caveats
In scope: Token creation form and submission lifecycle; Field validation for required and optional creation parameters; Boundary testing for creator tax and URL fields; Integration of newly created tokens into the user's portfolio.
Not covered: Token swapping and liquidity pool trading interactions (focusing deeply on creation); Analytics and Harbormaster pages; Token Burn feature.
- The 'deep_feature' scope is applied to Token Creation (Launch a Coin), as it is the foundational primary flow.
- The injected test wallet automatically processes the 1 USDC creation fee when a valid form is submitted.
- Expanding the 'Website & social links' section reveals the specific input fields listed in the AppMap form.
- S1 could not be executed: Ran out of tool call budget while connecting the wallet before form submission could be completed..
By the numbers
| Metric | Value |
|---|
| Scenarios | 8 passed, 2 failed, 1 blocked of 11 (48 planned steps) |
| Browser actions | 194 (30 clicks, 38 inputs, 35 navigations, 91 snapshots) |
| Screenshots | 31 (4 explore, 27 scenario, 0 critic), 27 captioned |
| Coverage | 11 pages, 4 forms, 6 flows, 0 console errors |
| Audit | 2 findings, 0 re-verified live, 0 confirmed, 0 promoted, 2 withdrawn |
| Model calls | 189 |
| Tokens | 1,517,449 input, 10,608 output, 17,837 thinking |
| Time | 12 min |
| Wallet | 2 transactions, 2 signatures, 1 refusals on chain 5042002 |
| Stage | Calls | Input | Output | Thinking | Seconds |
|---|
| explore | 28 | 240,693 | 3,518 | 2,225 | 116 |
| plan | 1 | 5,347 | 2,106 | 3,429 | 38 |
| test | 158 | 1,265,693 | 4,578 | 9,346 | 536 |
| critique | 1 | 4,199 | 226 | 2,217 | 20 |
| report | 1 | 1,517 | 180 | 620 | 7 |