name: stage-catalog
description: |
  Каталог CRUD на test.admin.food-market.kz: товары, группы (включая
  дочерние), контрагенты. Дубликаты. FK-защита. Multi-tenant
  изоляция через 2 параллельные org (создаём вторую через signup,
  обе видят только свои сущности).

preconditions:
  reset_db: false
  smoke_login_super_admin: false

steps:
  - id: cat01_setup_two_orgs
    title: Создаём 2 свежие org через signup → 2 admin токена для multi-tenant проверок
  - id: cat02_product_group_crud
    title: Группы — создать корневую и дочернюю, обновить, удалить пустую, отказ на удалении с подгруппами
  - id: cat03_product_crud
    title: Товар — создать, обновить, прочитать, удалить; дубликат штрихкода → 400; дубликат артикула → 400
  - id: cat04_counterparty_crud
    title: Контрагент — создать (юрлицо + физлицо), валидация телефона, FK-защита при удалении использованного
  - id: cat05_multi_tenant_isolation
    title: Org A не видит товары/группы/контрагентов Org B и наоборот; GET by id чужой сущности → 404
  - id: cat06_fk_protection_groups
    title: Удаление группы с товаром → 400, удаление системной «Все товары» → 400
