JuliusBrussee/caveman · error · ValueError

bedrock endpoint must be runtime or mantle

Error message

bedrock endpoint must be runtime or mantle

What it means

Error "bedrock endpoint must be runtime or mantle" thrown in JuliusBrussee/caveman.

Source

Thrown at packages/sdk/python/caveman_cloud/core.py:591

        )

    def openai(self, upstream_key: str | None = None) -> "Provider":
        return Provider(self, "/openai/v1", upstream_key)

    def anthropic(self, upstream_key: str | None = None) -> "Provider":
        return Provider(self, "/anthropic", upstream_key)

    def gemini(self, upstream_key: str | None = None) -> "Provider":
        return Provider(self, "/gemini", upstream_key)

    def bedrock(self, region: str, *, endpoint: str = "runtime") -> dict[str, Any]:
        """Describe the first-party Bedrock gateway surface.

        Runtime is the default. Mantle is an explicit opt-in descriptor. This
        method performs no network request and carries no AWS secret.
        """
        if endpoint not in {"runtime", "mantle"}:
            raise ValueError("bedrock endpoint must be runtime or mantle")
        return {
            "region": region,
            "endpoint": endpoint,
            "gateway_prefix": "/bedrock/anthropic" if endpoint == "mantle" else "/bedrock",
            "instrumented": True,
            "sdk_only": False,
        }

    def vertex(self, upstream_key: str | None = None) -> "Provider":
        """Vertex AI client proxied through the gateway (``/vertex`` prefix).

        Routes Google Gemini and Anthropic Claude calls through Caveman for
        metering. ``upstream_key`` is a Google OAuth2 access token (e.g. from
        ``gcloud auth print-access-token`` or Application Default Credentials);
        the gateway forwards it as ``Authorization: Bearer …``. Mirrors the
        TypeScript ``Cave.vertex``.
        """
        return Provider(self, "/vertex", upstream_key)

View on GitHub (pinned to 27d5a3981a)

Solutions

  1. Set the bedrock endpoint to "runtime" or "mantle".

When it happens

Trigger: Thrown at packages/sdk/python/caveman_cloud/core.py:591 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of JuliusBrussee/caveman@27d5a3981a (2026-08-15). Data as JSON: /api/errors/819b9d038ae13b29. Report an issue: GitHub.