refactor(qqbot): localize internal declarations#102048
Conversation
7065e15 to
c1bfb9c
Compare
|
Codex review: needs maintainer review before merge. Reviewed July 8, 2026, 1:56 AM ET / 05:56 UTC. Summary PR surface: Source 0. Total 0 across 6 files. Reproducibility: not applicable. this is a declaration-surface cleanup, not a bug report. Current-main source shows the exports still exist, and the PR removes only export modifiers from private QQBot helper declarations. Review metrics: none identified. Merge readiness Overall follows the weaker of proof and patch quality, so missing proof can cap an otherwise strong patch. Rank-up moves:
Next step before merge
Security Review detailsBest possible solution: Keep only the intentionally promoted QQBot API/runtime exports public, and land this cleanup after normal draft readiness and exact-head declaration/build checks remain green. Do we have a high-confidence way to reproduce the issue? Not applicable: this is a declaration-surface cleanup, not a bug report. Current-main source shows the exports still exist, and the PR removes only export modifiers from private QQBot helper declarations. Is this the best way to solve the issue? Yes: localizing helper declarations in private QQBot AGENTS.md: found and applied where relevant. Codex review notes: model internal, reasoning high; reviewed against 8cbcc41ccbb9. Label changesLabel changes:
Label justifications:
Evidence reviewedPR surface: Source 0. Total 0 across 6 files. View PR surface stats
What I checked:
Likely related people:
What the crustacean ranks mean
Shiny media proof means a screenshot, video, or linked artifact directly shows the changed behavior. Runtime, network, CSP, and security claims still need visible diagnostics. How this review workflow works
|
|
Land-ready proof for
|
|
Merged via squash.
|
What Problem This Solves
QQBot still exported nine declaration-only implementation types that have no consumers outside their defining modules. That unnecessarily widens the plugin's internal TypeScript surface.
Why This Change Was Made
Repository-wide search and the refreshed codebase-memory graph found no external consumers. QQBot's public API exports the intentional account/config contracts and callable functions, not these helper declarations, so they can remain module-local without changing runtime behavior or structural signatures.
User Impact
None. This is a dead-export cleanup; QQBot runtime behavior and public entrypoints are unchanged.
Evidence
tbx_01kx04ehb2dsm7mh9v56x13s7xengine/approval/index.test.ts8cbcc41ccbb93f9143f58c86b39b0c35c20fa504, proving it is present on currentmainpnpm build: passed, including declaration generation and plugin SDK export checksgit diff --check: passed