Table of Contents

Session Management Domain Model

  • Type: domain
  • Kind: DomainIndex
  • ID: domain.session-management
  • Status: draft
  • Source: specs/domain/examples/domain.example.yaml

YAML

apiVersion: jdai.upss/v1
kind: Domain
id: domain.session-management
version: 1
status: draft
metadata:
  owners:
    - JerrettDavis
  reviewers:
    - upss-domain-model-architect
  lastReviewed: 2026-03-07
  changeReason: Establish the first canonical domain model specification.
boundedContext: session-management
entities:
  - name: Session
    description: Represents an active user interaction session.
    properties:
      - sessionId
      - userId
      - createdAt
      - expiresAt
valueObjects:
  - name: SessionToken
    description: Immutable token identifying a session.
    properties:
      - value
      - issuedAt
aggregates:
  - name: SessionAggregate
    rootEntity: Session
    members:
      - SessionToken
invariants:
  - A session must have a non-expired token to be considered active.
  - Session expiry must be after creation time.
trace:
  upstream:
    - specs/capabilities/examples/capabilities.example.yaml
  downstream:
    data:
      - tests/JD.AI.Tests/Specifications/DomainSpecificationRepositoryTests.cs
    interfaces: []
    architecture:
      - src/JD.AI.Core/Specifications/DomainSpecification.cs