Commit 427c102
committed
fix(gateway): honor plugin suppression + drop provider-gated tools in raw coding factory
Address bot review on PR #63919:
[P2] Plugin suppression bypass — `createOpenClawCodingToolsRaw()` previously
delegated to the full coding factory which unconditionally appended
`createOpenClawTools(...)` and `listChannelAgentTools(...)`. The resolver
explicitly requests core-only resolution for known core tool requests
(`disablePluginTools: true`), but that intent was lost — a "core-only"
HTTP request could still re-enter plugin resolution via the coding factory.
Added `disablePluginTools` flag to `createOpenClawCodingTools` options that
skips both plugin spreads. Raw factory always sets it. Independent of the
existing `includeCoreTools` flag — keeps core coding tools materialized,
only suppresses plugin loading.
[P2] Provider-gated tools without context — `apply_patch` is provider-gated
to OpenAI-family models. The /tools/invoke HTTP surface has no session-bound
model context, so allowlisting `apply_patch` would silently produce nothing
(resolver reports tool unavailable). Added `excludeProviderGatedTools` flag
that drops provider-gated tools at construction time. Raw factory always
sets it. Documented in tools-invoke HTTP API docs that `apply_patch` is no
longer materializable via this surface even if allowlisted.
[P3] Docs + changelog — updated `docs/gateway/tools-invoke-http-api.md` to
reflect the new default deny entries (`process`, `write`, `edit`) and added
a "Coding tools available via HTTP" section. Added Unreleased changelog
entry describing the new feature and contract.
Local tests: 99/99 in tools-invoke-http suites pass on private fork
(legacy fork has pre-existing typebox dep issue unrelated to this change).1 parent 004d2c7 commit 427c102
3 files changed
Lines changed: 48 additions & 5 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
10 | 10 | | |
11 | 11 | | |
12 | 12 | | |
| 13 | + | |
13 | 14 | | |
14 | 15 | | |
15 | 16 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
106 | 106 | | |
107 | 107 | | |
108 | 108 | | |
109 | | - | |
| 109 | + | |
| 110 | + | |
| 111 | + | |
| 112 | + | |
110 | 113 | | |
111 | 114 | | |
112 | | - | |
| 115 | + | |
113 | 116 | | |
114 | 117 | | |
115 | 118 | | |
116 | 119 | | |
117 | 120 | | |
118 | 121 | | |
119 | 122 | | |
| 123 | + | |
| 124 | + | |
| 125 | + | |
| 126 | + | |
120 | 127 | | |
121 | 128 | | |
122 | 129 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
311 | 311 | | |
312 | 312 | | |
313 | 313 | | |
| 314 | + | |
| 315 | + | |
| 316 | + | |
| 317 | + | |
| 318 | + | |
| 319 | + | |
| 320 | + | |
| 321 | + | |
| 322 | + | |
| 323 | + | |
| 324 | + | |
| 325 | + | |
| 326 | + | |
| 327 | + | |
| 328 | + | |
| 329 | + | |
| 330 | + | |
314 | 331 | | |
315 | 332 | | |
316 | 333 | | |
| |||
500 | 517 | | |
501 | 518 | | |
502 | 519 | | |
| 520 | + | |
503 | 521 | | |
504 | 522 | | |
505 | 523 | | |
| |||
706 | 724 | | |
707 | 725 | | |
708 | 726 | | |
709 | | - | |
710 | | - | |
| 727 | + | |
| 728 | + | |
| 729 | + | |
| 730 | + | |
| 731 | + | |
| 732 | + | |
| 733 | + | |
711 | 734 | | |
712 | 735 | | |
713 | 736 | | |
| |||
883 | 906 | | |
884 | 907 | | |
885 | 908 | | |
886 | | - | |
| 909 | + | |
| 910 | + | |
| 911 | + | |
| 912 | + | |
| 913 | + | |
| 914 | + | |
| 915 | + | |
| 916 | + | |
| 917 | + | |
| 918 | + | |
| 919 | + | |
| 920 | + | |
| 921 | + | |
887 | 922 | | |
0 commit comments