Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,11 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- Tools own their contract (LOU-D22): `ToolDescriptor` gains optional `inputSchema` (zod) and `execute(args, ctx)`, which are now the canonical fields. `defineTool()` sets both and no longer calls `ai`'s `tool()`. Argument validation, the schema sent to the model, and tool execution read them first and fall back to `tool.parameters` / `tool.execute`. `ToolDescriptor.tool` (the `ai` v4 `Tool`) is now legacy: it is still built by `defineTool()` and still accepted on hand-written descriptors this release, but new code should set `inputSchema` and `execute`.

### Removed
- BREAKING: `validateTokenQuotas()` (`src/security/quotas.ts`) and the SaaS-era types `SaaSContext`, `QuotaConfig`, `UsageStats` and `QuotaValidationResult` (LOU-D36) no longer ship from the package root. Nothing in the SDK called them. No replacement; copy the file into your project if you relied on it.
- BREAKING: `ConfigManager` and `SDKConfig` (`src/core/ConfigManager.ts`) (LOU-D36) no longer ship from the package root or `./core` (which still exports `AgentBuilder`). Nothing in the SDK used them. No replacement; copy the file into your project if you relied on it.
- BREAKING: The formatters (LOU-D36) `getCurrentTS()`, `getTS()`, `formatDate()`, `safeJsonParse()`, `removeCodeBlocks()`, `findCodeBlocks()`, `checkApiKey()` and the types `CodeBlock`, `CodeBlockError`, `CodeBlockResult` (`src/utils/formatters.ts`) no longer ship from the package root. No replacement; copy the file into your project if you relied on it.
- BREAKING: The JSON path helpers `getObjectByPath()` and `setRecursiveNames()` (`src/utils/json-path.ts`) (LOU-D36) no longer ship from the package root. No replacement; copy the file into your project if you relied on it.
- BREAKING: The file extraction helpers `getMimeType()`, `getFileExtensionFromMimeType()`, `replaceBase64Content()`, `isBinaryData()`, `extractBase64Data()`, `createDataUri()` and `ProcessFilesParams` (`src/utils/file-extractor.ts`) (LOU-D36) no longer ship from the package root. No replacement; copy the file into your project if you relied on it.
- BREAKING: The flows-ai converters (LOU-D35) are gone: `convertToFlowDefinition()` and `convertFromFlowDefinition()` (`src/flows/converters.ts`) no longer ship from the package root or `./flows`. There is no replacement: the flows-ai engine they targeted was never a dependency of this package and `FlowExecutor` never used them. Run flows with `FlowExecutor` directly.
- `nanoid` is no longer a dependency (LOU-D35). Generated ids (agent, run, trace, memory ids) now come from `globalThis.crypto.randomUUID()` via an internal `newId()`, so they are UUIDs instead of 21-character nanoids. Nothing public depended on the old format.
- `finishReason: 'max-steps'` (LOU-U19): a run that exhausts `maxSteps` while the model still wanted to continue (last turn ended in tool calls) now resolves with `finishReason: 'max-steps'` instead of the stale last-turn reason (usually `'tool_calls'`), on `ExecutionResult`, the `finish` event and `run.done`. Resumed runs count `initialSteps` toward the budget. A run that finishes naturally within the budget is unchanged. Code that treated `'tool_calls'` as "hit maxSteps" should check `'max-steps'` instead (the eval `completed()` message and the MCP server's agent tool do).
Expand Down
53 changes: 0 additions & 53 deletions src/core/ConfigManager.test.ts

This file was deleted.

64 changes: 0 additions & 64 deletions src/core/ConfigManager.ts

This file was deleted.

1 change: 0 additions & 1 deletion src/core/index.ts
Original file line number Diff line number Diff line change
@@ -1,2 +1 @@
export * from './ConfigManager';
export * from './AgentBuilder';
5 changes: 1 addition & 4 deletions src/security/index.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
/**
* Security module
*
* Provides cryptographic utilities, quota validation, and security-related functions
* Provides cryptographic utilities, sandboxing, and security-related functions
*/

// Types
Expand All @@ -10,8 +10,5 @@ export * from './types';
// Crypto utilities
export * from './crypto';

// Quota validation
export * from './quotas';

// Sandboxing (LOU-F4/F5/F6)
export * from './sandbox';
132 changes: 0 additions & 132 deletions src/security/quotas.test.ts

This file was deleted.

68 changes: 0 additions & 68 deletions src/security/quotas.ts

This file was deleted.

35 changes: 0 additions & 35 deletions src/security/types.ts
Original file line number Diff line number Diff line change
Expand Up @@ -18,24 +18,6 @@ export interface DTOEncryptionSettings {
encryptedFields: string[];
}

/**
* Quota configuration for SaaS mode
*/
export interface QuotaConfig {
allowedResults?: number;
allowedSessions?: number;
allowedUSDBudget?: number;
}

/**
* Current usage statistics
*/
export interface UsageStats {
usedResults?: number;
usedSessions?: number;
usedUSDBudget?: number;
}

/**
* Authorization context for requests
*/
Expand All @@ -44,20 +26,3 @@ export interface AuthorizationContext {
databaseIdHash: string;
permissions: string[];
}

/**
* SaaS context with quota and usage information
*/
export interface SaaSContext {
emailVerified: boolean;
currentQuota: QuotaConfig;
currentUsage: UsageStats;
}

/**
* Result of quota validation
*/
export interface QuotaValidationResult {
message: string;
status: number;
}
Loading
Loading