tests-fix
Some checks failed
Deploy on push / deploy (push) Failing after 2m41s

This commit is contained in:
2025-08-24 22:14:47 +03:00
parent b1370d1eeb
commit de94408e04
6 changed files with 324 additions and 133 deletions

View File

@@ -683,24 +683,27 @@ async def unpublish_shout(_: None, info: GraphQLResolveInfo, shout_id: int) -> C
is_creator = shout.created_by == author_id
is_author = any(author.id == author_id for author in shout.authors)
is_editor = "editor" in roles
logger.info(f"Unpublish check for user {author_id}: is_creator={is_creator}, is_author={is_author}, is_editor={is_editor}, roles={roles}")
logger.info(
f"Unpublish check for user {author_id}: is_creator={is_creator}, is_author={is_author}, is_editor={is_editor}, roles={roles}"
)
can_edit = is_creator or is_author or is_editor
if can_edit:
shout.published_at = None # type: ignore[assignment]
shout.updated_at = int(time.time()) # type: ignore[assignment]
session.add(shout)
# 🔍 Обновляем связанный черновик - убираем ссылку на публикацию
from orm.draft import Draft
related_draft = session.query(Draft).where(Draft.shout == shout_id).first()
if related_draft:
related_draft.shout = None
session.add(related_draft)
logger.info(f"Updated related draft {related_draft.id} - removed shout reference")
session.commit()
# Инвалидация кэша