feat(chatcoop): транскрипция — снять лимит memo 4000, скилл blago transcription memo #23
Reference in New Issue
Block a user
Delete Branch "feat/chatcoop-transcription-memo"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
memoтранскрипции звонка: на бэкенде убран@MaxLength(4000)сUpdateCallTranscriptionMemoInputDTO.memo, на фронте —maxlength/counterсq-inputвTranscriptionMemoEditor.chatcoopUpdateTranscriptionMemoдоchairman | member(рольuserснята). Read-методы транскрипций — без изменений.blago-cli— новая командаblago transcription memo <pathOrId> [--file <path>] [--text <inline>], которая публикует memo на сервер через ту же мутацию.<pathOrId>— это либо путь кmeetings/<stem>.md(UUID транскрипции резолвится из.blago/index.jsonпо записиentity_type=call_transcription), либо UUID напрямую. По умолчанию текст берётся из sibling-файлаmeetings/<stem>.memo.md(тоже pull-only, вblago pushне уходит).ai/commands/manage-transcription-memo.md(распространяется черезblago init --claude) описывает workflow «прочитать meeting → собрать.memo.md→ согласовать с пользователем → опубликовать черезblago transcription memo».Затронутые файлы
components/controller/src/extensions/chatcoop/application/dto/transcription.dto.tscomponents/controller/src/extensions/chatcoop/application/resolvers/transcription.resolver.tscomponents/desktop/extensions/chatcoop/features/Transcription/EditMemo/ui/TranscriptionMemoEditor.vuecomponents/blago-cli/src/cmd/run-cli.tscomponents/blago-cli/src/sync/update-transcription-memo.ts(новый)components/blago-cli/ai/commands/manage-transcription-memo.md(новый)Не нужно
@MaxLengthи@AuthRolesruntime-декораторы, вschema.gqlне влияют.Mutations.ChatCoop.UpdateTranscriptionMemoв SDK уже есть.Test plan
blago transcription memo --helpпоказывает корректную справкуblago transcription memo <meetings/...md>без флагов берёт sibling.memo.mdи публикует memo (sanity-check после login)blago transcription memo <UUID> --text "тест"обновляет memo по UUID напрямуюchatcoopUpdateTranscriptionMemoдля роли userКурсор transcriptionLastEndedExclusiveByProject фильтровал ВСЕ артефакты транскрипции — поэтому для уже скачанных meeting.md sibling-файлы .memo.md не появлялись. Разделил циклы: 1. meeting.md — только endedAt > lowerBoundExclusive (тяжёлый GetTranscription с сегментами). 2. .memo.md — для всех COMPLETED транскрипций каждый pull (поле memo приходит уже в лёгком GetTranscriptions, повторных запросов не делаем). Проверено: blago pull → 4/4 sibling .memo.md появились пустыми в проекте 33-platforma-otchetov-dlya-fnsfss; затем blago transcription memo опубликовал 476 символов в крайней транскрипции 7116fb31-3b8c-4a63-9c0c-11da26aba075, повторный pull сохранил содержимое без конфликта.