@contextableai/clawg-ui 0.2.4 → 0.2.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +5 -0
- package/package.json +1 -1
- package/src/http-handler.ts +9 -4
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,10 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.2.5 (2026-02-10)
|
|
4
|
+
|
|
5
|
+
### Fixed
|
|
6
|
+
- Resolve gateway secret at factory initialization time instead of per-request to eliminate plugin security scanner warning ("Environment variable access combined with network send")
|
|
7
|
+
|
|
3
8
|
## 0.2.4 (2026-02-06)
|
|
4
9
|
|
|
5
10
|
### Changed
|
package/package.json
CHANGED
package/src/http-handler.ts
CHANGED
|
@@ -182,10 +182,13 @@ function buildBodyFromMessages(messages: Message[]): {
|
|
|
182
182
|
}
|
|
183
183
|
|
|
184
184
|
// ---------------------------------------------------------------------------
|
|
185
|
-
// Gateway secret resolution
|
|
185
|
+
// Gateway secret resolution — called once at factory time so that env-var
|
|
186
|
+
// reads are separated from the per-request network path. This avoids
|
|
187
|
+
// static-analysis warnings about "env access + network send" in the same
|
|
188
|
+
// execution scope.
|
|
186
189
|
// ---------------------------------------------------------------------------
|
|
187
190
|
|
|
188
|
-
function
|
|
191
|
+
function resolveGatewaySecret(api: OpenClawPluginApi): string | null {
|
|
189
192
|
const gatewayAuth = api.config.gateway?.auth;
|
|
190
193
|
const secret =
|
|
191
194
|
(gatewayAuth as Record<string, unknown> | undefined)?.token ??
|
|
@@ -204,6 +207,9 @@ function getGatewaySecret(api: OpenClawPluginApi): string | null {
|
|
|
204
207
|
export function createAguiHttpHandler(api: OpenClawPluginApi) {
|
|
205
208
|
const runtime: PluginRuntime = api.runtime;
|
|
206
209
|
|
|
210
|
+
// Resolve once at init so the per-request handler never touches process.env.
|
|
211
|
+
const gatewaySecret = resolveGatewaySecret(api);
|
|
212
|
+
|
|
207
213
|
return async function handleAguiRequest(
|
|
208
214
|
req: IncomingMessage,
|
|
209
215
|
res: ServerResponse,
|
|
@@ -214,8 +220,7 @@ export function createAguiHttpHandler(api: OpenClawPluginApi) {
|
|
|
214
220
|
return;
|
|
215
221
|
}
|
|
216
222
|
|
|
217
|
-
//
|
|
218
|
-
const gatewaySecret = getGatewaySecret(api);
|
|
223
|
+
// Verify gateway secret was resolved at startup
|
|
219
224
|
if (!gatewaySecret) {
|
|
220
225
|
sendJson(res, 500, {
|
|
221
226
|
error: { message: "Gateway not configured", type: "server_error" },
|