Explore/GitHub Agent Apps Campaign/Deep Chat playground
Hosted appChat componentHosted, in placesucceeded

Public playground of Deep Chat, an open-source chat component for websites. Tested in place.

Tested in place byDeepQA Teamatdeepchat.dev/playgroundonSep 18, 2026

Run #1model gemini-balanced (vertex)took 10m

8 of 9 scenarios passed, 1 failed, no issues after the audit.

Share on X
Deep Chat playground in the browser during the run

By the numbers

8 of 9
scenarios passed, 1 failed
143
browser actions
33
screenshots
136
model calls
9.5
minutes
9
scenarios
8
passed
1
failed
0
blocked
0
issues

Walkthrough

Every scenario DeepQA drove in the browser, in plan order, with the 28 screenshots it captured along the way. A passing scenario is evidence too.

  1. S1
    Send standard message in playground chat

    4 steps, 4 screenshots

    pass
    S1-1.png
    S1 · Send standard message in playground chat
    S1-3.png
    S1 · Send standard message in playground chat
    S1-6.png
    S1 · Send standard message in playground chat
    S1-9.png
    S1 · Send standard message in playground chat
    • Navigated to https://deepchat.dev/playground/ and saw the welcome screen with Start button.
    • Clicked Start button; a chat textbox became available in the playground interface.
    • Typed 'Hello Deep Chat' into the playground chat text input box.
    • Pressed Enter and observed 'Hello Deep Chat' rendered as a chat bubble message in the playground chat interface.
    • The chat interface rendered 'Hello Deep Chat' as a chat message bubble upon typing and pressing Enter in the text input box.
  2. S2
    Submit excessively long text in chat input

    4 steps, 4 screenshots

    pass
    S2-1.png
    S2 · Submit excessively long text in chat input
    S2-3.png
    S2 · Submit excessively long text in chat input
    S2-6.png
    S2 · Submit excessively long text in chat input
    S2-8.png
    S2 · Submit excessively long text in chat input
    • Clicked the Start button on the playground landing page to initialize the chat interface.
    • Entered a 500-character string into the deep chat input box and pressed Enter; the interface remained responsive and handled the text container wrapping without layout breaking or overflow.
    • Navigated to https://deepchat.dev/playground/ and clicked the 'Start' button to initialize the chat interface.
    • Entered a 500-character test string into the Deep Chat text input box.
    • Pressed Enter; the chat interface handled the long message container gracefully without breaking layout, overflowing bounds, or causing UI unresponsiveness.
  3. S3
    Prevent empty message submission

    4 steps, 2 screenshots

    pass
    S3-2.png
    S3 · Prevent empty message submission
    S3-6.png
    S3 · Prevent empty message submission
    • Clicked Start button on Playground page; Deep Chat component with textbox appeared.
    • Pressed Enter while text input was empty; no empty message bubble or action was triggered.
    • Navigated to https://deepchat.dev/playground/ and clicked the 'Start' button to initialize the playground chat component.
    • Focused the empty chat textbox and pressed Enter.
    • Observed that no empty message bubble was created or added to the chat, correctly ignoring empty submissions.
  4. S4
    Navigate via docs sidebar

    2 steps, 3 screenshots

    pass
    S4-2.png
    S4 · Navigate via docs sidebar
    S4-4.png
    S4 · Navigate via docs sidebar
    S4-7.png
    S4 · Navigate via docs sidebar
    • Navigated to the Deep Chat documentation introduction page.
    • Clicked the Installation sidebar link and observed the URL change to /docs/installation and the main content update with installation instructions.
    • Clicked the Connect sidebar link and verified the main content updated to show the Connect documentation with API connection details.
    • The documentation sidebar links navigation works properly without errors or broken links. Clicking links like 'Installation' and 'Connect' successfully updates the page URL and renders the corresponding documentation content.
  5. S5
    Navigate via examples sidebar

    2 steps, 4 screenshots

    pass
    S5-2.png
    S5 · Navigate via examples sidebar
    S5-4.png
    S5 · Navigate via examples sidebar
    S5-8.png
    S5 · Navigate via examples sidebar
    S5-10.png
    S5 · Navigate via examples sidebar
    • Navigated to /examples/frameworks/ where framework integration details and sidebar links are rendered.
    • Selected framework integration details render with instructions, code snippets, and live example links.
    • Navigating to /examples/frameworks loads the frameworks guide with all framework integrations (React, Vue, Svelte, Angular, Solid, Next, Nuxt, Vanilla JS).
    • Sidebar navigation links correctly scroll to or navigate between framework and examples sections without error or empty content.
  6. S6
    Open search modal

    2 steps, 3 screenshots

    fail
    S6-1.png
    S6 · Open search modal
    S6-8.png
    S6 · Open search modal
    S6-13.png
    S6 · Open search modal
    • Loaded https://deepchat.dev/playground/ with navigation bar visible including the search button.
    • Navigated to https://deepchat.dev/playground/.
    • Located the Search button ('Search (Meta+k)') in the navigation bar.
    • Clicked the Search button, but no search modal or overlay dialog opened; only an unstyled Search button element was added to the DOM without displaying any search input modal.
  7. S7
    Toggle dark and light mode

    3 steps, 3 screenshots

    pass
    S7-1.png
    S7 · Toggle dark and light mode
    S7-3.png
    S7 · Toggle dark and light mode
    S7-5.png
    S7 · Toggle dark and light mode
    • Initially loaded /playground/ with light mode active as indicated by the theme toggle button.
    • Toggled theme to dark mode; theme toggle button updated to indicate currently dark mode.
    • Toggled theme back to light mode; theme toggle button updated to indicate currently light mode.
    • Toggling the theme button switches the mode from light to dark and back to light smoothly, updating the accessible label and site theme.
  8. S8
    Verify core route integrity

    3 steps, 3 screenshots

    pass
    S8-2.png
    S8 · Verify core route integrity
    S8-4.png
    S8 · Verify core route integrity
    S8-6.png
    S8 · Verify core route integrity
    • Navigated to https://deepchat.dev/ and verified home page rendered successfully with heading Deep Chat and main layout.
    • Navigated to https://deepchat.dev/start/ and verified start page loaded successfully with Let's get started content.
    • Navigated to https://deepchat.dev/playground/ and verified playground page loaded successfully with interactive playground content.
    • All core routes (/, /start/, and /playground/) loaded their respective layouts and contents successfully without 404s or errors.
  9. S9
    Observe playground console errors

    3 steps, 2 screenshots

    pass
    S9-2.png
    S9 · Observe playground console errors
    S9-6.png
    S9 · Observe playground console errors
    • Navigated to https://deepchat.dev/playground/ and verified initial playground page load.
    • Observed playground successfully initialized and responded to input without fatal exceptions halting rendering.
    • The playground page at /playground loaded cleanly.
    • The playground interactive chat component initialized properly and accepted user input without any fatal errors halting initialization or execution.

