Treat workspace Python groups and extras as defaults that apply only when
provided by each project. Add independent per-project overrides through
[tool.pnpm.python]. Empty overrides disable the corresponding default;
explicit unknown names still fail.
Share extra selection between static manifests and prepared dynamic metadata.
Normalize extra names using the existing Python requirement types. Preserve
strict included-group validation and existing production/development
projections. Compute validated production and development requirements once
per project for locking and borrow their selected slice for the environment.
Dependency requirements still select local distribution extras
independently of the source project's own installation settings.
Move selection and group expansion into a manifest module to keep the
manifest implementation within the repository's file-size convention.
Related to pnpm/pnpm#14945 (item 8).