.web/site.yaml is the current single-file form for site-level scalar configuration. It does not absorb every file in .web/.
| Responsibility | Location |
|---|---|
Default locale and supported locales | Top-level YAML keys |
| Render mode, color scheme, comment switches, detail sections | Top-level YAML keys when needed |
| Site SEO and template-level values | seo: and template: blocks |
| Shared-theme-library opt-in and AUP CSS tone/palette | theme: block |
| Design tokens | .web/tokens.json or compatible .web/tokens/ tree |
| Redirects | .web/redirects |
| Logo | .web/template/logo.svg |
site.yaml overrides corresponding legacy flat-file scalar values. Unknown YAML keys are ignored; malformed YAML falls back to legacy files rather than making the entire site unreadable. Neither behavior makes a typo safe; always inspect the rendered result.
The theme: block does not currently choose a .web/themes/<name>/ component overlay. Keep component overlay selection out of a tone or palette assumption.
Page title/description belongs in pages/<name>/seo/; content-object metadata belongs beside its content. See Site-wide configuration for an authoring workflow and Theme and token reference for visual boundaries.