Skip to content

docs(triage): etc_ccpmblocker #26 - won't fix (protocol limit) + sweep close-out#19

Merged
Aybook merged 1 commit into
masterfrom
docs/etc_ccpmblocker-issue-26
May 6, 2026
Merged

docs(triage): etc_ccpmblocker #26 - won't fix (protocol limit) + sweep close-out#19
Aybook merged 1 commit into
masterfrom
docs/etc_ccpmblocker-issue-26

Conversation

@Aybook
Copy link
Copy Markdown
Contributor

@Aybook Aybook commented May 6, 2026

Last entry in the post-import upstream-issue triage sweep. Doc-only PR.

#26 (Won't fix)

Upstream symptom: With `etc_ccpmblocker` enabled in a hub of 300-400 users, the issue reporter could still establish CCPM with ~4% of them (mostly passive-mode) - even when both clients only had this one hub in common.

Why won't fix: What the script can do, it already does. The residual is a protocol-level limitation, not a script bug.

  • The script strips `CCPM` from `SU` on connect / inf, removing the "CCPM is available" hint other clients use to decide whether to negotiate.
  • For op-pair interactions it forges BINFs re-adding CCPM only between the two op-level users (legitimate bypass).
  • Beyond that: CCPM is peer-to-peer. Once two clients have CCPM-state cached from any prior session, they can retry the direct connection without needing fresh advertising. The hub cannot prevent two cooperating clients from opening a TCP socket between themselves.

A 100% block would require intercepting CTM/RCM messages and rewriting peer-known-capabilities - hub-core scope, not plugin scope. The issue reporter even acknowledges "only one hub that allows CCPM is enough".

Sweep close-out

This PR closes the post-import upstream-issue triage sweep. All 19 mapped upstream issues against imported plugins now have a documented disposition in `docs/UPSTREAM_TRIAGE.md`:

Plugin Issue(s) Disposition PR
etc_EventAnnouncer #1 Fixed #13
cmd_pm2offliners #29, #30, #41 Already addressed #14
etc_mainecho #5 Fixed defensively #15
etc_onlinecounter #19 Fixed #16
etc_requests #38 Fixed #17
etc_requests #40 Already addressed + feature deferred #17
etc_requests #36 Feature deferred #17
ptx_freshstuff #22, #18, #39 Fixed #18
etc_ccpmblocker #26 Won't fix - protocol limit this PR

Roll-up: 6 issues with code fixes, 4 already addressed by modernisation or v0.8, 2 deferred as feature work, 1 won't fix.

Five general / unmapped upstream issues (#28 search flood, #34 level-XX login gate, #33 schedule restart, #25 spam protection, #24 opchat history) belong to hub-core scope or don't have a single home plugin; not addressed in this sweep.

The "Plugins not yet triaged" header is replaced with a roll-up disposition table.

Test plan

  • No code changes; doc-only.

Closes upstream luadch/scripts#26.

…p close-out

Last entry in the upstream-issue triage sweep. Doc-only PR.

## #26 (won't fix)

Upstream symptom: with etc_ccpmblocker enabled in a 300-400 user hub,
~4% of users (mostly passive-mode) could still establish CCPM peer-
to-peer.

Why won't fix: what the script can do, it already does. The residual
4% is a protocol-level limitation, not a script bug:

- The script strips CCPM from BINF SU on connect / inf, removing the
  "CCPM is available" hint other clients use to decide whether to
  negotiate.
- For op-pair interactions it forges BINFs re-adding CCPM only
  between the two op-level users (legitimate bypass).
- Beyond that: CCPM is peer-to-peer. Once two clients have CCPM-
  state cached from any prior session, they can retry the direct
  connection without needing fresh advertising. The hub cannot
  prevent two cooperating clients from opening a TCP socket between
  themselves.

A 100% block would require intercepting CTM/RCM messages and
rewriting peer-known-capabilities - hub-core scope, not plugin scope.
The upstream issue reporter even acknowledges "only one hub that
allows CCPM is enough".

## Sweep close-out

This PR closes the post-import upstream-issue triage sweep. All 19
mapped upstream issues against imported plugins now have a documented
disposition in docs/UPSTREAM_TRIAGE.md:

- 6 issues fixed with code changes (PRs #13 / #15 / #16 / #17 / #18)
- 4 issues already addressed by modernisation or v0.8 (PRs #14 / #17)
- 2 issues deferred as feature work (PR #17)
- 1 issue won't fix as protocol-level limit (this PR)

Five general / unmapped upstream issues (#28 search flood, #34 level
gate, #33 schedule restart, #25 spam protection, #24 opchat history)
belong to hub-core scope or don't have a single home plugin; not
addressed in this sweep.

The "Plugins not yet triaged" header is replaced with a roll-up
disposition table.

Closes upstream luadch/scripts#26.
@Aybook Aybook merged commit 83b8562 into master May 6, 2026
@Aybook Aybook deleted the docs/etc_ccpmblocker-issue-26 branch May 6, 2026 13:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant