Merge pull request #741 from iceljc/features/add-evaluation

resolve conflict
This commit is contained in:
iceljc 2024-11-12 14:00:44 -06:00 committed by GitHub
commit 48e7b6efce
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
5 changed files with 12 additions and 20 deletions

View file

@ -1,4 +1,5 @@
using BotSharp.Abstraction.Repositories.Enums; using BotSharp.Abstraction.Repositories.Enums;
using BotSharp.Abstraction.Users.Enums;
using System.IO; using System.IO;
namespace BotSharp.Core.Agents.Services; namespace BotSharp.Core.Agents.Services;
@ -16,6 +17,12 @@ public partial class AgentService
return refreshResult; return refreshResult;
} }
var user = _db.GetUserById(_user.Id);
if (!UserConstant.AdminRoles.Contains(user.Role))
{
return "Unauthorized user.";
}
var agentDir = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, var agentDir = Path.Combine(AppDomain.CurrentDomain.BaseDirectory,
dbSettings.FileRepository, dbSettings.FileRepository,
_agentSettings.DataDir); _agentSettings.DataDir);
@ -26,9 +33,7 @@ public partial class AgentService
return refreshResult; return refreshResult;
} }
var user = _db.GetUserById(_user.Id);
var refreshedAgents = new List<string>(); var refreshedAgents = new List<string>();
foreach (var dir in Directory.GetDirectories(agentDir)) foreach (var dir in Directory.GetDirectories(agentDir))
{ {
try try

View file

@ -1,6 +1,4 @@
using BotSharp.Abstraction.Plugins.Models;
using BotSharp.Abstraction.Repositories.Enums; using BotSharp.Abstraction.Repositories.Enums;
using BotSharp.Abstraction.Users.Enums;
using BotSharp.Plugin.MongoStorage.Repository; using BotSharp.Plugin.MongoStorage.Repository;
namespace BotSharp.Plugin.MongoStorage; namespace BotSharp.Plugin.MongoStorage;
@ -31,14 +29,4 @@ public class MongoStoragePlugin : IBotSharpPlugin
services.AddScoped<IBotSharpRepository, MongoRepository>(); services.AddScoped<IBotSharpRepository, MongoRepository>();
} }
} }
public bool AttachMenu(List<PluginMenuDef> menu)
{
var section = menu.First(x => x.Label == "Apps");
menu.Add(new PluginMenuDef("MongoDB", icon: "bx bx-data", link: "page/mongodb", weight: section.Weight + 10)
{
Roles = new List<string> { UserRole.Root, UserRole.Admin }
});
return true;
}
} }

View file

@ -88,7 +88,7 @@ public class SummaryPlanFn : IFunctionCallback
var additionalRequirements = new List<string>(); var additionalRequirements = new List<string>();
await HookEmitter.Emit<IPlanningHook>(_services, async x => await HookEmitter.Emit<IPlanningHook>(_services, async x =>
{ {
var requirement = await x.GetSummaryAdditionalRequirements(nameof(TwoStageTaskPlanner)); var requirement = await x.GetSummaryAdditionalRequirements(nameof(TwoStageTaskPlanner), message);
additionalRequirements.Add(requirement); additionalRequirements.Add(requirement);
}); });

View file

@ -2,6 +2,7 @@ using BotSharp.Abstraction.Agents.Enums;
using BotSharp.Abstraction.Repositories; using BotSharp.Abstraction.Repositories;
using BotSharp.Abstraction.Routing; using BotSharp.Abstraction.Routing;
using BotSharp.Core.Infrastructures; using BotSharp.Core.Infrastructures;
using BotSharp.Plugin.SqlDriver.Interfaces;
using BotSharp.Plugin.SqlDriver.Models; using BotSharp.Plugin.SqlDriver.Models;
using Dapper; using Dapper;
using Microsoft.Data.SqlClient; using Microsoft.Data.SqlClient;
@ -30,7 +31,7 @@ public class ExecuteQueryFn : IFunctionCallback
{ {
var args = JsonSerializer.Deserialize<ExecuteQueryArgs>(message.FunctionArgs); var args = JsonSerializer.Deserialize<ExecuteQueryArgs>(message.FunctionArgs);
var refinedArgs = await RefineSqlStatement(message, args); var refinedArgs = await RefineSqlStatement(message, args);
var dbHook = _services.GetRequiredService<IDatabaseHook>(); var dbHook = _services.GetRequiredService<ISqlDriverHook>();
var dbType = dbHook.GetDatabaseType(message); var dbType = dbHook.GetDatabaseType(message);
try try

View file

@ -58,10 +58,8 @@ public class SqlDriverPlanningHook : IPlanningHook
msg.FunctionArgs = response.FunctionArgs; msg.FunctionArgs = response.FunctionArgs;
msg.Content = response.Content; msg.Content = response.Content;
msg.StopCompletion = response.StopCompletion; msg.StopCompletion = response.StopCompletion;
/*var routing = _services.GetRequiredService<IRoutingService>();
await routing.InvokeAgent(BuiltInAgentId.SqlDriver, wholeDialogs);*/
} }
public async Task<string> GetSummaryAdditionalRequirements(string planner, RoleDialogModel message) public async Task<string> GetSummaryAdditionalRequirements(string planner, RoleDialogModel message)
{ {
var settings = _services.GetRequiredService<SqlDriverSetting>(); var settings = _services.GetRequiredService<SqlDriverSetting>();