PRYAJA3 Run

Проверь development lane и подготовь patch proposal по target worker control plane без применения и…

Full run report surface: plan, LangGraph checkpoints, step evaluations, tools, artifacts, approvals, costs and trace links.

Run state

Canonical status, graph runtime state and live progress.

Status
completed
Mode
development
Difficulty
normal
Execution
canonical
Plan steps
7
Step runs
7
Tool calls
7
Approvals
1
Artifacts
23
Subtasks
0
Browser artifacts
0
Cost rows
6
completedlanggraphtarget-worker-playbook-development-repo-analysis-v4canonical-worker-v3Open task cardOpen JSON reportOpen Markdown reportOpen trace JSONOpen Phoenix trace
Archived obsolete smoke/recovery/system-test entry; not actionable for the user.

Identity and task binding

The channel/user/thread/task context selected before strategy execution.

Run ID
run-cac82ffa
Task ID
task-7926e3c6
User
user-85590ef0 (user-85590ef0)
Thread
Проверь development lane и подготовь patch proposal по target worker control pl… (thread-smoke-development-lane)
Started
14 апр. 2026 г., 18:38
Completed
17 апр. 2026 г., 15:15
Updated
17 апр. 2026 г., 15:15
Final answer
На основе анализа репозитория и результатов тестирования подготовлен отчет по состоянию **development lane** и **target worker control plane**, а также сформировано предложение по патчу (patch proposal). ### Что найдено В ходе исследования кода были подтверждены следующие механизмы управления: * **Режим разработки:** В файле `apps/worker/app/planner.py` режим `development` сопоставлен с типом задач `engineering`. * **Политика патчей:** В `apps/worker/app/development_policy.py` реализована функция `build_code_patch_fallback`, которая гарантирует, что предложения по коду остаются ограниченными и не применяются к репозиторию автоматически. * **Интеграция в Executor:** Компонент `apps/worker/app/executor.py` использует нормализацию предложений патчей (`normalize_patch_proposal_json`) для обработки специфичных для разработки изменений. * **Сценарии (Playbooks):** В `apps/worker/conf…

Dynamic subtask graph

Capability-first DAG for external “do it end-to-end” workflows: employees, required capabilities, candidate MCP/tools and blockers.

Agentic workflow
off
Subtasks
0
Capabilities
0
Credentials
0
Browser/MCP artifacts
0
Source
n/a
No dynamic subtask graph is linked to this run.

Agent handoff timeline

Visual path through strategy roles, from intake to tools, evaluation, approval and finish.

development->developmentCONTEXT-1completed
Проверить привязку к задаче и собрать локальный контекст перед анализом репозитория.
tools: [object Object] · impact: positive
development->developmentREPO-2completed
Найти релевантные файлы и кодовые фрагменты в репозитории и опереться на них в анализе.
tools: [object Object] · impact: strong_positive
development->developmentTESTS-3completed
Запустить ограниченный релевантный Python unit test и проверить, подтверждает ли он найденный кодовый путь.
tools: [object Object] · impact: positive
development->developmentREVIEW-4completed
Собрать grounded review report по найденным репозиторию и тестам без выдуманных root cause или patch claims.
tools: [object Object] · impact: positive
development->developmentPATCH-5completed
Подготовить безопасный proposal-only patch artifact с diff-предложением и human approval request без применения изменений.
tools: [object Object] · impact: positive
development->developmentREPORT-6completed
Собрать engineering report artifact с подтвержденными findings, verification, risks и next actions для board/runtime consumers.
tools: [object Object] · impact: positive
development->finishMEMORY-7completed
Сохранить краткий эпизод и возможные durable memory updates после анализа.
tools: [object Object] · impact: positive

PlanSpec

Planner output that was executed by the graph runtime.

