chore(launcher): persist local control plane state

This commit is contained in:
DCCONSTRUCTIONS 2026-05-10 19:57:55 +03:00
parent fd1cc0b25a
commit 8be33c53da
1 changed files with 292 additions and 14 deletions

View File

@ -64,7 +64,7 @@
"avatarUrl": "/storage/uploads/1777901476392-03f10a36-2022-10-13-20-52-47-0287-2037248814-scale20.00-k_euler_a-0287.jpg",
"globalStatus": "active",
"createdAt": "2026-05-04T00:00:00.000Z",
"updatedAt": "2026-05-07T11:04:47.398Z"
"updatedAt": "2026-05-10T13:30:31.884Z"
},
{
"id": "user_constr_dc_yahoo_com",
@ -169,6 +169,19 @@
"globalStatus": "active",
"createdAt": "2026-05-09T19:37:43.521Z",
"updatedAt": "2026-05-09T19:37:43.533Z"
},
{
"id": "user_alla_mail_ru",
"authentikUserId": "216bb9c1-112e-4c5b-bcc3-a6a516955759",
"email": "alla@mail.ru",
"name": "Абрамова Алла В",
"phone": "+79856118477",
"position": null,
"notes": "Public access request: СВК",
"avatarUrl": null,
"globalStatus": "active",
"createdAt": "2026-05-10T14:10:54.544Z",
"updatedAt": "2026-05-10T14:10:55.837Z"
}
],
"memberships": [
@ -269,6 +282,19 @@
"sourceTaskerInviteRequestId": "tasker_invite_request_ayoyoyo_pupa_mail_ru",
"createdAt": "2026-05-09T19:37:43.521Z",
"updatedAt": "2026-05-09T19:37:43.521Z"
},
{
"id": "mem_client_public_pool_user_alla_mail_ru",
"clientId": "client_public_pool",
"userId": "user_alla_mail_ru",
"role": "member",
"status": "disabled",
"invitedByUserId": null,
"inviteId": null,
"source": "access_request",
"sourceTaskerInviteRequestId": null,
"createdAt": "2026-05-10T14:10:54.544Z",
"updatedAt": "2026-05-10T14:10:54.544Z"
}
],
"groups": [
@ -456,16 +482,6 @@
"createdAt": "2026-05-04T13:33:42.062Z",
"updatedAt": "2026-05-04T13:33:42.062Z"
},
{
"id": "grant_task_manager_user_silver_psih_yahoo_com",
"serviceId": "service_task_manager",
"targetType": "user",
"targetId": "user_silver_psih",
"appRole": "member",
"status": "active",
"createdAt": "2026-05-04T15:26:07.830Z",
"updatedAt": "2026-05-04T15:26:07.830Z"
},
{
"id": "grant_task_manager_user_constr_dc_yahoo_com",
"serviceId": "service_task_manager",
@ -545,6 +561,16 @@
"status": "active",
"createdAt": "2026-05-09T19:37:43.521Z",
"updatedAt": "2026-05-09T19:37:43.521Z"
},
{
"id": "grant_task_manager_user_silver_psih_yahoo_com",
"serviceId": "service_task_manager",
"targetType": "user",
"targetId": "user_silver_psih",
"appRole": "member",
"status": "active",
"createdAt": "2026-05-04T15:26:07.830Z",
"updatedAt": "2026-05-10T13:30:31.081Z"
}
],
"exceptions": [],
@ -692,6 +718,23 @@
"status": "accepted",
"createdAt": "2026-05-09T19:36:41.118Z",
"updatedAt": "2026-05-09T19:37:43.521Z"
},
{
"id": "invite_realla_mail_ru",
"clientId": "client_public_pool",
"email": "realla@mail.ru",
"role": "member",
"invitedByUserId": "user_root",
"source": "access_request",
"sourceTaskerInviteRequestId": null,
"sourceTaskerInviteId": null,
"sourceWorkspaceSlug": null,
"sourceWorkspaceName": null,
"token": "02bbfc59-0bc4-4eb0-8128-46eabee23a46",
"expiresAt": "2026-05-17T13:18:41.837Z",
"status": "created",
"createdAt": "2026-05-10T13:18:41.837Z",
"updatedAt": "2026-05-10T13:18:41.837Z"
}
],
"syncStatuses": [
@ -724,9 +767,9 @@
"objectType": "user",
"target": "authentik",
"state": "synced",
"lastSyncAt": "2026-05-07T11:04:47.398Z",
"lastSyncAt": "2026-05-10T13:30:31.884Z",
"error": null,
"updatedAt": "2026-05-07T11:04:47.398Z"
"updatedAt": "2026-05-10T13:30:31.884Z"
},
{
"id": "sync_dctouch_groups_authentik",
@ -770,7 +813,7 @@
"state": "pending",
"lastSyncAt": null,
"error": null,
"updatedAt": "2026-05-04T15:26:07.830Z"
"updatedAt": "2026-05-10T13:30:31.081Z"
},
{
"id": "sync_invite_invite_constr_dc_yahoo_com",
@ -1013,6 +1056,28 @@
"lastSyncAt": "2026-05-09T19:37:43.533Z",
"error": null,
"updatedAt": "2026-05-09T19:37:43.533Z"
},
{
"id": "sync_invite_invite_realla_mail_ru",
"objectId": "invite_realla_mail_ru",
"objectName": "realla@mail.ru",
"objectType": "invite",
"target": "authentik",
"state": "pending",
"lastSyncAt": null,
"error": null,
"updatedAt": "2026-05-10T13:18:41.837Z"
},
{
"id": "sync_user_user_alla_mail_ru",
"objectId": "user_alla_mail_ru",
"objectName": "alla@mail.ru",
"objectType": "user",
"target": "authentik",
"state": "synced",
"lastSyncAt": "2026-05-10T14:10:55.837Z",
"error": null,
"updatedAt": "2026-05-10T14:10:55.837Z"
}
],
"auditEvents": [
@ -3654,6 +3719,138 @@
"clientId": null,
"result": "success",
"details": "Groups: nodedc:launcher:user, nodedc:taskmanager:user"
},
{
"id": "audit_realla_mail_ru",
"at": "2026-05-10T13:18:08.052Z",
"actorUserId": "public",
"actorName": "Сервис Консалт",
"action": "Создана публичная заявка",
"objectType": "access_request",
"objectName": "realla@mail.ru",
"clientId": null,
"result": "success",
"details": "Сервис Консалт"
},
{
"id": "audit_realla_mail_ru_2",
"at": "2026-05-10T13:18:41.837Z",
"actorUserId": "user_root",
"actorName": "DC SUDO",
"action": "Подтверждена публичная заявка",
"objectType": "access_request",
"objectName": "realla@mail.ru",
"clientId": null,
"result": "success",
"details": "Invite: invite_realla_mail_ru; target: Открытый контур; role: member"
},
{
"id": "audit_silver_psih_yahoo_com_task_manager_19",
"at": "2026-05-10T13:30:31.081Z",
"actorUserId": "user_root",
"actorName": "DC SUDO",
"action": "Обновлён доступ пользователя к сервису",
"objectType": "grant",
"objectName": "silver_psih@yahoo.com / task-manager",
"clientId": null,
"result": "success",
"details": "Value: member"
},
{
"id": "audit_silver_psih_yahoo_com_49",
"at": "2026-05-10T13:30:31.884Z",
"actorUserId": "user_root",
"actorName": "DC SUDO",
"action": "Пользователь синхронизирован в Authentik",
"objectType": "user",
"objectName": "silver_psih@yahoo.com",
"clientId": null,
"result": "success",
"details": "Groups: nodedc:launcher:user, nodedc:taskmanager:user, service-digital-twin"
},
{
"id": "audit_alla_mail_ru",
"at": "2026-05-10T14:10:54.546Z",
"actorUserId": "public",
"actorName": "СВК",
"action": "Создана публичная заявка",
"objectType": "access_request",
"objectName": "alla@mail.ru",
"clientId": null,
"result": "success",
"details": "СВК"
},
{
"id": "audit_alla_mail_ru_2",
"at": "2026-05-10T14:10:55.838Z",
"actorUserId": "user_alla_mail_ru",
"actorName": "Абрамова Алла В",
"action": "Пользователь синхронизирован в Authentik",
"objectType": "user",
"objectName": "alla@mail.ru",
"clientId": null,
"result": "success",
"details": "Groups: nodedc:launcher:user"
},
{
"id": "audit_dc_constrictions_3",
"at": "2026-05-10T14:40:32.513Z",
"actorUserId": "user_root",
"actorName": "DC SUDO",
"action": "Назначен Tasker project",
"objectType": "task-manager-project-membership",
"objectName": "DC CONSTRICTIONS",
"clientId": "client_romashka",
"result": "success",
"details": "Workspace: NODE DC; Project: NODEDC TASKMANAGER; Role: member"
},
{
"id": "audit_dc_abramov_2",
"at": "2026-05-10T14:40:50.588Z",
"actorUserId": "user_root",
"actorName": "DC SUDO",
"action": "Назначен Tasker project",
"objectType": "task-manager-project-membership",
"objectName": "DC ABRAMOV",
"clientId": "client_romashka",
"result": "success",
"details": "Workspace: NODE DC; Project: NODEDC TASKMANAGER; Role: member"
},
{
"id": "audit_dc_silver007_2",
"at": "2026-05-10T14:41:04.633Z",
"actorUserId": "user_root",
"actorName": "DC SUDO",
"action": "Назначен Tasker project",
"objectType": "task-manager-project-membership",
"objectName": "DC SILVER007",
"clientId": "client_romashka",
"result": "success",
"details": "Workspace: NODE DC; Project: NODEDC TASKMANAGER; Role: member"
},
{
"id": "audit_2_4",
"at": "2026-05-10T14:45:01.373Z",
"actorUserId": "user_root",
"actorName": "DC SUDO",
"action": "Создан клиент",
"objectType": "client",
"objectName": "Новый клиент 2",
"clientId": "client_2",
"result": "success",
"details": null
},
{
"id": "audit_2_5",
"at": "2026-05-10T14:45:10.438Z",
"actorUserId": "user_root",
"actorName": "DC SUDO",
"action": "Удалён клиент",
"objectType": "client",
"objectName": "Новый клиент 2",
"clientId": "client_2",
"result": "warning",
"details": null
}
],
"settings": {
@ -3782,6 +3979,51 @@
"planeUserId": "1cc7ae3a-1f42-41ac-8cc2-1ff0fce59554",
"planeRole": 15,
"updatedAt": "2026-05-08T11:52:50.104Z"
},
{
"id": "tasker_project_mem_client_romashka_user_support_dcconstructions_ru_nodedc_53141195_0dcb_4206_90d3_0",
"clientId": "client_romashka",
"userId": "user_support_dcconstructions_ru",
"workspaceSlug": "nodedc",
"workspaceName": "NODE DC",
"projectId": "53141195-0dcb-4206-90d3-0f1667f17cf6",
"projectIdentifier": "NODEDCTASK",
"projectName": "NODEDC TASKMANAGER",
"role": "member",
"managedBy": "launcher",
"planeUserId": "1cc7ae3a-1f42-41ac-8cc2-1ff0fce59554",
"planeRole": 15,
"updatedAt": "2026-05-10T14:40:32.512Z"
},
{
"id": "tasker_project_mem_client_romashka_user_abramov_dcconstructions_ru_nodedc_53141195_0dcb_4206_90d3_0",
"clientId": "client_romashka",
"userId": "user_abramov_dcconstructions_ru",
"workspaceSlug": "nodedc",
"workspaceName": "NODE DC",
"projectId": "53141195-0dcb-4206-90d3-0f1667f17cf6",
"projectIdentifier": "NODEDCTASK",
"projectName": "NODEDC TASKMANAGER",
"role": "member",
"managedBy": "launcher",
"planeUserId": "d28a2d28-da56-4625-a211-d9bb3d06b0d3",
"planeRole": 15,
"updatedAt": "2026-05-10T14:40:50.588Z"
},
{
"id": "tasker_project_mem_client_romashka_user_silverpsih007_gmail_com_nodedc_53141195_0dcb_4206_90d3_0f16",
"clientId": "client_romashka",
"userId": "user_silverpsih007_gmail_com",
"workspaceSlug": "nodedc",
"workspaceName": "NODE DC",
"projectId": "53141195-0dcb-4206-90d3-0f1667f17cf6",
"projectIdentifier": "NODEDCTASK",
"projectName": "NODEDC TASKMANAGER",
"role": "member",
"managedBy": "launcher",
"planeUserId": "52817493-1ff4-44f9-aae4-463ecd512d51",
"planeRole": 15,
"updatedAt": "2026-05-10T14:41:04.633Z"
}
],
"accessRequests": [
@ -3802,6 +4044,42 @@
"comment": null,
"createdAt": "2026-05-09T11:01:08.481Z",
"updatedAt": "2026-05-09T11:32:40.370Z"
},
{
"id": "access_request_realla_mail_ru",
"email": "realla@mail.ru",
"firstName": "А",
"lastName": "В",
"middleName": "А",
"phone": "+79036118477",
"company": "Сервис Консалт",
"status": "approved",
"targetClientId": "client_public_pool",
"role": "member",
"approvedInviteId": "invite_realla_mail_ru",
"reviewedByUserId": "user_root",
"reviewedAt": "2026-05-10T13:18:41.837Z",
"comment": null,
"createdAt": "2026-05-10T13:18:08.047Z",
"updatedAt": "2026-05-10T13:18:41.837Z"
},
{
"id": "access_request_alla_mail_ru",
"email": "alla@mail.ru",
"firstName": "Алла",
"lastName": "Абрамова",
"middleName": "В",
"phone": "+79856118477",
"company": "СВК",
"status": "new",
"targetClientId": "client_public_pool",
"role": "member",
"approvedInviteId": null,
"reviewedByUserId": null,
"reviewedAt": null,
"comment": null,
"createdAt": "2026-05-10T14:10:54.544Z",
"updatedAt": "2026-05-10T14:10:54.544Z"
}
],
"taskerInviteRequests": [