@lunnoa/client 1.1.0 → 1.3.0
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/README.md +22 -0
- package/dist/cli.js +821 -91
- package/dist/index.cjs +71 -20
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +132 -41
- package/dist/index.d.ts +132 -41
- package/dist/index.js +71 -21
- package/dist/index.js.map +1 -1
- package/dist/react.cjs +70 -22
- package/dist/react.cjs.map +1 -1
- package/dist/react.d.cts +129 -34
- package/dist/react.d.ts +129 -34
- package/dist/react.js +70 -22
- package/dist/react.js.map +1 -1
- package/package.json +1 -1
- package/skills/lunnoa-client/SKILL.md +21 -5
- package/skills/lunnoa-solution-design/SKILL.md +9 -7
package/dist/react.d.cts
CHANGED
|
@@ -109,6 +109,15 @@ type ChatMode = 'builder' | 'preview';
|
|
|
109
109
|
interface StreamMessageOptions {
|
|
110
110
|
/** Agent chat mode; defaults to the server default (`builder`). */
|
|
111
111
|
chatMode?: ChatMode;
|
|
112
|
+
/** Optional image attachment forwarded with this turn. */
|
|
113
|
+
data?: {
|
|
114
|
+
imageUrl?: string;
|
|
115
|
+
};
|
|
116
|
+
/**
|
|
117
|
+
* Answer to an ask-before-sending personal-data prompt.
|
|
118
|
+
* Applies to this message only.
|
|
119
|
+
*/
|
|
120
|
+
piiResolution?: 'anonymize' | 'fallback';
|
|
112
121
|
/** Abort the stream (closes the HTTP connection; the run keeps going server-side — call `stop` to cancel it). */
|
|
113
122
|
signal?: AbortSignal;
|
|
114
123
|
}
|
|
@@ -227,8 +236,6 @@ interface components {
|
|
|
227
236
|
SKILLS: boolean;
|
|
228
237
|
/** @description Whether the hexagonal agent builder canvas UI is enabled. */
|
|
229
238
|
AGENT_BUILDER_CANVAS: boolean;
|
|
230
|
-
/** @description Whether the Solution Designer UI is enabled. */
|
|
231
|
-
SOLUTION_DESIGNER: boolean;
|
|
232
239
|
/** @description Whether isolated code execution for agents is enabled. */
|
|
233
240
|
CODE_EXECUTION: boolean;
|
|
234
241
|
/** @description Whether SSO (OIDC) login is enabled. Requires at least one enabled SSO provider. */
|
|
@@ -849,9 +856,7 @@ interface components {
|
|
|
849
856
|
/** @description Error message to record against the queue item. */
|
|
850
857
|
error: string;
|
|
851
858
|
/** @description Additional structured error details, supplied as a JSON string. */
|
|
852
|
-
errorDetails?:
|
|
853
|
-
[key: string]: unknown;
|
|
854
|
-
};
|
|
859
|
+
errorDetails?: string;
|
|
855
860
|
};
|
|
856
861
|
BulkDeleteItemsDto: {
|
|
857
862
|
/** @description IDs of the queue items to delete. */
|
|
@@ -1086,11 +1091,6 @@ interface components {
|
|
|
1086
1091
|
attributes?: {
|
|
1087
1092
|
[key: string]: unknown;
|
|
1088
1093
|
};
|
|
1089
|
-
/**
|
|
1090
|
-
* Format: uuid
|
|
1091
|
-
* @description Workspace user ID of the entity owner.
|
|
1092
|
-
*/
|
|
1093
|
-
ownerId?: string;
|
|
1094
1094
|
};
|
|
1095
1095
|
ObjectTypeSummaryDto: {
|
|
1096
1096
|
/** @description Entity type ID. */
|
|
@@ -1206,8 +1206,6 @@ interface components {
|
|
|
1206
1206
|
attributes?: {
|
|
1207
1207
|
[key: string]: unknown;
|
|
1208
1208
|
};
|
|
1209
|
-
/** @description Workspace user ID of the new entity owner. */
|
|
1210
|
-
ownerId?: string;
|
|
1211
1209
|
};
|
|
1212
1210
|
ChangeObjectStateDto: {
|
|
1213
1211
|
/** @description ID of the target state. Must be a valid transition from the current state when the entity type defines transitions. */
|
|
@@ -1991,7 +1989,7 @@ interface components {
|
|
|
1991
1989
|
approvalStatus?: "pending" | "partially_approved" | "approved" | "rejected" | "expired";
|
|
1992
1990
|
/** @description Number of approve decisions received so far */
|
|
1993
1991
|
approvalsReceived?: number;
|
|
1994
|
-
/** @description
|
|
1992
|
+
/** @description How many approvals are required before the workflow continues */
|
|
1995
1993
|
approvalsRequired?: number;
|
|
1996
1994
|
};
|
|
1997
1995
|
PendingInputFieldDto: {
|
|
@@ -2369,11 +2367,15 @@ interface components {
|
|
|
2369
2367
|
* "imageUrl": "https://example.com/image.png"
|
|
2370
2368
|
* }
|
|
2371
2369
|
*/
|
|
2372
|
-
data?:
|
|
2373
|
-
|
|
2374
|
-
|
|
2375
|
-
|
|
2376
|
-
|
|
2370
|
+
data?: {
|
|
2371
|
+
/** @description URL of an image attached to the message. */
|
|
2372
|
+
imageUrl?: string;
|
|
2373
|
+
};
|
|
2374
|
+
/**
|
|
2375
|
+
* @description Answer to an ask-before-sending personal-data prompt. Applies to this message only.
|
|
2376
|
+
* @enum {string}
|
|
2377
|
+
*/
|
|
2378
|
+
piiResolution?: "anonymize" | "fallback";
|
|
2377
2379
|
};
|
|
2378
2380
|
StreamMessageStopDto: {
|
|
2379
2381
|
/** @description Partial assistant message to persist when stopping a stream */
|
|
@@ -2969,8 +2971,6 @@ interface ListEntitiesOptions {
|
|
|
2969
2971
|
state?: string;
|
|
2970
2972
|
/** Filter by several states (comma-separated server-side). */
|
|
2971
2973
|
states?: string[];
|
|
2972
|
-
/** Filter by owner workspace-user ID. */
|
|
2973
|
-
ownerId?: string;
|
|
2974
2974
|
/** Free-text search over entity names. */
|
|
2975
2975
|
search?: string;
|
|
2976
2976
|
sortBy?: string;
|
|
@@ -3002,7 +3002,6 @@ interface ExportEntitiesInput {
|
|
|
3002
3002
|
value: unknown;
|
|
3003
3003
|
}>;
|
|
3004
3004
|
format?: 'csv' | 'xlsx';
|
|
3005
|
-
includeRelatedEntityNames?: boolean;
|
|
3006
3005
|
}
|
|
3007
3006
|
/**
|
|
3008
3007
|
* Entities (the platform calls them Objects internally): the structured data
|
|
@@ -3108,7 +3107,6 @@ type ApprovalInboxItem = {
|
|
|
3108
3107
|
status: string;
|
|
3109
3108
|
requiredCount: number;
|
|
3110
3109
|
receivedApprovals: number;
|
|
3111
|
-
currentStageIndex?: number;
|
|
3112
3110
|
expiresAt?: string;
|
|
3113
3111
|
createdAt?: string;
|
|
3114
3112
|
updatedAt?: string;
|
|
@@ -3127,7 +3125,7 @@ type ApprovalInboxItem = {
|
|
|
3127
3125
|
comment?: string;
|
|
3128
3126
|
decidedAt?: string;
|
|
3129
3127
|
};
|
|
3130
|
-
/** People who can still decide
|
|
3128
|
+
/** People who can still decide. */
|
|
3131
3129
|
eligibleApprovers?: EligibleApprover[];
|
|
3132
3130
|
approval?: Record<string, unknown>;
|
|
3133
3131
|
};
|
|
@@ -3196,6 +3194,16 @@ declare class ProjectsResource {
|
|
|
3196
3194
|
create(data: CreateProjectInput): Promise<Project>;
|
|
3197
3195
|
}
|
|
3198
3196
|
|
|
3197
|
+
type QueueItemStatus = 'PENDING' | 'PROCESSING' | 'SUCCESS' | 'FAILED' | 'RETRYING';
|
|
3198
|
+
interface AddQueueItemErrorInput {
|
|
3199
|
+
/** Error message recorded on the item. */
|
|
3200
|
+
error: string;
|
|
3201
|
+
/**
|
|
3202
|
+
* Extra details. An object is sent as a JSON string, which is what the
|
|
3203
|
+
* server validates.
|
|
3204
|
+
*/
|
|
3205
|
+
errorDetails?: string | Record<string, unknown>;
|
|
3206
|
+
}
|
|
3199
3207
|
interface ListQueueItemsOptions {
|
|
3200
3208
|
limit?: number;
|
|
3201
3209
|
offset?: number;
|
|
@@ -3241,12 +3249,18 @@ declare class QueueItemsResource {
|
|
|
3241
3249
|
}): Promise<QueueItem[]>;
|
|
3242
3250
|
/** Returns items eligible for retry. */
|
|
3243
3251
|
listRetryable(queueId: string): Promise<QueueItem[]>;
|
|
3244
|
-
/** Returns items with the given status. */
|
|
3245
|
-
listByStatus(queueId: string, status:
|
|
3252
|
+
/** Returns a page of items with the given status. */
|
|
3253
|
+
listByStatus(queueId: string, status: QueueItemStatus, options?: {
|
|
3254
|
+
limit?: number;
|
|
3255
|
+
offset?: number;
|
|
3256
|
+
}): Promise<QueueItemList>;
|
|
3246
3257
|
/** Looks an item up by the external ID your system supplied. */
|
|
3247
3258
|
getByExternalId(queueId: string, externalId: string): Promise<QueueItemFull>;
|
|
3248
|
-
/**
|
|
3249
|
-
|
|
3259
|
+
/**
|
|
3260
|
+
* Searches items by external id, item data, and metadata.
|
|
3261
|
+
* Returns one page, same shape as `list`.
|
|
3262
|
+
*/
|
|
3263
|
+
search(queueId: string, query: string, options?: Omit<ListQueueItemsOptions, 'filterBy'>): Promise<QueueItemList>;
|
|
3250
3264
|
/** Returns per-status and per-priority counts for the queue. */
|
|
3251
3265
|
stats(queueId: string): Promise<QueueItemStats>;
|
|
3252
3266
|
/** Returns the recorded processing errors of an item. */
|
|
@@ -3258,10 +3272,7 @@ declare class QueueItemsResource {
|
|
|
3258
3272
|
/** Queues the item for another processing attempt. */
|
|
3259
3273
|
retry(queueId: string, itemId: string): Promise<QueueItem>;
|
|
3260
3274
|
/** Records a processing error on the item. */
|
|
3261
|
-
addError(queueId: string, itemId: string, error:
|
|
3262
|
-
message: string;
|
|
3263
|
-
[key: string]: unknown;
|
|
3264
|
-
}): Promise<QueueItem>;
|
|
3275
|
+
addError(queueId: string, itemId: string, error: AddQueueItemErrorInput): Promise<QueueItem>;
|
|
3265
3276
|
}
|
|
3266
3277
|
|
|
3267
3278
|
declare class QueuesResource {
|
|
@@ -3318,6 +3329,91 @@ declare class RunsResource {
|
|
|
3318
3329
|
startAndWait(input: StartRunInput, waitOptions?: WaitUntilFinishedOptions): Promise<Execution>;
|
|
3319
3330
|
}
|
|
3320
3331
|
|
|
3332
|
+
type ScorecardMeasureStatus = 'ON_TRACK' | 'AT_RISK' | 'OFF_TRACK' | 'NO_DATA';
|
|
3333
|
+
type ScorecardSummary = {
|
|
3334
|
+
id: string;
|
|
3335
|
+
name: string;
|
|
3336
|
+
periodLabel: string | null;
|
|
3337
|
+
description: string | null;
|
|
3338
|
+
FK_ownerId: string | null;
|
|
3339
|
+
createdAt: string;
|
|
3340
|
+
_count: {
|
|
3341
|
+
objectives: number;
|
|
3342
|
+
};
|
|
3343
|
+
};
|
|
3344
|
+
type ScorecardMeasure = {
|
|
3345
|
+
id: string;
|
|
3346
|
+
name: string;
|
|
3347
|
+
unit: string;
|
|
3348
|
+
currency: string | null;
|
|
3349
|
+
direction: 'HIGHER_IS_BETTER' | 'LOWER_IS_BETTER';
|
|
3350
|
+
kind: 'LEADING' | 'LAGGING';
|
|
3351
|
+
cadence: 'DAILY' | 'WEEKLY' | 'MONTHLY';
|
|
3352
|
+
sourceType: 'MANUAL' | 'API' | 'WORKFLOW' | 'BUILT_IN';
|
|
3353
|
+
builtInKey: string | null;
|
|
3354
|
+
target: number;
|
|
3355
|
+
atRiskThreshold: number | null;
|
|
3356
|
+
latest: {
|
|
3357
|
+
value: number;
|
|
3358
|
+
periodStart: string;
|
|
3359
|
+
createdAt: string;
|
|
3360
|
+
} | null;
|
|
3361
|
+
previousValue: number | null;
|
|
3362
|
+
series: {
|
|
3363
|
+
periodStart: string;
|
|
3364
|
+
value: number;
|
|
3365
|
+
}[];
|
|
3366
|
+
status: ScorecardMeasureStatus;
|
|
3367
|
+
stale: boolean;
|
|
3368
|
+
};
|
|
3369
|
+
type ScorecardObjective = {
|
|
3370
|
+
id: string;
|
|
3371
|
+
perspective: 'FINANCIAL' | 'CUSTOMER' | 'PROCESS' | 'LEARNING';
|
|
3372
|
+
name: string;
|
|
3373
|
+
description: string | null;
|
|
3374
|
+
ownerLabel: string | null;
|
|
3375
|
+
drivesIds: string[];
|
|
3376
|
+
position: number;
|
|
3377
|
+
status: ScorecardMeasureStatus;
|
|
3378
|
+
measures: ScorecardMeasure[];
|
|
3379
|
+
};
|
|
3380
|
+
type Scorecard = Omit<ScorecardSummary, '_count'> & {
|
|
3381
|
+
aiSpendUsdThisMonth: number;
|
|
3382
|
+
objectives: ScorecardObjective[];
|
|
3383
|
+
};
|
|
3384
|
+
type ScorecardMeasureValue = {
|
|
3385
|
+
id: string;
|
|
3386
|
+
FK_measureId: string;
|
|
3387
|
+
periodStart: string;
|
|
3388
|
+
value: number;
|
|
3389
|
+
note: string | null;
|
|
3390
|
+
sourceType: ScorecardMeasure['sourceType'];
|
|
3391
|
+
supersededAt: string | null;
|
|
3392
|
+
createdAt: string;
|
|
3393
|
+
};
|
|
3394
|
+
type RecordMeasureValueInput = {
|
|
3395
|
+
value: number;
|
|
3396
|
+
/** Any ISO date inside the target period; defaults to the current period. */
|
|
3397
|
+
period?: string;
|
|
3398
|
+
note?: string;
|
|
3399
|
+
};
|
|
3400
|
+
/**
|
|
3401
|
+
* Balanced Scorecard (workspace API). Pushing values needs `scorecard:record`.
|
|
3402
|
+
*/
|
|
3403
|
+
declare class ScorecardsResource {
|
|
3404
|
+
private readonly http;
|
|
3405
|
+
constructor(http: HttpClient);
|
|
3406
|
+
/** Lists scorecards in the workspace. */
|
|
3407
|
+
list(): Promise<ScorecardSummary[]>;
|
|
3408
|
+
/** Returns a scorecard with objectives, measures, latest values and status. */
|
|
3409
|
+
get(scorecardId: string): Promise<Scorecard>;
|
|
3410
|
+
/**
|
|
3411
|
+
* Records a measure value. A value for the same period replaces the current
|
|
3412
|
+
* one; the old value is kept as superseded history.
|
|
3413
|
+
*/
|
|
3414
|
+
recordValue(measureId: string, data: RecordMeasureValueInput): Promise<ScorecardMeasureValue>;
|
|
3415
|
+
}
|
|
3416
|
+
|
|
3321
3417
|
declare class TasksResource {
|
|
3322
3418
|
private readonly http;
|
|
3323
3419
|
constructor(http: HttpClient);
|
|
@@ -3337,9 +3433,7 @@ declare class TasksResource {
|
|
|
3337
3433
|
* messages in AI SDK UIMessage format. For token-by-token output use
|
|
3338
3434
|
* `client.agentChat.streamMessage` instead.
|
|
3339
3435
|
*/
|
|
3340
|
-
message(agentId: string, taskId: string, message: string | UIMessage, options?:
|
|
3341
|
-
chatMode?: ChatMode;
|
|
3342
|
-
}): Promise<string | UIMessage[]>;
|
|
3436
|
+
message(agentId: string, taskId: string, message: string | UIMessage, options?: Omit<StreamMessageOptions, 'signal'>): Promise<string | UIMessage[]>;
|
|
3343
3437
|
}
|
|
3344
3438
|
|
|
3345
3439
|
declare class VariablesResource {
|
|
@@ -3455,6 +3549,7 @@ declare class LunnoaClient {
|
|
|
3455
3549
|
readonly queues: QueuesResource;
|
|
3456
3550
|
readonly queueItems: QueueItemsResource;
|
|
3457
3551
|
readonly variables: VariablesResource;
|
|
3552
|
+
readonly scorecards: ScorecardsResource;
|
|
3458
3553
|
readonly connections: ConnectionsResource;
|
|
3459
3554
|
readonly projects: ProjectsResource;
|
|
3460
3555
|
readonly workflowApps: WorkflowAppsResource;
|
package/dist/react.d.ts
CHANGED
|
@@ -109,6 +109,15 @@ type ChatMode = 'builder' | 'preview';
|
|
|
109
109
|
interface StreamMessageOptions {
|
|
110
110
|
/** Agent chat mode; defaults to the server default (`builder`). */
|
|
111
111
|
chatMode?: ChatMode;
|
|
112
|
+
/** Optional image attachment forwarded with this turn. */
|
|
113
|
+
data?: {
|
|
114
|
+
imageUrl?: string;
|
|
115
|
+
};
|
|
116
|
+
/**
|
|
117
|
+
* Answer to an ask-before-sending personal-data prompt.
|
|
118
|
+
* Applies to this message only.
|
|
119
|
+
*/
|
|
120
|
+
piiResolution?: 'anonymize' | 'fallback';
|
|
112
121
|
/** Abort the stream (closes the HTTP connection; the run keeps going server-side — call `stop` to cancel it). */
|
|
113
122
|
signal?: AbortSignal;
|
|
114
123
|
}
|
|
@@ -227,8 +236,6 @@ interface components {
|
|
|
227
236
|
SKILLS: boolean;
|
|
228
237
|
/** @description Whether the hexagonal agent builder canvas UI is enabled. */
|
|
229
238
|
AGENT_BUILDER_CANVAS: boolean;
|
|
230
|
-
/** @description Whether the Solution Designer UI is enabled. */
|
|
231
|
-
SOLUTION_DESIGNER: boolean;
|
|
232
239
|
/** @description Whether isolated code execution for agents is enabled. */
|
|
233
240
|
CODE_EXECUTION: boolean;
|
|
234
241
|
/** @description Whether SSO (OIDC) login is enabled. Requires at least one enabled SSO provider. */
|
|
@@ -849,9 +856,7 @@ interface components {
|
|
|
849
856
|
/** @description Error message to record against the queue item. */
|
|
850
857
|
error: string;
|
|
851
858
|
/** @description Additional structured error details, supplied as a JSON string. */
|
|
852
|
-
errorDetails?:
|
|
853
|
-
[key: string]: unknown;
|
|
854
|
-
};
|
|
859
|
+
errorDetails?: string;
|
|
855
860
|
};
|
|
856
861
|
BulkDeleteItemsDto: {
|
|
857
862
|
/** @description IDs of the queue items to delete. */
|
|
@@ -1086,11 +1091,6 @@ interface components {
|
|
|
1086
1091
|
attributes?: {
|
|
1087
1092
|
[key: string]: unknown;
|
|
1088
1093
|
};
|
|
1089
|
-
/**
|
|
1090
|
-
* Format: uuid
|
|
1091
|
-
* @description Workspace user ID of the entity owner.
|
|
1092
|
-
*/
|
|
1093
|
-
ownerId?: string;
|
|
1094
1094
|
};
|
|
1095
1095
|
ObjectTypeSummaryDto: {
|
|
1096
1096
|
/** @description Entity type ID. */
|
|
@@ -1206,8 +1206,6 @@ interface components {
|
|
|
1206
1206
|
attributes?: {
|
|
1207
1207
|
[key: string]: unknown;
|
|
1208
1208
|
};
|
|
1209
|
-
/** @description Workspace user ID of the new entity owner. */
|
|
1210
|
-
ownerId?: string;
|
|
1211
1209
|
};
|
|
1212
1210
|
ChangeObjectStateDto: {
|
|
1213
1211
|
/** @description ID of the target state. Must be a valid transition from the current state when the entity type defines transitions. */
|
|
@@ -1991,7 +1989,7 @@ interface components {
|
|
|
1991
1989
|
approvalStatus?: "pending" | "partially_approved" | "approved" | "rejected" | "expired";
|
|
1992
1990
|
/** @description Number of approve decisions received so far */
|
|
1993
1991
|
approvalsReceived?: number;
|
|
1994
|
-
/** @description
|
|
1992
|
+
/** @description How many approvals are required before the workflow continues */
|
|
1995
1993
|
approvalsRequired?: number;
|
|
1996
1994
|
};
|
|
1997
1995
|
PendingInputFieldDto: {
|
|
@@ -2369,11 +2367,15 @@ interface components {
|
|
|
2369
2367
|
* "imageUrl": "https://example.com/image.png"
|
|
2370
2368
|
* }
|
|
2371
2369
|
*/
|
|
2372
|
-
data?:
|
|
2373
|
-
|
|
2374
|
-
|
|
2375
|
-
|
|
2376
|
-
|
|
2370
|
+
data?: {
|
|
2371
|
+
/** @description URL of an image attached to the message. */
|
|
2372
|
+
imageUrl?: string;
|
|
2373
|
+
};
|
|
2374
|
+
/**
|
|
2375
|
+
* @description Answer to an ask-before-sending personal-data prompt. Applies to this message only.
|
|
2376
|
+
* @enum {string}
|
|
2377
|
+
*/
|
|
2378
|
+
piiResolution?: "anonymize" | "fallback";
|
|
2377
2379
|
};
|
|
2378
2380
|
StreamMessageStopDto: {
|
|
2379
2381
|
/** @description Partial assistant message to persist when stopping a stream */
|
|
@@ -2969,8 +2971,6 @@ interface ListEntitiesOptions {
|
|
|
2969
2971
|
state?: string;
|
|
2970
2972
|
/** Filter by several states (comma-separated server-side). */
|
|
2971
2973
|
states?: string[];
|
|
2972
|
-
/** Filter by owner workspace-user ID. */
|
|
2973
|
-
ownerId?: string;
|
|
2974
2974
|
/** Free-text search over entity names. */
|
|
2975
2975
|
search?: string;
|
|
2976
2976
|
sortBy?: string;
|
|
@@ -3002,7 +3002,6 @@ interface ExportEntitiesInput {
|
|
|
3002
3002
|
value: unknown;
|
|
3003
3003
|
}>;
|
|
3004
3004
|
format?: 'csv' | 'xlsx';
|
|
3005
|
-
includeRelatedEntityNames?: boolean;
|
|
3006
3005
|
}
|
|
3007
3006
|
/**
|
|
3008
3007
|
* Entities (the platform calls them Objects internally): the structured data
|
|
@@ -3108,7 +3107,6 @@ type ApprovalInboxItem = {
|
|
|
3108
3107
|
status: string;
|
|
3109
3108
|
requiredCount: number;
|
|
3110
3109
|
receivedApprovals: number;
|
|
3111
|
-
currentStageIndex?: number;
|
|
3112
3110
|
expiresAt?: string;
|
|
3113
3111
|
createdAt?: string;
|
|
3114
3112
|
updatedAt?: string;
|
|
@@ -3127,7 +3125,7 @@ type ApprovalInboxItem = {
|
|
|
3127
3125
|
comment?: string;
|
|
3128
3126
|
decidedAt?: string;
|
|
3129
3127
|
};
|
|
3130
|
-
/** People who can still decide
|
|
3128
|
+
/** People who can still decide. */
|
|
3131
3129
|
eligibleApprovers?: EligibleApprover[];
|
|
3132
3130
|
approval?: Record<string, unknown>;
|
|
3133
3131
|
};
|
|
@@ -3196,6 +3194,16 @@ declare class ProjectsResource {
|
|
|
3196
3194
|
create(data: CreateProjectInput): Promise<Project>;
|
|
3197
3195
|
}
|
|
3198
3196
|
|
|
3197
|
+
type QueueItemStatus = 'PENDING' | 'PROCESSING' | 'SUCCESS' | 'FAILED' | 'RETRYING';
|
|
3198
|
+
interface AddQueueItemErrorInput {
|
|
3199
|
+
/** Error message recorded on the item. */
|
|
3200
|
+
error: string;
|
|
3201
|
+
/**
|
|
3202
|
+
* Extra details. An object is sent as a JSON string, which is what the
|
|
3203
|
+
* server validates.
|
|
3204
|
+
*/
|
|
3205
|
+
errorDetails?: string | Record<string, unknown>;
|
|
3206
|
+
}
|
|
3199
3207
|
interface ListQueueItemsOptions {
|
|
3200
3208
|
limit?: number;
|
|
3201
3209
|
offset?: number;
|
|
@@ -3241,12 +3249,18 @@ declare class QueueItemsResource {
|
|
|
3241
3249
|
}): Promise<QueueItem[]>;
|
|
3242
3250
|
/** Returns items eligible for retry. */
|
|
3243
3251
|
listRetryable(queueId: string): Promise<QueueItem[]>;
|
|
3244
|
-
/** Returns items with the given status. */
|
|
3245
|
-
listByStatus(queueId: string, status:
|
|
3252
|
+
/** Returns a page of items with the given status. */
|
|
3253
|
+
listByStatus(queueId: string, status: QueueItemStatus, options?: {
|
|
3254
|
+
limit?: number;
|
|
3255
|
+
offset?: number;
|
|
3256
|
+
}): Promise<QueueItemList>;
|
|
3246
3257
|
/** Looks an item up by the external ID your system supplied. */
|
|
3247
3258
|
getByExternalId(queueId: string, externalId: string): Promise<QueueItemFull>;
|
|
3248
|
-
/**
|
|
3249
|
-
|
|
3259
|
+
/**
|
|
3260
|
+
* Searches items by external id, item data, and metadata.
|
|
3261
|
+
* Returns one page, same shape as `list`.
|
|
3262
|
+
*/
|
|
3263
|
+
search(queueId: string, query: string, options?: Omit<ListQueueItemsOptions, 'filterBy'>): Promise<QueueItemList>;
|
|
3250
3264
|
/** Returns per-status and per-priority counts for the queue. */
|
|
3251
3265
|
stats(queueId: string): Promise<QueueItemStats>;
|
|
3252
3266
|
/** Returns the recorded processing errors of an item. */
|
|
@@ -3258,10 +3272,7 @@ declare class QueueItemsResource {
|
|
|
3258
3272
|
/** Queues the item for another processing attempt. */
|
|
3259
3273
|
retry(queueId: string, itemId: string): Promise<QueueItem>;
|
|
3260
3274
|
/** Records a processing error on the item. */
|
|
3261
|
-
addError(queueId: string, itemId: string, error:
|
|
3262
|
-
message: string;
|
|
3263
|
-
[key: string]: unknown;
|
|
3264
|
-
}): Promise<QueueItem>;
|
|
3275
|
+
addError(queueId: string, itemId: string, error: AddQueueItemErrorInput): Promise<QueueItem>;
|
|
3265
3276
|
}
|
|
3266
3277
|
|
|
3267
3278
|
declare class QueuesResource {
|
|
@@ -3318,6 +3329,91 @@ declare class RunsResource {
|
|
|
3318
3329
|
startAndWait(input: StartRunInput, waitOptions?: WaitUntilFinishedOptions): Promise<Execution>;
|
|
3319
3330
|
}
|
|
3320
3331
|
|
|
3332
|
+
type ScorecardMeasureStatus = 'ON_TRACK' | 'AT_RISK' | 'OFF_TRACK' | 'NO_DATA';
|
|
3333
|
+
type ScorecardSummary = {
|
|
3334
|
+
id: string;
|
|
3335
|
+
name: string;
|
|
3336
|
+
periodLabel: string | null;
|
|
3337
|
+
description: string | null;
|
|
3338
|
+
FK_ownerId: string | null;
|
|
3339
|
+
createdAt: string;
|
|
3340
|
+
_count: {
|
|
3341
|
+
objectives: number;
|
|
3342
|
+
};
|
|
3343
|
+
};
|
|
3344
|
+
type ScorecardMeasure = {
|
|
3345
|
+
id: string;
|
|
3346
|
+
name: string;
|
|
3347
|
+
unit: string;
|
|
3348
|
+
currency: string | null;
|
|
3349
|
+
direction: 'HIGHER_IS_BETTER' | 'LOWER_IS_BETTER';
|
|
3350
|
+
kind: 'LEADING' | 'LAGGING';
|
|
3351
|
+
cadence: 'DAILY' | 'WEEKLY' | 'MONTHLY';
|
|
3352
|
+
sourceType: 'MANUAL' | 'API' | 'WORKFLOW' | 'BUILT_IN';
|
|
3353
|
+
builtInKey: string | null;
|
|
3354
|
+
target: number;
|
|
3355
|
+
atRiskThreshold: number | null;
|
|
3356
|
+
latest: {
|
|
3357
|
+
value: number;
|
|
3358
|
+
periodStart: string;
|
|
3359
|
+
createdAt: string;
|
|
3360
|
+
} | null;
|
|
3361
|
+
previousValue: number | null;
|
|
3362
|
+
series: {
|
|
3363
|
+
periodStart: string;
|
|
3364
|
+
value: number;
|
|
3365
|
+
}[];
|
|
3366
|
+
status: ScorecardMeasureStatus;
|
|
3367
|
+
stale: boolean;
|
|
3368
|
+
};
|
|
3369
|
+
type ScorecardObjective = {
|
|
3370
|
+
id: string;
|
|
3371
|
+
perspective: 'FINANCIAL' | 'CUSTOMER' | 'PROCESS' | 'LEARNING';
|
|
3372
|
+
name: string;
|
|
3373
|
+
description: string | null;
|
|
3374
|
+
ownerLabel: string | null;
|
|
3375
|
+
drivesIds: string[];
|
|
3376
|
+
position: number;
|
|
3377
|
+
status: ScorecardMeasureStatus;
|
|
3378
|
+
measures: ScorecardMeasure[];
|
|
3379
|
+
};
|
|
3380
|
+
type Scorecard = Omit<ScorecardSummary, '_count'> & {
|
|
3381
|
+
aiSpendUsdThisMonth: number;
|
|
3382
|
+
objectives: ScorecardObjective[];
|
|
3383
|
+
};
|
|
3384
|
+
type ScorecardMeasureValue = {
|
|
3385
|
+
id: string;
|
|
3386
|
+
FK_measureId: string;
|
|
3387
|
+
periodStart: string;
|
|
3388
|
+
value: number;
|
|
3389
|
+
note: string | null;
|
|
3390
|
+
sourceType: ScorecardMeasure['sourceType'];
|
|
3391
|
+
supersededAt: string | null;
|
|
3392
|
+
createdAt: string;
|
|
3393
|
+
};
|
|
3394
|
+
type RecordMeasureValueInput = {
|
|
3395
|
+
value: number;
|
|
3396
|
+
/** Any ISO date inside the target period; defaults to the current period. */
|
|
3397
|
+
period?: string;
|
|
3398
|
+
note?: string;
|
|
3399
|
+
};
|
|
3400
|
+
/**
|
|
3401
|
+
* Balanced Scorecard (workspace API). Pushing values needs `scorecard:record`.
|
|
3402
|
+
*/
|
|
3403
|
+
declare class ScorecardsResource {
|
|
3404
|
+
private readonly http;
|
|
3405
|
+
constructor(http: HttpClient);
|
|
3406
|
+
/** Lists scorecards in the workspace. */
|
|
3407
|
+
list(): Promise<ScorecardSummary[]>;
|
|
3408
|
+
/** Returns a scorecard with objectives, measures, latest values and status. */
|
|
3409
|
+
get(scorecardId: string): Promise<Scorecard>;
|
|
3410
|
+
/**
|
|
3411
|
+
* Records a measure value. A value for the same period replaces the current
|
|
3412
|
+
* one; the old value is kept as superseded history.
|
|
3413
|
+
*/
|
|
3414
|
+
recordValue(measureId: string, data: RecordMeasureValueInput): Promise<ScorecardMeasureValue>;
|
|
3415
|
+
}
|
|
3416
|
+
|
|
3321
3417
|
declare class TasksResource {
|
|
3322
3418
|
private readonly http;
|
|
3323
3419
|
constructor(http: HttpClient);
|
|
@@ -3337,9 +3433,7 @@ declare class TasksResource {
|
|
|
3337
3433
|
* messages in AI SDK UIMessage format. For token-by-token output use
|
|
3338
3434
|
* `client.agentChat.streamMessage` instead.
|
|
3339
3435
|
*/
|
|
3340
|
-
message(agentId: string, taskId: string, message: string | UIMessage, options?:
|
|
3341
|
-
chatMode?: ChatMode;
|
|
3342
|
-
}): Promise<string | UIMessage[]>;
|
|
3436
|
+
message(agentId: string, taskId: string, message: string | UIMessage, options?: Omit<StreamMessageOptions, 'signal'>): Promise<string | UIMessage[]>;
|
|
3343
3437
|
}
|
|
3344
3438
|
|
|
3345
3439
|
declare class VariablesResource {
|
|
@@ -3455,6 +3549,7 @@ declare class LunnoaClient {
|
|
|
3455
3549
|
readonly queues: QueuesResource;
|
|
3456
3550
|
readonly queueItems: QueueItemsResource;
|
|
3457
3551
|
readonly variables: VariablesResource;
|
|
3552
|
+
readonly scorecards: ScorecardsResource;
|
|
3458
3553
|
readonly connections: ConnectionsResource;
|
|
3459
3554
|
readonly projects: ProjectsResource;
|
|
3460
3555
|
readonly workflowApps: WorkflowAppsResource;
|