* feat: add tags support to blocks * fix: add timestamps and org scoping to blocks_tags Addresses PR feedback: 1. Migration: Added timestamps (created_at, updated_at), soft delete (is_deleted), audit fields (_created_by_id, _last_updated_by_id), and organization_id to blocks_tags table for filtering support. Follows SQLite baseline pattern (composite PK of block_id+tag, no separate id column) to avoid insert failures. 2. ORM: Relationship already correct with lazy="raise" to prevent implicit joins and passive_deletes=True for efficient CASCADE deletes. 3. Schema: Changed normalize_tags() from Any to dict for type safety. 4. SQLite: Added blocks_tags to SQLite baseline schema to prevent table-not-found errors. 5. Code: Updated all tag row inserts to include organization_id. 🐾 Generated with [Letta Code](https://letta.com) Co-Authored-By: Letta <noreply@letta.com> * fix: add ORM columns and update SQLite baseline for blocks_tags Fixes test failures (CompileError: Unconsumed column names: organization_id): 1. ORM: Added organization_id, timestamps, audit fields to BlocksTags ORM model to match database schema from migrations. 2. SQLite baseline: Added full column set to blocks_tags (organization_id, timestamps, audit fields) to match PostgreSQL schema. 3. Test: Added 'tags' to expected Block schema fields. This ensures SQLite and PostgreSQL have matching schemas and the ORM can consume all columns that the code inserts. 🐾 Generated with [Letta Code](https://letta.com) Co-Authored-By: Letta <noreply@letta.com> * revert change to existing alembic migration * fix: remove passive_deletes and SQLite support for blocks_tags 1. Removed passive_deletes=True from Block.tags relationship to match AgentsTags pattern (neither have ondelete CASCADE in DB schema). 2. Removed SQLite branch from _replace_block_pivot_rows_async since blocks_tags table is PostgreSQL-only (migration skips SQLite). 🐾 Generated with [Letta Code](https://letta.com) Co-Authored-By: Letta <noreply@letta.com> * api sync --------- Co-authored-by: Letta <noreply@letta.com>
43 lines
1.9 KiB
Python
43 lines
1.9 KiB
Python
from letta.orm.agent import Agent
|
|
from letta.orm.agents_tags import AgentsTags
|
|
from letta.orm.archive import Archive
|
|
from letta.orm.archives_agents import ArchivesAgents
|
|
from letta.orm.base import Base
|
|
from letta.orm.block import Block
|
|
from letta.orm.block_history import BlockHistory
|
|
from letta.orm.blocks_agents import BlocksAgents
|
|
from letta.orm.blocks_tags import BlocksTags
|
|
from letta.orm.conversation import Conversation
|
|
from letta.orm.conversation_messages import ConversationMessage
|
|
from letta.orm.file import FileMetadata
|
|
from letta.orm.files_agents import FileAgent
|
|
from letta.orm.group import Group
|
|
from letta.orm.groups_agents import GroupsAgents
|
|
from letta.orm.groups_blocks import GroupsBlocks
|
|
from letta.orm.identities_agents import IdentitiesAgents
|
|
from letta.orm.identities_blocks import IdentitiesBlocks
|
|
from letta.orm.identity import Identity
|
|
from letta.orm.job import Job
|
|
from letta.orm.llm_batch_items import LLMBatchItem
|
|
from letta.orm.llm_batch_job import LLMBatchJob
|
|
from letta.orm.mcp_oauth import MCPOAuth
|
|
from letta.orm.mcp_server import MCPServer
|
|
from letta.orm.message import Message
|
|
from letta.orm.organization import Organization
|
|
from letta.orm.passage import ArchivalPassage, BasePassage, SourcePassage
|
|
from letta.orm.passage_tag import PassageTag
|
|
from letta.orm.prompt import Prompt
|
|
from letta.orm.provider import Provider
|
|
from letta.orm.provider_model import ProviderModel
|
|
from letta.orm.provider_trace import ProviderTrace
|
|
from letta.orm.run import Run
|
|
from letta.orm.run_metrics import RunMetrics
|
|
from letta.orm.sandbox_config import AgentEnvironmentVariable, SandboxConfig, SandboxEnvironmentVariable
|
|
from letta.orm.source import Source
|
|
from letta.orm.sources_agents import SourcesAgents
|
|
from letta.orm.step import Step
|
|
from letta.orm.step_metrics import StepMetrics
|
|
from letta.orm.tool import Tool
|
|
from letta.orm.tools_agents import ToolsAgents
|
|
from letta.orm.user import User
|