Verify an installation
A deployment can build successfully while the workspace is still unusable. Verify Discoflare in layers so a failure points to the boundary that owns it.
1. Platform health
Request the public health endpoint:
curl -fsS https://chat.example.com/api/setup/health
Important fields:
| Field | Meaning |
|---|---|
ok | The database binding exists and its migrations completed. |
migrated | The current schema is available. |
ready | The first workspace and owner exist. |
users | Number of users currently stored. |
ownerSetup | A valid first-owner setup path is available while the workspace is not ready. |
bindings | Availability of storage, live coordination, and Agent bindings. |
realtimekit | Effective Huddles configuration is complete. |
Inspect the individual bindings fields required by the capability under test. A healthy D1 binding does not prove R2, KV, Durable Objects, Workflows, Workers AI, or Containers are ready.
2. Owner setup
Before the first owner is created, expect ok: true, ready: false, and ownerSetup: true. Complete the private setup claim, then expect ready: true and users of at least one.
3. Data persistence
Create a channel, send a uniquely identifiable message, and upload a small file. Reload the page and retrieve all three.
Remember that D1 owns durable facts, R2 owns attachment bytes, Durable Objects coordinate live state, and KV holds short-lived tickets. A test of one binding does not prove the others.
4. Browser behavior
In a normal browser session:
- Sign in as the owner.
- Send and receive a message without reloading.
- Open a second browser or private window and verify live delivery and presence.
- Download the uploaded attachment.
- Sign out and confirm protected workspace pages are no longer accessible.
This distinguishes a reachable health endpoint from a working session, WebSocket, and authorization path.
5. Registration policy
Test the configured policy using a new identity:
- Invite only: an uninvited identity must not become an active member.
- Open signup: a permitted new identity should become active immediately after satisfying the enabled authentication checks.
If email verification is enabled, also prove that the verification message arrives and the link can be used once.
6. Optional capabilities
Verify only integrations you enabled:
- Huddles: run Test connection, then start and end a huddle from two browsers.
- Push: enable notifications through a direct user action, create a mention from another member, and verify delivery while the target tab is not focused.
- Cloudflare Agents: run a Task and confirm its durable result. Immediately after deployment, allow time for the Sandbox image to provision.
- Workspace mail: send to the configured mailbox from an external address and reply from an authorized member.
Evidence to record
For an operational handoff, record these separately:
- application version and Worker version;
- health response after migration;
- owner setup and sign-in result;
- persistence result after reload or restart;
- browser realtime result; and
- each optional integration result.
That evidence makes “deployed” a testable state instead of a build status.