Issues

Findings that survived the Critic's audit. Security-class issues stay summary-only until the maintainers ship a fix.

mediumwithdrawnfunctionalF1 · S6

Search button does not open search modal overlay on playground page

The evidence shows the search button fails to open the expected modal and instead adds an unstyled element to the DOM. The absence of console errors suggests this is a frontend logic or hydration issue rather than a blocked third-party script.

Expected

Clicking the Search button opens a visible search modal/dialog overlay allowing the user to search documentation.

Actual

No search modal or dialog appears on the screen when clicking the search button.

Repro · 2 steps
  1. Navigate to https://deepchat.dev/playground/
  2. Click the 'Search (Meta+k)' button in the navigation header

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.

  • S4 could not exercise this: WebSocket handshake error on placeholder URL in Connect documentation. A connection to wss://customapi.com/ fails with a 301 error in the console. The audit recorded the test environment as the cause, so it is not counted as an issue.

Critic audit

An adversarial second pass over every finding before it reaches the report.

1
findings reviewed
1
re-verified live
1
withdrawn
  • F1withdrawn

    Checked by hand in Chrome on 2026-09-18: the Search button opens the documentation search dialog, and so does Meta+K. The run read the page one second after the click, before the lazily loaded dialog had rendered, so this was a timing miss of the run, not a defect of the app.

  • The tester correctly identified the search component failure in S6, but missed console errors thrown on the documentation pages in S4 and S5.
  • The WebSocket error in S4 is an environment limitation caused by the documentation using a placeholder URL ('customapi.com') in a live demo component.
  • A possible defect in S5 ("Interface warning logged to console on frameworks example page") was not promoted: the live replay came back not-reproduced.
  • F1 was withdrawn by hand after a check in a real browser: Checked by hand in Chrome on 2026-09-18: the Search button opens the documentation search dialog, and so does Meta+K. The run read the page one second after the click, before the lazily loaded dialog had rendered, so this was a timing miss of the run, not a defect of the app.

