🚀 RELEASE: v2.3.2

This commit is contained in:
kumarabhirup 2026-03-15 13:53:53 -07:00
parent 94ef2c0288
commit 8fd2fe396a
No known key found for this signature in database
GPG Key ID: DB7CA2289CAB0167
4 changed files with 13 additions and 21 deletions

View File

@ -13,8 +13,8 @@ export type DenchCloudCatalogModel = {
id: string;
stableId: string;
displayName: string;
provider: "openai" | "anthropic";
transportProvider: "openai" | "bedrock";
provider: string;
transportProvider: string;
api: "openai-completions";
input: Array<"text" | "image">;
reasoning: boolean;
@ -77,12 +77,8 @@ function readBoolean(input: UnknownRecord, ...keys: string[]): boolean | undefin
return undefined;
}
function isProvider(value: string | undefined): value is "openai" | "anthropic" {
return value === "openai" || value === "anthropic";
}
function isTransportProvider(value: string | undefined): value is "openai" | "bedrock" {
return value === "openai" || value === "bedrock";
function isNonEmptyString(value: string | undefined): value is string {
return typeof value === "string" && value.trim().length > 0;
}
function normalizeInputKinds(input: unknown, supportsImages: boolean): Array<"text" | "image"> {
@ -213,7 +209,7 @@ export function normalizeDenchCloudCatalogModel(input: unknown): DenchCloudCatal
const displayName = readString(record, "name", "displayName", "display_name");
const provider = readString(record, "provider");
const transportProvider = readString(record, "transportProvider", "transport_provider");
if (!publicId || !stableId || !displayName || !isProvider(provider) || !isTransportProvider(transportProvider)) {
if (!publicId || !stableId || !displayName || !isNonEmptyString(provider) || !isNonEmptyString(transportProvider)) {
return null;
}

View File

@ -1,6 +1,6 @@
{
"name": "denchclaw",
"version": "2.3.1",
"version": "2.3.2",
"description": "Fully Managed OpenClaw Framework for managing your CRM, Sales Automation and Outreach agents. The only local productivity tool you need.",
"keywords": [],
"homepage": "https://github.com/DenchHQ/DenchClaw#readme",

View File

@ -1,6 +1,6 @@
{
"name": "dench",
"version": "2.3.1",
"version": "2.3.2",
"description": "Shorthand alias for denchclaw — AI-powered CRM platform CLI",
"license": "MIT",
"repository": {
@ -16,7 +16,7 @@
],
"type": "module",
"dependencies": {
"denchclaw": "^2.3.1"
"denchclaw": "^2.3.2"
},
"engines": {
"node": ">=22.12.0"

View File

@ -13,8 +13,8 @@ export type DenchCloudCatalogModel = {
id: string;
stableId: string;
displayName: string;
provider: "openai" | "anthropic";
transportProvider: "openai" | "bedrock";
provider: string;
transportProvider: string;
api: "openai-completions";
input: Array<"text" | "image">;
reasoning: boolean;
@ -85,12 +85,8 @@ function readBoolean(input: UnknownRecord, ...keys: string[]): boolean | undefin
return undefined;
}
function isProvider(value: string | undefined): value is "openai" | "anthropic" {
return value === "openai" || value === "anthropic";
}
function isTransportProvider(value: string | undefined): value is "openai" | "bedrock" {
return value === "openai" || value === "bedrock";
function isNonEmptyString(value: string | undefined): value is string {
return typeof value === "string" && value.trim().length > 0;
}
function normalizeInputKinds(input: unknown, supportsImages: boolean): Array<"text" | "image"> {
@ -223,7 +219,7 @@ export function normalizeDenchCloudCatalogModel(input: unknown): DenchCloudCatal
const displayName = readString(record, "name", "displayName", "display_name");
const provider = readString(record, "provider");
const transportProvider = readString(record, "transportProvider", "transport_provider");
if (!publicId || !stableId || !displayName || !isProvider(provider) || !isTransportProvider(transportProvider)) {
if (!publicId || !stableId || !displayName || !isNonEmptyString(provider) || !isNonEmptyString(transportProvider)) {
return null;
}