{
  "id": "military_model--military_model",
  "kind": "explainer",
  "title": "military_model",
  "jurisdiction": "UA",
  "language": "uk",
  "version": "0.8.0",
  "publication": "draft",
  "evidence": "unverified",
  "implementation": "not-assessed",
  "effective": {
    "from": null,
    "to": null,
    "checkedAt": null
  },
  "citations": [],
  "rights": {
    "status": "unknown",
    "note": "Original editorial reference material with source links; third-party artifact redistribution is not authorized by this release."
  },
  "content": {
    "legacyKind": "military_model",
    "reviewedAt": "2026-09-17",
    "scope": "Редакційна модель військового обліку роботодавця; нормативні строки й форми потребують звірки",
    "ruleValidation": "pending",
    "conceptIds": [
      "conscript",
      "military-liable",
      "reservist",
      "military-records",
      "military-category",
      "military-document",
      "military-specialty",
      "military-rank",
      "military-authority",
      "military-booking",
      "military-deferment",
      "military-service",
      "service-release",
      "service-return",
      "military-record-list",
      "military-notification",
      "military-reconciliation"
    ],
    "datasetIds": [
      "military-forms",
      "military-specialties",
      "military-categories-ranks",
      "military-document-access",
      "military-booking-service"
    ],
    "fields": [
      {
        "id": "person",
        "name": "Особа й трудові відносини",
        "fields": [
          "personId",
          "employmentId",
          "employerId"
        ],
        "source": "Власний кадровий облік",
        "rule": "Сталі внутрішні ID; нове працевлаштування не створює нову фізичну особу.",
        "conceptIds": [
          "employee",
          "employment"
        ]
      },
      {
        "id": "registration",
        "name": "Облікові відомості",
        "fields": [
          "category",
          "registrationState",
          "authority",
          "specialtyCode",
          "rank"
        ],
        "source": "Перевірений документ і застосовний довідник",
        "rule": "Категорія, стан обліку, звання та ВОС є окремими полями. Знятий і виключений з обліку не об’єднуються.",
        "conceptIds": [
          "military-category",
          "military-authority",
          "military-specialty",
          "military-rank"
        ]
      },
      {
        "id": "document",
        "name": "Документ і перевірка",
        "fields": [
          "documentRef",
          "documentType",
          "issuedAt",
          "checkedAt",
          "checkedBy",
          "verificationResult"
        ],
        "source": "Документ та результат належної перевірки",
        "rule": "Дата формування документа й дата перевірки різні. У загальній картці достатньо посилання на захищене сховище.",
        "conceptIds": [
          "military-document"
        ]
      },
      {
        "id": "deferment",
        "name": "Бронювання й відстрочка",
        "fields": [
          "basis",
          "applicationState",
          "decisionRef",
          "validFrom",
          "validTo",
          "revokedAt"
        ],
        "source": "Підтверджений результат відповідної процедури",
        "rule": "Заява, позитивний результат, завершення строку та скасування мають окремі стани.",
        "conceptIds": [
          "military-booking",
          "military-deferment"
        ]
      },
      {
        "id": "service",
        "name": "Служба й кадрові події",
        "fields": [
          "serviceEventId",
          "serviceFrom",
          "serviceTo",
          "releaseOrderRef",
          "returnDate"
        ],
        "source": "Підтвердження служби й кадрові документи",
        "rule": "Обліковий статус не запускає виплату без окремого правила й підстави.",
        "conceptIds": [
          "military-service",
          "service-release",
          "service-return"
        ]
      },
      {
        "id": "actions",
        "name": "Дії та історія",
        "fields": [
          "effectiveFrom",
          "recordedAt",
          "sourceRef",
          "version",
          "owner",
          "dueRule",
          "sentAt",
          "receiptRef"
        ],
        "source": "Журнал змін і виконання",
        "rule": "Виправлення зберігає попередню версію. Строк має підтверджене правило, адресата й дату події.",
        "conceptIds": [
          "military-notification",
          "military-reconciliation",
          "correction"
        ]
      }
    ],
    "scenarios": [
      {
        "id": "military-hiring",
        "name": "Прийняття працівника",
        "trigger": "Створюємо новий епізод трудових відносин.",
        "known": [
          "Роботодавець і дата прийняття",
          "Ідентифікатор особи та умови праці"
        ],
        "missing": [
          "Застосовність військового обліку",
          "Належний документ і результат перевірки",
          "Потрібні дії та строки за чинною редакцією"
        ],
        "sourceIds": [
          "military-order",
          "military-document-order"
        ],
        "payroll": "Передати в розрахунок підтверджені умови праці та дату початку. ВОС або звання самі по собі не є правилом цивільної оплати.",
        "steps": [
          {
            "name": "Перевірити підстави",
            "action": "Визначити застосовність вимог і належність наданого документа особі.",
            "output": "Результат перевірки з датою та джерелом.",
            "check": "Невідомі відомості залишені невідомими; категорію не вгадано.",
            "conceptIds": [
              "employee",
              "military-document",
              "military-category"
            ]
          },
          {
            "name": "Зберегти відомості",
            "action": "Внести підтверджені значення та зв’язати їх із трудовими відносинами.",
            "output": "Версія внутрішнього запису та відповідність потрібній формі.",
            "check": "Код ВОС не замінено кодом цивільної професії.",
            "conceptIds": [
              "employment",
              "military-specialty",
              "military-record-list"
            ]
          },
          {
            "name": "Визначити й виконати дії",
            "action": "За чинною процедурою визначити ознайомлення, повідомлення та строки; зберегти підтвердження виконання.",
            "output": "Документи й журнал дій.",
            "check": "Строк має джерело; створення документа не прирівняне до відправлення.",
            "conceptIds": [
              "military-notification",
              "receipt"
            ]
          }
        ]
      },
      {
        "id": "military-change",
        "name": "Зміна відомостей і звіряння",
        "trigger": "Надійшов новий документ або виявлено розбіжність.",
        "known": [
          "Попередня версія запису",
          "Дата отримання нових відомостей"
        ],
        "missing": [
          "Дата, з якої діє зміна",
          "Належне підтвердження",
          "Потреба виправити попередні документи"
        ],
        "sourceIds": [
          "military-order",
          "reserve-plus"
        ],
        "payroll": "Перевірити, чи змінюється кадрова подія або її дата. Зміна лише облікових реквізитів не повинна автоматично перераховувати зарплату.",
        "steps": [
          {
            "name": "Порівняти джерела",
            "action": "Зіставити старі та нові значення; відокремити дату події від дати отримання.",
            "output": "Перелік розбіжностей і документів.",
            "check": "Старі значення збережено в історії.",
            "conceptIds": [
              "military-reconciliation",
              "military-document"
            ]
          },
          {
            "name": "Підтвердити зміну",
            "action": "Відповідальна особа перевіряє підставу та формує нову версію.",
            "output": "Підтверджена версія або невирішений конфлікт.",
            "check": "Невирішений конфлікт не позначено актуальним записом.",
            "conceptIds": [
              "military-record-list",
              "correction"
            ]
          },
          {
            "name": "Оновити залежні документи",
            "action": "Визначити потрібні повідомлення, строки та вплив на кадрові записи.",
            "output": "Повідомлення і зв’язки з виправленими документами.",
            "check": "Підтвердження передачі збережене окремо.",
            "conceptIds": [
              "military-notification",
              "employment",
              "receipt"
            ]
          }
        ]
      },
      {
        "id": "military-service-start",
        "name": "Початок служби посеред місяця",
        "trigger": "Отримано підтвердження початку військової служби.",
        "known": [
          "Період роботи до події",
          "Документ, отриманий роботодавцем"
        ],
        "missing": [
          "Належна дата початку та вид служби",
          "Застосовні трудові гарантії",
          "Окрема підстава для кожного виду виплати"
        ],
        "sourceIds": [
          "military-duty",
          "service-labor-guarantees",
          "labor-code"
        ],
        "payroll": "Розділити місяць на підтверджені періоди. Перевірити оплату фактично виконаної роботи, підстави інших виплат, податки та звітні показники. Не виводити виплату з одного статусу «служить».",
        "steps": [
          {
            "name": "Перевірити подію",
            "action": "Звірити підтвердження та дату початку служби; зафіксувати дату отримання документа.",
            "output": "Подія служби з підставою.",
            "check": "Виклик або запис про облік не прирівняно до початку служби.",
            "conceptIds": [
              "military-service",
              "military-document"
            ]
          },
          {
            "name": "Оформити кадрову зміну",
            "action": "Визначити гарантії й оформити увільнення належним наказом.",
            "output": "Наказ і період відсутності.",
            "check": "Трудові відносини не припинено автоматично.",
            "conceptIds": [
              "service-release",
              "order",
              "employment"
            ]
          },
          {
            "name": "Перевірити розрахунок",
            "action": "Узгодити табель, періоди й підстави виплат; якщо документ запізнився, відкрити окремий випадок виправлення.",
            "output": "Пояснений розрахунок та перелік коригувань.",
            "check": "Невизначені виплати або дати залишені винятками для перевірки.",
            "conceptIds": [
              "timesheet",
              "accrual",
              "correction"
            ]
          }
        ]
      },
      {
        "id": "military-service-return",
        "name": "Повернення до роботи",
        "trigger": "Працівник надає підтвердження завершення служби.",
        "known": [
          "Попередня кадрова подія та період служби",
          "Надані документи"
        ],
        "missing": [
          "Дата завершення служби",
          "Підстава й дата виходу на роботу",
          "Чинні умови, графік і можливі інші відсутності"
        ],
        "sourceIds": [
          "service-labor-guarantees",
          "labor-code",
          "military-order"
        ],
        "payroll": "Відновити нарахування за належними умовами й фактичним часом. Перевірити проміжок між завершенням служби та виходом, не заповнювати його довільними робочими днями.",
        "steps": [
          {
            "name": "Розмежувати дати",
            "action": "Зафіксувати завершення служби, отримання документа й фактичний вихід окремо.",
            "output": "Підтверджена послідовність подій.",
            "check": "Немає необґрунтованого автоматичного виходу наступного дня.",
            "conceptIds": [
              "military-service",
              "service-return"
            ]
          },
          {
            "name": "Оформити повернення",
            "action": "Узгодити кадровий документ, графік та застосовні умови праці.",
            "output": "Версія умов і наказ.",
            "check": "Старий оклад не використано без перевірки змін.",
            "conceptIds": [
              "order",
              "employment",
              "schedule",
              "salary"
            ]
          },
          {
            "name": "Звірити місяць",
            "action": "Підтвердити час, розрахунок і необхідні зміни облікових відомостей.",
            "output": "Узгоджені кадрові дані, табель і розрахунок.",
            "check": "Усі календарні проміжки мають підтверджене пояснення.",
            "conceptIds": [
              "timesheet",
              "accrual",
              "military-reconciliation"
            ]
          }
        ]
      }
    ]
  },
  "relationships": [],
  "history": [],
  "provenance": {
    "project": "oblik-map",
    "endpoint": "/api/export",
    "originalId": null,
    "sourceHash": "50d809863dd7b1949d0c5fb35fc49d8c384fe18014826a675321fc73bdafb0bc",
    "edition": {
      "version": "0.8.0",
      "updated": "2026-09-17",
      "jurisdiction": "UA",
      "language": "uk",
      "origin": "Codex",
      "review": "Редакційна версія. Фахову перевірку правил ще не завершено."
    }
  },
  "uncertainty": "AI-assisted editorial snapshot. Human review is not recorded; source links and legacy reviewedAt do not certify current law or applicability."
}
