Skip to content
中文

Function Testing ​

After deployment, verify service availability in the following order.

1. Health Check ​

bash
# Single-node: one-shot diagnosis
./scripts/doctor.sh
./scripts/doctor.sh --all
./scripts/doctor.sh --logs

# K8s: post-install verification
./scripts/verify-k8s-install.sh

# Gateway health
curl http://localhost:26100/health
# AG-UI service health
curl http://localhost:26103/health

For more health check commands, see Service Health Checks.

2. Base Service Connectivity ​

bash
# PostgreSQL (26110)
docker exec chatkit-postgres psql -U postgres -d chatkit -c "SELECT 1;"

# TimescaleDB (26111)
docker exec chatkit-timescaledb psql -U convstore -d convstore -c "SELECT hypertable_name FROM timescaledb_information.hypertables;"

# NATS (26112)
nc -z <host> 26112

# Redis (26114)
docker exec chatkit-redis redis-cli ping

# TEI (26117)
curl http://localhost:26117/embed -H "Content-Type: application/json" -d '{"inputs":"测试"}'

# Restate (26180/26181)
curl http://localhost:26181/health

Under K8s, use kubectl exec or kubectl port-forward instead; see Service Health Checks for commands.

3. Inbound Conversation Chain Smoke Test ​

Hop-by-hop health:

bash
curl http://localhost:26100/health   # api-gateway
curl http://localhost:26103/health   # ag-ui-server
curl http://localhost:26102/health   # orchestrator
curl http://localhost:26450/health   # ai-infra-rs

Send a test conversation (via the AG-UI SDK or a direct POST to api-gateway) and confirm the api-gateway -> ag-ui-server -> orchestrator -> ai-infra-rs -> delivery chain is working.

4. Contract Version Handshake Verification (Critical) ​

bash
curl http://localhost:26450/health | jq .contract_version

Expected: a non-unknown version number (e.g. 1.2.1).

If unknown is returned: the contract version is baked into the image at build time, so unknown indicates a defective image - contact Finogeeks support.

5. Channel Smoke Test (Optional) ​

Send a test message to each Feishu/WeCom/DingTalk bot to confirm the connector receives and delivers it.

6. Administrator Registration ​

See Administrator Registration.

7. License Health Check ​

bash
curl -s http://localhost:26101/health | jq .deployment_license

Expected: status is active (expired means the license has expired; see expires_at for the expiry time).

Digital Ecosystem Infrastructure.