fix(plugins): allow workboard typed hook registration#100610
fix(plugins): allow workboard typed hook registration#100610liuhaiyang14 wants to merge 1 commit into
Conversation
|
Thanks for the context here. I swept through the related work, and this is now duplicate or superseded. Close as superseded: current main already restored the Control UI sidebar export API, and the remaining Workboard hook allowlist fix is covered by a smaller current-base maintainer PR with focused proof. This PR is now dirty against current main and keeps an obsolete UI hunk alongside the still-useful hook-contract hunk. Root-cause cluster Members:
Proposal only: this assessment does not dispatch repair, suppress jobs, mutate sibling items, close, or merge anything. Canonical path: Use #100614 as the current-base landing path for the Workboard hook allowlist, and keep the sidebar export implementation already on main. So I’m closing this here and keeping the remaining discussion on #100614 and #100613. Review detailsBest possible solution: Use #100614 as the current-base landing path for the Workboard hook allowlist, and keep the sidebar export implementation already on main. Do we have a high-confidence way to reproduce the issue? Yes. From source, the boundary invariant scans bundled plugin production files for Is this the best way to solve the issue? No, this branch is no longer the best landing path. The hook allowlist hunk is the right fix, but the sidebar export hunk is already on main and leaves this PR dirty; the narrower current-base PR is cleaner. Security review: Security review cleared: The diff touches Control UI helper exports/tests and a plugin contract-test allowlist only; no dependency, workflow, secret, package, or runtime security surface was changed. AGENTS.md: found and applied where relevant. What I checked:
Likely related people:
Codex review notes: model internal, reasoning high; reviewed against d5371395218c. |
|
🦞✅ Reason: structured ClawSweeper close marker: close-required (sha=0c38afde1956ba5ebcc788afbd58e22235563ed9) Closed:
|
|
@clawsweeper re-review Rebased and narrowed in 132bd8e after current main already picked up the UI navigation export fix ( This PR now only updates the bundled typed hook contract allowlist for the existing Validation after rebase:
|
|
🦞🧹 Reason: re-review requires an open issue or PR. |
What Problem This Solves
After #100535,
extensions/workboard/index.tsregisters a typedsubagent_endedhook. The plugin contract explicitly allowlists bundled plugin files that callapi.on(...), but the workboard entrypoint was not added to that allowlist.That leaves
checks-fast-contracts-plugins-afailing with:extensions/workboard/index.tspresent in discovered typed hook registrationsextensions/workboard/index.tsmissing fromBUNDLED_TYPED_HOOK_REGISTRATION_FILESThe earlier UI navigation export failure has already been covered on current
mainby55a0012c fix(ui): restore sidebar navigation exports, so this PR is now intentionally narrowed to the remaining plugin contract gap.Summary
extensions/workboard/index.tsto the bundled typed hook registration allowlistsubagent_endedhook to the explicit hook-name guard mapEvidence
RED before fix:
pnpm test:contracts:plugins -- --runInBandfailed becauseextensions/workboard/index.tswas not inBUNDLED_TYPED_HOOK_REGISTRATION_FILES.GREEN after rebase to current
upstream/main:pnpm test:contracts:plugins -- --runInBand(43 passed,967 passed)pnpm check:test-typesgit diff --checkpnpm exec oxfmt --check src/plugins/contracts/boundary-invariants.test.tsNegative Boundaries
subagent_endedregistration.main.