Problem
docs/user-config-typing.md:3 opens with:
This proposal resolves the typing boundary for Context.user_config without making a consumer's configuration schema part of the generic lifecycle.
The MkDocs navigation presents this page as "Typed user configuration" — a reference document for adopters. Opening with "This proposal" signals an unresolved design decision, which is confusing to consumers who need to understand the current behaviour and make implementation choices.
The decision has been made: Context.user_config is typed as object | None intentionally to avoid a fourth TypeVar on an already-complex generic. This should be stated as settled policy.
Fix
Replace the opening sentence with something that establishes the current design as fact:
This document explains the intentional typing boundary for Context.user_config and the recommended patterns for typed access in consuming applications.
Then continue with the existing content, editing any remaining proposal/draft language to match a settled design document.
Problem
docs/user-config-typing.md:3opens with:The MkDocs navigation presents this page as "Typed user configuration" — a reference document for adopters. Opening with "This proposal" signals an unresolved design decision, which is confusing to consumers who need to understand the current behaviour and make implementation choices.
The decision has been made:
Context.user_configis typed asobject | Noneintentionally to avoid a fourth TypeVar on an already-complex generic. This should be stated as settled policy.Fix
Replace the opening sentence with something that establishes the current design as fact:
Then continue with the existing content, editing any remaining proposal/draft language to match a settled design document.