Настройка процесса генерации документации

This commit is contained in:
2026-04-14 16:40:30 +03:00
parent 02eaab6bce
commit 88987abaa6
180 changed files with 9397 additions and 33226 deletions
File diff suppressed because it is too large Load Diff
@@ -1,103 +0,0 @@
# Runtime Trace: 20260408-130754-c008300db553
- active_rag_session_id: 273bb6f2-0921-412a-9c73-c008300db553
## request
```json
{
"request_id": "req_e2b3901d8fcd4b2f88ba2fd5e09e4073",
"session_id": "as_da9ab26d0dbe4ee2b6a2b392ff1ebdc9",
"active_rag_session_id": "273bb6f2-0921-412a-9c73-c008300db553",
"process_version": "v2",
"created_at": "2026-04-08T13:07:54.329187+00:00",
"message": "Напиши документацию по системной аналитике \n/Users/alex/Dev_projects_v2/apps/test_echo_app/_incoming/feature1.md"
}
```
## process.v2
```json
{
"event": "intent_routed",
"routing_domain": "DOCS",
"intent": "DOC_UPDATE",
"subintent": "FIND_FILES",
"normalized_query": "Напиши документацию по системной аналитике /Users/alex/Dev_projects_v2/apps/test_echo_app/_incoming/feature1.md",
"target_terms": [],
"anchors": {
"entity_names": [
"Users",
"Dev_projects_v2"
],
"file_names": [
"/users/alex/dev_projects_v2/apps/test_echo_app/_incoming/feature1.md"
],
"endpoint_paths": [],
"target_doc_hints": [],
"matched_aliases": [],
"process_domain": null,
"process_subdomain": null,
"scope_type": "unknown",
"candidate_domains": [],
"candidate_subdomains": [],
"candidate_entities": [],
"candidate_apis": [],
"signal_types": [
"DOMAIN_ENTITY",
"FIND_FILES"
]
},
"confidence": 0.8,
"routing_mode": "llm_default",
"llm_router_used": true,
"reason_short": "Запрос явно указывает на обновление документации по системной аналитике из конкретного файла feature1.md.",
"rag_session_id": "273bb6f2-0921-412a-9c73-c008300db553"
}
```
## process.v2.pipeline
```json
{
"event": "router_resolved",
"domain": "DOCS",
"intent": "DOC_UPDATE",
"subintent": "FIND_FILES",
"confidence": 0.8
}
```
## process.v2.pipeline
```json
{
"event": "anchors_extracted",
"signal_types": [
"DOMAIN_ENTITY",
"FIND_FILES"
],
"endpoint_paths": [],
"target_doc_hints": [],
"matched_aliases": [],
"target_terms": []
}
```
## process.v2.pipeline
```json
{
"event": "alias_resolution",
"resolved_aliases": [],
"target_doc_hints": []
}
```
## result
```json
{
"status": "error",
"error": {
"code": "api_runtime_error",
"desc": "Agent request failed unexpectedly.",
"module": "agent"
},
"completed_at": "2026-04-08T13:07:57.414809+00:00"
}
```
@@ -1,103 +0,0 @@
# Runtime Trace: 20260408-130830-d398ef674b67
- active_rag_session_id: b0fed7d3-965b-4103-91b5-d398ef674b67
## request
```json
{
"request_id": "req_9ee1b7dae1cb4f8dbc81537e678734b8",
"session_id": "as_c1e2c54c04c4483da7f956fb94fedd3e",
"active_rag_session_id": "b0fed7d3-965b-4103-91b5-d398ef674b67",
"process_version": "v2",
"created_at": "2026-04-08T13:08:30.296355+00:00",
"message": "Напиши документацию по системной аналитике \n/Users/alex/Dev_projects_v2/apps/test_echo_app/_incoming/feature1.md"
}
```
## process.v2
```json
{
"event": "intent_routed",
"routing_domain": "DOCS",
"intent": "DOC_UPDATE",
"subintent": "FIND_FILES",
"normalized_query": "Напиши документацию по системной аналитике /Users/alex/Dev_projects_v2/apps/test_echo_app/_incoming/feature1.md",
"target_terms": [],
"anchors": {
"entity_names": [
"Users",
"Dev_projects_v2"
],
"file_names": [
"/users/alex/dev_projects_v2/apps/test_echo_app/_incoming/feature1.md"
],
"endpoint_paths": [],
"target_doc_hints": [],
"matched_aliases": [],
"process_domain": null,
"process_subdomain": null,
"scope_type": "unknown",
"candidate_domains": [],
"candidate_subdomains": [],
"candidate_entities": [],
"candidate_apis": [],
"signal_types": [
"DOMAIN_ENTITY",
"FIND_FILES"
]
},
"confidence": 0.8,
"routing_mode": "llm_default",
"llm_router_used": true,
"reason_short": "Запрос явно указывает на обновление документации по системной аналитике из указанного файла feature1.md.",
"rag_session_id": "b0fed7d3-965b-4103-91b5-d398ef674b67"
}
```
## process.v2.pipeline
```json
{
"event": "router_resolved",
"domain": "DOCS",
"intent": "DOC_UPDATE",
"subintent": "FIND_FILES",
"confidence": 0.8
}
```
## process.v2.pipeline
```json
{
"event": "anchors_extracted",
"signal_types": [
"DOMAIN_ENTITY",
"FIND_FILES"
],
"endpoint_paths": [],
"target_doc_hints": [],
"matched_aliases": [],
"target_terms": []
}
```
## process.v2.pipeline
```json
{
"event": "alias_resolution",
"resolved_aliases": [],
"target_doc_hints": []
}
```
## result
```json
{
"status": "error",
"error": {
"code": "api_runtime_error",
"desc": "Agent request failed unexpectedly.",
"module": "agent"
},
"completed_at": "2026-04-08T13:08:32.914987+00:00"
}
```
@@ -1,303 +0,0 @@
# Runtime Trace: 20260408-131217-d6aef7712b50
- active_rag_session_id: 09fb3332-3623-4164-9bb4-d6aef7712b50
## request
```json
{
"request_id": "req_44b293c2d2d34247a4ad4ffbf6e529f9",
"session_id": "as_c3998b60e2814f7090ead25d83aa990e",
"active_rag_session_id": "09fb3332-3623-4164-9bb4-d6aef7712b50",
"process_version": "v2",
"created_at": "2026-04-08T13:12:17.468690+00:00",
"message": "Напиши документацию по системной аналитике \n/Users/alex/Dev_projects_v2/apps/test_echo_app/_incoming/feature1.md"
}
```
## process.v2
```json
{
"event": "intent_routed",
"routing_domain": "DOCS",
"intent": "DOC_UPDATE",
"subintent": "FROM_FEATURE",
"normalized_query": "Напиши документацию по системной аналитике /Users/alex/Dev_projects_v2/apps/test_echo_app/_incoming/feature1.md",
"target_terms": [],
"anchors": {
"entity_names": [
"Users",
"Dev_projects_v2"
],
"file_names": [
"/users/alex/dev_projects_v2/apps/test_echo_app/_incoming/feature1.md"
],
"endpoint_paths": [],
"target_doc_hints": [],
"matched_aliases": [],
"process_domain": null,
"process_subdomain": null,
"scope_type": "unknown",
"candidate_domains": [],
"candidate_subdomains": [],
"candidate_entities": [],
"candidate_apis": [],
"signal_types": [
"DOMAIN_ENTITY"
]
},
"confidence": 0.8,
"routing_mode": "llm_default",
"llm_router_used": true,
"reason_short": "Запрос явно указывает на обновление документации по указанному файлу feature1.md.",
"rag_session_id": "09fb3332-3623-4164-9bb4-d6aef7712b50"
}
```
## process.v2.pipeline
```json
{
"event": "router_resolved",
"domain": "DOCS",
"intent": "DOC_UPDATE",
"subintent": "FROM_FEATURE",
"confidence": 0.8
}
```
## process.v2.pipeline
```json
{
"event": "anchors_extracted",
"signal_types": [
"DOMAIN_ENTITY"
],
"endpoint_paths": [],
"target_doc_hints": [],
"matched_aliases": [],
"target_terms": []
}
```
## process.v2.pipeline
```json
{
"event": "alias_resolution",
"resolved_aliases": [],
"target_doc_hints": []
}
```
## workflow.v2.docs_update.from_feature
```json
{
"event": "workflow_started",
"workflow_id": "v2.docs_update.from_feature"
}
```
## workflow.v2.docs_update.from_feature
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_update.from_feature",
"step": {
"id": "resolve_source",
"title": "Определение источника аналитики"
},
"input": {},
"output": {
"source_kind": "markdown_file",
"source_ref": "/Users/alex/Dev_projects_v2/apps/test_echo_app/_incoming/feature1.md",
"issues": 0
}
}
```
## workflow.v2.docs_update.from_feature
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_update.from_feature",
"step": {
"id": "load_source",
"title": "Загрузка системной аналитики"
},
"input": {},
"output": {
"source_kind": "markdown_file",
"content_loaded": true,
"issues": 0
}
}
```
## workflow.v2.docs_update.from_feature
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_update.from_feature",
"step": {
"id": "parse_feature",
"title": "Парсинг функциональных требований"
},
"input": {},
"output": {
"analysis_id": "",
"domains": [],
"subdomains": [],
"units": 1,
"issues": 0
}
}
```
## workflow.v2.docs_update.from_feature
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_update.from_feature",
"step": {
"id": "build_change_plan",
"title": "Построение плана изменений"
},
"input": {},
"output": {
"docs_rows": 26,
"planned_changes": 1,
"issues": 0
}
}
```
## workflow.v2.docs_update.from_feature
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_update.from_feature",
"step": {
"id": "build_changeset",
"title": "Формирование changeset"
},
"input": {},
"output": {
"changeset_items": 1,
"issues": 0
}
}
```
## workflow.v2.docs_update.from_feature
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_update.from_feature",
"step": {
"id": "finalize",
"title": "Подготовка ответа"
},
"input": {},
"output": {
"answer_length": 801,
"issues": 0,
"changeset_items": 1
}
}
```
## workflow.v2.docs_update.from_feature
```json
{
"event": "workflow_trace_flushed",
"workflow_id": "v2.docs_update.from_feature",
"steps": [
{
"step_id": "resolve_source",
"title": "Определение источника аналитики",
"input": {},
"output": {
"source_kind": "markdown_file",
"source_ref": "/Users/alex/Dev_projects_v2/apps/test_echo_app/_incoming/feature1.md",
"issues": 0
}
},
{
"step_id": "load_source",
"title": "Загрузка системной аналитики",
"input": {},
"output": {
"source_kind": "markdown_file",
"content_loaded": true,
"issues": 0
}
},
{
"step_id": "parse_feature",
"title": "Парсинг функциональных требований",
"input": {},
"output": {
"analysis_id": "",
"domains": [],
"subdomains": [],
"units": 1,
"issues": 0
}
},
{
"step_id": "build_change_plan",
"title": "Построение плана изменений",
"input": {},
"output": {
"docs_rows": 26,
"planned_changes": 1,
"issues": 0
}
},
{
"step_id": "build_changeset",
"title": "Формирование changeset",
"input": {},
"output": {
"changeset_items": 1,
"issues": 0
}
},
{
"step_id": "finalize",
"title": "Подготовка ответа",
"input": {},
"output": {
"answer_length": 801,
"issues": 0,
"changeset_items": 1
}
}
]
}
```
## workflow.v2.docs_update.from_feature
```json
{
"event": "workflow_completed",
"workflow_id": "v2.docs_update.from_feature"
}
```
## process.v2.pipeline
```json
{
"event": "answer_generated",
"answer_mode": "docs_update_changeset",
"answer_length": 801,
"changeset_items": 1
}
```
## result
```json
{
"status": "done",
"answer": "DOC_UPDATE/FROM_FEATURE: результат построения changeset.\n\nПлан изменений:\n- create: docs/api/api-telegram-messages-get.md (api_method)\n\nChangeset (для плагина):\n```json\n[\n {\n \"op\": \"create\",\n \"path\": \"docs/api/api-telegram-messages-get.md\",\n \"base_hash\": null,\n \"proposed_content\": \"---\\nid: api.telegram.messages.get\\ntitle: Реализация эндпоинта `GET /telegram/messages`\\ndoc_type: api_method\\ndomain: unknown\\nsub_domain: unknown\\nstatus: generated\\nrelated_docs:\\n - TBD\\nsource_of_truth: system_analysis\\nsystem_analytics_refs:\\n - section: 5. Функциональные требования\\n---\\n\\n## Summary\\n\\nЧерновик сгенерирован workflow DOC_UPDATE/FROM_FEATURE.\\n\",\n \"reason\": \"Из unit 'Реализация эндпоинта `GET /telegram/messages`' системной аналитики (analysis).\",\n \"hunks\": []\n }\n]\n```",
"completed_at": "2026-04-08T13:12:20.251846+00:00"
}
```
@@ -1,303 +0,0 @@
# Runtime Trace: 20260408-133710-3fcdfdcab8be
- active_rag_session_id: a603ea81-9785-4846-8c05-3fcdfdcab8be
## request
```json
{
"request_id": "req_c5a90cbf219046cc91239e4fae39ac3e",
"session_id": "as_5bad25c4dd394e33884ff7471bbcbf4a",
"active_rag_session_id": "a603ea81-9785-4846-8c05-3fcdfdcab8be",
"process_version": "v2",
"created_at": "2026-04-08T13:37:10.869126+00:00",
"message": "Напиши документацию по системной аналитике \n/Users/alex/Dev_projects_v2/apps/test_echo_app/_incoming/feature1.md"
}
```
## process.v2
```json
{
"event": "intent_routed",
"routing_domain": "DOCS",
"intent": "DOC_UPDATE",
"subintent": "FROM_FEATURE",
"normalized_query": "Напиши документацию по системной аналитике /Users/alex/Dev_projects_v2/apps/test_echo_app/_incoming/feature1.md",
"target_terms": [],
"anchors": {
"entity_names": [
"Users",
"Dev_projects_v2"
],
"file_names": [
"/users/alex/dev_projects_v2/apps/test_echo_app/_incoming/feature1.md"
],
"endpoint_paths": [],
"target_doc_hints": [],
"matched_aliases": [],
"process_domain": null,
"process_subdomain": null,
"scope_type": "unknown",
"candidate_domains": [],
"candidate_subdomains": [],
"candidate_entities": [],
"candidate_apis": [],
"signal_types": [
"DOMAIN_ENTITY"
]
},
"confidence": 0.8,
"routing_mode": "llm_default",
"llm_router_used": true,
"reason_short": "Запрос явно указывает на обновление документации по указанному файлу feature1.md.",
"rag_session_id": "a603ea81-9785-4846-8c05-3fcdfdcab8be"
}
```
## process.v2.pipeline
```json
{
"event": "router_resolved",
"domain": "DOCS",
"intent": "DOC_UPDATE",
"subintent": "FROM_FEATURE",
"confidence": 0.8
}
```
## process.v2.pipeline
```json
{
"event": "anchors_extracted",
"signal_types": [
"DOMAIN_ENTITY"
],
"endpoint_paths": [],
"target_doc_hints": [],
"matched_aliases": [],
"target_terms": []
}
```
## process.v2.pipeline
```json
{
"event": "alias_resolution",
"resolved_aliases": [],
"target_doc_hints": []
}
```
## workflow.v2.docs_update.from_feature
```json
{
"event": "workflow_started",
"workflow_id": "v2.docs_update.from_feature"
}
```
## workflow.v2.docs_update.from_feature
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_update.from_feature",
"step": {
"id": "resolve_source",
"title": "Определение источника аналитики"
},
"input": {},
"output": {
"source_kind": "markdown_file",
"source_ref": "/Users/alex/Dev_projects_v2/apps/test_echo_app/_incoming/feature1.md",
"issues": 0
}
}
```
## workflow.v2.docs_update.from_feature
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_update.from_feature",
"step": {
"id": "load_source",
"title": "Загрузка системной аналитики"
},
"input": {},
"output": {
"source_kind": "markdown_file",
"content_loaded": true,
"issues": 0
}
}
```
## workflow.v2.docs_update.from_feature
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_update.from_feature",
"step": {
"id": "parse_feature",
"title": "Парсинг функциональных требований"
},
"input": {},
"output": {
"analysis_id": "",
"domains": [],
"subdomains": [],
"units": 1,
"issues": 3
}
}
```
## workflow.v2.docs_update.from_feature
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_update.from_feature",
"step": {
"id": "build_change_plan",
"title": "Построение плана изменений"
},
"input": {},
"output": {
"docs_rows": 26,
"planned_changes": 1,
"issues": 3
}
}
```
## workflow.v2.docs_update.from_feature
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_update.from_feature",
"step": {
"id": "build_changeset",
"title": "Формирование changeset"
},
"input": {},
"output": {
"changeset_items": 1,
"issues": 3
}
}
```
## workflow.v2.docs_update.from_feature
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_update.from_feature",
"step": {
"id": "finalize",
"title": "Подготовка ответа"
},
"input": {},
"output": {
"answer_length": 2340,
"issues": 3,
"changeset_items": 1
}
}
```
## workflow.v2.docs_update.from_feature
```json
{
"event": "workflow_trace_flushed",
"workflow_id": "v2.docs_update.from_feature",
"steps": [
{
"step_id": "resolve_source",
"title": "Определение источника аналитики",
"input": {},
"output": {
"source_kind": "markdown_file",
"source_ref": "/Users/alex/Dev_projects_v2/apps/test_echo_app/_incoming/feature1.md",
"issues": 0
}
},
{
"step_id": "load_source",
"title": "Загрузка системной аналитики",
"input": {},
"output": {
"source_kind": "markdown_file",
"content_loaded": true,
"issues": 0
}
},
{
"step_id": "parse_feature",
"title": "Парсинг функциональных требований",
"input": {},
"output": {
"analysis_id": "",
"domains": [],
"subdomains": [],
"units": 1,
"issues": 3
}
},
{
"step_id": "build_change_plan",
"title": "Построение плана изменений",
"input": {},
"output": {
"docs_rows": 26,
"planned_changes": 1,
"issues": 3
}
},
{
"step_id": "build_changeset",
"title": "Формирование changeset",
"input": {},
"output": {
"changeset_items": 1,
"issues": 3
}
},
{
"step_id": "finalize",
"title": "Подготовка ответа",
"input": {},
"output": {
"answer_length": 2340,
"issues": 3,
"changeset_items": 1
}
}
]
}
```
## workflow.v2.docs_update.from_feature
```json
{
"event": "workflow_completed",
"workflow_id": "v2.docs_update.from_feature"
}
```
## process.v2.pipeline
```json
{
"event": "answer_generated",
"answer_mode": "docs_update_changeset",
"answer_length": 2340,
"changeset_items": 1
}
```
## result
```json
{
"status": "done",
"answer": "DOC_UPDATE/FROM_FEATURE: результат построения changeset.\n\nОбнаружены несоответствия/нехватка данных:\n- Отсутствует analysis_id в metadata аналитики.\n- Отсутствует domains в metadata аналитики.\n- Отсутствует subdomains в metadata аналитики.\n\nПлан изменений:\n- create: docs/api/api-telegram-messages-get.md (api_method)\n\nChangeset (для плагина):\n```json\n[\n {\n \"op\": \"create\",\n \"path\": \"docs/api/api-telegram-messages-get.md\",\n \"base_hash\": null,\n \"proposed_content\": \"---\\nid: api.telegram.messages.get\\ntitle: Реализация эндпоинта `GET /telegram/messages`\\ndoc_type: api_method\\ndomain: unknown\\nsub_domain: unknown\\nstatus: generated\\nrelated_docs:\\n - TBD\\nsource_of_truth: system_analysis\\nsystem_analytics_refs:\\n - section: 5. Функциональные требования\\n---\\n\\n## Context\\n\\nЧерновик сгенерирован workflow DOC_UPDATE/FROM_FEATURE на основе системной аналитики.\\n\\n## Functional Requirements\\n\\nСценарий описывает поведение endpoint и включает все обязательные функциональные требования.\\n\\n1. Потребитель вызывает endpoint `GET /telegram/messages` и передает параметр `secret`.\\n2. Сервис сравнивает переданный `secret` со значением `APP_ENDPOINT_SECRET` из защищенной конфигурации.\\n3. Если `secret` не совпадает:\\n\\n- сервис возвращает отказ в доступе (`403 Forbidden`);\\n- обработка завершается;\\n- вызов в Telegram API не выполняется.\\n\\n1. Если `secret` совпадает, сервис выполняет вызов Telegram Bot API:\\n\\n- Метод: `getUpdates`;\\n- HTTP: `POST https://api.telegram.org/bot<TELEGRAM_BOT_TOKEN>/getUpdates`;\\n- Допустимые параметры запроса (по необходимости): `offset`, `limit`, `timeout`, `allowed_updates`.\\n\\n1. Сервис получает список update, выделяет непрочитанные (необработанные) сообщения и формирует доменный результат.\\n2. Сервис возвращает клиенту ответ в формате `AppResponseDto` (статус выполнения + полезная нагрузка).\\n3. Если Telegram API возвращает ошибку/некорректный ответ, сервис возвращает контролируемую ошибку без утечки внутренних данных интеграции.\\n\\nНеобходимые секреты для реализации сценария:\\n\\n- `APP_ENDPOINT_SECRET` - секрет для авторизации входящего запроса к endpoint;\\n- `TELEGRAM_BOT_TOKEN` - токен Telegram-бота для вызова метода `getUpdates`.\\n\",\n \"reason\": \"Из unit 'Реализация эндпоинта `GET /telegram/messages`' системной аналитики (analysis).\",\n \"hunks\": []\n }\n]\n```",
"completed_at": "2026-04-08T13:37:13.627111+00:00"
}
```
@@ -1,305 +0,0 @@
# Runtime Trace: 20260408-134243-ae814cadec74
- active_rag_session_id: 07b0a164-32cd-47cc-ba4d-ae814cadec74
## request
```json
{
"request_id": "req_a1f51efe7fe540a393f2840f830f0710",
"session_id": "as_968bcb99e71d454eb0b38cbe5021ac32",
"active_rag_session_id": "07b0a164-32cd-47cc-ba4d-ae814cadec74",
"process_version": "v2",
"created_at": "2026-04-08T13:42:43.644632+00:00",
"message": "Напиши документацию по системной аналитике\n/Users/alex/Dev_projects_v2/apps/test_echo_app/_incoming/feature1.md"
}
```
## process.v2
```json
{
"event": "intent_routed",
"routing_domain": "DOCS",
"intent": "DOC_UPDATE",
"subintent": "FROM_FEATURE",
"normalized_query": "Напиши документацию по системной аналитике /Users/alex/Dev_projects_v2/apps/test_echo_app/_incoming/feature1.md",
"target_terms": [],
"anchors": {
"entity_names": [
"Users",
"Dev_projects_v2"
],
"file_names": [
"/users/alex/dev_projects_v2/apps/test_echo_app/_incoming/feature1.md"
],
"endpoint_paths": [],
"target_doc_hints": [],
"matched_aliases": [],
"process_domain": null,
"process_subdomain": null,
"scope_type": "unknown",
"candidate_domains": [],
"candidate_subdomains": [],
"candidate_entities": [],
"candidate_apis": [],
"signal_types": [
"DOMAIN_ENTITY"
]
},
"confidence": 0.8,
"routing_mode": "llm_default",
"llm_router_used": true,
"reason_short": "Запрос явно указывает на обновление документации по системной аналитике из указанного файла feature1.md.",
"rag_session_id": "07b0a164-32cd-47cc-ba4d-ae814cadec74"
}
```
## process.v2.pipeline
```json
{
"event": "router_resolved",
"domain": "DOCS",
"intent": "DOC_UPDATE",
"subintent": "FROM_FEATURE",
"confidence": 0.8
}
```
## process.v2.pipeline
```json
{
"event": "anchors_extracted",
"signal_types": [
"DOMAIN_ENTITY"
],
"endpoint_paths": [],
"target_doc_hints": [],
"matched_aliases": [],
"target_terms": []
}
```
## process.v2.pipeline
```json
{
"event": "alias_resolution",
"resolved_aliases": [],
"target_doc_hints": []
}
```
## workflow.v2.docs_update.from_feature
```json
{
"event": "workflow_started",
"workflow_id": "v2.docs_update.from_feature"
}
```
## workflow.v2.docs_update.from_feature
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_update.from_feature",
"step": {
"id": "resolve_source",
"title": "Определение источника аналитики"
},
"input": {},
"output": {
"source_kind": "markdown_file",
"source_ref": "/Users/alex/Dev_projects_v2/apps/test_echo_app/_incoming/feature1.md",
"issues": 0
}
}
```
## workflow.v2.docs_update.from_feature
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_update.from_feature",
"step": {
"id": "load_source",
"title": "Загрузка системной аналитики"
},
"input": {},
"output": {
"source_kind": "markdown_file",
"content_loaded": true,
"project_root": "/Users/alex/Dev_projects_v2/apps/test_echo_app",
"issues": 0
}
}
```
## workflow.v2.docs_update.from_feature
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_update.from_feature",
"step": {
"id": "parse_feature",
"title": "Парсинг функциональных требований"
},
"input": {},
"output": {
"analysis_id": "",
"domains": [],
"subdomains": [],
"units": 1,
"issues": 3
}
}
```
## workflow.v2.docs_update.from_feature
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_update.from_feature",
"step": {
"id": "build_change_plan",
"title": "Построение плана изменений"
},
"input": {},
"output": {
"docs_rows": 26,
"planned_changes": 1,
"issues": 3
}
}
```
## workflow.v2.docs_update.from_feature
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_update.from_feature",
"step": {
"id": "build_changeset",
"title": "Формирование changeset"
},
"input": {},
"output": {
"changeset_items": 1,
"issues": 3
}
}
```
## workflow.v2.docs_update.from_feature
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_update.from_feature",
"step": {
"id": "finalize",
"title": "Подготовка ответа"
},
"input": {},
"output": {
"answer_length": 2340,
"issues": 3,
"changeset_items": 1
}
}
```
## workflow.v2.docs_update.from_feature
```json
{
"event": "workflow_trace_flushed",
"workflow_id": "v2.docs_update.from_feature",
"steps": [
{
"step_id": "resolve_source",
"title": "Определение источника аналитики",
"input": {},
"output": {
"source_kind": "markdown_file",
"source_ref": "/Users/alex/Dev_projects_v2/apps/test_echo_app/_incoming/feature1.md",
"issues": 0
}
},
{
"step_id": "load_source",
"title": "Загрузка системной аналитики",
"input": {},
"output": {
"source_kind": "markdown_file",
"content_loaded": true,
"project_root": "/Users/alex/Dev_projects_v2/apps/test_echo_app",
"issues": 0
}
},
{
"step_id": "parse_feature",
"title": "Парсинг функциональных требований",
"input": {},
"output": {
"analysis_id": "",
"domains": [],
"subdomains": [],
"units": 1,
"issues": 3
}
},
{
"step_id": "build_change_plan",
"title": "Построение плана изменений",
"input": {},
"output": {
"docs_rows": 26,
"planned_changes": 1,
"issues": 3
}
},
{
"step_id": "build_changeset",
"title": "Формирование changeset",
"input": {},
"output": {
"changeset_items": 1,
"issues": 3
}
},
{
"step_id": "finalize",
"title": "Подготовка ответа",
"input": {},
"output": {
"answer_length": 2340,
"issues": 3,
"changeset_items": 1
}
}
]
}
```
## workflow.v2.docs_update.from_feature
```json
{
"event": "workflow_completed",
"workflow_id": "v2.docs_update.from_feature"
}
```
## process.v2.pipeline
```json
{
"event": "answer_generated",
"answer_mode": "docs_update_changeset",
"answer_length": 2340,
"changeset_items": 1
}
```
## result
```json
{
"status": "done",
"answer": "DOC_UPDATE/FROM_FEATURE: результат построения changeset.\n\nОбнаружены несоответствия/нехватка данных:\n- Отсутствует analysis_id в metadata аналитики.\n- Отсутствует domains в metadata аналитики.\n- Отсутствует subdomains в metadata аналитики.\n\nПлан изменений:\n- create: docs/api/api-telegram-messages-get.md (api_method)\n\nChangeset (для плагина):\n```json\n[\n {\n \"op\": \"create\",\n \"path\": \"docs/api/api-telegram-messages-get.md\",\n \"base_hash\": null,\n \"proposed_content\": \"---\\nid: api.telegram.messages.get\\ntitle: Реализация эндпоинта `GET /telegram/messages`\\ndoc_type: api_method\\ndomain: unknown\\nsub_domain: unknown\\nstatus: generated\\nrelated_docs:\\n - TBD\\nsource_of_truth: system_analysis\\nsystem_analytics_refs:\\n - section: 5. Функциональные требования\\n---\\n\\n## Context\\n\\nЧерновик сгенерирован workflow DOC_UPDATE/FROM_FEATURE на основе системной аналитики.\\n\\n## Functional Requirements\\n\\nСценарий описывает поведение endpoint и включает все обязательные функциональные требования.\\n\\n1. Потребитель вызывает endpoint `GET /telegram/messages` и передает параметр `secret`.\\n2. Сервис сравнивает переданный `secret` со значением `APP_ENDPOINT_SECRET` из защищенной конфигурации.\\n3. Если `secret` не совпадает:\\n\\n- сервис возвращает отказ в доступе (`403 Forbidden`);\\n- обработка завершается;\\n- вызов в Telegram API не выполняется.\\n\\n1. Если `secret` совпадает, сервис выполняет вызов Telegram Bot API:\\n\\n- Метод: `getUpdates`;\\n- HTTP: `POST https://api.telegram.org/bot<TELEGRAM_BOT_TOKEN>/getUpdates`;\\n- Допустимые параметры запроса (по необходимости): `offset`, `limit`, `timeout`, `allowed_updates`.\\n\\n1. Сервис получает список update, выделяет непрочитанные (необработанные) сообщения и формирует доменный результат.\\n2. Сервис возвращает клиенту ответ в формате `AppResponseDto` (статус выполнения + полезная нагрузка).\\n3. Если Telegram API возвращает ошибку/некорректный ответ, сервис возвращает контролируемую ошибку без утечки внутренних данных интеграции.\\n\\nНеобходимые секреты для реализации сценария:\\n\\n- `APP_ENDPOINT_SECRET` - секрет для авторизации входящего запроса к endpoint;\\n- `TELEGRAM_BOT_TOKEN` - токен Telegram-бота для вызова метода `getUpdates`.\\n\",\n \"reason\": \"Из unit 'Реализация эндпоинта `GET /telegram/messages`' системной аналитики (analysis).\",\n \"hunks\": []\n }\n]\n```",
"completed_at": "2026-04-08T13:42:47.600078+00:00"
}
```
@@ -1,306 +0,0 @@
# Runtime Trace: 20260408-135621-3d42c447c174
- active_rag_session_id: 7bc8440f-382f-4df3-9a82-3d42c447c174
## request
```json
{
"request_id": "req_5bd727fe052841efbbd9f69651e57bca",
"session_id": "as_8d0e3b766f3a49b495e3074a3bcfe777",
"active_rag_session_id": "7bc8440f-382f-4df3-9a82-3d42c447c174",
"process_version": "v2",
"created_at": "2026-04-08T13:56:21.477390+00:00",
"message": "Напиши документацию по системной аналитике /Users/alex/Dev_projects_v2/apps/test_echo_app/_incoming/feature1.md"
}
```
## process.v2
```json
{
"event": "intent_routed",
"routing_domain": "DOCS",
"intent": "DOC_UPDATE",
"subintent": "FROM_FEATURE",
"normalized_query": "Напиши документацию по системной аналитике /Users/alex/Dev_projects_v2/apps/test_echo_app/_incoming/feature1.md",
"target_terms": [],
"anchors": {
"entity_names": [
"Users",
"Dev_projects_v2"
],
"file_names": [
"/users/alex/dev_projects_v2/apps/test_echo_app/_incoming/feature1.md"
],
"endpoint_paths": [],
"target_doc_hints": [],
"matched_aliases": [],
"process_domain": null,
"process_subdomain": null,
"scope_type": "unknown",
"candidate_domains": [],
"candidate_subdomains": [],
"candidate_entities": [],
"candidate_apis": [],
"signal_types": [
"DOMAIN_ENTITY"
]
},
"confidence": 0.8,
"routing_mode": "llm_default",
"llm_router_used": true,
"reason_short": "Запрос явно указывает на обновление документации по системной аналитике из указанного файла feature1.md.",
"rag_session_id": "7bc8440f-382f-4df3-9a82-3d42c447c174"
}
```
## process.v2.pipeline
```json
{
"event": "router_resolved",
"domain": "DOCS",
"intent": "DOC_UPDATE",
"subintent": "FROM_FEATURE",
"confidence": 0.8
}
```
## process.v2.pipeline
```json
{
"event": "anchors_extracted",
"signal_types": [
"DOMAIN_ENTITY"
],
"endpoint_paths": [],
"target_doc_hints": [],
"matched_aliases": [],
"target_terms": []
}
```
## process.v2.pipeline
```json
{
"event": "alias_resolution",
"resolved_aliases": [],
"target_doc_hints": []
}
```
## workflow.v2.docs_update.from_feature
```json
{
"event": "workflow_started",
"workflow_id": "v2.docs_update.from_feature"
}
```
## workflow.v2.docs_update.from_feature
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_update.from_feature",
"step": {
"id": "resolve_source",
"title": "Определение источника аналитики"
},
"input": {},
"output": {
"source_kind": "markdown_file",
"source_ref": "/Users/alex/Dev_projects_v2/apps/test_echo_app/_incoming/feature1.md",
"issues": 0
}
}
```
## workflow.v2.docs_update.from_feature
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_update.from_feature",
"step": {
"id": "load_source",
"title": "Загрузка системной аналитики"
},
"input": {},
"output": {
"source_kind": "markdown_file",
"content_loaded": true,
"project_root": "/Users/alex/Dev_projects_v2/apps/test_echo_app",
"issues": 0
}
}
```
## workflow.v2.docs_update.from_feature
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_update.from_feature",
"step": {
"id": "parse_feature",
"title": "Парсинг функциональных требований"
},
"input": {},
"output": {
"analysis_id": "",
"domains": [],
"subdomains": [],
"units": 1,
"issues": 3
}
}
```
## workflow.v2.docs_update.from_feature
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_update.from_feature",
"step": {
"id": "build_change_plan",
"title": "Построение плана изменений"
},
"input": {},
"output": {
"docs_rows": 26,
"planned_changes": 1,
"issues": 3
}
}
```
## workflow.v2.docs_update.from_feature
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_update.from_feature",
"step": {
"id": "build_changeset",
"title": "Формирование changeset"
},
"input": {},
"output": {
"changeset_items": 1,
"issues": 3
}
}
```
## workflow.v2.docs_update.from_feature
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_update.from_feature",
"step": {
"id": "finalize",
"title": "Подготовка ответа"
},
"input": {},
"output": {
"answer_length": 2364,
"issues": 3,
"changeset_items": 1
}
}
```
## workflow.v2.docs_update.from_feature
```json
{
"event": "workflow_trace_flushed",
"workflow_id": "v2.docs_update.from_feature",
"steps": [
{
"step_id": "resolve_source",
"title": "Определение источника аналитики",
"input": {},
"output": {
"source_kind": "markdown_file",
"source_ref": "/Users/alex/Dev_projects_v2/apps/test_echo_app/_incoming/feature1.md",
"issues": 0
}
},
{
"step_id": "load_source",
"title": "Загрузка системной аналитики",
"input": {},
"output": {
"source_kind": "markdown_file",
"content_loaded": true,
"project_root": "/Users/alex/Dev_projects_v2/apps/test_echo_app",
"issues": 0
}
},
{
"step_id": "parse_feature",
"title": "Парсинг функциональных требований",
"input": {},
"output": {
"analysis_id": "",
"domains": [],
"subdomains": [],
"units": 1,
"issues": 3
}
},
{
"step_id": "build_change_plan",
"title": "Построение плана изменений",
"input": {},
"output": {
"docs_rows": 26,
"planned_changes": 1,
"issues": 3
}
},
{
"step_id": "build_changeset",
"title": "Формирование changeset",
"input": {},
"output": {
"changeset_items": 1,
"issues": 3
}
},
{
"step_id": "finalize",
"title": "Подготовка ответа",
"input": {},
"output": {
"answer_length": 2364,
"issues": 3,
"changeset_items": 1
}
}
]
}
```
## workflow.v2.docs_update.from_feature
```json
{
"event": "workflow_completed",
"workflow_id": "v2.docs_update.from_feature"
}
```
## process.v2.pipeline
```json
{
"event": "answer_generated",
"answer_mode": "docs_update_changeset",
"answer_length": 2364,
"changeset_items": 1,
"apply_changeset": false
}
```
## result
```json
{
"status": "done",
"answer": "DOC_UPDATE/FROM_FEATURE: результат построения changeset.\n\nОбнаружены несоответствия/нехватка данных:\n- Отсутствует analysis_id в metadata аналитики.\n- Отсутствует domains в metadata аналитики.\n- Отсутствует subdomains в metadata аналитики.\n\nПлан изменений:\n- create: docs/api/api-telegram-messages-get.md (api_method)\n\nChangeset (для плагина):\n```json\n[\n {\n \"op\": \"create\",\n \"path\": \"docs/api/api-telegram-messages-get.md\",\n \"base_hash\": null,\n \"proposed_content\": \"---\\nid: api.telegram.messages.get\\ntitle: Реализация эндпоинта `GET /telegram/messages`\\ndoc_type: api_method\\ndomain: unknown\\nsub_domain: unknown\\nstatus: generated\\nrelated_docs:\\n - TBD\\nsource_of_truth: system_analysis\\nsystem_analytics_refs:\\n - section: 5. Функциональные требования\\n---\\n\\n## Context\\n\\nЧерновик сгенерирован workflow DOC_UPDATE/FROM_FEATURE на основе системной аналитики.\\n\\n## Functional Requirements\\n\\nСценарий описывает поведение endpoint и включает все обязательные функциональные требования.\\n\\n1. Потребитель вызывает endpoint `GET /telegram/messages` и передает параметр `secret`.\\n2. Сервис сравнивает переданный `secret` со значением `APP_ENDPOINT_SECRET` из защищенной конфигурации.\\n3. Если `secret` не совпадает:\\n\\n- сервис возвращает отказ в доступе (`403 Forbidden`);\\n- обработка завершается;\\n- вызов в Telegram API не выполняется.\\n\\n1. Если `secret` совпадает, сервис выполняет вызов Telegram Bot API:\\n\\n- Метод: `getUpdates`;\\n- HTTP: `POST https://api.telegram.org/bot<TELEGRAM_BOT_TOKEN>/getUpdates`;\\n- Допустимые параметры запроса (по необходимости): `offset`, `limit`, `timeout`, `allowed_updates`.\\n\\n1. Сервис получает список update, выделяет непрочитанные (необработанные) сообщения и формирует доменный результат.\\n2. Сервис возвращает клиенту ответ в формате `AppResponseDto` (статус выполнения + полезная нагрузка).\\n3. Если Telegram API возвращает ошибку/некорректный ответ, сервис возвращает контролируемую ошибку без утечки внутренних данных интеграции.\\n\\nНеобходимые секреты для реализации сценария:\\n\\n- `APP_ENDPOINT_SECRET` - секрет для авторизации входящего запроса к endpoint;\\n- `TELEGRAM_BOT_TOKEN` - токен Telegram-бота для вызова метода `getUpdates`.\\n\",\n \"reason\": \"Из unit 'Реализация эндпоинта `GET /telegram/messages`' системной аналитики (analysis).\",\n \"hunks\": []\n }\n]\n```\n\napply_changeset: false",
"completed_at": "2026-04-08T13:56:24.354339+00:00"
}
```
@@ -1,306 +0,0 @@
# Runtime Trace: 20260408-135847-14bbe60d0cc3
- active_rag_session_id: 3be9766d-2a4d-4fa6-9d86-14bbe60d0cc3
## request
```json
{
"request_id": "req_6662d31380114d628963f48516560a7e",
"session_id": "as_6df21081790f4954b93cc47f6f418554",
"active_rag_session_id": "3be9766d-2a4d-4fa6-9d86-14bbe60d0cc3",
"process_version": "v2",
"created_at": "2026-04-08T13:58:47.981631+00:00",
"message": "Напиши документацию по системной аналитике /Users/alex/Dev_projects_v2/apps/test_echo_app/_incoming/feature1.md"
}
```
## process.v2
```json
{
"event": "intent_routed",
"routing_domain": "DOCS",
"intent": "DOC_UPDATE",
"subintent": "FROM_FEATURE",
"normalized_query": "Напиши документацию по системной аналитике /Users/alex/Dev_projects_v2/apps/test_echo_app/_incoming/feature1.md",
"target_terms": [],
"anchors": {
"entity_names": [
"Users",
"Dev_projects_v2"
],
"file_names": [
"/users/alex/dev_projects_v2/apps/test_echo_app/_incoming/feature1.md"
],
"endpoint_paths": [],
"target_doc_hints": [],
"matched_aliases": [],
"process_domain": null,
"process_subdomain": null,
"scope_type": "unknown",
"candidate_domains": [],
"candidate_subdomains": [],
"candidate_entities": [],
"candidate_apis": [],
"signal_types": [
"DOMAIN_ENTITY"
]
},
"confidence": 0.8,
"routing_mode": "llm_default",
"llm_router_used": true,
"reason_short": "Запрос явно указывает на обновление документации по указанному файлу feature1.md.",
"rag_session_id": "3be9766d-2a4d-4fa6-9d86-14bbe60d0cc3"
}
```
## process.v2.pipeline
```json
{
"event": "router_resolved",
"domain": "DOCS",
"intent": "DOC_UPDATE",
"subintent": "FROM_FEATURE",
"confidence": 0.8
}
```
## process.v2.pipeline
```json
{
"event": "anchors_extracted",
"signal_types": [
"DOMAIN_ENTITY"
],
"endpoint_paths": [],
"target_doc_hints": [],
"matched_aliases": [],
"target_terms": []
}
```
## process.v2.pipeline
```json
{
"event": "alias_resolution",
"resolved_aliases": [],
"target_doc_hints": []
}
```
## workflow.v2.docs_update.from_feature
```json
{
"event": "workflow_started",
"workflow_id": "v2.docs_update.from_feature"
}
```
## workflow.v2.docs_update.from_feature
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_update.from_feature",
"step": {
"id": "resolve_source",
"title": "Определение источника аналитики"
},
"input": {},
"output": {
"source_kind": "markdown_file",
"source_ref": "/Users/alex/Dev_projects_v2/apps/test_echo_app/_incoming/feature1.md",
"issues": 0
}
}
```
## workflow.v2.docs_update.from_feature
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_update.from_feature",
"step": {
"id": "load_source",
"title": "Загрузка системной аналитики"
},
"input": {},
"output": {
"source_kind": "markdown_file",
"content_loaded": true,
"project_root": "/Users/alex/Dev_projects_v2/apps/test_echo_app",
"issues": 0
}
}
```
## workflow.v2.docs_update.from_feature
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_update.from_feature",
"step": {
"id": "parse_feature",
"title": "Парсинг функциональных требований"
},
"input": {},
"output": {
"analysis_id": "",
"domains": [],
"subdomains": [],
"units": 1,
"issues": 3
}
}
```
## workflow.v2.docs_update.from_feature
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_update.from_feature",
"step": {
"id": "build_change_plan",
"title": "Построение плана изменений"
},
"input": {},
"output": {
"docs_rows": 26,
"planned_changes": 1,
"issues": 3
}
}
```
## workflow.v2.docs_update.from_feature
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_update.from_feature",
"step": {
"id": "build_changeset",
"title": "Формирование changeset"
},
"input": {},
"output": {
"changeset_items": 1,
"issues": 3
}
}
```
## workflow.v2.docs_update.from_feature
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_update.from_feature",
"step": {
"id": "finalize",
"title": "Подготовка ответа"
},
"input": {},
"output": {
"answer_length": 2363,
"issues": 3,
"changeset_items": 1
}
}
```
## workflow.v2.docs_update.from_feature
```json
{
"event": "workflow_trace_flushed",
"workflow_id": "v2.docs_update.from_feature",
"steps": [
{
"step_id": "resolve_source",
"title": "Определение источника аналитики",
"input": {},
"output": {
"source_kind": "markdown_file",
"source_ref": "/Users/alex/Dev_projects_v2/apps/test_echo_app/_incoming/feature1.md",
"issues": 0
}
},
{
"step_id": "load_source",
"title": "Загрузка системной аналитики",
"input": {},
"output": {
"source_kind": "markdown_file",
"content_loaded": true,
"project_root": "/Users/alex/Dev_projects_v2/apps/test_echo_app",
"issues": 0
}
},
{
"step_id": "parse_feature",
"title": "Парсинг функциональных требований",
"input": {},
"output": {
"analysis_id": "",
"domains": [],
"subdomains": [],
"units": 1,
"issues": 3
}
},
{
"step_id": "build_change_plan",
"title": "Построение плана изменений",
"input": {},
"output": {
"docs_rows": 26,
"planned_changes": 1,
"issues": 3
}
},
{
"step_id": "build_changeset",
"title": "Формирование changeset",
"input": {},
"output": {
"changeset_items": 1,
"issues": 3
}
},
{
"step_id": "finalize",
"title": "Подготовка ответа",
"input": {},
"output": {
"answer_length": 2363,
"issues": 3,
"changeset_items": 1
}
}
]
}
```
## workflow.v2.docs_update.from_feature
```json
{
"event": "workflow_completed",
"workflow_id": "v2.docs_update.from_feature"
}
```
## process.v2.pipeline
```json
{
"event": "answer_generated",
"answer_mode": "docs_update_changeset",
"answer_length": 2363,
"changeset_items": 1,
"apply_changeset": true
}
```
## result
```json
{
"status": "done",
"answer": "DOC_UPDATE/FROM_FEATURE: результат построения changeset.\n\nОбнаружены несоответствия/нехватка данных:\n- Отсутствует analysis_id в metadata аналитики.\n- Отсутствует domains в metadata аналитики.\n- Отсутствует subdomains в metadata аналитики.\n\nПлан изменений:\n- create: docs/api/api-telegram-messages-get.md (api_method)\n\nChangeset (для плагина):\n```json\n[\n {\n \"op\": \"create\",\n \"path\": \"docs/api/api-telegram-messages-get.md\",\n \"base_hash\": null,\n \"proposed_content\": \"---\\nid: api.telegram.messages.get\\ntitle: Реализация эндпоинта `GET /telegram/messages`\\ndoc_type: api_method\\ndomain: unknown\\nsub_domain: unknown\\nstatus: generated\\nrelated_docs:\\n - TBD\\nsource_of_truth: system_analysis\\nsystem_analytics_refs:\\n - section: 5. Функциональные требования\\n---\\n\\n## Context\\n\\nЧерновик сгенерирован workflow DOC_UPDATE/FROM_FEATURE на основе системной аналитики.\\n\\n## Functional Requirements\\n\\nСценарий описывает поведение endpoint и включает все обязательные функциональные требования.\\n\\n1. Потребитель вызывает endpoint `GET /telegram/messages` и передает параметр `secret`.\\n2. Сервис сравнивает переданный `secret` со значением `APP_ENDPOINT_SECRET` из защищенной конфигурации.\\n3. Если `secret` не совпадает:\\n\\n- сервис возвращает отказ в доступе (`403 Forbidden`);\\n- обработка завершается;\\n- вызов в Telegram API не выполняется.\\n\\n1. Если `secret` совпадает, сервис выполняет вызов Telegram Bot API:\\n\\n- Метод: `getUpdates`;\\n- HTTP: `POST https://api.telegram.org/bot<TELEGRAM_BOT_TOKEN>/getUpdates`;\\n- Допустимые параметры запроса (по необходимости): `offset`, `limit`, `timeout`, `allowed_updates`.\\n\\n1. Сервис получает список update, выделяет непрочитанные (необработанные) сообщения и формирует доменный результат.\\n2. Сервис возвращает клиенту ответ в формате `AppResponseDto` (статус выполнения + полезная нагрузка).\\n3. Если Telegram API возвращает ошибку/некорректный ответ, сервис возвращает контролируемую ошибку без утечки внутренних данных интеграции.\\n\\nНеобходимые секреты для реализации сценария:\\n\\n- `APP_ENDPOINT_SECRET` - секрет для авторизации входящего запроса к endpoint;\\n- `TELEGRAM_BOT_TOKEN` - токен Telegram-бота для вызова метода `getUpdates`.\\n\",\n \"reason\": \"Из unit 'Реализация эндпоинта `GET /telegram/messages`' системной аналитики (analysis).\",\n \"hunks\": []\n }\n]\n```\n\napply_changeset: true",
"completed_at": "2026-04-08T13:58:52.631789+00:00"
}
```
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -1,347 +0,0 @@
# Runtime Trace: 20260409-143441-a16face9a0ab
- active_rag_session_id: 3d1215ce-79fc-4c87-bf29-a16face9a0ab
## request
```json
{
"request_id": "req_11c7ba17c1fa47faa497f324f165c1ee",
"session_id": "as_7827e863066042b2a6b4be9e8153acdf",
"active_rag_session_id": "3d1215ce-79fc-4c87-bf29-a16face9a0ab",
"process_version": "v2",
"created_at": "2026-04-09T14:34:41.894633+00:00",
"message": "Какие методы апи есть в проекте?"
}
```
## process.v2
```json
{
"event": "intent_routed",
"routing_domain": "DOCS",
"intent": "DOC_EXPLAIN",
"subintent": "API_EXPOSED",
"normalized_query": "Какие методы апи есть в проекте?",
"target_terms": [
"методы",
"апи",
"проекте"
],
"anchors": {
"entity_names": [],
"file_names": [],
"endpoint_paths": [],
"target_doc_hints": [],
"matched_aliases": [],
"process_domain": null,
"process_subdomain": null,
"scope_type": "unknown",
"candidate_domains": [],
"candidate_subdomains": [],
"candidate_entities": [],
"candidate_apis": [],
"signal_types": []
},
"confidence": 0.9500000000000001,
"routing_mode": "llm_default",
"llm_router_used": true,
"reason_short": "Запрос явно касается перечня доступных API-методов.",
"rag_session_id": "3d1215ce-79fc-4c87-bf29-a16face9a0ab"
}
```
## process.v2.pipeline
```json
{
"event": "router_resolved",
"domain": "DOCS",
"intent": "DOC_EXPLAIN",
"subintent": "API_EXPOSED",
"confidence": 0.9500000000000001
}
```
## process.v2.pipeline
```json
{
"event": "anchors_extracted",
"signal_types": [],
"endpoint_paths": [],
"target_doc_hints": [],
"matched_aliases": [],
"target_terms": [
"методы",
"апи",
"проекте"
]
}
```
## process.v2.pipeline
```json
{
"event": "alias_resolution",
"resolved_aliases": [],
"target_doc_hints": []
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_started",
"workflow_id": "v2.docs_explain.api_exposed"
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_explain.api_exposed",
"step": {
"id": "require_rag_session",
"title": "Проверка RAG-сессии"
},
"input": {},
"output": {
"has_rag_session": true
}
}
```
## process.v2.retrieval_policy
```json
{
"event": "retrieval_plan_resolved",
"profile": "api_exposed",
"layers": [
"D1_DOCUMENT_CATALOG"
],
"limit": 400,
"filters": {
"metadata.type": "api_method",
"prefer_path_prefixes": [
"docs/api/",
"docs/endpoints/",
"docs/methods/",
"api/",
"endpoints/",
"methods/"
],
"target_doc_hints": [],
"prefer_like_patterns": [
"%api%",
"%endpoint%",
"%method%",
"%эндпоинт%",
"%метод%",
"%методы%",
"%апи%",
"%проекте%"
],
"query_signals": [
"методы",
"апи",
"проекте"
]
}
}
```
## process.v2.pipeline
```json
{
"event": "retrieval_profile_selected",
"profile": "api_exposed",
"layers": [
"D1_DOCUMENT_CATALOG"
],
"filters": {
"metadata.type": "api_method",
"prefer_path_prefixes": [
"docs/api/",
"docs/endpoints/",
"docs/methods/",
"api/",
"endpoints/",
"methods/"
],
"target_doc_hints": [],
"prefer_like_patterns": [
"%api%",
"%endpoint%",
"%method%",
"%эндпоинт%",
"%метод%",
"%методы%",
"%апи%",
"%проекте%"
],
"query_signals": [
"методы",
"апи",
"проекте"
]
}
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_explain.api_exposed",
"step": {
"id": "resolve_retrieval_plan",
"title": "Выбор retrieval-плана"
},
"input": {},
"output": {
"profile": "api_exposed"
}
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_explain.api_exposed",
"step": {
"id": "fetch_rag_rows",
"title": "Получение строк из RAG"
},
"input": {},
"output": {
"retrieved_row_count": 0
}
}
```
## process.v2.evidence
```json
{
"event": "evidence_assembled",
"mode": "api_exposed",
"endpoint_count": 0,
"endpoints": []
}
```
## process.v2.pipeline
```json
{
"event": "evidence_assembled",
"mode": "api_exposed",
"endpoint_count": 0
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_explain.api_exposed",
"step": {
"id": "build_api_exposed_evidence",
"title": "Сборка списка API"
},
"input": {},
"output": {
"endpoint_count": 0
}
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_explain.api_exposed",
"step": {
"id": "finalize_api_exposed_answer",
"title": "Формирование ответа со списком API"
},
"input": {},
"output": {
"answer_length": 62
}
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_trace_flushed",
"workflow_id": "v2.docs_explain.api_exposed",
"steps": [
{
"step_id": "require_rag_session",
"title": "Проверка RAG-сессии",
"input": {},
"output": {
"has_rag_session": true
}
},
{
"step_id": "resolve_retrieval_plan",
"title": "Выбор retrieval-плана",
"input": {},
"output": {
"profile": "api_exposed"
}
},
{
"step_id": "fetch_rag_rows",
"title": "Получение строк из RAG",
"input": {},
"output": {
"retrieved_row_count": 0
}
},
{
"step_id": "build_api_exposed_evidence",
"title": "Сборка списка API",
"input": {},
"output": {
"endpoint_count": 0
}
},
{
"step_id": "finalize_api_exposed_answer",
"title": "Формирование ответа со списком API",
"input": {},
"output": {
"answer_length": 62
}
}
]
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_completed",
"workflow_id": "v2.docs_explain.api_exposed"
}
```
## process.v2.pipeline
```json
{
"event": "answer_generated",
"answer_mode": "insufficient_evidence",
"answer_length": 62
}
```
## result
```json
{
"status": "done",
"answer": "Не нашёл задокументированных API-эндпоинтов в выбранном scope.",
"completed_at": "2026-04-09T14:34:43.947325+00:00"
}
```
@@ -1,323 +0,0 @@
# Runtime Trace: 20260409-143722-a9b20eb67e95
- active_rag_session_id: 35471db5-4c18-415d-b48e-a9b20eb67e95
## request
```json
{
"request_id": "req_2980c9e2eb324182a000e72b8307a56d",
"session_id": "as_20c1a7f7aaec4885bc268beff2cae6a0",
"active_rag_session_id": "35471db5-4c18-415d-b48e-a9b20eb67e95",
"process_version": "v2",
"created_at": "2026-04-09T14:37:22.885815+00:00",
"message": "Какие методы апи есть в проекте?"
}
```
## process.v2
```json
{
"event": "intent_routed",
"routing_domain": "DOCS",
"intent": "DOC_EXPLAIN",
"subintent": "API_EXPOSED",
"normalized_query": "Какие методы апи есть в проекте?",
"target_terms": [],
"anchors": {
"entity_names": [],
"file_names": [],
"endpoint_paths": [],
"target_doc_hints": [],
"matched_aliases": [],
"process_domain": null,
"process_subdomain": null,
"scope_type": "global",
"candidate_domains": [],
"candidate_subdomains": [],
"candidate_entities": [],
"candidate_apis": [],
"signal_types": []
},
"confidence": 0.8500000000000001,
"routing_mode": "llm_default",
"llm_router_used": true,
"reason_short": "Запрос явно касается списка доступных API-методов проекта.",
"rag_session_id": "35471db5-4c18-415d-b48e-a9b20eb67e95"
}
```
## process.v2.pipeline
```json
{
"event": "router_resolved",
"domain": "DOCS",
"intent": "DOC_EXPLAIN",
"subintent": "API_EXPOSED",
"confidence": 0.8500000000000001
}
```
## process.v2.pipeline
```json
{
"event": "anchors_extracted",
"signal_types": [],
"endpoint_paths": [],
"target_doc_hints": [],
"matched_aliases": [],
"target_terms": []
}
```
## process.v2.pipeline
```json
{
"event": "alias_resolution",
"resolved_aliases": [],
"target_doc_hints": []
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_started",
"workflow_id": "v2.docs_explain.api_exposed"
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_explain.api_exposed",
"step": {
"id": "require_rag_session",
"title": "Проверка RAG-сессии"
},
"input": {},
"output": {
"has_rag_session": true
}
}
```
## process.v2.retrieval_policy
```json
{
"event": "retrieval_plan_resolved",
"profile": "api_exposed",
"layers": [
"D1_DOCUMENT_CATALOG"
],
"limit": 400,
"filters": {
"metadata.type": "api_method",
"prefer_path_prefixes": [
"docs/api/",
"docs/endpoints/",
"docs/methods/",
"api/",
"endpoints/",
"methods/"
],
"target_doc_hints": [],
"prefer_like_patterns": [
"%api%",
"%endpoint%",
"%method%",
"%эндпоинт%",
"%метод%"
]
}
}
```
## process.v2.pipeline
```json
{
"event": "retrieval_profile_selected",
"profile": "api_exposed",
"layers": [
"D1_DOCUMENT_CATALOG"
],
"filters": {
"metadata.type": "api_method",
"prefer_path_prefixes": [
"docs/api/",
"docs/endpoints/",
"docs/methods/",
"api/",
"endpoints/",
"methods/"
],
"target_doc_hints": [],
"prefer_like_patterns": [
"%api%",
"%endpoint%",
"%method%",
"%эндпоинт%",
"%метод%"
]
}
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_explain.api_exposed",
"step": {
"id": "resolve_retrieval_plan",
"title": "Выбор retrieval-плана"
},
"input": {},
"output": {
"profile": "api_exposed"
}
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_explain.api_exposed",
"step": {
"id": "fetch_rag_rows",
"title": "Получение строк из RAG"
},
"input": {},
"output": {
"retrieved_row_count": 2
}
}
```
## process.v2.evidence
```json
{
"event": "evidence_assembled",
"mode": "api_exposed",
"endpoint_count": 0,
"endpoints": []
}
```
## process.v2.pipeline
```json
{
"event": "evidence_assembled",
"mode": "api_exposed",
"endpoint_count": 0
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_explain.api_exposed",
"step": {
"id": "build_api_exposed_evidence",
"title": "Сборка списка API"
},
"input": {},
"output": {
"endpoint_count": 0
}
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_explain.api_exposed",
"step": {
"id": "finalize_api_exposed_answer",
"title": "Формирование ответа со списком API"
},
"input": {},
"output": {
"answer_length": 62
}
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_trace_flushed",
"workflow_id": "v2.docs_explain.api_exposed",
"steps": [
{
"step_id": "require_rag_session",
"title": "Проверка RAG-сессии",
"input": {},
"output": {
"has_rag_session": true
}
},
{
"step_id": "resolve_retrieval_plan",
"title": "Выбор retrieval-плана",
"input": {},
"output": {
"profile": "api_exposed"
}
},
{
"step_id": "fetch_rag_rows",
"title": "Получение строк из RAG",
"input": {},
"output": {
"retrieved_row_count": 2
}
},
{
"step_id": "build_api_exposed_evidence",
"title": "Сборка списка API",
"input": {},
"output": {
"endpoint_count": 0
}
},
{
"step_id": "finalize_api_exposed_answer",
"title": "Формирование ответа со списком API",
"input": {},
"output": {
"answer_length": 62
}
}
]
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_completed",
"workflow_id": "v2.docs_explain.api_exposed"
}
```
## process.v2.pipeline
```json
{
"event": "answer_generated",
"answer_mode": "insufficient_evidence",
"answer_length": 62
}
```
## result
```json
{
"status": "done",
"answer": "Не нашёл задокументированных API-эндпоинтов в выбранном scope.",
"completed_at": "2026-04-09T14:37:24.566326+00:00"
}
```
@@ -1,323 +0,0 @@
# Runtime Trace: 20260409-145546-36056dd8dcfe
- active_rag_session_id: 2d21c11a-66a3-464f-9e0f-36056dd8dcfe
## request
```json
{
"request_id": "req_ada6c4f21ef84484ae228a784f854fd8",
"session_id": "as_0190277b106e4573875b6923235196f7",
"active_rag_session_id": "2d21c11a-66a3-464f-9e0f-36056dd8dcfe",
"process_version": "v2",
"created_at": "2026-04-09T14:55:46.412183+00:00",
"message": "Какие методы апи есть в проекте?"
}
```
## process.v2
```json
{
"event": "intent_routed",
"routing_domain": "DOCS",
"intent": "DOC_EXPLAIN",
"subintent": "API_EXPOSED",
"normalized_query": "Какие методы апи есть в проекте?",
"target_terms": [],
"anchors": {
"entity_names": [],
"file_names": [],
"endpoint_paths": [],
"target_doc_hints": [],
"matched_aliases": [],
"process_domain": null,
"process_subdomain": null,
"scope_type": "global",
"candidate_domains": [],
"candidate_subdomains": [],
"candidate_entities": [],
"candidate_apis": [],
"signal_types": []
},
"confidence": 0.8500000000000001,
"routing_mode": "llm_default",
"llm_router_used": true,
"reason_short": "Запрос явно касается списка доступных API-методов проекта.",
"rag_session_id": "2d21c11a-66a3-464f-9e0f-36056dd8dcfe"
}
```
## process.v2.pipeline
```json
{
"event": "router_resolved",
"domain": "DOCS",
"intent": "DOC_EXPLAIN",
"subintent": "API_EXPOSED",
"confidence": 0.8500000000000001
}
```
## process.v2.pipeline
```json
{
"event": "anchors_extracted",
"signal_types": [],
"endpoint_paths": [],
"target_doc_hints": [],
"matched_aliases": [],
"target_terms": []
}
```
## process.v2.pipeline
```json
{
"event": "alias_resolution",
"resolved_aliases": [],
"target_doc_hints": []
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_started",
"workflow_id": "v2.docs_explain.api_exposed"
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_explain.api_exposed",
"step": {
"id": "require_rag_session",
"title": "Проверка RAG-сессии"
},
"input": {},
"output": {
"has_rag_session": true
}
}
```
## process.v2.retrieval_policy
```json
{
"event": "retrieval_plan_resolved",
"profile": "api_exposed",
"layers": [
"D1_DOCUMENT_CATALOG"
],
"limit": 400,
"filters": {
"metadata.type": "api_method",
"prefer_path_prefixes": [
"docs/api/",
"docs/endpoints/",
"docs/methods/",
"api/",
"endpoints/",
"methods/"
],
"target_doc_hints": [],
"prefer_like_patterns": [
"%api%",
"%endpoint%",
"%method%",
"%эндпоинт%",
"%метод%"
]
}
}
```
## process.v2.pipeline
```json
{
"event": "retrieval_profile_selected",
"profile": "api_exposed",
"layers": [
"D1_DOCUMENT_CATALOG"
],
"filters": {
"metadata.type": "api_method",
"prefer_path_prefixes": [
"docs/api/",
"docs/endpoints/",
"docs/methods/",
"api/",
"endpoints/",
"methods/"
],
"target_doc_hints": [],
"prefer_like_patterns": [
"%api%",
"%endpoint%",
"%method%",
"%эндпоинт%",
"%метод%"
]
}
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_explain.api_exposed",
"step": {
"id": "resolve_retrieval_plan",
"title": "Выбор retrieval-плана"
},
"input": {},
"output": {
"profile": "api_exposed"
}
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_explain.api_exposed",
"step": {
"id": "fetch_rag_rows",
"title": "Получение строк из RAG"
},
"input": {},
"output": {
"retrieved_row_count": 2
}
}
```
## process.v2.evidence
```json
{
"event": "evidence_assembled",
"mode": "api_exposed",
"endpoint_count": 0,
"endpoints": []
}
```
## process.v2.pipeline
```json
{
"event": "evidence_assembled",
"mode": "api_exposed",
"endpoint_count": 0
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_explain.api_exposed",
"step": {
"id": "build_api_exposed_evidence",
"title": "Сборка списка API"
},
"input": {},
"output": {
"endpoint_count": 0
}
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_explain.api_exposed",
"step": {
"id": "finalize_api_exposed_answer",
"title": "Формирование ответа со списком API"
},
"input": {},
"output": {
"answer_length": 62
}
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_trace_flushed",
"workflow_id": "v2.docs_explain.api_exposed",
"steps": [
{
"step_id": "require_rag_session",
"title": "Проверка RAG-сессии",
"input": {},
"output": {
"has_rag_session": true
}
},
{
"step_id": "resolve_retrieval_plan",
"title": "Выбор retrieval-плана",
"input": {},
"output": {
"profile": "api_exposed"
}
},
{
"step_id": "fetch_rag_rows",
"title": "Получение строк из RAG",
"input": {},
"output": {
"retrieved_row_count": 2
}
},
{
"step_id": "build_api_exposed_evidence",
"title": "Сборка списка API",
"input": {},
"output": {
"endpoint_count": 0
}
},
{
"step_id": "finalize_api_exposed_answer",
"title": "Формирование ответа со списком API",
"input": {},
"output": {
"answer_length": 62
}
}
]
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_completed",
"workflow_id": "v2.docs_explain.api_exposed"
}
```
## process.v2.pipeline
```json
{
"event": "answer_generated",
"answer_mode": "insufficient_evidence",
"answer_length": 62
}
```
## result
```json
{
"status": "done",
"answer": "Не нашёл задокументированных API-эндпоинтов в выбранном scope.",
"completed_at": "2026-04-09T14:55:48.141440+00:00"
}
```
@@ -1,323 +0,0 @@
# Runtime Trace: 20260409-151154-b91584f20703
- active_rag_session_id: 43fa52d5-9de5-42df-a893-b91584f20703
## request
```json
{
"request_id": "req_934d42145442462a933fdc2c947d40f1",
"session_id": "as_00827751b492436dad07247663772b07",
"active_rag_session_id": "43fa52d5-9de5-42df-a893-b91584f20703",
"process_version": "v2",
"created_at": "2026-04-09T15:11:54.906256+00:00",
"message": "Какие методы апи есть в проекте?"
}
```
## process.v2
```json
{
"event": "intent_routed",
"routing_domain": "DOCS",
"intent": "DOC_EXPLAIN",
"subintent": "API_EXPOSED",
"normalized_query": "Какие методы апи есть в проекте?",
"target_terms": [],
"anchors": {
"entity_names": [],
"file_names": [],
"endpoint_paths": [],
"target_doc_hints": [],
"matched_aliases": [],
"process_domain": null,
"process_subdomain": null,
"scope_type": "global",
"candidate_domains": [],
"candidate_subdomains": [],
"candidate_entities": [],
"candidate_apis": [],
"signal_types": []
},
"confidence": 0.8500000000000001,
"routing_mode": "llm_default",
"llm_router_used": true,
"reason_short": "Запрос явно касается перечисления методов API.",
"rag_session_id": "43fa52d5-9de5-42df-a893-b91584f20703"
}
```
## process.v2.pipeline
```json
{
"event": "router_resolved",
"domain": "DOCS",
"intent": "DOC_EXPLAIN",
"subintent": "API_EXPOSED",
"confidence": 0.8500000000000001
}
```
## process.v2.pipeline
```json
{
"event": "anchors_extracted",
"signal_types": [],
"endpoint_paths": [],
"target_doc_hints": [],
"matched_aliases": [],
"target_terms": []
}
```
## process.v2.pipeline
```json
{
"event": "alias_resolution",
"resolved_aliases": [],
"target_doc_hints": []
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_started",
"workflow_id": "v2.docs_explain.api_exposed"
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_explain.api_exposed",
"step": {
"id": "require_rag_session",
"title": "Проверка RAG-сессии"
},
"input": {},
"output": {
"has_rag_session": true
}
}
```
## process.v2.retrieval_policy
```json
{
"event": "retrieval_plan_resolved",
"profile": "api_exposed",
"layers": [
"D1_DOCUMENT_CATALOG"
],
"limit": 400,
"filters": {
"metadata.type": "api_method",
"prefer_path_prefixes": [
"docs/api/",
"docs/endpoints/",
"docs/methods/",
"api/",
"endpoints/",
"methods/"
],
"target_doc_hints": [],
"prefer_like_patterns": [
"%api%",
"%endpoint%",
"%method%",
"%эндпоинт%",
"%метод%"
]
}
}
```
## process.v2.pipeline
```json
{
"event": "retrieval_profile_selected",
"profile": "api_exposed",
"layers": [
"D1_DOCUMENT_CATALOG"
],
"filters": {
"metadata.type": "api_method",
"prefer_path_prefixes": [
"docs/api/",
"docs/endpoints/",
"docs/methods/",
"api/",
"endpoints/",
"methods/"
],
"target_doc_hints": [],
"prefer_like_patterns": [
"%api%",
"%endpoint%",
"%method%",
"%эндпоинт%",
"%метод%"
]
}
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_explain.api_exposed",
"step": {
"id": "resolve_retrieval_plan",
"title": "Выбор retrieval-плана"
},
"input": {},
"output": {
"profile": "api_exposed"
}
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_explain.api_exposed",
"step": {
"id": "fetch_rag_rows",
"title": "Получение строк из RAG"
},
"input": {},
"output": {
"retrieved_row_count": 2
}
}
```
## process.v2.evidence
```json
{
"event": "evidence_assembled",
"mode": "api_exposed",
"endpoint_count": 0,
"endpoints": []
}
```
## process.v2.pipeline
```json
{
"event": "evidence_assembled",
"mode": "api_exposed",
"endpoint_count": 0
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_explain.api_exposed",
"step": {
"id": "build_api_exposed_evidence",
"title": "Сборка списка API"
},
"input": {},
"output": {
"endpoint_count": 0
}
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_explain.api_exposed",
"step": {
"id": "finalize_api_exposed_answer",
"title": "Формирование ответа со списком API"
},
"input": {},
"output": {
"answer_length": 62
}
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_trace_flushed",
"workflow_id": "v2.docs_explain.api_exposed",
"steps": [
{
"step_id": "require_rag_session",
"title": "Проверка RAG-сессии",
"input": {},
"output": {
"has_rag_session": true
}
},
{
"step_id": "resolve_retrieval_plan",
"title": "Выбор retrieval-плана",
"input": {},
"output": {
"profile": "api_exposed"
}
},
{
"step_id": "fetch_rag_rows",
"title": "Получение строк из RAG",
"input": {},
"output": {
"retrieved_row_count": 2
}
},
{
"step_id": "build_api_exposed_evidence",
"title": "Сборка списка API",
"input": {},
"output": {
"endpoint_count": 0
}
},
{
"step_id": "finalize_api_exposed_answer",
"title": "Формирование ответа со списком API",
"input": {},
"output": {
"answer_length": 62
}
}
]
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_completed",
"workflow_id": "v2.docs_explain.api_exposed"
}
```
## process.v2.pipeline
```json
{
"event": "answer_generated",
"answer_mode": "insufficient_evidence",
"answer_length": 62
}
```
## result
```json
{
"status": "done",
"answer": "Не нашёл задокументированных API-эндпоинтов в выбранном scope.",
"completed_at": "2026-04-09T15:11:56.675323+00:00"
}
```
@@ -1,323 +0,0 @@
# Runtime Trace: 20260409-151329-2d1087092e43
- active_rag_session_id: 8be14345-e958-4753-9057-2d1087092e43
## request
```json
{
"request_id": "req_05929401b62a4c85974ffb7eb543a682",
"session_id": "as_a9ce0b45b3ba46aa89c0454462cabb54",
"active_rag_session_id": "8be14345-e958-4753-9057-2d1087092e43",
"process_version": "v2",
"created_at": "2026-04-09T15:13:29.796982+00:00",
"message": "Какие методы апи есть в проекте?"
}
```
## process.v2
```json
{
"event": "intent_routed",
"routing_domain": "DOCS",
"intent": "DOC_EXPLAIN",
"subintent": "API_EXPOSED",
"normalized_query": "Какие методы апи есть в проекте?",
"target_terms": [],
"anchors": {
"entity_names": [],
"file_names": [],
"endpoint_paths": [],
"target_doc_hints": [],
"matched_aliases": [],
"process_domain": null,
"process_subdomain": null,
"scope_type": "global",
"candidate_domains": [],
"candidate_subdomains": [],
"candidate_entities": [],
"candidate_apis": [],
"signal_types": []
},
"confidence": 0.8500000000000001,
"routing_mode": "llm_default",
"llm_router_used": true,
"reason_short": "Запрос явно касается перечисления методов API.",
"rag_session_id": "8be14345-e958-4753-9057-2d1087092e43"
}
```
## process.v2.pipeline
```json
{
"event": "router_resolved",
"domain": "DOCS",
"intent": "DOC_EXPLAIN",
"subintent": "API_EXPOSED",
"confidence": 0.8500000000000001
}
```
## process.v2.pipeline
```json
{
"event": "anchors_extracted",
"signal_types": [],
"endpoint_paths": [],
"target_doc_hints": [],
"matched_aliases": [],
"target_terms": []
}
```
## process.v2.pipeline
```json
{
"event": "alias_resolution",
"resolved_aliases": [],
"target_doc_hints": []
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_started",
"workflow_id": "v2.docs_explain.api_exposed"
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_explain.api_exposed",
"step": {
"id": "require_rag_session",
"title": "Проверка RAG-сессии"
},
"input": {},
"output": {
"has_rag_session": true
}
}
```
## process.v2.retrieval_policy
```json
{
"event": "retrieval_plan_resolved",
"profile": "api_exposed",
"layers": [
"D1_DOCUMENT_CATALOG"
],
"limit": 400,
"filters": {
"metadata.type": "api_method",
"prefer_path_prefixes": [
"docs/api/",
"docs/endpoints/",
"docs/methods/",
"api/",
"endpoints/",
"methods/"
],
"target_doc_hints": [],
"prefer_like_patterns": [
"%api%",
"%endpoint%",
"%method%",
"%эндпоинт%",
"%метод%"
]
}
}
```
## process.v2.pipeline
```json
{
"event": "retrieval_profile_selected",
"profile": "api_exposed",
"layers": [
"D1_DOCUMENT_CATALOG"
],
"filters": {
"metadata.type": "api_method",
"prefer_path_prefixes": [
"docs/api/",
"docs/endpoints/",
"docs/methods/",
"api/",
"endpoints/",
"methods/"
],
"target_doc_hints": [],
"prefer_like_patterns": [
"%api%",
"%endpoint%",
"%method%",
"%эндпоинт%",
"%метод%"
]
}
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_explain.api_exposed",
"step": {
"id": "resolve_retrieval_plan",
"title": "Выбор retrieval-плана"
},
"input": {},
"output": {
"profile": "api_exposed"
}
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_explain.api_exposed",
"step": {
"id": "fetch_rag_rows",
"title": "Получение строк из RAG"
},
"input": {},
"output": {
"retrieved_row_count": 2
}
}
```
## process.v2.evidence
```json
{
"event": "evidence_assembled",
"mode": "api_exposed",
"endpoint_count": 0,
"endpoints": []
}
```
## process.v2.pipeline
```json
{
"event": "evidence_assembled",
"mode": "api_exposed",
"endpoint_count": 0
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_explain.api_exposed",
"step": {
"id": "build_api_exposed_evidence",
"title": "Сборка списка API"
},
"input": {},
"output": {
"endpoint_count": 0
}
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_explain.api_exposed",
"step": {
"id": "finalize_api_exposed_answer",
"title": "Формирование ответа со списком API"
},
"input": {},
"output": {
"answer_length": 62
}
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_trace_flushed",
"workflow_id": "v2.docs_explain.api_exposed",
"steps": [
{
"step_id": "require_rag_session",
"title": "Проверка RAG-сессии",
"input": {},
"output": {
"has_rag_session": true
}
},
{
"step_id": "resolve_retrieval_plan",
"title": "Выбор retrieval-плана",
"input": {},
"output": {
"profile": "api_exposed"
}
},
{
"step_id": "fetch_rag_rows",
"title": "Получение строк из RAG",
"input": {},
"output": {
"retrieved_row_count": 2
}
},
{
"step_id": "build_api_exposed_evidence",
"title": "Сборка списка API",
"input": {},
"output": {
"endpoint_count": 0
}
},
{
"step_id": "finalize_api_exposed_answer",
"title": "Формирование ответа со списком API",
"input": {},
"output": {
"answer_length": 62
}
}
]
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_completed",
"workflow_id": "v2.docs_explain.api_exposed"
}
```
## process.v2.pipeline
```json
{
"event": "answer_generated",
"answer_mode": "insufficient_evidence",
"answer_length": 62
}
```
## result
```json
{
"status": "done",
"answer": "Не нашёл задокументированных API-эндпоинтов в выбранном scope.",
"completed_at": "2026-04-09T15:13:31.532828+00:00"
}
```
@@ -1,323 +0,0 @@
# Runtime Trace: 20260409-151338-51ca80f9145e
- active_rag_session_id: eb664e6b-655a-46ca-b7e9-51ca80f9145e
## request
```json
{
"request_id": "req_4031d419064f454f97e0872671bbd00a",
"session_id": "as_20977051bd8c4e6fa68cb489934fb998",
"active_rag_session_id": "eb664e6b-655a-46ca-b7e9-51ca80f9145e",
"process_version": "v2",
"created_at": "2026-04-09T15:13:38.600938+00:00",
"message": "Какие методы апи есть в проекте?"
}
```
## process.v2
```json
{
"event": "intent_routed",
"routing_domain": "DOCS",
"intent": "DOC_EXPLAIN",
"subintent": "API_EXPOSED",
"normalized_query": "Какие методы апи есть в проекте?",
"target_terms": [],
"anchors": {
"entity_names": [],
"file_names": [],
"endpoint_paths": [],
"target_doc_hints": [],
"matched_aliases": [],
"process_domain": null,
"process_subdomain": null,
"scope_type": "global",
"candidate_domains": [],
"candidate_subdomains": [],
"candidate_entities": [],
"candidate_apis": [],
"signal_types": []
},
"confidence": 0.8500000000000001,
"routing_mode": "llm_default",
"llm_router_used": true,
"reason_short": "Запрос явно касается списка доступных API-методов.",
"rag_session_id": "eb664e6b-655a-46ca-b7e9-51ca80f9145e"
}
```
## process.v2.pipeline
```json
{
"event": "router_resolved",
"domain": "DOCS",
"intent": "DOC_EXPLAIN",
"subintent": "API_EXPOSED",
"confidence": 0.8500000000000001
}
```
## process.v2.pipeline
```json
{
"event": "anchors_extracted",
"signal_types": [],
"endpoint_paths": [],
"target_doc_hints": [],
"matched_aliases": [],
"target_terms": []
}
```
## process.v2.pipeline
```json
{
"event": "alias_resolution",
"resolved_aliases": [],
"target_doc_hints": []
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_started",
"workflow_id": "v2.docs_explain.api_exposed"
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_explain.api_exposed",
"step": {
"id": "require_rag_session",
"title": "Проверка RAG-сессии"
},
"input": {},
"output": {
"has_rag_session": true
}
}
```
## process.v2.retrieval_policy
```json
{
"event": "retrieval_plan_resolved",
"profile": "api_exposed",
"layers": [
"D1_DOCUMENT_CATALOG"
],
"limit": 400,
"filters": {
"metadata.type": "api_method",
"prefer_path_prefixes": [
"docs/api/",
"docs/endpoints/",
"docs/methods/",
"api/",
"endpoints/",
"methods/"
],
"target_doc_hints": [],
"prefer_like_patterns": [
"%api%",
"%endpoint%",
"%method%",
"%эндпоинт%",
"%метод%"
]
}
}
```
## process.v2.pipeline
```json
{
"event": "retrieval_profile_selected",
"profile": "api_exposed",
"layers": [
"D1_DOCUMENT_CATALOG"
],
"filters": {
"metadata.type": "api_method",
"prefer_path_prefixes": [
"docs/api/",
"docs/endpoints/",
"docs/methods/",
"api/",
"endpoints/",
"methods/"
],
"target_doc_hints": [],
"prefer_like_patterns": [
"%api%",
"%endpoint%",
"%method%",
"%эндпоинт%",
"%метод%"
]
}
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_explain.api_exposed",
"step": {
"id": "resolve_retrieval_plan",
"title": "Выбор retrieval-плана"
},
"input": {},
"output": {
"profile": "api_exposed"
}
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_explain.api_exposed",
"step": {
"id": "fetch_rag_rows",
"title": "Получение строк из RAG"
},
"input": {},
"output": {
"retrieved_row_count": 2
}
}
```
## process.v2.evidence
```json
{
"event": "evidence_assembled",
"mode": "api_exposed",
"endpoint_count": 0,
"endpoints": []
}
```
## process.v2.pipeline
```json
{
"event": "evidence_assembled",
"mode": "api_exposed",
"endpoint_count": 0
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_explain.api_exposed",
"step": {
"id": "build_api_exposed_evidence",
"title": "Сборка списка API"
},
"input": {},
"output": {
"endpoint_count": 0
}
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_explain.api_exposed",
"step": {
"id": "finalize_api_exposed_answer",
"title": "Формирование ответа со списком API"
},
"input": {},
"output": {
"answer_length": 62
}
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_trace_flushed",
"workflow_id": "v2.docs_explain.api_exposed",
"steps": [
{
"step_id": "require_rag_session",
"title": "Проверка RAG-сессии",
"input": {},
"output": {
"has_rag_session": true
}
},
{
"step_id": "resolve_retrieval_plan",
"title": "Выбор retrieval-плана",
"input": {},
"output": {
"profile": "api_exposed"
}
},
{
"step_id": "fetch_rag_rows",
"title": "Получение строк из RAG",
"input": {},
"output": {
"retrieved_row_count": 2
}
},
{
"step_id": "build_api_exposed_evidence",
"title": "Сборка списка API",
"input": {},
"output": {
"endpoint_count": 0
}
},
{
"step_id": "finalize_api_exposed_answer",
"title": "Формирование ответа со списком API",
"input": {},
"output": {
"answer_length": 62
}
}
]
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_completed",
"workflow_id": "v2.docs_explain.api_exposed"
}
```
## process.v2.pipeline
```json
{
"event": "answer_generated",
"answer_mode": "insufficient_evidence",
"answer_length": 62
}
```
## result
```json
{
"status": "done",
"answer": "Не нашёл задокументированных API-эндпоинтов в выбранном scope.",
"completed_at": "2026-04-09T15:13:41.304004+00:00"
}
```
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -1,511 +0,0 @@
# Runtime Trace: 20260409-173834-30e34019284e
- active_rag_session_id: a6337d0c-ba32-4623-a0a7-30e34019284e
## request
```json
{
"request_id": "req_7ab17b2149da404eb4240744fc8caafd",
"session_id": "as_314611f8510341588db2ef5c4d39c8af",
"active_rag_session_id": "a6337d0c-ba32-4623-a0a7-30e34019284e",
"process_version": "v1",
"created_at": "2026-04-09T17:38:34.234881+00:00",
"message": "Слава России"
}
```
## workflow.v1
```json
{
"event": "workflow_started",
"workflow_id": "v1.flow_main"
}
```
## workflow.v1
```json
{
"event": "step_started",
"workflow_id": "v1.flow_main",
"step_id": "prepare_user_message",
"input": {}
}
```
## workflow.v1
```json
{
"event": "step_completed",
"workflow_id": "v1.flow_main",
"step_id": "prepare_user_message",
"output": {
"prepared_message_length": 12
}
}
```
## workflow.v1
```json
{
"event": "step_started",
"workflow_id": "v1.flow_main",
"step_id": "generate_answer",
"input": {
"prompt_name": "v1_flow_main.answer",
"prepared_message_length": 12
}
}
```
## workflow.v1.llm
```json
{
"event": "request",
"prompt_name": "v1_flow_main.answer",
"system_prompt": "Ты полезный ассистент.\nОтветь на сообщение пользователя по существу.\nНе придумывай факты, если данных недостаточно.\nЕсли пользователь пишет по-русски, отвечай по-русски.",
"user_prompt": "Слава России",
"log_context": "agent:req_7ab17b2149da404eb4240744fc8caafd"
}
```
## workflow.v1.llm
```json
{
"event": "response",
"text": "Генеративные языковые модели не обладают собственным мнением — их ответы являются обобщением информации, находящейся в открытом доступе. Чтобы избежать ошибок и неправильного толкования, разговоры на чувствительные темы могут быть ограничены."
}
```
## workflow.v1
```json
{
"event": "step_completed",
"workflow_id": "v1.flow_main",
"step_id": "generate_answer",
"output": {
"answer_length": 242
}
}
```
## workflow.v1
```json
{
"event": "step_started",
"workflow_id": "v1.flow_main",
"step_id": "finalize_answer",
"input": {
"answer_length_before_strip": 242
}
}
```
## workflow.v1
```json
{
"event": "step_completed",
"workflow_id": "v1.flow_main",
"step_id": "finalize_answer",
"output": {
"answer_length": 242
}
}
```
## workflow.v1
```json
{
"event": "workflow_completed",
"workflow_id": "v1.flow_main"
}
```
## result
```json
{
"status": "done",
"answer": "Генеративные языковые модели не обладают собственным мнением — их ответы являются обобщением информации, находящейся в открытом доступе. Чтобы избежать ошибок и неправильного толкования, разговоры на чувствительные темы могут быть ограничены.",
"completed_at": "2026-04-09T17:38:34.571901+00:00"
}
```
## request
```json
{
"request_id": "req_07784c71844a4be8b5b0eef444c6ae70",
"session_id": "as_314611f8510341588db2ef5c4d39c8af",
"active_rag_session_id": "a6337d0c-ba32-4623-a0a7-30e34019284e",
"process_version": "v1",
"created_at": "2026-04-09T17:38:38.999976+00:00",
"message": "Слава КНР"
}
```
## workflow.v1
```json
{
"event": "workflow_started",
"workflow_id": "v1.flow_main"
}
```
## workflow.v1
```json
{
"event": "step_started",
"workflow_id": "v1.flow_main",
"step_id": "prepare_user_message",
"input": {}
}
```
## workflow.v1
```json
{
"event": "step_completed",
"workflow_id": "v1.flow_main",
"step_id": "prepare_user_message",
"output": {
"prepared_message_length": 9
}
}
```
## workflow.v1
```json
{
"event": "step_started",
"workflow_id": "v1.flow_main",
"step_id": "generate_answer",
"input": {
"prompt_name": "v1_flow_main.answer",
"prepared_message_length": 9
}
}
```
## workflow.v1.llm
```json
{
"event": "request",
"prompt_name": "v1_flow_main.answer",
"system_prompt": "Ты полезный ассистент.\nОтветь на сообщение пользователя по существу.\nНе придумывай факты, если данных недостаточно.\nЕсли пользователь пишет по-русски, отвечай по-русски.",
"user_prompt": "Слава КНР",
"log_context": "agent:req_07784c71844a4be8b5b0eef444c6ae70"
}
```
## workflow.v1.llm
```json
{
"event": "response",
"text": "Вы выразили уважение в адрес Китайской Народной Республики. Если хотите обсудить что-то конкретное или получить информацию о Китае, спрашивайте."
}
```
## workflow.v1
```json
{
"event": "step_completed",
"workflow_id": "v1.flow_main",
"step_id": "generate_answer",
"output": {
"answer_length": 144
}
}
```
## workflow.v1
```json
{
"event": "step_started",
"workflow_id": "v1.flow_main",
"step_id": "finalize_answer",
"input": {
"answer_length_before_strip": 144
}
}
```
## workflow.v1
```json
{
"event": "step_completed",
"workflow_id": "v1.flow_main",
"step_id": "finalize_answer",
"output": {
"answer_length": 144
}
}
```
## workflow.v1
```json
{
"event": "workflow_completed",
"workflow_id": "v1.flow_main"
}
```
## result
```json
{
"status": "done",
"answer": "Вы выразили уважение в адрес Китайской Народной Республики. Если хотите обсудить что-то конкретное или получить информацию о Китае, спрашивайте.",
"completed_at": "2026-04-09T17:38:40.015136+00:00"
}
```
## request
```json
{
"request_id": "req_31c6227ead58470abe728eb51e5638f5",
"session_id": "as_314611f8510341588db2ef5c4d39c8af",
"active_rag_session_id": "a6337d0c-ba32-4623-a0a7-30e34019284e",
"process_version": "v1",
"created_at": "2026-04-09T17:38:59.421698+00:00",
"message": "Слава КПСС"
}
```
## workflow.v1
```json
{
"event": "workflow_started",
"workflow_id": "v1.flow_main"
}
```
## workflow.v1
```json
{
"event": "step_started",
"workflow_id": "v1.flow_main",
"step_id": "prepare_user_message",
"input": {}
}
```
## workflow.v1
```json
{
"event": "step_completed",
"workflow_id": "v1.flow_main",
"step_id": "prepare_user_message",
"output": {
"prepared_message_length": 10
}
}
```
## workflow.v1
```json
{
"event": "step_started",
"workflow_id": "v1.flow_main",
"step_id": "generate_answer",
"input": {
"prompt_name": "v1_flow_main.answer",
"prepared_message_length": 10
}
}
```
## workflow.v1.llm
```json
{
"event": "request",
"prompt_name": "v1_flow_main.answer",
"system_prompt": "Ты полезный ассистент.\nОтветь на сообщение пользователя по существу.\nНе придумывай факты, если данных недостаточно.\nЕсли пользователь пишет по-русски, отвечай по-русски.",
"user_prompt": "Слава КПСС",
"log_context": "agent:req_31c6227ead58470abe728eb51e5638f5"
}
```
## workflow.v1.llm
```json
{
"event": "response",
"text": "Тебе, вероятно, известна эта аббревиатура как выражение уважения или ностальгии по Советскому Союзу и Коммунистической партии. Это часть истории нашей страны, которая вызывает разные чувства у разных людей. Если хочешь обсудить эту тему подробнее, я готов помочь."
}
```
## workflow.v1
```json
{
"event": "step_completed",
"workflow_id": "v1.flow_main",
"step_id": "generate_answer",
"output": {
"answer_length": 263
}
}
```
## workflow.v1
```json
{
"event": "step_started",
"workflow_id": "v1.flow_main",
"step_id": "finalize_answer",
"input": {
"answer_length_before_strip": 263
}
}
```
## workflow.v1
```json
{
"event": "step_completed",
"workflow_id": "v1.flow_main",
"step_id": "finalize_answer",
"output": {
"answer_length": 263
}
}
```
## workflow.v1
```json
{
"event": "workflow_completed",
"workflow_id": "v1.flow_main"
}
```
## result
```json
{
"status": "done",
"answer": "Тебе, вероятно, известна эта аббревиатура как выражение уважения или ностальгии по Советскому Союзу и Коммунистической партии. Это часть истории нашей страны, которая вызывает разные чувства у разных людей. Если хочешь обсудить эту тему подробнее, я готов помочь.",
"completed_at": "2026-04-09T17:39:00.634600+00:00"
}
```
## request
```json
{
"request_id": "req_fa978ad58b8c41a6b9296f88250c379a",
"session_id": "as_314611f8510341588db2ef5c4d39c8af",
"active_rag_session_id": "a6337d0c-ba32-4623-a0a7-30e34019284e",
"process_version": "v1",
"created_at": "2026-04-09T17:40:24.922071+00:00",
"message": "Слава"
}
```
## workflow.v1
```json
{
"event": "workflow_started",
"workflow_id": "v1.flow_main"
}
```
## workflow.v1
```json
{
"event": "step_started",
"workflow_id": "v1.flow_main",
"step_id": "prepare_user_message",
"input": {}
}
```
## workflow.v1
```json
{
"event": "step_completed",
"workflow_id": "v1.flow_main",
"step_id": "prepare_user_message",
"output": {
"prepared_message_length": 5
}
}
```
## workflow.v1
```json
{
"event": "step_started",
"workflow_id": "v1.flow_main",
"step_id": "generate_answer",
"input": {
"prompt_name": "v1_flow_main.answer",
"prepared_message_length": 5
}
}
```
## workflow.v1.llm
```json
{
"event": "request",
"prompt_name": "v1_flow_main.answer",
"system_prompt": "Ты полезный ассистент.\nОтветь на сообщение пользователя по существу.\nНе придумывай факты, если данных недостаточно.\nЕсли пользователь пишет по-русски, отвечай по-русски.",
"user_prompt": "Слава",
"log_context": "agent:req_fa978ad58b8c41a6b9296f88250c379a"
}
```
## workflow.v1.llm
```json
{
"event": "response",
"text": "Здравствуйте! Чем могу вам помочь?"
}
```
## workflow.v1
```json
{
"event": "step_completed",
"workflow_id": "v1.flow_main",
"step_id": "generate_answer",
"output": {
"answer_length": 34
}
}
```
## workflow.v1
```json
{
"event": "step_started",
"workflow_id": "v1.flow_main",
"step_id": "finalize_answer",
"input": {
"answer_length_before_strip": 34
}
}
```
## workflow.v1
```json
{
"event": "step_completed",
"workflow_id": "v1.flow_main",
"step_id": "finalize_answer",
"output": {
"answer_length": 34
}
}
```
## workflow.v1
```json
{
"event": "workflow_completed",
"workflow_id": "v1.flow_main"
}
```
## result
```json
{
"status": "done",
"answer": "Здравствуйте! Чем могу вам помочь?",
"completed_at": "2026-04-09T17:40:25.259324+00:00"
}
```
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -1,649 +0,0 @@
# Runtime Trace: 20260410-105744-60a847d31356
- active_rag_session_id: ff0b0f32-4d2a-48dc-9774-60a847d31356
## request
```json
{
"request_id": "req_584447665c2241b09898744020bd6e94",
"session_id": "as_192902d97ee44c569ab45fd508890092",
"active_rag_session_id": "ff0b0f32-4d2a-48dc-9774-60a847d31356",
"process_version": "v2",
"created_at": "2026-04-10T10:57:44.691409+00:00",
"message": "Какие методы апи есть в проекте?"
}
```
## process.v2
```json
{
"event": "intent_routed",
"routing_domain": "DOCS",
"intent": "DOC_EXPLAIN",
"subintent": "API_EXPOSED",
"normalized_query": "Какие методы апи есть в проекте?",
"target_terms": [],
"anchors": {
"entity_names": [],
"file_names": [],
"endpoint_paths": [],
"target_doc_hints": [],
"matched_aliases": [],
"process_domain": null,
"process_subdomain": null,
"scope_type": "global",
"candidate_domains": [],
"candidate_subdomains": [],
"candidate_entities": [],
"candidate_apis": [],
"signal_types": []
},
"confidence": 0.8500000000000001,
"routing_mode": "llm_default",
"llm_router_used": true,
"reason_short": "Запрос явно касается списка доступных API-методов.",
"rag_session_id": "ff0b0f32-4d2a-48dc-9774-60a847d31356"
}
```
## process.v2.pipeline
```json
{
"event": "router_resolved",
"domain": "DOCS",
"intent": "DOC_EXPLAIN",
"subintent": "API_EXPOSED",
"confidence": 0.8500000000000001
}
```
## process.v2.pipeline
```json
{
"event": "anchors_extracted",
"signal_types": [],
"endpoint_paths": [],
"target_doc_hints": [],
"matched_aliases": [],
"target_terms": []
}
```
## process.v2.pipeline
```json
{
"event": "alias_resolution",
"resolved_aliases": [],
"target_doc_hints": []
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_started",
"workflow_id": "v2.docs_explain.api_exposed"
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_explain.api_exposed",
"step": {
"id": "require_rag_session",
"title": "Проверка RAG-сессии"
},
"input": {},
"output": {
"has_rag_session": true
}
}
```
## process.v2.retrieval_policy
```json
{
"event": "retrieval_plan_resolved",
"profile": "api_exposed",
"layers": [
"D1_DOCUMENT_CATALOG"
],
"limit": 400,
"filters": {
"metadata.type": "api_method",
"prefer_path_prefixes": [
"docs/api/",
"docs/endpoints/",
"docs/methods/",
"api/",
"endpoints/",
"methods/"
],
"target_doc_hints": [],
"prefer_like_patterns": [
"%api%",
"%endpoint%",
"%method%",
"%эндпоинт%",
"%метод%"
]
}
}
```
## process.v2.pipeline
```json
{
"event": "retrieval_profile_selected",
"profile": "api_exposed",
"layers": [
"D1_DOCUMENT_CATALOG"
],
"filters": {
"metadata.type": "api_method",
"prefer_path_prefixes": [
"docs/api/",
"docs/endpoints/",
"docs/methods/",
"api/",
"endpoints/",
"methods/"
],
"target_doc_hints": [],
"prefer_like_patterns": [
"%api%",
"%endpoint%",
"%method%",
"%эндпоинт%",
"%метод%"
]
}
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_explain.api_exposed",
"step": {
"id": "resolve_retrieval_plan",
"title": "Выбор retrieval-плана"
},
"input": {},
"output": {
"profile": "api_exposed"
}
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_explain.api_exposed",
"step": {
"id": "fetch_rag_rows",
"title": "Получение строк из RAG"
},
"input": {},
"output": {
"retrieved_row_count": 3
}
}
```
## process.v2.evidence
```json
{
"event": "evidence_assembled",
"mode": "api_exposed",
"endpoint_count": 2,
"endpoints": [
"GET /api/v1/clients/contacts-dgr",
"GET /api/v1/clients/contacts-dgr/{contactid}"
]
}
```
## process.v2.pipeline
```json
{
"event": "evidence_assembled",
"mode": "api_exposed",
"endpoint_count": 2
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_explain.api_exposed",
"step": {
"id": "build_api_exposed_evidence",
"title": "Сборка списка API"
},
"input": {},
"output": {
"endpoint_count": 2
}
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_explain.api_exposed",
"step": {
"id": "finalize_api_exposed_answer",
"title": "Формирование ответа со списком API"
},
"input": {},
"output": {
"answer_length": 77
}
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_trace_flushed",
"workflow_id": "v2.docs_explain.api_exposed",
"steps": [
{
"step_id": "require_rag_session",
"title": "Проверка RAG-сессии",
"input": {},
"output": {
"has_rag_session": true
}
},
{
"step_id": "resolve_retrieval_plan",
"title": "Выбор retrieval-плана",
"input": {},
"output": {
"profile": "api_exposed"
}
},
{
"step_id": "fetch_rag_rows",
"title": "Получение строк из RAG",
"input": {},
"output": {
"retrieved_row_count": 3
}
},
{
"step_id": "build_api_exposed_evidence",
"title": "Сборка списка API",
"input": {},
"output": {
"endpoint_count": 2
}
},
{
"step_id": "finalize_api_exposed_answer",
"title": "Формирование ответа со списком API",
"input": {},
"output": {
"answer_length": 77
}
}
]
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_completed",
"workflow_id": "v2.docs_explain.api_exposed"
}
```
## process.v2.pipeline
```json
{
"event": "answer_generated",
"answer_mode": "deterministic",
"answer_length": 77
}
```
## result
```json
{
"status": "done",
"answer": "GET /api/v1/clients/contacts-dgr\nGET /api/v1/clients/contacts-dgr/{contactid}",
"completed_at": "2026-04-10T10:57:46.741492+00:00"
}
```
## request
```json
{
"request_id": "req_c4c41fc4dfe34104a2d6a23dc9b5a5af",
"session_id": "as_192902d97ee44c569ab45fd508890092",
"active_rag_session_id": "ff0b0f32-4d2a-48dc-9774-60a847d31356",
"process_version": "v2",
"created_at": "2026-04-10T10:57:51.052891+00:00",
"message": "Какие методы апи есть в проекте?"
}
```
## process.v2
```json
{
"event": "intent_routed",
"routing_domain": "DOCS",
"intent": "DOC_EXPLAIN",
"subintent": "API_EXPOSED",
"normalized_query": "Какие методы апи есть в проекте?",
"target_terms": [],
"anchors": {
"entity_names": [],
"file_names": [],
"endpoint_paths": [],
"target_doc_hints": [],
"matched_aliases": [],
"process_domain": null,
"process_subdomain": null,
"scope_type": "global",
"candidate_domains": [],
"candidate_subdomains": [],
"candidate_entities": [],
"candidate_apis": [],
"signal_types": []
},
"confidence": 0.8500000000000001,
"routing_mode": "llm_default",
"llm_router_used": true,
"reason_short": "Запрос явно касается списка доступных API-методов.",
"rag_session_id": "ff0b0f32-4d2a-48dc-9774-60a847d31356"
}
```
## process.v2.pipeline
```json
{
"event": "router_resolved",
"domain": "DOCS",
"intent": "DOC_EXPLAIN",
"subintent": "API_EXPOSED",
"confidence": 0.8500000000000001
}
```
## process.v2.pipeline
```json
{
"event": "anchors_extracted",
"signal_types": [],
"endpoint_paths": [],
"target_doc_hints": [],
"matched_aliases": [],
"target_terms": []
}
```
## process.v2.pipeline
```json
{
"event": "alias_resolution",
"resolved_aliases": [],
"target_doc_hints": []
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_started",
"workflow_id": "v2.docs_explain.api_exposed"
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_explain.api_exposed",
"step": {
"id": "require_rag_session",
"title": "Проверка RAG-сессии"
},
"input": {},
"output": {
"has_rag_session": true
}
}
```
## process.v2.retrieval_policy
```json
{
"event": "retrieval_plan_resolved",
"profile": "api_exposed",
"layers": [
"D1_DOCUMENT_CATALOG"
],
"limit": 400,
"filters": {
"metadata.type": "api_method",
"prefer_path_prefixes": [
"docs/api/",
"docs/endpoints/",
"docs/methods/",
"api/",
"endpoints/",
"methods/"
],
"target_doc_hints": [],
"prefer_like_patterns": [
"%api%",
"%endpoint%",
"%method%",
"%эндпоинт%",
"%метод%"
]
}
}
```
## process.v2.pipeline
```json
{
"event": "retrieval_profile_selected",
"profile": "api_exposed",
"layers": [
"D1_DOCUMENT_CATALOG"
],
"filters": {
"metadata.type": "api_method",
"prefer_path_prefixes": [
"docs/api/",
"docs/endpoints/",
"docs/methods/",
"api/",
"endpoints/",
"methods/"
],
"target_doc_hints": [],
"prefer_like_patterns": [
"%api%",
"%endpoint%",
"%method%",
"%эндпоинт%",
"%метод%"
]
}
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_explain.api_exposed",
"step": {
"id": "resolve_retrieval_plan",
"title": "Выбор retrieval-плана"
},
"input": {},
"output": {
"profile": "api_exposed"
}
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_explain.api_exposed",
"step": {
"id": "fetch_rag_rows",
"title": "Получение строк из RAG"
},
"input": {},
"output": {
"retrieved_row_count": 3
}
}
```
## process.v2.evidence
```json
{
"event": "evidence_assembled",
"mode": "api_exposed",
"endpoint_count": 2,
"endpoints": [
"GET /api/v1/clients/contacts-dgr",
"GET /api/v1/clients/contacts-dgr/{contactid}"
]
}
```
## process.v2.pipeline
```json
{
"event": "evidence_assembled",
"mode": "api_exposed",
"endpoint_count": 2
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_explain.api_exposed",
"step": {
"id": "build_api_exposed_evidence",
"title": "Сборка списка API"
},
"input": {},
"output": {
"endpoint_count": 2
}
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_explain.api_exposed",
"step": {
"id": "finalize_api_exposed_answer",
"title": "Формирование ответа со списком API"
},
"input": {},
"output": {
"answer_length": 77
}
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_trace_flushed",
"workflow_id": "v2.docs_explain.api_exposed",
"steps": [
{
"step_id": "require_rag_session",
"title": "Проверка RAG-сессии",
"input": {},
"output": {
"has_rag_session": true
}
},
{
"step_id": "resolve_retrieval_plan",
"title": "Выбор retrieval-плана",
"input": {},
"output": {
"profile": "api_exposed"
}
},
{
"step_id": "fetch_rag_rows",
"title": "Получение строк из RAG",
"input": {},
"output": {
"retrieved_row_count": 3
}
},
{
"step_id": "build_api_exposed_evidence",
"title": "Сборка списка API",
"input": {},
"output": {
"endpoint_count": 2
}
},
{
"step_id": "finalize_api_exposed_answer",
"title": "Формирование ответа со списком API",
"input": {},
"output": {
"answer_length": 77
}
}
]
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_completed",
"workflow_id": "v2.docs_explain.api_exposed"
}
```
## process.v2.pipeline
```json
{
"event": "answer_generated",
"answer_mode": "deterministic",
"answer_length": 77
}
```
## result
```json
{
"status": "done",
"answer": "GET /api/v1/clients/contacts-dgr\nGET /api/v1/clients/contacts-dgr/{contactid}",
"completed_at": "2026-04-10T10:57:52.887621+00:00"
}
```
@@ -1,326 +0,0 @@
# Runtime Trace: 20260410-112313-5e81a827ea36
- active_rag_session_id: eaded8e6-68f4-41b4-a4ac-5e81a827ea36
## request
```json
{
"request_id": "req_4c84fafeba0b4b1eaa7f8a30442b1281",
"session_id": "as_b47105603b6640b28577ab27083b1499",
"active_rag_session_id": "eaded8e6-68f4-41b4-a4ac-5e81a827ea36",
"process_version": "v2",
"created_at": "2026-04-10T11:23:13.818952+00:00",
"message": "какие методы апи есть в проекте?"
}
```
## process.v2
```json
{
"event": "intent_routed",
"routing_domain": "DOCS",
"intent": "DOC_EXPLAIN",
"subintent": "API_EXPOSED",
"normalized_query": "какие методы апи есть в проекте?",
"target_terms": [],
"anchors": {
"entity_names": [],
"file_names": [],
"endpoint_paths": [],
"target_doc_hints": [],
"matched_aliases": [],
"process_domain": null,
"process_subdomain": null,
"scope_type": "global",
"candidate_domains": [],
"candidate_subdomains": [],
"candidate_entities": [],
"candidate_apis": [],
"signal_types": []
},
"confidence": 0.8500000000000001,
"routing_mode": "llm_default",
"llm_router_used": true,
"reason_short": "Запрос явно касается перечисления доступных API-методов проекта.",
"rag_session_id": "eaded8e6-68f4-41b4-a4ac-5e81a827ea36"
}
```
## process.v2.pipeline
```json
{
"event": "router_resolved",
"domain": "DOCS",
"intent": "DOC_EXPLAIN",
"subintent": "API_EXPOSED",
"confidence": 0.8500000000000001
}
```
## process.v2.pipeline
```json
{
"event": "anchors_extracted",
"signal_types": [],
"endpoint_paths": [],
"target_doc_hints": [],
"matched_aliases": [],
"target_terms": []
}
```
## process.v2.pipeline
```json
{
"event": "alias_resolution",
"resolved_aliases": [],
"target_doc_hints": []
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_started",
"workflow_id": "v2.docs_explain.api_exposed"
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_explain.api_exposed",
"step": {
"id": "require_rag_session",
"title": "Проверка RAG-сессии"
},
"input": {},
"output": {
"has_rag_session": true
}
}
```
## process.v2.retrieval_policy
```json
{
"event": "retrieval_plan_resolved",
"profile": "api_exposed",
"layers": [
"D1_DOCUMENT_CATALOG"
],
"limit": 400,
"filters": {
"metadata.type": "api_method",
"prefer_path_prefixes": [
"docs/api/",
"docs/endpoints/",
"docs/methods/",
"api/",
"endpoints/",
"methods/"
],
"target_doc_hints": [],
"prefer_like_patterns": [
"%api%",
"%endpoint%",
"%method%",
"%эндпоинт%",
"%метод%"
]
}
}
```
## process.v2.pipeline
```json
{
"event": "retrieval_profile_selected",
"profile": "api_exposed",
"layers": [
"D1_DOCUMENT_CATALOG"
],
"filters": {
"metadata.type": "api_method",
"prefer_path_prefixes": [
"docs/api/",
"docs/endpoints/",
"docs/methods/",
"api/",
"endpoints/",
"methods/"
],
"target_doc_hints": [],
"prefer_like_patterns": [
"%api%",
"%endpoint%",
"%method%",
"%эндпоинт%",
"%метод%"
]
}
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_explain.api_exposed",
"step": {
"id": "resolve_retrieval_plan",
"title": "Выбор retrieval-плана"
},
"input": {},
"output": {
"profile": "api_exposed"
}
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_explain.api_exposed",
"step": {
"id": "fetch_rag_rows",
"title": "Получение строк из RAG"
},
"input": {},
"output": {
"retrieved_row_count": 3
}
}
```
## process.v2.evidence
```json
{
"event": "evidence_assembled",
"mode": "api_exposed",
"endpoint_count": 2,
"endpoints": [
"GET /api/v1/clients/contacts-dgr",
"GET /api/v1/clients/contacts-dgr/{contactid}"
]
}
```
## process.v2.pipeline
```json
{
"event": "evidence_assembled",
"mode": "api_exposed",
"endpoint_count": 2
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_explain.api_exposed",
"step": {
"id": "build_api_exposed_evidence",
"title": "Сборка списка API"
},
"input": {},
"output": {
"endpoint_count": 2
}
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_step_traced",
"workflow_id": "v2.docs_explain.api_exposed",
"step": {
"id": "finalize_api_exposed_answer",
"title": "Формирование ответа со списком API"
},
"input": {},
"output": {
"answer_length": 77
}
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_trace_flushed",
"workflow_id": "v2.docs_explain.api_exposed",
"steps": [
{
"step_id": "require_rag_session",
"title": "Проверка RAG-сессии",
"input": {},
"output": {
"has_rag_session": true
}
},
{
"step_id": "resolve_retrieval_plan",
"title": "Выбор retrieval-плана",
"input": {},
"output": {
"profile": "api_exposed"
}
},
{
"step_id": "fetch_rag_rows",
"title": "Получение строк из RAG",
"input": {},
"output": {
"retrieved_row_count": 3
}
},
{
"step_id": "build_api_exposed_evidence",
"title": "Сборка списка API",
"input": {},
"output": {
"endpoint_count": 2
}
},
{
"step_id": "finalize_api_exposed_answer",
"title": "Формирование ответа со списком API",
"input": {},
"output": {
"answer_length": 77
}
}
]
}
```
## workflow.v2.api_exposed
```json
{
"event": "workflow_completed",
"workflow_id": "v2.docs_explain.api_exposed"
}
```
## process.v2.pipeline
```json
{
"event": "answer_generated",
"answer_mode": "deterministic",
"answer_length": 77
}
```
## result
```json
{
"status": "done",
"answer": "GET /api/v1/clients/contacts-dgr\nGET /api/v1/clients/contacts-dgr/{contactid}",
"completed_at": "2026-04-10T11:23:16.382407+00:00"
}
```
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -1,16 +1,16 @@
# Runtime Trace: 20260410-121449-0ddfbe598bd9
# Runtime Trace: 20260410-130611-31bb5d20c67b
- active_rag_session_id: 87655eaf-302b-409d-946c-0ddfbe598bd9
- active_rag_session_id: 0ae059fe-076a-4aa4-abd4-31bb5d20c67b
## request
```json
{
"request_id": "req_299f353019a2465e84c88909c8903a31",
"session_id": "as_31564e5fcf6e4048b5cb0496f53b8fee",
"active_rag_session_id": "87655eaf-302b-409d-946c-0ddfbe598bd9",
"request_id": "req_a14d483fd13b44fa98eb81dd6dd3ccdc",
"session_id": "as_90d274870b1247d19694bbef1afa389a",
"active_rag_session_id": "0ae059fe-076a-4aa4-abd4-31bb5d20c67b",
"process_version": "v2",
"created_at": "2026-04-10T12:14:49.260081+00:00",
"message": "Какие методы апи есть в проекте?"
"created_at": "2026-04-10T13:06:11.385561+00:00",
"message": "Какие методы апи есть в проекте"
}
```
@@ -21,7 +21,7 @@
"routing_domain": "DOCS",
"intent": "DOC_EXPLAIN",
"subintent": "API_EXPOSED",
"normalized_query": "Какие методы апи есть в проекте?",
"normalized_query": "Какие методы апи есть в проекте",
"target_terms": [],
"anchors": {
"entity_names": [],
@@ -41,8 +41,8 @@
"confidence": 0.8500000000000001,
"routing_mode": "llm_default",
"llm_router_used": true,
"reason_short": "Запрос явно касается списка доступных API-методов.",
"rag_session_id": "87655eaf-302b-409d-946c-0ddfbe598bd9"
"reason_short": "Запрос явно касается перечисления доступных API-методов.",
"rag_session_id": "0ae059fe-076a-4aa4-abd4-31bb5d20c67b"
}
```
@@ -322,6 +322,6 @@
{
"status": "done",
"answer": "GET /api/v1/clients/contacts-dgr\nGET /api/v1/clients/contacts-dgr/{contactid}\nPOST /api/v1/clients/contacts-dgr",
"completed_at": "2026-04-10T12:14:51.286117+00:00"
"completed_at": "2026-04-10T13:06:13.326341+00:00"
}
```
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long