Report

QA report: external/deepchat.dev at hosted

Core playground messaging and navigation are functional, but the search button fails to launch the search modal.

Testing covered nine scenarios focusing on playground chat interactions, message validation, theme toggling, core route navigation, sidebar links across docs and examples, and console error monitoring. Eight of the nine scenarios passed, confirming that standard and boundary message inputs, theming, and primary navigation operate smoothly.

The single confirmed failure occurred during search modal activation (F1), where clicking the search button on the playground interface produced no dialog or overlay. This impairs user discoverability across the documentation and example components.

An environment limitation prevented full validation of live WebSocket messaging in the Connect documentation (S4), where a demo component connects to a placeholder domain ('customapi.com'). All other evaluated user flows completed without regression.

Run summary
MetricCount
Scenarios executed9
Passed8
Failed1
Blocked0
Findings raised1
Issues after the audit1
Withdrawn by the audit0
Critical / high / medium / low0 / 0 / 1 / 0

Target: https://deepchat.dev/playground · Testing level: deep_feature · Stack: unknown

Issues

No issues stood after the audit.

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.

  • S4 could not exercise this: WebSocket handshake error on placeholder URL in Connect documentation. A connection to wss://customapi.com/ fails with a 301 error in the console. The audit recorded the test environment as the cause, so it is not counted as an issue.
Withdrawn findings

The Critic re-examined these claims and found the evidence did not support them. They are kept here rather than deleted.

  • Search button does not open search modal overlay on playground page (S6, medium): Checked by hand in Chrome on 2026-09-18: the Search button opens the documentation search dialog, and so does Meta+K. The run read the page one second after the click, before the lazily loaded dialog had rendered, so this was a timing miss of the run, not a defect of the app.
Scenario results
ScenarioPriorityResultIssues
S1 Send standard message in playground chathighpassnone
S2 Submit excessively long text in chat inputhighpassnone
S3 Prevent empty message submissionhighpassnone
S4 Navigate via docs sidebarhighpassnone
S5 Navigate via examples sidebarhighpassnone
S6 Open search modalmediumfailF1
S7 Toggle dark and light modemediumpassnone
S8 Verify core route integritylowpassnone
S9 Observe playground console errorslowpassnone
The audit

The Critic reviewed 1 finding and re-verified 1 of them live in the browser, replaying the reported steps on a fresh page.

  • The tester correctly identified the search component failure in S6, but missed console errors thrown on the documentation pages in S4 and S5.
  • The WebSocket error in S4 is an environment limitation caused by the documentation using a placeholder URL ('customapi.com') in a live demo component.
  • A possible defect in S5 ("Interface warning logged to console on frameworks example page") was not promoted: the live replay came back not-reproduced.
What to fix first
  1. Restore the click handler and modal attachment for the search button on the playground page (F1).
Coverage and caveats

In scope: Playground chat component interaction; Empty and edge-case text input handling; Theme toggling; Search modal functionality; Documentation and examples sidebar navigation.