Plan ID
plan-de1cc7f1
Version
target-worker-playbook-development-repo-analysis-v4
Goal
No goal.
Source
playbook_development_repo_analysis
Step budget
Replans
1
CONTEXT-1completeddevelopment1 tool calls
Проверить привязку к задаче и собрать локальный контекст перед анализом репозитория.
thread binding confirmed; local context captured
context.inspect
REPO-2completeddevelopment1 tool calls
Найти релевантные файлы и кодовые фрагменты в репозитории и опереться на них в анализе.
at least one relevant file or code fragment is identified
repo.read
TESTS-3completeddevelopment1 tool calls
Запустить ограниченный релевантный Python unit test и проверить, подтверждает ли он найденный кодовый путь.
at least one scoped Python test run is attempted or explicit test limitations are reported
tests.run
REVIEW-4completeddevelopment1 tool calls
Собрать grounded review report по найденным репозиторию и тестам без выдуманных root cause или patch claims.
review report artifact created; confirmed findings separated from limits
artifact.write
PATCH-5completeddevelopment1 tool calls
Подготовить безопасный proposal-only patch artifact с diff-предложением и human approval request без применения изменений.
patch proposal artifact created; approval request prepared; no repo write executed
code.patch
REPORT-6completeddevelopment1 tool calls
Собрать engineering report artifact с подтвержденными findings, verification, risks и next actions для board/runtime consumers.
engineering report artifact created; report includes findings, verification, limitations, risks, next actions
artifact.write
MEMORY-7completeddevelopment1 tool calls
Сохранить краткий эпизод и возможные durable memory updates после анализа.
memory write prepared; episode captured
memory.extract

Tool calls

Concrete tool executions with policy decisions, status, evidence and errors.

