Parent: #50 Train position: **8 of 22** Phase: **P1 — Incremental adoption** ## Problem Every app receives the complete fixed set of lifecycle flags, and group state can overwrite a consumer's typed `click.Context.obj`. ## Acceptance criteria - [ ] Each standard option can be enabled, disabled, renamed, or configured independently while current `App` defaults remain compatible. - [ ] User-option collisions and incompatible aliases fail at registration with actionable errors. - [ ] Normalized lifecycle values live in a namespaced typed record in `click.Context.meta` without clobbering `obj`. - [ ] Group/leaf placement, precedence, and help behavior are deterministic and tested. ## Dependencies - #57
Parent: #50
Train position: 8 of 22
Phase: P1 — Incremental adoption
Problem
Every app receives the complete fixed set of lifecycle flags, and group state can overwrite a consumer's typed
click.Context.obj.Acceptance criteria
Appdefaults remain compatible.click.Context.metawithout clobberingobj.Dependencies