@adonis-agora/agent 0.48.0 → 0.49.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/CHANGELOG.md +15 -0
- package/dist/providers/agent_provider.d.ts.map +1 -1
- package/dist/providers/agent_provider.js +75 -39
- package/dist/providers/agent_provider.js.map +1 -1
- package/dist/providers/dashboard_provider.js +1 -1
- package/dist/providers/dashboard_provider.js.map +1 -1
- package/dist/src/agent-loop.d.ts.map +1 -1
- package/dist/src/agent-loop.js +30 -8
- package/dist/src/agent-loop.js.map +1 -1
- package/dist/src/agent-service.d.ts +33 -9
- package/dist/src/agent-service.d.ts.map +1 -1
- package/dist/src/agent-service.js +58 -4
- package/dist/src/agent-service.js.map +1 -1
- package/dist/src/client/chat-client.d.ts +20 -0
- package/dist/src/client/chat-client.d.ts.map +1 -1
- package/dist/src/client/chat-client.js +38 -2
- package/dist/src/client/chat-client.js.map +1 -1
- package/dist/src/client/index.d.ts +1 -1
- package/dist/src/client/index.d.ts.map +1 -1
- package/dist/src/client/index.js +1 -1
- package/dist/src/client/index.js.map +1 -1
- package/dist/src/client/sse.d.ts +5 -0
- package/dist/src/client/sse.d.ts.map +1 -1
- package/dist/src/client/sse.js +5 -1
- package/dist/src/client/sse.js.map +1 -1
- package/dist/src/define_config.d.ts +3 -1
- package/dist/src/define_config.d.ts.map +1 -1
- package/dist/src/define_config.js.map +1 -1
- package/dist/src/elicitation.d.ts +12 -0
- package/dist/src/elicitation.d.ts.map +1 -1
- package/dist/src/elicitation.js +9 -1
- package/dist/src/elicitation.js.map +1 -1
- package/dist/src/index.d.ts +5 -4
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +4 -3
- package/dist/src/index.js.map +1 -1
- package/dist/src/spi/model-catalog.d.ts +13 -0
- package/dist/src/spi/model-catalog.d.ts.map +1 -1
- package/dist/src/spi/model-catalog.js.map +1 -1
- package/dist/src/spi/quota-provider.d.ts +30 -1
- package/dist/src/spi/quota-provider.d.ts.map +1 -1
- package/dist/src/spi/quota-provider.js +34 -1
- package/dist/src/spi/quota-provider.js.map +1 -1
- package/dist/src/stores/ledger-quota-provider.d.ts +10 -1
- package/dist/src/stores/ledger-quota-provider.d.ts.map +1 -1
- package/dist/src/stores/ledger-quota-provider.js +14 -3
- package/dist/src/stores/ledger-quota-provider.js.map +1 -1
- package/dist/src/tool-presentation.d.ts +5 -0
- package/dist/src/tool-presentation.d.ts.map +1 -1
- package/dist/src/tool-presentation.js +5 -1
- package/dist/src/tool-presentation.js.map +1 -1
- package/dist/src/types.d.ts +19 -1
- package/dist/src/types.d.ts.map +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,20 @@
|
|
|
1
1
|
# @adonis-agora/agent
|
|
2
2
|
|
|
3
|
+
## 0.49.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- [#222](https://github.com/DavideCarvalho/adonis-agora-agent/pull/222) [`241bfdc`](https://github.com/DavideCarvalho/adonis-agora-agent/commit/241bfdc298373052435890daa4513597e046377d) Thanks [@DavideCarvalho](https://github.com/DavideCarvalho)! - The chat contract `@dudousxd/nestjs-agent` settled (its `docs/stream-protocol.md`), ported:
|
|
8
|
+
|
|
9
|
+
- **Refusals answer `{ message, code? }` (BREAKING for readers of `error`).** Every refused request on the agent routes (and the dashboard's asset route) answers its status with `{ message, code? }` instead of `{ error }` — `code` where there is a machine-readable reason (`unauthorized`, `model_not_allowed`, `thread_required`, `quota_exceeded`). `@adonis-agora/agent/client` now throws a refused send as `AgentChatHttpError` (`status`, `code`, `body`, and the server's `message` as its own message) instead of a bare `Error('Failed to start agent chat (HTTP n).')`.
|
|
10
|
+
- **A send's `model` is that turn's only** — never stored on the thread; `PATCH threads/:id { model }` is the only pin (documented and tested; the service already behaved this way).
|
|
11
|
+
- **Regenerate.** `POST chat { threadId, regenerate: true }` answers the thread's last user message again: `400 thread_required` without a thread, `message` ignored, no user message stored, the answer(s) after it dropped (a new `regenerate:truncate` durable step — normal turns journal exactly what they did), a new run. `AgentRunInput.regenerate` replaces the unused `isRegenerate`; `RegenerateNeedsThreadError` is exported.
|
|
12
|
+
- **Model lock.** `ModelCatalogView.locked: { model, reason? }` runs every turn of that agent on `locked.model` and refuses a send naming another (`400 model_not_allowed`); `GET agents` entries carry `lockedModel` (`AgentCatalogEntry`). `listAgents(actor)` is now async.
|
|
13
|
+
- **Quota soft limit and USD-only windows.** `QuotaWindow.usedTokens` is optional; `QuotaWindow.warnAt`, `QuotaReport.warning: { period, ratio, reason? }` (never while blocked), `quotaWarning(windows)`, `quotaUsedRatio(window)`; `quota: { limits, warnAt }` stamps it on the ledger windows (`LedgerQuotaProvider`'s new `options.warnAt`). `exhaustedWindow` reads a missing `usedTokens` as `0`.
|
|
14
|
+
- **Who answered a question.** `POST tool-call/answer|skip` take `via?` (1–64 characters, `'web'` by default; `400` otherwise); the settled outcome carries `answeredBy` / `answeredVia` (`ElicitationReply.answeredVia`, `ElicitationOutcome.answeredBy|answeredVia`), streamed as the call's `tool-output` and persisted with its result.
|
|
15
|
+
- **`GET tools?agent=*`** (`ALL_AGENTS`) answers the union across every agent, each tool once, under the same gates; an unknown name is still `404`.
|
|
16
|
+
- **Frame ids.** `SseEvent.id` (the client parser now keeps the `id:` line). Ids stay strictly increasing within a run; readers must tolerate gaps.
|
|
17
|
+
|
|
3
18
|
## 0.48.0
|
|
4
19
|
|
|
5
20
|
### Minor Changes
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent_provider.d.ts","sourceRoot":"","sources":["../../providers/agent_provider.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"agent_provider.d.ts","sourceRoot":"","sources":["../../providers/agent_provider.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AA4J/D;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,CAAC,OAAO,OAAO,aAAa;;IAMpB,SAAS,CAAC,GAAG,EAAE,kBAAkB;IAA7C,YAAsB,GAAG,EAAE,kBAAkB,EAAI;IAEjD,QAAQ,SAcP;IAEK,IAAI,kBAsJT;IAEK,QAAQ,kBASb;CAqpCF"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { pathToFileURL } from 'node:url';
|
|
2
|
-
import { AgentDepsFactory, AgentGenui, AgentRegistry, AgentService, AgentSseEncoder, AnonymousActorResolver, AttachmentRefusedError, DefaultToolAuthorizer, discoverTools, evaluateGovernanceGate, evaluateOwnership, governanceQueries as governanceQueriesFactories, HumanReplyMismatchError, InlineAgentRunner, InProcessTokenStreamSink, isQuotaProvider, LedgerQuotaProvider, lucidStoreConnection, ModelNotAllowedError, memoryForgetVerdict, offerMemories, parseStreamCursor, pricingStores, QuotaBlockedError, REQUESTER_APPROVER, registerDelegateTools, registerFunctionalTool, registerToolsFromBarrel, resolveActorResolver, ToolRegistry, toApprovalPolicy, toModelCatalog, withActorLabel, withActorLabels, } from '../src/index.js';
|
|
2
|
+
import { AgentDepsFactory, AgentGenui, AgentRegistry, AgentService, AgentSseEncoder, ALL_AGENTS, AnonymousActorResolver, AttachmentRefusedError, DefaultToolAuthorizer, discoverTools, evaluateGovernanceGate, evaluateOwnership, governanceQueries as governanceQueriesFactories, HumanReplyMismatchError, InlineAgentRunner, InProcessTokenStreamSink, isQuotaProvider, LedgerQuotaProvider, lucidStoreConnection, ModelNotAllowedError, memoryForgetVerdict, offerMemories, parseStreamCursor, pricingStores, QuotaBlockedError, REQUESTER_APPROVER, RegenerateNeedsThreadError, registerDelegateTools, registerFunctionalTool, registerToolsFromBarrel, resolveActorResolver, ToolRegistry, toApprovalPolicy, toModelCatalog, withActorLabel, withActorLabels, } from '../src/index.js';
|
|
3
3
|
import { McpToolImporter } from '../src/mcp-client/index.js';
|
|
4
4
|
import { setTelescopeGovernanceQueries } from '../src/telescope/governance-registry.js';
|
|
5
5
|
/** The catalog a model provider carries (`aiSdkModels(…).catalog`), if it carries one. */
|
|
@@ -174,7 +174,7 @@ export default class AgentProvider {
|
|
|
174
174
|
? undefined
|
|
175
175
|
: isQuotaProvider(config.quota)
|
|
176
176
|
? config.quota
|
|
177
|
-
: new LedgerQuotaProvider(store, undefined, config.quota.limits);
|
|
177
|
+
: new LedgerQuotaProvider(store, undefined, config.quota.limits, config.quota.warnAt !== undefined ? { warnAt: config.quota.warnAt } : {});
|
|
178
178
|
const pricingStore = await this.#resolvePricing(config);
|
|
179
179
|
// Governance read-model is resolved after pricing so the Lucid read-model prices its rollups
|
|
180
180
|
// against the same live prices the loop's cost fold uses.
|
|
@@ -441,15 +441,24 @@ export default class AgentProvider {
|
|
|
441
441
|
if (!(await this.#assertOwner(ctx, actor, owner, 'thread', governanceAuthorize)))
|
|
442
442
|
return;
|
|
443
443
|
}
|
|
444
|
+
const regenerate = body.regenerate === true;
|
|
445
|
+
if (regenerate && body.threadId === undefined) {
|
|
446
|
+
return ctx.response.badRequest({
|
|
447
|
+
message: 'regenerate requires an existing threadId',
|
|
448
|
+
code: 'thread_required',
|
|
449
|
+
});
|
|
450
|
+
}
|
|
444
451
|
const refs = attachmentRefs(body.attachments);
|
|
445
452
|
if (typeof refs === 'string') {
|
|
446
|
-
return ctx.response.badRequest({
|
|
453
|
+
return ctx.response.badRequest({ message: refs });
|
|
447
454
|
}
|
|
448
455
|
let started;
|
|
449
456
|
try {
|
|
450
457
|
started = await service.chat({
|
|
451
458
|
actor,
|
|
452
|
-
message
|
|
459
|
+
// A regenerate answers the stored user message; whatever `message` says is ignored.
|
|
460
|
+
message: regenerate ? '' : body.message,
|
|
461
|
+
...(regenerate ? { regenerate: true } : {}),
|
|
453
462
|
...(typeof body.model === 'string' && body.model.length > 0 ? { model: body.model } : {}),
|
|
454
463
|
...(body.threadId !== undefined ? { threadId: body.threadId } : {}),
|
|
455
464
|
...(body.agent !== undefined ? { agentName: body.agent } : {}),
|
|
@@ -460,10 +469,13 @@ export default class AgentProvider {
|
|
|
460
469
|
}
|
|
461
470
|
catch (error) {
|
|
462
471
|
if (error instanceof AttachmentRefusedError) {
|
|
463
|
-
return ctx.response.status(error.status).json({
|
|
472
|
+
return ctx.response.status(error.status).json({ message: error.message });
|
|
464
473
|
}
|
|
465
474
|
if (error instanceof ModelNotAllowedError) {
|
|
466
|
-
return ctx.response.badRequest({
|
|
475
|
+
return ctx.response.badRequest({ message: error.message, code: 'model_not_allowed' });
|
|
476
|
+
}
|
|
477
|
+
if (error instanceof RegenerateNeedsThreadError) {
|
|
478
|
+
return ctx.response.badRequest({ message: error.message, code: 'thread_required' });
|
|
467
479
|
}
|
|
468
480
|
if (error instanceof QuotaBlockedError) {
|
|
469
481
|
return ctx.response.status(429).json({
|
|
@@ -490,7 +502,7 @@ export default class AgentProvider {
|
|
|
490
502
|
// Nothing buffered under the run — it ended while the client was away, or its buffer went with
|
|
491
503
|
// a restarted process. A 404 reads as "nothing to resume"; subscribing would wait forever.
|
|
492
504
|
if (!(await service.hasStream(runId))) {
|
|
493
|
-
return ctx.response.notFound({
|
|
505
|
+
return ctx.response.notFound({ message: 'Nothing is streaming under that run.' });
|
|
494
506
|
}
|
|
495
507
|
// `?after=<seq>` (or the `Last-Event-ID` a browser EventSource sends on its own) skips the
|
|
496
508
|
// events a reconnecting client already has; `after` wins when both are present.
|
|
@@ -524,7 +536,7 @@ export default class AgentProvider {
|
|
|
524
536
|
const via = decisionVia(body.via);
|
|
525
537
|
if (remember === null || via === null) {
|
|
526
538
|
return ctx.response.badRequest({
|
|
527
|
-
|
|
539
|
+
message: `remember must be a boolean and via a string of 1-${MAX_VIA_LENGTH} characters`,
|
|
528
540
|
});
|
|
529
541
|
}
|
|
530
542
|
const runId = await this.#runOfToolCall(ctx, service, body);
|
|
@@ -544,7 +556,7 @@ export default class AgentProvider {
|
|
|
544
556
|
const via = decisionVia(body.via);
|
|
545
557
|
if (via === null) {
|
|
546
558
|
return ctx.response.badRequest({
|
|
547
|
-
|
|
559
|
+
message: `via must be a string of 1-${MAX_VIA_LENGTH} characters`,
|
|
548
560
|
});
|
|
549
561
|
}
|
|
550
562
|
const runId = await this.#runOfToolCall(ctx, service, body);
|
|
@@ -563,6 +575,12 @@ export default class AgentProvider {
|
|
|
563
575
|
if (actor === null)
|
|
564
576
|
return;
|
|
565
577
|
const body = (ctx.request.body() ?? {});
|
|
578
|
+
const via = decisionVia(body.via);
|
|
579
|
+
if (via === null) {
|
|
580
|
+
return ctx.response.badRequest({
|
|
581
|
+
message: `via must be a string of 1-${MAX_VIA_LENGTH} characters`,
|
|
582
|
+
});
|
|
583
|
+
}
|
|
566
584
|
const runId = await this.#runOfToolCall(ctx, service, body);
|
|
567
585
|
if (runId === null)
|
|
568
586
|
return;
|
|
@@ -573,7 +591,7 @@ export default class AgentProvider {
|
|
|
573
591
|
// the person who typed it hears why — rather than signalled and quietly dropped by the loop.
|
|
574
592
|
const problem = await service.answerProblem(body.toolCallId, body.answers ?? {});
|
|
575
593
|
if (problem !== null) {
|
|
576
|
-
return ctx.response.badRequest({
|
|
594
|
+
return ctx.response.badRequest({ message: problem });
|
|
577
595
|
}
|
|
578
596
|
try {
|
|
579
597
|
await service.answer({
|
|
@@ -581,6 +599,7 @@ export default class AgentProvider {
|
|
|
581
599
|
toolCallId: body.toolCallId,
|
|
582
600
|
answers: body.answers ?? {},
|
|
583
601
|
answeredByRef: actor.id,
|
|
602
|
+
answeredVia: via,
|
|
584
603
|
});
|
|
585
604
|
}
|
|
586
605
|
catch (error) {
|
|
@@ -595,6 +614,12 @@ export default class AgentProvider {
|
|
|
595
614
|
if (actor === null)
|
|
596
615
|
return;
|
|
597
616
|
const body = (ctx.request.body() ?? {});
|
|
617
|
+
const via = decisionVia(body.via);
|
|
618
|
+
if (via === null) {
|
|
619
|
+
return ctx.response.badRequest({
|
|
620
|
+
message: `via must be a string of 1-${MAX_VIA_LENGTH} characters`,
|
|
621
|
+
});
|
|
622
|
+
}
|
|
598
623
|
const runId = await this.#runOfToolCall(ctx, service, body);
|
|
599
624
|
if (runId === null)
|
|
600
625
|
return;
|
|
@@ -606,6 +631,7 @@ export default class AgentProvider {
|
|
|
606
631
|
runId,
|
|
607
632
|
toolCallId: body.toolCallId,
|
|
608
633
|
answeredByRef: actor.id,
|
|
634
|
+
answeredVia: via,
|
|
609
635
|
});
|
|
610
636
|
}
|
|
611
637
|
catch (error) {
|
|
@@ -630,11 +656,11 @@ export default class AgentProvider {
|
|
|
630
656
|
const threadId = await service.threadOfMessage(messageId);
|
|
631
657
|
if (threadId === undefined) {
|
|
632
658
|
return ctx.response.status(501).json({
|
|
633
|
-
|
|
659
|
+
message: 'Message feedback requires an AgentStore that implements threadOfMessage() and setMessageFeedback().',
|
|
634
660
|
});
|
|
635
661
|
}
|
|
636
662
|
if (threadId === null) {
|
|
637
|
-
return ctx.response.notFound({
|
|
663
|
+
return ctx.response.notFound({ message: 'message not found' });
|
|
638
664
|
}
|
|
639
665
|
const owner = await service.threadOwner(threadId);
|
|
640
666
|
if (!(await this.#assertOwner(ctx, actor, owner, 'thread', undefined)))
|
|
@@ -645,7 +671,7 @@ export default class AgentProvider {
|
|
|
645
671
|
...(body.comment !== undefined ? { comment: body.comment } : {}),
|
|
646
672
|
});
|
|
647
673
|
if (!result.ok) {
|
|
648
|
-
return ctx.response.status(result.status).json({
|
|
674
|
+
return ctx.response.status(result.status).json({ message: result.error });
|
|
649
675
|
}
|
|
650
676
|
return ctx.response.json({ feedback: result.feedback });
|
|
651
677
|
});
|
|
@@ -663,16 +689,23 @@ export default class AgentProvider {
|
|
|
663
689
|
const actor = await this.#resolveActor(ctx, actorResolver);
|
|
664
690
|
if (actor === null)
|
|
665
691
|
return;
|
|
666
|
-
return ctx.response.json(service.listAgents());
|
|
692
|
+
return ctx.response.json(await service.listAgents(actor));
|
|
667
693
|
});
|
|
668
694
|
// 6b. GET /agent/tools?agent= — the tools this caller can reach through an agent, with how a chat
|
|
669
695
|
// surface should talk about each (`presentation`). The same list the model is offered; nothing the
|
|
670
696
|
// caller passes widens it — `agent` only narrows to that agent's allow-list, and an unknown name is
|
|
671
|
-
// a 404 rather than the widest answer (no allow-list at all).
|
|
697
|
+
// a 404 rather than the widest answer (no allow-list at all). `?agent=*` is the union across every
|
|
698
|
+
// agent: each tool this caller reaches through any of them, once, under the same gates.
|
|
672
699
|
router.get(p('tools'), async (ctx) => {
|
|
673
700
|
const agent = ctx.request.qs().agent;
|
|
701
|
+
if (agent === ALL_AGENTS) {
|
|
702
|
+
const actor = await this.#resolveActor(ctx, actorResolver);
|
|
703
|
+
if (actor === null)
|
|
704
|
+
return;
|
|
705
|
+
return ctx.response.json(await service.toolCatalogForAllAgents(actor));
|
|
706
|
+
}
|
|
674
707
|
if (agent !== undefined && agent !== defaultAgentName && agents.get(agent) === undefined) {
|
|
675
|
-
return ctx.response.notFound({
|
|
708
|
+
return ctx.response.notFound({ message: `No agent named "${agent}"` });
|
|
676
709
|
}
|
|
677
710
|
const actor = await this.#resolveActor(ctx, resolveActorResolver(actorResolver, agents.get(agent ?? defaultAgentName)));
|
|
678
711
|
if (actor === null)
|
|
@@ -712,20 +745,20 @@ export default class AgentProvider {
|
|
|
712
745
|
return;
|
|
713
746
|
const body = (ctx.request.body() ?? {});
|
|
714
747
|
if (body.model !== undefined && body.model !== null && typeof body.model !== 'string') {
|
|
715
|
-
return ctx.response.badRequest({
|
|
748
|
+
return ctx.response.badRequest({ message: 'model must be a string or null' });
|
|
716
749
|
}
|
|
717
750
|
if (body.model !== undefined) {
|
|
718
751
|
try {
|
|
719
752
|
const pinned = await service.setThreadModel(actor, threadId, body.model);
|
|
720
753
|
if (!pinned) {
|
|
721
754
|
return ctx.response.status(501).json({
|
|
722
|
-
|
|
755
|
+
message: "Pinning a thread's model requires an AgentStore that implements updateThread().",
|
|
723
756
|
});
|
|
724
757
|
}
|
|
725
758
|
}
|
|
726
759
|
catch (error) {
|
|
727
760
|
if (error instanceof ModelNotAllowedError) {
|
|
728
|
-
return ctx.response.badRequest({
|
|
761
|
+
return ctx.response.badRequest({ message: error.message });
|
|
729
762
|
}
|
|
730
763
|
throw error;
|
|
731
764
|
}
|
|
@@ -733,7 +766,7 @@ export default class AgentProvider {
|
|
|
733
766
|
if (body.title !== undefined) {
|
|
734
767
|
const title = typeof body.title === 'string' ? body.title.trim() : '';
|
|
735
768
|
if (title.length === 0 || title.length > 200) {
|
|
736
|
-
return ctx.response.badRequest({
|
|
769
|
+
return ctx.response.badRequest({ message: 'title must be a string of 1-200 characters' });
|
|
737
770
|
}
|
|
738
771
|
await service.renameThread(threadId, title);
|
|
739
772
|
}
|
|
@@ -798,16 +831,16 @@ export default class AgentProvider {
|
|
|
798
831
|
if (actor === null)
|
|
799
832
|
return;
|
|
800
833
|
if (memory === undefined) {
|
|
801
|
-
return ctx.response.notFound({
|
|
834
|
+
return ctx.response.notFound({ message: 'No memory is configured in this deployment.' });
|
|
802
835
|
}
|
|
803
836
|
const id = String(ctx.params.id);
|
|
804
837
|
const entry = (await everyMemoryOf(actor)).entries.find((candidate) => candidate.id === id);
|
|
805
838
|
if (entry === undefined) {
|
|
806
|
-
return ctx.response.notFound({
|
|
839
|
+
return ctx.response.notFound({ message: `No memory with id "${id}".` });
|
|
807
840
|
}
|
|
808
841
|
const verdict = memoryForgetVerdict({ record: entry, actor });
|
|
809
842
|
if (!verdict.allowed) {
|
|
810
|
-
return ctx.response.forbidden({
|
|
843
|
+
return ctx.response.forbidden({ message: verdict.reason });
|
|
811
844
|
}
|
|
812
845
|
return ctx.response.json({
|
|
813
846
|
forgotten: await memory.provider.forget({ id: entry.id, ctx: { actor, threadId: '' } }),
|
|
@@ -856,19 +889,19 @@ export default class AgentProvider {
|
|
|
856
889
|
return;
|
|
857
890
|
const file = ctx.request.file('file');
|
|
858
891
|
if (file === null || file.tmpPath === undefined) {
|
|
859
|
-
return ctx.response.status(400).json({
|
|
892
|
+
return ctx.response.status(400).json({ message: 'multipart field "file" is required' });
|
|
860
893
|
}
|
|
861
894
|
const contentType = file.headers?.['content-type']?.split(';')[0]?.trim() ?? `${file.type}/${file.subtype}`;
|
|
862
895
|
if (!allowedContentTypes.includes(contentType)) {
|
|
863
896
|
return ctx.response.status(415).json({
|
|
864
|
-
|
|
897
|
+
message: `content type "${contentType}" is not allowed (allowed: ${allowedContentTypes.join(', ')})`,
|
|
865
898
|
});
|
|
866
899
|
}
|
|
867
900
|
const sizeBytes = file.size;
|
|
868
901
|
if (sizeBytes > maxBytes) {
|
|
869
902
|
return ctx.response
|
|
870
903
|
.status(413)
|
|
871
|
-
.json({
|
|
904
|
+
.json({ message: `file exceeds the ${maxBytes}-byte limit` });
|
|
872
905
|
}
|
|
873
906
|
const { readFile } = await import('node:fs/promises');
|
|
874
907
|
const data = await readFile(file.tmpPath);
|
|
@@ -985,7 +1018,7 @@ export default class AgentProvider {
|
|
|
985
1018
|
if (gov.threadDetail === undefined) {
|
|
986
1019
|
return ctx.response
|
|
987
1020
|
.status(501)
|
|
988
|
-
.json({
|
|
1021
|
+
.json({ message: 'this governance adapter does not support thread detail' });
|
|
989
1022
|
}
|
|
990
1023
|
const detail = await withActorLabel(await gov.threadDetail(String(ctx.params.id)), actorDirectory);
|
|
991
1024
|
if (detail === null)
|
|
@@ -1101,7 +1134,7 @@ export default class AgentProvider {
|
|
|
1101
1134
|
typeof body.inputPricePer1m !== 'number' ||
|
|
1102
1135
|
typeof body.outputPricePer1m !== 'number') {
|
|
1103
1136
|
return ctx.response.status(400).json({
|
|
1104
|
-
|
|
1137
|
+
message: 'body must be {modelId: string, inputPricePer1m: number, outputPricePer1m: number, cacheWritePricePer1m?: number, cacheReadPricePer1m?: number}',
|
|
1105
1138
|
});
|
|
1106
1139
|
}
|
|
1107
1140
|
await pricing.upsertModelPrice({
|
|
@@ -1130,7 +1163,7 @@ export default class AgentProvider {
|
|
|
1130
1163
|
try {
|
|
1131
1164
|
const actor = await actorResolver.resolve(ctx);
|
|
1132
1165
|
if (actor === null || actor === undefined) {
|
|
1133
|
-
ctx.response.status(401).json({
|
|
1166
|
+
ctx.response.status(401).json({ message: 'unauthorized', code: 'unauthorized' });
|
|
1134
1167
|
return null;
|
|
1135
1168
|
}
|
|
1136
1169
|
return actor;
|
|
@@ -1140,9 +1173,10 @@ export default class AgentProvider {
|
|
|
1140
1173
|
// in production, every request here is untrusted by definition, so the detail stays server-side
|
|
1141
1174
|
// (dev/test keeps it, matching `evaluateDashboardGate`/`evaluateGovernanceGate`'s `debug` knob).
|
|
1142
1175
|
const debug = !this.app.inProduction;
|
|
1143
|
-
ctx.response
|
|
1144
|
-
.
|
|
1145
|
-
|
|
1176
|
+
ctx.response.status(401).json({
|
|
1177
|
+
message: debug && error instanceof Error ? error.message : 'unauthorized',
|
|
1178
|
+
code: 'unauthorized',
|
|
1179
|
+
});
|
|
1146
1180
|
return null;
|
|
1147
1181
|
}
|
|
1148
1182
|
}
|
|
@@ -1158,7 +1192,7 @@ export default class AgentProvider {
|
|
|
1158
1192
|
return null;
|
|
1159
1193
|
const verdict = await evaluateGovernanceGate(actor, ctx, governanceAuthorize, !this.app.inProduction);
|
|
1160
1194
|
if (!verdict.ok) {
|
|
1161
|
-
ctx.response.status(verdict.status).json({
|
|
1195
|
+
ctx.response.status(verdict.status).json({ message: verdict.error });
|
|
1162
1196
|
return null;
|
|
1163
1197
|
}
|
|
1164
1198
|
return actor;
|
|
@@ -1180,7 +1214,7 @@ export default class AgentProvider {
|
|
|
1180
1214
|
const verdict = evaluateOwnership(actor.id, ownerRef, privileged);
|
|
1181
1215
|
if (!verdict.ok) {
|
|
1182
1216
|
const error = verdict.status === 404 ? `${kind} not found` : 'forbidden';
|
|
1183
|
-
ctx.response.status(verdict.status).json({ error });
|
|
1217
|
+
ctx.response.status(verdict.status).json({ message: error });
|
|
1184
1218
|
return false;
|
|
1185
1219
|
}
|
|
1186
1220
|
return true;
|
|
@@ -1201,7 +1235,7 @@ export default class AgentProvider {
|
|
|
1201
1235
|
return body.runId;
|
|
1202
1236
|
const runId = typeof body.toolCallId === 'string' ? await service.toolCallRun(body.toolCallId) : null;
|
|
1203
1237
|
if (runId === null) {
|
|
1204
|
-
ctx.response.notFound({
|
|
1238
|
+
ctx.response.notFound({ message: 'Unknown tool call.' });
|
|
1205
1239
|
return null;
|
|
1206
1240
|
}
|
|
1207
1241
|
return runId;
|
|
@@ -1225,11 +1259,11 @@ export default class AgentProvider {
|
|
|
1225
1259
|
}
|
|
1226
1260
|
else {
|
|
1227
1261
|
if (owner === null) {
|
|
1228
|
-
ctx.response.notFound({
|
|
1262
|
+
ctx.response.notFound({ message: 'Unknown run.' });
|
|
1229
1263
|
return false;
|
|
1230
1264
|
}
|
|
1231
1265
|
if (!(await service.mayDecide(actor, { toolCallId, approver, requesterRef: owner }))) {
|
|
1232
|
-
ctx.response.forbidden({
|
|
1266
|
+
ctx.response.forbidden({ message: `This approval is for ${approver}.` });
|
|
1233
1267
|
return false;
|
|
1234
1268
|
}
|
|
1235
1269
|
}
|
|
@@ -1239,7 +1273,9 @@ export default class AgentProvider {
|
|
|
1239
1273
|
approval.expiresAt !== null &&
|
|
1240
1274
|
Date.parse(approval.expiresAt) <= Date.now()));
|
|
1241
1275
|
if (lapsed) {
|
|
1242
|
-
ctx.response.gone({
|
|
1276
|
+
ctx.response.gone({
|
|
1277
|
+
message: `The approval request for tool call ${toolCallId} has expired.`,
|
|
1278
|
+
});
|
|
1243
1279
|
return false;
|
|
1244
1280
|
}
|
|
1245
1281
|
return true;
|
|
@@ -1248,7 +1284,7 @@ export default class AgentProvider {
|
|
|
1248
1284
|
if (!(error instanceof HumanReplyMismatchError)) {
|
|
1249
1285
|
throw error;
|
|
1250
1286
|
}
|
|
1251
|
-
ctx.response.conflict({
|
|
1287
|
+
ctx.response.conflict({ message: error.message });
|
|
1252
1288
|
}
|
|
1253
1289
|
/**
|
|
1254
1290
|
* Pipe the run's live token stream to the client as SSE: `event: meta` (runId/threadId), the run's
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent_provider.js","sourceRoot":"","sources":["../../providers/agent_provider.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"agent_provider.js","sourceRoot":"","sources":["../../providers/agent_provider.ts"],"names":[],"mappings":"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"}
|