helpers/media_artifacts.py.dox.md
media_artifacts.py helper module.media_artifacts.py because this directory is intentionally flat.media_artifacts.py owns the runtime implementation.media_artifacts.py.dox.md owns durable notes about responsibilities, contracts, side effects, and verification for that implementation.MediaArtifactError (ValueError)EmptyBase64Data (MediaArtifactError)InvalidBase64Data (MediaArtifactError)ArtifactTooLarge (MediaArtifactError)Base64Payload (no explicit base class)ImageDataUrl (no explicit base class)SavedArtifact (no explicit base class)compact_base64(data: str) -> strestimated_base64_decoded_size(data: str) -> intdecode_base64_payload(data: str, max_bytes: int | None=...) -> Base64Payloadnormalize_mime(mime_type: str, default: str=..., required_prefix: str=...) -> strguess_extension(mime_type: str, fallback: str=...) -> strfilename_from_uri(uri: str) -> strsafe_filename(value: str, default: str=..., default_extension: str=...) -> strimage_data_url_from_base64(data: str, mime_type: str=..., max_bytes: int | None=...) -> ImageDataUrlsave_base64_artifact(data: str, mime_type: str=..., directory_parts: tuple[str, ...], preferred_name: str=..., default_filename: str=..., max_bytes: int | None=...) -> SavedArtifactDEFAULT_MAX_ARTIFACT_SIZE_BYTES.__future__, base64, binascii, dataclasses, helpers, mimetypes, pathlib, urllib.parse, uuid.dataclass, join, compact_base64, Base64Payload, str.strip.lower, str.strip, urlparse, decode_base64_payload, normalize_mime, ImageDataUrl, guess_extension, safe_filename, Path, artifact_dir.mkdir, path.write_bytes, SavedArtifact, super.__init__, EmptyBase64Data, estimated_base64_decoded_size, base64.b64decode.tests/test_mcp_handler_multimodal.pytests/test_media_artifacts.pyNo child DOX files.