dograh/.vscode/launch.json
Abhishek 982030d26e
chore: worktree dev setup (#484)
* chore: auto-assign per-worktree backend port via VS Code folderOpen task

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

* chore: remove .conductor dev setup (moved to native git worktrees)

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-30 15:40:29 +05:30

129 lines
4.4 KiB
JSON

// Debug configurations for Dograh contributors.
//
// Prerequisites:
// - Python interpreter selected in VS Code (devcontainer sets this
// automatically; otherwise pick `./venv/bin/python` via the
// "Python: Select Interpreter" command).
// - api/.env exists (copy from api/.env.example
// is created automatically by the devcontainer post-create script).
// - api/.env.test exists for the test configurations (copy from
// api/.env.example and point at a throwaway database).
//
// All Python configs set justMyCode=false so the debugger steps into
// library code (useful for tracing through pipecat/fastapi/etc.).
{
"version": "0.2.0",
"configurations": [
{
"name": "API: Uvicorn (reload)",
"type": "debugpy",
"request": "launch",
"module": "uvicorn",
"args": [
"api.app:app",
"--reload",
"--host", "0.0.0.0"
// Port comes from UVICORN_PORT in api/.env (per-worktree);
// unset -> uvicorn's default 8000. See scripts/worktree-assign-port.sh.
],
"cwd": "${workspaceFolder}",
"envFile": "${workspaceFolder}/api/.env",
"env": {
"PYTHONPATH": "${workspaceFolder}"
},
"justMyCode": false
},
{
"name": "API: Arq worker (watch)",
"type": "debugpy",
"request": "launch",
"module": "arq",
"args": [
"api.tasks.arq.WorkerSettings",
"--watch", "${workspaceFolder}/api",
"--custom-log-dict", "api.tasks.arq.LOG_CONFIG"
],
"cwd": "${workspaceFolder}",
"envFile": "${workspaceFolder}/api/.env",
"env": {
"PYTHONPATH": "${workspaceFolder}"
},
"justMyCode": false
},
{
"name": "API: Campaign orchestrator",
"type": "debugpy",
"request": "launch",
"module": "api.services.campaign.campaign_orchestrator",
"cwd": "${workspaceFolder}",
"envFile": "${workspaceFolder}/api/.env",
"env": {
"PYTHONPATH": "${workspaceFolder}"
},
"justMyCode": false
},
{
"name": "API: ARI manager",
"type": "debugpy",
"request": "launch",
"module": "api.services.telephony.ari_manager",
"cwd": "${workspaceFolder}",
"envFile": "${workspaceFolder}/api/.env",
"env": {
"PYTHONPATH": "${workspaceFolder}"
},
"justMyCode": false
},
{
"name": "Tests: API (pytest, full suite)",
"type": "debugpy",
"request": "launch",
"module": "pytest",
"args": ["tests", "-xvs"],
"cwd": "${workspaceFolder}/api",
"envFile": "${workspaceFolder}/api/.env.test",
"env": {
"PYTHONPATH": "${workspaceFolder}"
},
"justMyCode": false
},
{
"name": "Tests: API (pytest, current file)",
"type": "debugpy",
"request": "launch",
"module": "pytest",
"args": ["${file}", "-xvs"],
"cwd": "${workspaceFolder}/api",
"envFile": "${workspaceFolder}/api/.env.test",
"env": {
"PYTHONPATH": "${workspaceFolder}"
},
"justMyCode": false
},
{
"name": "Tests: Pipecat (pytest, current file)",
"type": "debugpy",
"request": "launch",
"module": "pytest",
"args": ["${file}", "-xvs"],
"cwd": "${workspaceFolder}/pipecat",
"envFile": "${workspaceFolder}/api/.env",
"env": {
"PYTHONPATH": "${workspaceFolder}/pipecat/src"
},
"justMyCode": false
},
{
"name": "Python: Current file",
"type": "debugpy",
"request": "launch",
"program": "${file}",
"cwd": "${workspaceFolder}",
"envFile": "${workspaceFolder}/api/.env",
"env": {
"PYTHONPATH": "${workspaceFolder}"
},
"justMyCode": false
}
]
}