openclaw - ✅(Solved) Fix [Bug]: pnpm build:plugin-sdk:dts fails on main because extensions/discord/src/proxy-request-client.ts includes unsupported runtimeProfile option [1 pull requests, 2 comments, 2 participants]

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…
GitHub stats
openclaw/openclaw#62447Fetched 2026-04-08 03:04:10
View on GitHub
Comments
2
Participants
2
Timeline
6
Reactions
0
Author
Timeline (top)
commented ×2referenced ×2cross-referenced ×1labeled ×1

A fresh clone of openclaw/openclaw on main fails pnpm build:plugin-sdk:dts because extensions/discord/src/proxy-request-client.ts defines default options with runtimeProfile, but that property is not part of ProxyRequestClientOptions.

Error Message

pnpm build:plugin-sdk:dts fails with this TypeScript error: extensions/discord/src/proxy-request-client.ts(44,3): error TS2353: pnpm build:plugin-sdk:dts fails with this TypeScript error: extensions/discord/src/proxy-request-client.ts(44,3): error TS2353: extensions/discord/src/proxy-request-client.ts(44,3): error TS2353: Based on the observed error, runtimeProfile is not part of the declared option type used by this file.

Root Cause

A fresh clone of openclaw/openclaw on main fails pnpm build:plugin-sdk:dts because extensions/discord/src/proxy-request-client.ts defines default options with runtimeProfile, but that property is not part of ProxyRequestClientOptions.

Fix Action

Fixed

PR fix notes

PR #1: fix(discord): remove runtimeProfile from defaultOptions (TS2353 on build)

Description (problem / solution / changelog)

pnpm build:plugin-sdk:dts fails on a fresh clone because runtimeProfile is in defaultOptions but not in ProxyRequestClientOptions. Fixes openclaw/openclaw#62447

Changed files

  • extensions/discord/src/proxy-request-client.ts (modified, +0/-2)
  • scripts/check-extension-package-tsc-boundary.mjs (modified, +47/-44)

Code Example

$ pnpm build:plugin-sdk:dts

> openclaw@2026.4.6 build:plugin-sdk:dts /private/tmp/openclaw-gitbug
> tsc -p tsconfig.plugin-sdk.dts.json

extensions/discord/src/proxy-request-client.ts(44,3): error TS2353:
Object literal may only specify known properties, and 'runtimeProfile' does not exist in type 'Omit<ProxyRequestClientOptions, "fetch">'.
RAW_BUFFERClick to expand / collapse

Bug type

Behavior bug (incorrect output/state without crash)

Beta release blocker

No

Summary

A fresh clone of openclaw/openclaw on main fails pnpm build:plugin-sdk:dts because extensions/discord/src/proxy-request-client.ts defines default options with runtimeProfile, but that property is not part of ProxyRequestClientOptions.

Steps to reproduce

pnpm build:plugin-sdk:dts fails with this TypeScript error:

extensions/discord/src/proxy-request-client.ts(44,3): error TS2353: Object literal may only specify known properties, and 'runtimeProfile' does not exist in type 'Omit<ProxyRequestClientOptions, "fetch">'.

Expected behavior

pnpm build:plugin-sdk:dts should pass on main in a fresh clone after a successful pnpm install --frozen-lockfile.

Actual behavior

pnpm build:plugin-sdk:dts fails with this TypeScript error:

extensions/discord/src/proxy-request-client.ts(44,3): error TS2353: Object literal may only specify known properties, and 'runtimeProfile' does not exist in type 'Omit<ProxyRequestClientOptions, "fetch">'.

OpenClaw version

2026.4.6

Operating system

Darwin 25.4.0 (arm64)

Install method

pnpm from source

Model

N/A

Provider / routing chain

N/A

Additional provider/model setup details

Not applicable; the failure occurs in repo TypeScript declaration generation before runtime model/provider execution.

Logs, screenshots, and evidence

$ pnpm build:plugin-sdk:dts

> [email protected] build:plugin-sdk:dts /private/tmp/openclaw-gitbug
> tsc -p tsconfig.plugin-sdk.dts.json

extensions/discord/src/proxy-request-client.ts(44,3): error TS2353:
Object literal may only specify known properties, and 'runtimeProfile' does not exist in type 'Omit<ProxyRequestClientOptions, "fetch">'.

Impact and severity

Affected users/systems/channels: Contributors working from a fresh clone of openclaw/openclaw on main Severity: High (blocks plugin SDK declaration generation) Frequency: Observed on the reproduced run above Consequence: Contributors cannot complete pnpm build:plugin-sdk:dts successfully on main

Additional information

The failing code in extensions/discord/src/proxy-request-client.ts currently includes:

const defaultOptions = { tokenHeader: "Bot", baseUrl: "https://discord.com/api", apiVersion: 10, userAgent: "DiscordBot (https://github.com/buape/carbon, v0.0.0)", timeout: 15_000, queueRequests: true, maxQueueSize: 1000, runtimeProfile: "persistent", scheduler: {}, } satisfies Omit<ProxyRequestClientOptions, "fetch">;

ProxyRequestClientOptions is declared as:

export type ProxyRequestClientOptions = RequestClientOptions & { fetch?: typeof fetch; };

Based on the observed error, runtimeProfile is not part of the declared option type used by this file.

extent analysis

TL;DR

  • The most likely fix is to add the runtimeProfile property to the ProxyRequestClientOptions type or remove it from the defaultOptions object.

Guidance

  • Verify that the runtimeProfile property is necessary for the ProxyRequestClient by reviewing its usage and documentation.
  • Update the ProxyRequestClientOptions type to include the runtimeProfile property, if it is required.
  • Alternatively, remove the runtimeProfile property from the defaultOptions object if it is not necessary.
  • Check for any other properties in the defaultOptions object that may not be part of the ProxyRequestClientOptions type.

Example

// Update ProxyRequestClientOptions type to include runtimeProfile
export type ProxyRequestClientOptions = RequestClientOptions & {
  fetch?: typeof fetch;
  runtimeProfile?: string; // Add runtimeProfile property
};

// Alternatively, remove runtimeProfile from defaultOptions
const defaultOptions = {
  tokenHeader: "Bot",
  baseUrl: "https://discord.com/api",
  apiVersion: 10,
  userAgent: "DiscordBot (https://github.com/buape/carbon, v0.0.0)",
  timeout: 15_000,
  queueRequests: true,
  maxQueueSize: 1000,
  scheduler: {},
} satisfies Omit<ProxyRequestClientOptions, "fetch">;

Notes

  • The fix depends on whether the runtimeProfile property is necessary for the ProxyRequestClient.
  • If the property is not necessary, removing it from the defaultOptions object may be the simplest solution.

Recommendation

  • Apply workaround: Update the ProxyRequestClientOptions type to include the runtimeProfile property, or remove it from the defaultOptions object, depending on the requirements of the ProxyRequestClient.

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

FAQ

Expected behavior

pnpm build:plugin-sdk:dts should pass on main in a fresh clone after a successful pnpm install --frozen-lockfile.

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING