Page MenuHomePhabricator

Record the abstract-client-mode flag's expected lifecycle
Open, MediumPublic

Description

Unlike the existing three mode flags, which are architectural and permanent, $wgWikiLambdaEnableAbstractClientMode is a rollout gate and should be removable once abstract client mode has been enabled on more than one production wiki and proven stable. The long-term expectation is specifically that $wgWikiLambdaEnableAbstractClientMode will be folded into $wgWikiLambdaEnableClientMode: the two flags describe the same underlying capability from different angles (any wiki that can call Wikifunctions cross-wiki is a candidate to display cross-wiki Abstract Content), and the only reason to keep them separate today is rollout safety. Call sites added in this milestone should therefore always check client mode and abstract-client mode together as a unit, never assuming one without the other, so that the eventual merger is a mechanical rename rather than a semantic audit. This bullet captures the intent to remove the flag at that future point, so that it does not silently become a permanent branch in the codebase (the same hazard flagged in the M0 migration audit bullet).