Back to Memos

Execution

docs/plans/2026-04-06-memo-mentions/execution.md

0.28.02.8 KB
Original Source

Execution Log

T1: Add backend mention parsing and payload extraction

Status: Completed Files Changed: internal/markdown/ast/mention.go, internal/markdown/parser/mention.go, internal/markdown/extensions/mention.go, internal/markdown/markdown.go, internal/markdown/renderer/markdown_renderer.go, server/runner/memopayload/runner.go, server/router/api/v1/memo_service.go, server/router/api/v1/v1.go, server/router/api/v1/test/test_helper.go, internal/markdown/markdown_test.go Validation: go test ./internal/markdown — PASS Path Corrections: RebuildMemoPayload needed context + store so mention resolution could happen during payload rebuild. Deviations: None

T2: Add mention notifications and user search APIs

Status: Completed Files Changed: proto/store/memo.proto, proto/store/inbox.proto, proto/api/v1/user_service.proto, server/router/api/v1/user_service.go, server/router/api/v1/connect_services.go, server/router/api/v1/acl_config.go, server/router/api/v1/acl_config_test.go, server/router/api/v1/memo_mention_helpers.go, store/user.go, store/db/sqlite/user.go, store/db/postgres/user.go, store/db/mysql/user.go, server/router/api/v1/test/user_notification_test.go, server/router/api/v1/test/user_search_test.go Validation: go test ./server/router/api/v1/... — PASS Path Corrections: Unknown legacy inbox message types are filtered server-side to keep unread counts aligned with rendered cards. Deviations: None

T3: Add frontend mention autocomplete, rendering, and inbox UI

Status: Completed Files Changed: web/src/components/MemoEditor/Editor/MentionSuggestions.tsx, web/src/components/MemoEditor/Editor/index.tsx, web/src/components/MemoEditor/Editor/useSuggestions.ts, web/src/hooks/useUserQueries.ts, web/src/utils/remark-plugins/remark-mention.ts, web/src/components/MemoContent/MentionContext.tsx, web/src/components/MemoContent/Mention.tsx, web/src/components/MemoContent/index.tsx, web/src/components/MemoContent/ConditionalComponent.tsx, web/src/types/markdown.ts, web/src/components/Inbox/MemoMentionMessage.tsx, web/src/pages/Inboxes.tsx Validation: pnpm lint && pnpm build — PASS Path Corrections: Editor autocomplete reused the existing generic suggestion hook by exposing the live query rather than duplicating keyboard navigation logic. Deviations: None

T4: Regenerate code and validate the feature

Status: Completed Files Changed: proto/gen/**, web/src/types/proto/** Validation: buf generate — PASS; go test ./internal/markdown ./server/router/api/v1/... — PASS; pnpm lint — PASS; pnpm build — PASS Path Corrections: None Deviations: None

Completion Declaration

All tasks completed successfully