```json
{
  "files": [
    "httpx_client.py"
  ],
  "edits": [
    {
      "file": "httpx_client.py",
      "diff": [
        "import httpx",
        "",
        "class HttpClient:",
        "    def __init__(self, base_url: str):",
        "        self.base_url = base_url",
        "        # Default timeout in seconds (private to avoid breaking public API)",
        "        self._timeout = 10.0",
        "",
        "    def _request(self, method: str, endpoint: str, **kwargs):",
        "        url = f\"{self.base_url}{endpoint}\"",
        "",
        "        # Ensure a timeout is always applied",
        "        timeout = kwargs.pop(\"timeout\", self._timeout)",
        "",
        "        with httpx.Client(timeout=timeout) as client:",
        "            response = client.request(method, url, **kwargs)",
        "            response.raise_for_status()",
        "            return response.json()",
        "",
        "    def get(self, endpoint: str, params=None, headers=None):",
        "        return self._request(\"GET\", endpoint, params=params, headers=headers)",
        "",
        "    def post(self, endpoint: str, data=None, json=None, headers=None):",
        "        return self._request(\"POST\", endpoint, data=data, json=json, headers=headers)"
      ]
    }
  ],
  "tests": [
    "tests/test_httpx_client_timeout.py"
  ],
  "risks": [
    "Existing code that relied on the absence of a timeout may now experience timeouts on slow endpoints, potentially causing failures in integration tests or production.",
    "The default timeout value (10 seconds) may need adjustment for specific use‑cases; if the wrapper is used in environments with very high latency, the hard‑coded value could be too low.",
    "Adding the timeout parameter to the internal `_request` method may inadvertently expose it if the method is called directly from user code; however, the public API (`get`, `post`, etc.) remains unchanged.",
    "If the underlying `httpx.Client` is replaced with a different transport (e.g., async or custom transport) the timeout handling may need to be adapted accordingly."
  ]
}
```