Skip to content

Deferred: escalation API and identity model Phase B #166

Open

Description

@jameswnl

Context

Intentionally deferred items from #146 (Identity model). Phase A (columns, StepMetadata, ConversationMessage, store methods) is done. Phase B is escalation.

Items

  • escalate() API — fork a workflow for human escalation, create child with parent_workflow_id link
  • list_by_parent() helper — query escalation chains without raw SQL
  • Cap escalation depth — enforce max 2 levels via parent_workflow_id depth check
  • Reference vs copy — child loads parent turns via session_id/parent_workflow_id join (per review: reference, don't copy)

Related

Activity

  1. beesarmy commented on Aug 24, 2026

    @beesarmy
    Collaborator

    Triage

    Summary: Phase B of the identity model — escalation API, parent workflow links, and depth capping. Deferred from #146.

    Affected components:

    • src/cloud_agents/workflow/executor/chat/runner.py — would need escalate() method
    • src/cloud_agents/storage/run_state_store.py — would need list_by_parent() query
    • src/cloud_agents/workflow/temporal_models.py — parent_workflow_id field exists in schema (via Alembic migration)

    Related issues/PRs:

    Assessment: Well-scoped deferred work. The "reference vs copy" decision (load parent turns via join, not duplication) is the right call from the review. This is lower priority than the production-readiness items in #167 — escalation is a feature, not a blocker.

    Suggested labels: area/chat, feature


    🤖 Triaged by beesarmy via Claude Code

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions