Support explicit MIME type overrides
- Dominant language
- Rust
- Stars
- 2
- Forks
- 0
- PR merge metrics
- No merged PRs in 30d
Description
## Motivation
Shadow currently derives `Content-Type` from content signatures and the managed path extension. Some domain-specific or uncommon formats need an explicit media type that cannot be inferred reliably.
## Proposed direction
Add backend-neutral configuration for extension-based MIME overrides, for example:
```toml
[http.content_types]
wasm = "application/wasm"
glb = "model/gltf-binary"
custom = "application/x-custom"
```
Suggested precedence:
1. explicit configured override
2. specific content signature
3. managed path extension
4. `application/octet-stream`
The resolved `Content-Type` should be recomputed by `publish` and `check --remote`. It is intentionally not stored in the ref; changes to MIME inference are treated as Shadow behavior changes. This issue does not include `Content-Disposition` handling.
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by locating configuration handling and MIME resolution used by publish and check --remote. Trace how content signatures and managed path extensions currently determine Content-Type, then verify the configured-over-signature-over-extension-over-default precedence and that the resolved type is recomputed without being stored in the ref.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- backend, cli
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 55/100