Not covered: External CodeSandbox and StackBlitz integration links (out of scope for in-place hosted run); Accounts or backend AI API key configurations (needs an account or external service, out of scope for a hosted run).

  • The Deep Chat component uses Shadow DOM or custom elements, so validation relies on observable UI changes rather than standard DOM attributes.
  • The 'Start playground button' must be clicked to fully initialize the chat interface in the playground.
By the numbers
MetricValue
Scenarios8 passed, 1 failed, 0 blocked of 9 (27 planned steps)
Browser actions143 (24 clicks, 11 inputs, 29 navigations, 79 snapshots)
Screenshots33 (4 explore, 28 scenario, 1 critic), 28 captioned
Coverage5 pages, 0 forms, 3 flows, 2 console errors
Audit1 findings, 1 re-verified live, 0 confirmed, 0 promoted, 1 withdrawn
Model calls136
Tokens633,938 input, 6,538 output, 13,364 thinking
Time10 min
StageCallsInputOutputThinkingSeconds
explore1987,7111,17770754
plan12,9761,4773,25733
test109515,6142,9754,922431
critique626,1636924,11648
report11,4742173626

Run log

stagecallstokenstime
Explore1989.6k54s
Plan17.7k33s
Test109523.5k7m 11s
Critique631k48s
Report12.1k6s
Total136653.8k9m 32s
Intake
Explore
Plan
Test
Critique
Report
  • 06:51:48Zexploreexplore started
  • 07:01:20ZexploreExplored /playground/ (13 controls, 0 forms)
  • 07:01:20ZexploreExplored / (16 controls, 0 forms)
  • 07:01:20ZexploreExplored /start/ (9 controls, 0 forms)
  • 07:01:20ZexploreExplored /docs/introduction/ (33 controls, 0 forms)
  • 07:01:20ZexploreExplored /examples/frameworks/ (44 controls, 0 forms)
  • 07:01:20ZexploreMapped 5 pages, 0 forms, 3 flows in 19 turns.
  • 07:01:20Zexploreexplore completed in 54s.
  • 07:01:20Zplanplan started
  • 07:01:20ZplanPlanned 9 scenarios (5 high, 2 medium, 2 low).
  • 07:01:20Zplanplan completed in 33s.
  • 07:01:20Ztesttest started
  • 07:01:20ZtestS1 executed (pass)
  • 07:01:20ZtestS2 executed (pass)
  • 07:01:20ZtestS3 executed (pass)
  • 07:01:20ZtestS4 executed (pass)
  • 07:01:20ZtestS5 executed (pass)
  • 07:01:20ZtestS6 executed (fail), 1 finding
  • 07:01:20ZtestS7 executed (pass)
  • 07:01:20ZtestS8 executed (pass)
  • 07:01:20ZtestS9 executed (pass)
  • 07:01:20ZtestExecuted 9 scenarios: 8 passed, 1 failed, 0 blocked, 1 finding.
  • 07:01:20Ztesttest completed in 431s.
  • 07:01:20Zcritiquecritique started
  • 07:01:20ZcritiqueReviewed 1 findings; 2 possible defects spotted in passed scenarios.
  • 07:01:20ZcritiqueRe-verified a possible defect in S5: not-reproduced.
  • 07:01:20ZcritiqueAudit complete: 1 confirmed, 0 withdrawn, 0 promoted, 1 re-verified live.
  • 07:01:20Zcritique1 failure came from the test environment rather than the application. It is reported as an environment limitation, not an issue.
  • 07:01:20Zcritiquecritique completed in 48s.
  • 07:01:20Zreportreport started
  • 07:01:20ZreportReported 1 issue (0 critical, 0 high, 1 medium, 0 low) from 1 finding.
  • 07:01:20Zreportreport completed in 6s.

Put an agent team on your next pull request.

Connect a repo, dispatch a Run, and read an audited, evidence-backed report the same day.