Skip to content

namespace

Namespace ORM Model

This module defines the Namespace class, which acts as a global container for users, agents, sessions, and memory collections within the Eleanor framework.

Attributes

Classes

Namespace

Bases: Base

Eleanor framework namespace

Attributes

__table_args__ class-attribute instance-attribute
__table_args__ = ({'comment': __doc__})
__tablename__ class-attribute instance-attribute
__tablename__ = 'namespace'
activity_sessions class-attribute instance-attribute
activity_sessions: Mapped[List[ActivitySession]] = (
    relationship(back_populates="namespace")
)
create_ts class-attribute instance-attribute
create_ts: Mapped[datetime] = mapped_column(
    server_default=now(), comment="Record create timestamp"
)
deleted class-attribute instance-attribute
deleted: Mapped[bool] = mapped_column(
    default=False, comment="Namespace soft delete flag"
)
description class-attribute instance-attribute
description: Mapped[Optional[str]] = mapped_column(
    Text,
    nullable=True,
    comment="Free-form description of the resource",
)
enabled class-attribute instance-attribute
enabled: Mapped[bool] = mapped_column(
    default=True,
    comment="Flag indicating whether the namespace is enabled or not",
)
managed class-attribute instance-attribute
managed: Mapped[bool] = mapped_column(
    default=False,
    comment="When true, indicates that this resource is managed by the system and should not be modified by users.",
)
memory_collections class-attribute instance-attribute
memory_collections: Mapped[List[MemoryCollection]] = (
    relationship(back_populates="namespace")
)
name class-attribute instance-attribute
name: Mapped[str] = mapped_column(
    String(RESOURCE_NAME_LEN),
    unique=True,
    comment="Namespace resource name",
)
participants class-attribute instance-attribute
participants: Mapped[List[Participant]] = relationship(
    back_populates="namespace"
)
pkid class-attribute instance-attribute
pkid: Mapped[str] = mapped_column(
    String(PKID_LEN),
    primary_key=True,
    default=prefixed_uuid(__tablename__),
    comment="Unique namespace identifier",
)
settings class-attribute instance-attribute
settings: Mapped[NamespaceResourceSettings] = mapped_column(
    PydanticType(NamespaceResourceSettings),
    default={},
    nullable=False,
    comment="JSON-encoded resource settings",
)
update_ts class-attribute instance-attribute
update_ts: Mapped[datetime] = mapped_column(
    server_default=now(),
    onupdate=current_timestamp(),
    comment="Record update timestamp",
)

Functions