docs: reflect ether/etherpad#7841 default-true flag flip#21
Conversation
ether/etherpad#7841 flips settings.enablePluginPadOptions default to true, turning the runtime gate from opt-in into opt-out. Update the helper's README + source comments so the framing matches: - README PadToggle section: requires the patch (3.0.0+) AND the flag not be explicitly false; calls out that older 3.x cores shipped it default false so operators on those versions still need the explicit opt-in. - pad-toggle-server.js / pad-toggle.js / pad-select-server.js comment blocks: remove the "default false per AGENTS.MD §52" framing; describe the post-flip default and explicit operator opt-out as the case where the warning fires. Behavior unchanged — runtime flag detection still reads clientVars.runtimeEnabled and warns when it's false; the warning copy itself ("settings.enablePluginPadOptions is false — set to true …") stays correct for operators who've explicitly disabled. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Qodo reviews are paused for this user.Troubleshooting steps vary by plan Learn more → On a Teams plan? Using GitHub Enterprise Server, GitLab Self-Managed, or Bitbucket Data Center? |
Review Summary by QodoUpdate docs for enablePluginPadOptions default-true flag flip
WalkthroughsDescription• Update documentation to reflect default-true flag flip in core • Clarify runtime gate changed from opt-in to opt-out behavior • Adjust README and code comments for new default behavior • Specify that older 3.x cores still require explicit opt-in Diagramflowchart LR
A["Etherpad Core Flag Flip<br/>enablePluginPadOptions<br/>default false → true"] -->|"Opt-in becomes<br/>Opt-out"| B["Update Helper Docs<br/>& Comments"]
B -->|"Clarify behavior<br/>for operators"| C["README & Source<br/>Code Comments"]
C -->|"Specify version<br/>requirements"| D["3.0.0+ with flag<br/>or explicit opt-out"]
File Changes1. README.md
|
Code Review by Qodo
1. README flag example contradicts
|
Two findings, both legit: 1. README settings.json snippet contradicted its preceding comment — comment talked about "disabling the passthrough" but the snippet set the flag to true (enable). Rewrote the prose to be unambiguous: the snippet is an explicit opt-in for older 3.x cores; mention `false` as the disable case in the same comment. 2. pad-select-server.js / pad-toggle-server.js comments framed the warning case as "explicit operator opt-out", but the runtime check is `=== true`, so the false branch also fires when the flag is absent (pre-flip cores, or operators who removed the key). Reworded to cover both cases — "absent on pre-flip cores, or explicitly false on current ones" — so future maintainers debugging padWideSupported off don't chase a phantom opt-out. Behavior unchanged. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
|
Addressed both Qodo findings in 781293f: Finding 1 (README snippet contradicts comment): rewrote the prose so the `enablePluginPadOptions: true` snippet is unambiguously the explicit opt-in case for older 3.x cores that shipped this default-false, with a note that `false` is the disable case. No more contradiction between the comment and the value shown. Finding 2 (opt-out comment misleading): reworded both `pad-select-server.js` and `pad-toggle-server.js` comments to cover both branches where `runtimeEnabled === false` fires — "absent on pre-flip cores, or explicitly false on current ones" — since `runtimeFlagEnabled = (root.enablePluginPadOptions === true)` returns false for both missing and `false` values. `pnpm test` 104/104 green locally; CI is green. |
Two findings, both legit: 1. README settings.json snippet contradicted its preceding comment — comment talked about "disabling the passthrough" but the snippet set the flag to true (enable). Rewrote the prose to be unambiguous: the snippet is an explicit opt-in for older 3.x cores; mention `false` as the disable case in the same comment. 2. pad-select-server.js / pad-toggle-server.js comments framed the warning case as "explicit operator opt-out", but the runtime check is `=== true`, so the false branch also fires when the flag is absent (pre-flip cores, or operators who removed the key). Reworded to cover both cases — "absent on pre-flip cores, or explicitly false on current ones" — so future maintainers debugging padWideSupported off don't chase a phantom opt-out. Behavior unchanged. Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Summary
Pairs with ether/etherpad#7841 which flips `settings.enablePluginPadOptions` default `false` → `true` in core. The runtime gate is now opt-out instead of opt-in.
Updated to match:
Behavior
Runtime detection is unchanged — `clientVars.runtimeEnabled` is the source of truth, and the warning still fires when it's `false`. The warning copy itself ("settings.enablePluginPadOptions is false — set to true …") stays correct for operators who've explicitly disabled.
Test plan
🤖 Generated with Claude Code