Status
approved
PRYAJA3 Approval
Human gate for repo writes, promotion gates and other risky actions. Decisions are sent to the canonical target API.
Current decision status and linked runtime entities.
Approve, request changes or reject. The API keeps approval, run, checkpoint and audit state in sync.
Canonical execution controls for approved repo writes, promotion gates and checkpoint resume. Destructive steps still pass through the target API policy layer.
The proposal or gated action that requires a human decision.
Post-approval execution state, verification lineage and promotion readiness.
{
"decision": {
"status": "approved",
"actor": "admin",
"comment": "live resume smoke",
"decided_at": "2026-04-13T10:46:04.053245+00:00"
},
"execution": {
"status": "no_diff",
"executed_at": "2026-04-13T10:46:04.208304+00:00",
"workspace_path": "/isolated-workspaces/approval-4847d69112b1-20260413T104604Z",
"report_path": "/isolated-workspaces/approval-4847d69112b1-20260413T104604Z/approval-apply-report.json",
"patch_path": "/isolated-workspaces/approval-4847d69112b1-20260413T104604Z/proposed.patch",
"report": {
"approval_id": "approval-4847d69112b1",
"run_id": "run-f1ab1acd",
"task_id": "task-0a5e9788",
"status": "no_diff",
"executed_at": "2026-04-13T10:46:04.208304+00:00",
"source_workspace_root": "/workspace",
"isolated_workspace_root": "/isolated-workspaces/approval-4847d69112b1-20260413T104604Z",
"proposal": {
"title": "Добавление audit event после approval resume queueing",
"summary": "Предлагается добавить запись короткого audit event в `apps/api/app/main.py` после постановки в очередь возобновления approval. Так как точные строки кода обработчика approval resume queueing отсутствуют в предоставленном контексте, unified_diff оставлен пустым.",
"target_files": [
"apps/api/app/main.py"
],
"validation_plan": [
"Запустить тесты API (apps/api/tests/test_approvals_api.py).",
"Проверить, что при возобновлении approval создается соответствующий audit event."
],
"readiness": "needs_followup",
"confidence": 0.5
},
"patch": {
"artifact_uri": "urn:pryaja3:artifact:code-patch-proposal:run-f1ab1acd:PATCH-5",
"has_unified_diff": false,
"patch_path": "/isolated-workspaces/approval-4847d69112b1-20260413T104604Z/proposed.patch",
"result": {
"status": "no_diff",
"selected_strip": null,
"dry_run_attempts": [],
"apply_result": null
}
},
"tests": {
"status": "not_run",
"results": []
}
}
},
"promotion": {
"state": "completed",
"ready_for_merge": false,
"summary": "Archived obsolete smoke/recovery/system-test entry; not actionable for the user.",
"source": "self",
"root_run_id": "run-f1ab1acd",
"source_run_id": "run-f1ab1acd",
"task_id": "task-0a5e9788",
"task_title": "Подготовь proposal patch для apps/api/app/main.py: добавь короткий audit event после approval resum…",
"approval_state": "archived",
"approval_execution_parent_run_id": null,
"review_readiness": null,
"engineering_readiness": null,
"tests_overall_status": null,
"tests_count": 0,
"requirements": [],
"promotion_execution_state": null,
"promotion_execution_executed_at": null,
"promotion_execution_workspace_path": null,
"promotion_execution_target_root": null,
"promotion_execution_report_path": null,
"promotion_execution_diff_path": null,
"promotion_bundle_artifact_ids": [],
"updated_at": "2026-04-17T15:15:46.960347Z",
"completed_at": "2026-04-17T15:15:46.960347Z"
},
"lineage": {
"root_run_id": "run-f1ab1acd",
"child_runs": [],
"approval_related_runs": []
}
}Patch proposals, execution outputs, approval state artifacts and verification reports.
Low-level request JSON for audit and debugging.
{
"approval_id": "approval-4847d69112b1",
"required": true,
"status": "approved",
"approval_kind": "repo_write_apply",
"title": "Добавление audit event после approval resume queueing",
"summary": "Предлагается добавить запись короткого audit event в `apps/api/app/main.py` после постановки в очередь возобновления approval. Так как точные строки кода обработчика approval resume queueing отсутствуют в предоставленном контексте, unified_diff оставлен пустым.",
"reason": "Требуется подтверждение перед внесением изменений, так как точный код обработчика approval resume queueing неизвестен из контекста.",
"artifact_uri": "urn:pryaja3:artifact:code-patch-proposal:run-f1ab1acd:PATCH-5",
"proposal_readiness": "needs_followup",
"decision_options": [
"approve",
"reject",
"needs_changes"
],
"resume_supported": true,
"tool_name": "code.patch",
"step_id": "PATCH-5",
"decision": {
"status": "approved",
"actor": "admin",
"comment": "live resume smoke",
"decided_at": "2026-04-13T10:46:04.053245+00:00"
},
"execution": {
"status": "no_diff",
"executed_at": "2026-04-13T10:46:04.208304+00:00",
"workspace_path": "/isolated-workspaces/approval-4847d69112b1-20260413T104604Z",
"report_path": "/isolated-workspaces/approval-4847d69112b1-20260413T104604Z/approval-apply-report.json",
"patch_path": "/isolated-workspaces/approval-4847d69112b1-20260413T104604Z/proposed.patch",
"report": {
"approval_id": "approval-4847d69112b1",
"run_id": "run-f1ab1acd",
"task_id": "task-0a5e9788",
"status": "no_diff",
"executed_at": "2026-04-13T10:46:04.208304+00:00",
"source_workspace_root": "/workspace",
"isolated_workspace_root": "/isolated-workspaces/approval-4847d69112b1-20260413T104604Z",
"proposal": {
"title": "Добавление audit event после approval resume queueing",
"summary": "Предлагается добавить запись короткого audit event в `apps/api/app/main.py` после постановки в очередь возобновления approval. Так как точные строки кода обработчика approval resume queueing отсутствуют в предоставленном контексте, unified_diff оставлен пустым.",
"target_files": [
"apps/api/app/main.py"
],
"validation_plan": [
"Запустить тесты API (apps/api/tests/test_approvals_api.py).",
"Проверить, что при возобновлении approval создается соответствующий audit event."
],
"readiness": "needs_followup",
"confidence": 0.5
},
"patch": {
"artifact_uri": "urn:pryaja3:artifact:code-patch-proposal:run-f1ab1acd:PATCH-5",
"has_unified_diff": false,
"patch_path": "/isolated-workspaces/approval-4847d69112b1-20260413T104604Z/proposed.patch",
"result": {
"status": "no_diff",
"selected_strip": null,
"dry_run_attempts": [],
"apply_result": null
}
},
"tests": {
"status": "not_run",
"results": []
}
}
},
"responsible_agent": "Engineer Agent",
"responsible_role": "engineer",
"responsibility_source": "tool_registry_role_allowlist"
}