# Security Policy ## Reporting a Vulnerability If you discover a security vulnerability in SocratiCode, please report it responsibly. **Do NOT open a public GitHub issue for security vulnerabilities.** Instead, email **[giancarlo@altaire.com](mailto:giancarlo@altaire.com)** with: - A description of the vulnerability - Steps to reproduce - Potential impact - Any suggested fixes (optional) You will receive an acknowledgment within 48 hours and a detailed response within 7 days indicating next steps. ## Scope This policy applies to the SocratiCode codebase and its managed Docker infrastructure (Qdrant and Ollama containers). It does not cover third-party services you may connect to (cloud Qdrant, OpenAI API, Google Gemini API). ## Security Model SocratiCode is designed to run locally by default: - **No data exfiltration** — In the default configuration (Ollama + Docker Qdrant), all data stays on your machine. No external API calls are made. - **No network listeners** — The MCP server communicates over stdio only. It does not open any HTTP endpoints. - **Docker isolation** — Qdrant and Ollama run in Docker containers with only the necessary ports exposed on localhost. - **No credentials stored** — API keys (OpenAI, Google, Qdrant) are passed via environment variables at runtime, never written to disk. ### When cloud providers are used If you configure `EMBEDDING_PROVIDER=openai` or `EMBEDDING_PROVIDER=google`, code chunks are sent to the respective cloud API for embedding generation. This is an explicit opt-in. The default configuration never contacts external services. ## Supported Versions Only the latest release is supported with security updates. | Version | Supported | |---------|-----------| | Latest | Yes | | Older | No | ## Disclosure Policy - Vulnerabilities will be patched and released as soon as practical - A security advisory will be published on GitHub after the fix is available - Credit will be given to reporters unless they prefer to remain anonymous