Doctor (E2E Testing)
vibecontrols-doctor is the backend E2E test suite for the VibeControls product. It focuses on GraphQL/curl backend coverage for wspace-vibecontrols-svc and related agent/gateway flows through the workspace public gateway.
Repo structure
vibecontrols-doctor/
├── Makefile # Root test orchestration
├── README.md # This file
├── core/scripts/common.sh # Shared E2E utilities
└── wspace/modules/vibecontrols/ # Active backend E2E suite
├── Makefile # Module-level test targets
├── README.md
└── scripts/ # Backend E2E bash scripts
├── test-vibecontrols.sh # Main GraphQL CRUDL suite
├── test-agent-*.sh # Agent/API/CLI/plugin suites
├── test-ai-*.sh # AI plugin / agent-manager suites
└── story-vibe-project.sh # Story-level test: vibe per project
Environment selection
The suite defaults to production endpoints. Select the target environment with VIBECONTROLS_TARGET or E2E_TARGET_ENV:
| Target | Variable | Workspace gateway | Global gateway |
|---|---|---|---|
| local | VIBECONTROLS_TARGET=local | http://localhost:4003/workspaces/graphql | http://localhost:4000/global/graphql |
| alpha | VIBECONTROLS_TARGET=alpha | https://alphagraphqlworkspaces.burdenoff.com/workspaces/graphql | https://alphagraphql.burdenoff.com/global/graphql |
| prod | VIBECONTROLS_TARGET=prod (default) | https://graphqlworkspaces.burdenoff.com/workspaces/graphql | https://graphql.burdenoff.com/global/graphql |
Direct endpoint overrides are also supported:
E2E_WSPACE_PUBLIC_GATEWAY=https://custom.workspaces.example/workspaces/graphql \
E2E_GLOBAL_GATEWAY=https://custom.global.example/global/graphql \
make test-all
Alpha Cloudflare Access
When targeting alpha, provide service-token headers to pass Cloudflare Access:
VIBECONTROLS_TARGET=alpha \
CF_ACCESS_CLIENT_ID=<id> \
CF_ACCESS_CLIENT_SECRET=<secret> \
AUTH_TOKEN=<token> \
WORKSPACE_TOKEN=<token> \
WORKSPACE_ID=<id> \
USER_ID=<id> \
make test-all
Credentials
For local runs, the shared E2E env file is sourced automatically:
make test-all VIBECONTROLS_TARGET=local
For alpha/prod runs, credentials must come from the environment. These variables may be overridden:
AUTH_TOKEN(orE2E_AUTH_TOKEN)WORKSPACE_TOKEN(orE2E_WORKSPACE_TOKEN)WORKSPACE_ID(orE2E_WORKSPACE_ID)USER_ID(orE2E_USER_ID)ORG_ID(orE2E_ORG_ID)TENANT_ID(orE2E_TENANT_ID)
How to run tests
Probe gateway health
make test-health
Run everything
make test-all
Run against local services
make test-all VIBECONTROLS_TARGET=local
Run against alpha
VIBECONTROLS_TARGET=alpha \
CF_ACCESS_CLIENT_ID=<id> \
CF_ACCESS_CLIENT_SECRET=<secret> \
AUTH_TOKEN=<token> \
WORKSPACE_TOKEN=<token> \
WORKSPACE_ID=<id> \
USER_ID=<id> \
make test-all
Run against prod
VIBECONTROLS_TARGET=prod \
AUTH_TOKEN=<token> \
WORKSPACE_TOKEN=<token> \
WORKSPACE_ID=<id> \
USER_ID=<id> \
make test-all
Run a specific backend suite
make test-vibecontrols # full GraphQL CRUDL suite
make test-agents
make test-vibes
make test-sessions
make test-notes
make test-prompts
make test-audit
make test-analytics
make test-settings
make test-global-search
Run agent / plugin / AI / CLI suites
make test-agent-api
make test-agent-cli
make test-plugins-core
make test-ai-all
make test-cli-all
Run the story test
make test-story-vibe-project
Clean logs and temp artifacts
make clean
Notes
- The suite sources
core/scripts/common.shfrom this repo. DOCTOR_ROOTresolves to this repo (~/products/vibecontrols/vibecontrols-doctor).- Agent REST API tests (
test-agent-api,test-agent-cli, plugin/AI suites that hit the agent) still default tohttp://localhost:3005. Override withAGENT_URLwhen running against a remote agent.
Source
- Repository:
github.com/algoshred/vibecontrols-doctor - Related shared core:
~/products/dev/e2e/core/