elsa-core/src/modules/Elsa.AI.Persistence.EFCore/Migrations/AIDbContextModelSnapshot.cs
Sipke Schoorstra 3936258146
Implement Weaver AI Copilot core (#7523)
* Implement Weaver AI Copilot core

* Address Greptile review feedback

* Address Greptile persistence feedback

* Address Greptile orchestration feedback

* Address Greptile tool isolation feedback

* Wire chat audit events

* Stream chat events over SSE

* Use server identity for AI endpoints

* Validate AI proposal persistence

* Isolate AI audit failures

* Enforce AI tool lookup scope

* Support AI tool result continuations

* Handle AI chat reconnects safely

* Tighten AI context and reconnect behavior

* Guard AI conversation and persistence setup

* Persist AI tool-loop progress

* Tighten AI tool registry and reconnect cleanup

* Handle AI preparation failures cleanly

* Order AI tool messages after assistant turns

* Initialize AI provider sessions

* Align AI context capabilities

* Prevent completed AI reconnect replay

* Enforce AI conversation ownership

* Default AI proposal creation time

* Persist AI session and retention defaults

* Allow AI context provider overrides

* Scope AI tool results per turn

* Apply AI provider configuration

* Scope AI proposal reads

* Avoid duplicate AI tool continuations

* Resolve AI tool registry scopes

* Tighten AI reconnect cleanup

* Honor default AI proposal tools

* Pass AI provider session to turns

* Close AI observability gaps

* Fix AI capabilities options alias

* Harden AI orchestration lifetimes

* Track actual AI reconnect conversation

* Address AI audit and context review findings

* Fix AI reconnect and persistence capabilities

* Handle AI session startup failures

* Tighten AI orchestration review gaps

* Warn on placeholder AI context

* Filter disabled AI provider tools

* Add durable AI conversation persistence

* Fix AI orchestrator persistence lifetime

* Handle failed AI reconnect edge cases

* Harden AI reconnect failure handling

* Address AI reconnect and cleanup review gaps

* Tighten AI audit and cleanup persistence

* Keep expired AI cleanup best effort

* Tighten AI tool lookup and cleanup fallback

* Handle AI provider and tenant edge cases

* Tighten AI proposal and agent authorization

* Address AI tool scope cleanup review

* Close remaining AI greptile findings

* Harden AI stores and tool defaults

* Harden AI conversation persistence edge cases

* Cover AI proposal and tool visibility guards

* Fix AI capabilities and audit batch resilience

* Fix AI conversation truncation for unicode

* Resolve remaining AI persistence review nits

* Wire AI conversation persistence option

* Address AI audit and proposal style review

* Fix AI stream truncation surrogate handling

* Address AI context and cleanup review

* Preserve AI titles and tenant tool defaults

* Guard AI conversation user ownership

* Align in-memory AI conversation ownership

* Fix expired AI conversation cleanup tracking

* Harden AI proposal persistence retry

* Tighten AI proposal reads and cleanup SQL

* Harden AI reconnect and provider defaults

* Optimize AI tool listing and message trimming

* Preserve AI conversation timestamps

* Address final AI persistence review nits

* Normalize AI acronym casing

* Address Copilot AI review comments

* Normalize default tenant handling for AI stores

* Harden AI registry and message truncation

* Make AI tool filtering explicit

* Align AI contracts with implementation

* Align remaining AI review contracts

* address greptile ai persistence feedback

* Address Copilot AI persistence feedback

* Address Copilot AI host feedback

* Order persisted AI conversation messages

* Address Copilot chat and cleanup feedback

* Release unused AI reconnect reservations

* Address Copilot AI review feedback

* Address Copilot tool and conversation feedback

* Address Copilot governance feedback

* Address Copilot tool test feedback

* Address AI review follow-ups

* Address Copilot AI follow-ups

* Clean up AI persistence tests

* Address IAITool disposal review

* Address AI integration review follow-ups

* Address AI chat persistence review

* Address AI registry and truncation review

* Enable read-only AI tools by default

* Potential fix for pull request finding

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>

* Potential fix for pull request finding

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
2026-06-04 11:35:44 +02:00

157 lines
3.8 KiB
C#

// <auto-generated />
using System;
using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Infrastructure;
#nullable disable
namespace Elsa.AI.Persistence.EFCore.Migrations;
[DbContext(typeof(AIDbContext))]
partial class AIDbContextModelSnapshot : ModelSnapshot
{
protected override void BuildModel(ModelBuilder modelBuilder)
{
#pragma warning disable 612, 618
modelBuilder.HasAnnotation("ProductVersion", "9.0.16");
modelBuilder.Entity("Elsa.AI.Persistence.EFCore.Entities.AIAuditRecord", b =>
{
b.Property<string>("Id");
b.Property<string>("ActorId")
.IsRequired();
b.Property<string>("ConversationId");
b.Property<string>("Data")
.IsRequired();
b.Property<string>("ProposalId");
b.Property<string>("Summary")
.IsRequired();
b.Property<string>("TenantId");
b.Property<DateTimeOffset>("Timestamp");
b.Property<string>("ToolInvocationId");
b.Property<string>("TraceId");
b.Property<string>("Type")
.IsRequired();
b.HasKey("Id");
b.HasIndex("ActorId");
b.HasIndex("ProposalId");
b.HasIndex("ToolInvocationId");
b.HasIndex("TenantId", "ConversationId");
b.HasIndex("TenantId", "Timestamp");
b.ToTable("AIAuditRecords");
});
modelBuilder.Entity("Elsa.AI.Persistence.EFCore.Entities.AIConversationRecord", b =>
{
b.Property<string>("Id");
b.Property<DateTimeOffset>("CreatedAt");
b.Property<string>("Messages")
.IsRequired();
b.Property<string>("ProviderSessionId");
b.Property<DateTimeOffset?>("RetentionExpiresAt");
b.Property<string>("RetentionMode")
.IsRequired();
b.Property<string>("Status")
.IsRequired();
b.Property<string>("TenantId");
b.Property<string>("Title");
b.Property<DateTimeOffset>("UpdatedAt");
b.Property<string>("UserId")
.IsRequired();
b.HasKey("Id");
b.HasIndex("RetentionExpiresAt");
b.HasIndex("Status");
b.HasIndex("TenantId", "UserId");
b.ToTable("AIConversations");
});
modelBuilder.Entity("Elsa.AI.Persistence.EFCore.Entities.AIProposalRecord", b =>
{
b.Property<string>("Id");
b.Property<string>("AppliedBy");
b.Property<DateTimeOffset?>("AppliedAt");
b.Property<string>("BaselineVersionId");
b.Property<string>("BaselineWorkflowDefinitionId");
b.Property<string>("ConversationId")
.IsRequired();
b.Property<DateTimeOffset>("CreatedAt");
b.Property<string>("CreatedBy")
.IsRequired();
b.Property<string>("GraphDiff");
b.Property<string>("Kind")
.IsRequired();
b.Property<string>("Rationale")
.IsRequired();
b.Property<string>("ReviewedBy");
b.Property<DateTimeOffset?>("ReviewedAt");
b.Property<string>("Status")
.IsRequired();
b.Property<string>("TenantId");
b.Property<string>("ValidationDiagnostics")
.IsRequired();
b.Property<string>("Warnings")
.IsRequired();
b.Property<string>("WorkflowPayload")
.IsRequired();
b.HasKey("Id");
b.HasIndex("Status");
b.HasIndex("TenantId", "ConversationId");
b.ToTable("AIProposals");
});
#pragma warning restore 612, 618
}
}