context.inspectcompletedCONTEXT-1
policy: allowed
risk: unknown
side effect: unknown
started: 14 апр. 2026 г., 18:38
completed:
No output summary stored.
repo.readcompletedREPO-2
policy: allowed
risk: unknown
side effect: unknown
started: 14 апр. 2026 г., 18:38
completed:
No output summary stored.
tests.runcompletedTESTS-3
policy: allowed
risk: unknown
side effect: unknown
started: 14 апр. 2026 г., 18:38
completed:
No output summary stored.
artifact.writecompletedREVIEW-4
policy: allowed
risk: unknown
side effect: unknown
started: 14 апр. 2026 г., 18:38
completed:
No output summary stored.
code.patchcompletedPATCH-5
policy: allowed
risk: unknown
side effect: unknown
started: 14 апр. 2026 г., 18:39
completed:
{"proposal": {"title": "Усиление контроля в development lane для target worker control plane", "summary": "Предложение по модификации политики разработки для обеспечения строгого соблюдения режима 'без применения изменений'. Изменения касаются функции генерации fallback-патчей, чтобы они явно требовали ручного подтверждения перед выполнением.", "target_file…
artifact.writecompletedREPORT-6
policy: allowed
risk: unknown
side effect: unknown
started: 14 апр. 2026 г., 18:39
completed:
No output summary stored.
memory.extractcompletedMEMORY-7
policy: allowed
risk: unknown
side effect: unknown
started: 14 апр. 2026 г., 18:39
completed:
No output summary stored.

LangGraph checkpoint and hooks

Execution coordinates, checkpoints and hook counts.

Checkpoint backend
file_json
Checkpoint ns
execution
Completed steps
7
Trace events
34
Trace tools
7
Trace replans
0
{
  "checkpoint_state": {
    "phase": "completed",
    "backend": "file_json",
    "thread_id": "run-cac82ffa",
    "approval_id": "approval-fc62585091c6",
    "last_step_id": "MEMORY-7",
    "checkpoint_id": "1f138314-bf39-6afe-800f-fede6ecc21da",
    "checkpoint_ns": "execution",
    "approval_state": "archived",
    "checkpoint_path": "/checkpoints/langgraph/langgraph-checkpoints.json",
    "cleanup_archived": true,
    "resume_supported": false,
    "completed_step_ids": [
      "CONTEXT-1",
      "REPO-2",
      "TESTS-3",
      "REVIEW-4",
      "PATCH-5",
      "REPORT-6",
      "MEMORY-7"
    ],
    "last_transition_at": "2026-04-17T15:15:46.960Z",
    "post_execution_backend": "file_json",
    "post_execution_thread_id": "run-cac82ffa",
    "post_execution_checkpoint_id": "1f138315-2e4d-60e6-8016-e2d3f1840602",
    "post_execution_checkpoint_ns": "post_execution",
    "post_execution_checkpoint_path": "/checkpoints/langgraph/langgraph-checkpoints.json",
    "post_execution_checkpoint_parent_id": "1f138315-2e4a-61f6-8015-79aa47dfb93f"
  },
  "graph_runtime": {
    "engine": "langgraph",
    "visited_nodes": [
      "select_step",
      "execute_step",
      "select_step",
      "execute_step",
      "select_step",
      "execute_step",
      "select_step",
      "execute_step",
      "select_step",
      "execute_step",
      "select_step",
      "execute_step",
      "select_step",
      "execute_step",
      "select_step"
    ],
    "post_execution_visited_nodes": [
      "evaluate_post_execution",
      "decide_replan",
      "collect_approvals",
      "evaluate_promotion_gate",
      "approval_gate"
    ],
    "post_execution_phase": "completed",
    "post_execution_canonical_status": "completed"
  },
  "hook_counts": {
    "on_finish": 1,
    "after_step": 9,
    "after_tool": 7,
    "before_step": 9,
    "before_tool": 7,
    "before_approval": 1
  }
}

Routing and memory context

Auto-context selection, memory read/write sets and context pack size.

Route
create_new
Decision
unknown
Memory reads
0
Memory writes
0
Selected memory
0
Graph items
0
{
  "route_evidence": {},
  "context_pack": {
    "selected_memory_count": 0,
    "graph_count": 0,
    "message_count": 1
  },
  "degraded_flags": [],
  "hard_degraded_flags": []
}

Approvals and promotion

Human gates, child verification runs and promotion state.

Approvals
1
Promotion state
completed
Ready for merge
no
Family runs
1
Child runs
0
Approval child runs
0
Усиление контроля в development lane для target worker control planerejectedrepo_write_apply
Предложение по модификации политики разработки для обеспечения строгого соблюдения режима 'без применения изменений'. Изменения касаются функции генерации fallback-патчей, чтобы они явно требовали ручного подтверждения перед выполнением.

Artifacts, costs and audit

Operational evidence that the run produced.

Artifacts
23
Costs
6
Audit events
138
Phoenix spans
18
plan_validation
urn:pryaja3:artifact:plan-playbook:run-cac82ffa
step_run_snapshot
urn:pryaja3:artifact:step-run:run-cac82ffa:CONTEXT-1
repo_read
urn:pryaja3:artifact:repo-read:run-cac82ffa:REPO-2
step_run_snapshot
urn:pryaja3:artifact:step-run:run-cac82ffa:REPO-2
tests_run
urn:pryaja3:artifact:tests-run:run-cac82ffa:TESTS-3
step_run_snapshot
urn:pryaja3:artifact:step-run:run-cac82ffa:TESTS-3
review_report
urn:pryaja3:artifact:review-report:run-cac82ffa:REVIEW-4
step_run_snapshot
urn:pryaja3:artifact:step-run:run-cac82ffa:REVIEW-4
code_patch_proposal
urn:pryaja3:artifact:code-patch-proposal:run-cac82ffa:PATCH-5
step_run_snapshot
urn:pryaja3:artifact:step-run:run-cac82ffa:PATCH-5
engineering_report
urn:pryaja3:artifact:engineering-report:run-cac82ffa:REPORT-6
step_run_snapshot
urn:pryaja3:artifact:step-run:run-cac82ffa:REPORT-6

Raw run metadata

Low-level diagnostics for engineering/debug review.

{
  "source": "target-runtime",
  "message": "Проверь development lane и подготовь patch proposal по target worker control plane без применения изменений.",
  "trace_id": "trace-33aa1fe70c2c4a34",
  "llm_model": "gemini-3-flash-preview",
  "worker_id": "worker-1",
  "cleanup_at": "2026-04-17T15:15:46.960Z",
  "request_id": "req-41f27380b23c4007",
  "route_type": "create_new",
  "step_count": 7,
  "step_index": 7,
  "step_total": 7,
  "graph_count": 0,
  "plan_source": "playbook_development_repo_analysis",
  "recorded_at": "2026-04-14T18:40:02.421536+00:00",
  "step_status": "completed",
  "current_date": "",
  "heartbeat_at": "2026-04-14T18:39:47.650595+00:00",
  "plan_version": "target-worker-playbook-development-repo-analysis-v4",
  "repair_flags": [],
  "replan_count": 1,
  "report_kinds": [
    "engineering_report",
    "review_report"
  ],
  "request_path": "https://pryaja.uvvu.ru/traces/phoenix/v1/ingress/messages/execute",
  "runtime_path": "canonical-worker-v3",
  "cleanup_actor": "codex_cleanup",
  "current_stage": "cleanup.archived",
  "external_sync": {
    "openproject": {
      "error": null,
      "status": "synced",
      "dry_run": false,
      "trigger": "approval_decision",
      "provider": "openproject",
      "synced_at": "2026-04-16T15:24:06.112985+00:00",
      "board_state": "needs_changes",
      "sync_signature": "5ce3f207d0602e3275b3486d",
      "work_package_id": "47"
    }
  },
  "heartbeat_seq": 1,
  "message_count": 1,
  "queue_wait_ms": 78134,
  "timeout_scope": "answer",
  "wall_clock_ms": 78122,
  "approval_count": 1,
  "approval_state": "archived",
  "artifact_count": 21,
  "cleanup_reason": "obsolete smoke/recovery/system-test entry removed from active queues",
  "degraded_flags": [],
  "execution_mode": "canonical",
  "promotion_gate": {
    "state": "completed",
    "summary": "Archived obsolete smoke/recovery/system-test entry; not actionable for the user.",
    "ready_for_merge": false
  },
  "route_evidence": {},
  "approval_resume": {
    "phase": "completed",
    "state": "archived",
    "updated_at": "2026-04-17T15:16:41.969Z",
    "resume_supported": false
  },
  "current_step_id": null,
  "decision_source": null,
  "heartbeat_scope": "answer",
  "memory_read_set": [],
  "promotion_state": "completed",
  "stalled_step_id": "MEMORY-7",
  "checkpoint_phase": "completed",
  "checkpoint_state": {
    "phase": "completed",
    "backend": "file_json",
    "thread_id": "run-cac82ffa",
    "approval_id": "approval-fc62585091c6",
    "last_step_id": "MEMORY-7",
    "checkpoint_id": "1f138314-bf39-6afe-800f-fede6ecc21da",
    "checkpoint_ns": "execution",
    "approval_state": "archived",
    "checkpoint_path": "/checkpoints/langgraph/langgraph-checkpoints.json",
    "cleanup_archived": true,
    "resume_supported": false,
    "completed_step_ids": [
      "CONTEXT-1",
      "REPO-2",
      "TESTS-3",
      "REVIEW-4",
      "PATCH-5",
      "REPORT-6",
      "MEMORY-7"
    ],
    "last_transition_at": "2026-04-17T15:15:46.960Z",
    "post_execution_backend": "file_json",
    "post_execution_thread_id": "run-cac82ffa",
    "post_execution_checkpoint_id": "1f138315-2e4d-60e6-8016-e2d3f1840602",
    "post_execution_checkpoint_ns": "post_execution",
    "post_execution_checkpoint_path": "/checkpoints/langgraph/langgraph-checkpoints.json",
    "post_execution_checkpoint_parent_id": "1f138315-2e4a-61f6-8015-79aa47dfb93f"
  },
  "cleanup_archived": true,
  "evaluation_count": 7,
  "ingress_metadata": {
    "trace_id": "trace-33aa1fe70c2c4a34",
    "request_id": "req-41f27380b23c4007",
    "request_path": "https://pryaja.uvvu.ru/traces/phoenix/v1/ingress/messages/execute",
    "request_run_id": null
  },
  "last_progress_at": "2026-04-14T18:40:02.421536+00:00",
  "memory_write_set": [
    {
      "key": "dev_lane_task_mapping",
      "type": "fact",
      "scope": "thread",
      "memory_id": "mem-181c8a3e22eb",
      "confidence": 0.99,
      "extraction_method": "model-json"
    },
    {
      "key": "patch_application_policy",
      "type": "fact",
      "scope": "thread",
      "memory_id": "mem-461470a8a8b4",
      "confidence": 0.99,
      "extraction_method": "model-json"
    },
    {
      "key": "test_status_executor",
      "type": "fact",
      "scope": "thread",
      "memory_id": "mem-c06df5cbbc0f",
      "confidence": 0.99,
      "extraction_method": "model-json"
    },
    {
      "key": "test_status_graph_runtime",
      "type": "fact",
      "scope": "thread",
      "memory_id": "mem-6b76edfdc0b1",
      "confidence": 0.99,
      "extraction_method": "model-json"
    },
    {
      "key": "worker_control_plane_patch",
      "type": "active_thread",
      "scope": "thread",
      "memory_id": "mem-e49fbce5812a",
      "confidence": 0.99,
      "extraction_method": "model-json"
    },
    {
      "key": "dev_lane_analysis_summary",
      "type": "episode",
      "scope": "thread",
      "memory_id": "mem-5cd44561efc0",
      "confidence": 0.99,
      "extraction_method": "model-json"
    }
  ],
  "phoenix_endpoint": "http://phoenix:6006",
  "phoenix_trace_id": "225196cf48bd82981fa136b1a1c9b302",
  "progress_percent": 100,
  "progress_summary": "Archived obsolete smoke/recovery/system-test entry; not actionable for the user.",
  "report_summaries": {
    "review_report": {
      "summary": "The development lane implementation in the worker control plane is designed to generate bounded patch proposals without automatic application of changes. The core logic resides in development_policy.py and is integrated via the executor and planner components.",
      "grounded": true,
      "readiness": "needs_followup",
      "artifact_uri": "urn:pryaja3:artifact:review-report:run-cac82ffa:REVIEW-4"
    },
    "engineering_report": {
      "summary": "Проведен аудит компонентов development lane. Установлено, что система использует специализированные механизмы для управления патчами и контроля рабочих узлов.",
      "grounded": true,
      "readiness": "bounded_ready",
      "artifact_uri": "urn:pryaja3:artifact:engineering-report:run-cac82ffa:REPORT-6"
    }
  },
  "approval_decision": {
    "actor": "employee-tkach",
    "status": "needs_changes",
    "comment": "Ткач вернул approval агентам на доработку: нет достаточно проверенного diff/контекста для применения.",
    "decided_at": "2026-04-16T15:24:05.767869+00:00"
  },
  "phoenix_trace_url": "https://pryaja.uvvu.ru/traces/phoenix/projects/UHJvamVjdDoy/traces/225196cf48bd82981fa136b1a1c9b302",
  "promotion_summary": "Archived obsolete smoke/recovery/system-test entry; not actionable for the user.",
  "source_message_id": null,
  "timeout_budget_ms": 120000,
  "completed_step_ids": [
    "CONTEXT-1",
    "REPO-2",
    "TESTS-3",
    "REVIEW-4",
    "PATCH-5",
    "REPORT-6",
    "MEMORY-7"
  ],
  "phoenix_project_id": "UHJvamVjdDoy",
  "phoenix_public_url": "https://pryaja.uvvu.ru/traces/phoenix",
  "phoenix_span_count": 18,
  "hard_degraded_flags": [],
  "phoenix_exported_at": "2026-04-14T18:40:02.724190+00:00",
  "reply_to_message_id": null,
  "report_artifact_ids": [
    "urn:pryaja3:artifact:review-report:run-cac82ffa:REVIEW-4",
    "urn:pryaja3:artifact:engineering-report:run-cac82ffa:REPORT-6"
  ],
  "timeout_deadline_at": "2026-04-14T18:41:42.632314+00:00",
  "tool_registry_count": 8,
  "graph_runtime_engine": "langgraph",
  "phoenix_export_error": null,
  "phoenix_project_name": "pryaja3-target",
  "tool_registry_source": "target_api",
  "phoenix_export_status": "exported",
  "promotion_approval_id": null,
  "selected_memory_count": 0,
  "cleanup_previous_status": "awaiting_approval",
  "cleanup_visible_to_user": false,
  "phoenix_trace_query_url": "https://pryaja.uvvu.ru/traces/phoenix/v1/projects/pryaja3-target/spans?trace_id=225196cf48bd82981fa136b1a1c9b302",
  "phoenix_trace_record_id": "VHJhY2U6MTY=",
  "graph_runtime_checkpoint": "file_json",
  "graph_runtime_edge_count": 3,
  "graph_runtime_node_count": 2,
  "promotion_approval_state": null,
  "research_high_confidence": 0,
  "promotion_ready_for_merge": false,
  "graph_runtime_checkpoint_id": "1f138314-bf39-6afe-800f-fede6ecc21da",
  "graph_runtime_checkpoint_ns": "execution",
  "graph_runtime_resume_result": {
    "phase": "completed",
    "summary": "Archived obsolete smoke/recovery/system-test entry; not actionable for the user.",
    "approval_state": "archived",
    "canonical_status": "completed"
  },
  "graph_runtime_visited_nodes": [
    "select_step",
    "execute_step",
    "select_step",
    "execute_step",
    "select_step",
    "execute_step",
    "select_step",
    "execute_step",
    "select_step",
    "execute_step",
    "select_step",
    "execute_step",
    "select_step",
    "execute_step",
    "select_step"
  ],
  "orchestration_trace_summary": {
    "degraded": false,
    "trace_id": "trace-33aa1fe70c2c4a34",
    "started_at": "2026-04-14T18:38:44.298792+00:00",
    "step_count": 7,
    "duration_ms": 78122,
    "event_count": 34,
    "finished_at": "2026-04-14T18:40:02.421536+00:00",
    "hook_counts": {
      "on_finish": 1,
      "after_step": 9,
      "after_tool": 7,
      "before_step": 9,
      "before_tool": 7,
      "before_approval": 1
    },
    "replan_count": 0,
    "approval_count": 1,
    "execution_mode": "canonical",
    "tool_call_count": 7,
    "checkpoint_state": {
      "phase": "awaiting_approval",
      "backend": "file_json",
      "thread_id": "run-cac82ffa",
      "last_step_id": "MEMORY-7",
      "checkpoint_id": "1f138314-bf39-6afe-800f-fede6ecc21da",
      "checkpoint_ns": "execution",
      "approval_state": "requested",
      "checkpoint_path": "/checkpoints/langgraph/langgraph-checkpoints.json",
      "resume_supported": true,
      "completed_step_ids": [
        "CONTEXT-1",
        "REPO-2",
        "TESTS-3",
        "REVIEW-4",
        "PATCH-5",
        "REPORT-6",
        "MEMORY-7"
      ],
      "post_execution_backend": "file_json",
      "post_execution_thread_id": "run-cac82ffa",
      "post_execution_checkpoint_id": "1f138315-2e4d-60e6-8016-e2d3f1840602",
      "post_execution_checkpoint_ns": "post_execution",
      "post_execution_checkpoint_path": "/checkpoints/langgraph/langgraph-checkpoints.json",
      "post_execution_checkpoint_parent_id": "1f138315-2e4a-61f6-8015-79aa47dfb93f"
    },
    "phoenix_endpoint": "http://phoenix:6006",
    "phoenix_export_status": "exported"
  },
  "patch_proposal_artifact_ids": [
    "urn:pryaja3:artifact:code-patch-proposal:run-cac82ffa:PATCH-5"
  ],
  "candidate_retrieval_strategy": null,
  "graph_runtime_checkpoint_path": "/checkpoints/langgraph/langgraph-checkpoints.json",
  "graph_runtime_run_resume_result": {
    "phase": "completed",
    "summary": "Archived obsolete smoke/recovery/system-test entry; not actionable for the user.",
    "approval_state": "archived",
    "canonical_status": "completed"
  },
  "graph_runtime_checkpoint_parent_id": "1f138314-bf37-6c0b-800e-a70f5d913e78",
  "graph_runtime_checkpoint_thread_id": "run-cac82ffa",
  "graph_runtime_post_execution_phase": "completed",
  "graph_runtime_post_execution_engine": "langgraph",
  "graph_runtime_post_execution_outcome": {
    "phase": "completed",
    "summary": "Archived obsolete smoke/recovery/system-test entry; not actionable for the user.",
    "approval_state": "archived",
    "promotion_gate": {
      "state": "completed",
      "summary": "Archived obsolete smoke/recovery/system-test entry; not actionable for the user.",
      "ready_for_merge": false
    },
    "canonical_status": "completed",
    "promotion_approval": {}
  },
  "graph_runtime_post_execution_summary": "Archived obsolete smoke/recovery/system-test entry; not actionable for the user.",
  "graph_runtime_post_execution_checkpoint": "file_json",
  "graph_runtime_post_execution_edge_count": 8,
  "graph_runtime_post_execution_node_count": 5,
  "graph_runtime_post_execution_checkpoint_id": "1f138315-2e4d-60e6-8016-e2d3f1840602",
  "graph_runtime_post_execution_checkpoint_ns": "post_execution",
  "graph_runtime_post_execution_visited_nodes": [
    "evaluate_post_execution",
    "decide_replan",
    "collect_approvals",
    "evaluate_promotion_gate",
    "approval_gate"
  ],
  "graph_runtime_post_execution_approval_state": "archived",
  "graph_runtime_post_execution_checkpoint_path": "/checkpoints/langgraph/langgraph-checkpoints.json",
  "graph_runtime_post_execution_promotion_state": "completed",
  "graph_runtime_post_execution_canonical_status": "completed",
  "graph_runtime_post_execution_checkpoint_parent_id": "1f138315-2e4a-61f6-8015-79aa47dfb93f",
  "graph_runtime_post_execution_checkpoint_thread_id": "run-cac82ffa",
  "graph_runtime_post_execution_effective_approval_state": "archived"
}