memos/docs/issues/2026-03-24-user-resource-id.../execution.md

2.8 KiB

Execution Log

T1: Add username-only user resource helpers

Status: Completed Files Changed:

  • server/router/api/v1/user_resource_name.go
  • server/router/api/v1/resource_name.go
  • server/router/api/v1/user_service.go
  • server/router/api/v1/test/user_resource_name_test.go Validation: go test -v ./server/router/api/v1/test -run 'TestUserResourceName' — PASS Path Corrections: Tightened username-token validation so numeric-only users/1 fails at the resource-name layer instead of falling through to NotFound. Deviations: None

T2: Migrate user-scoped API handlers

Status: Completed Files Changed:

  • server/router/api/v1/user_service.go
  • server/router/api/v1/shortcut_service.go
  • server/router/api/v1/user_service_stats.go
  • server/router/api/v1/test/shortcut_service_test.go
  • server/router/api/v1/test/user_service_stats_test.go
  • server/router/api/v1/test/user_notification_test.go
  • server/router/api/v1/test/user_service_registration_test.go Validation: go test -v ./server/router/api/v1/test -run 'Test(ListShortcuts|GetShortcut|CreateShortcut|UpdateShortcut|DeleteShortcut|ShortcutFiltering|ShortcutCRUDComplete|GetUserStats_TagCount|ListUserNotifications|UserRegistration)' — PASS Path Corrections: Updated test fixtures to use valid username-form resource names (users/testuser, users/test-user) and corrected one stale registration-name expectation during the later broader suite rerun. Deviations: None

T3: Migrate memo, reaction, MCP, and avatar user references

Status: Completed Files Changed:

  • server/router/api/v1/memo_service_converter.go
  • server/router/api/v1/memo_service.go
  • server/router/api/v1/reaction_service.go
  • server/router/mcp/tools_memo.go
  • server/router/mcp/tools_attachment.go
  • server/router/mcp/tools_reaction.go
  • server/router/fileserver/fileserver.go
  • server/router/api/v1/test/memo_service_test.go
  • server/router/api/v1/test/reaction_service_test.go Validation: go test ./server/router/api/v1/... ./server/router/mcp/... ./server/router/fileserver/... — PASS Path Corrections: Removed an unused fileserver import after the first package build failed; kept MCP tool helper signatures stable for undeclared callers and switched tool call sites to username-aware wrappers. Deviations: None

T4: Update contract docs and regression tests

Status: Completed Files Changed:

  • proto/api/v1/user_service.proto
  • proto/api/v1/shortcut_service.proto
  • web/src/layouts/MainLayout.tsx
  • web/src/components/MemoExplorer/ShortcutsSection.tsx
  • server/router/fileserver/README.md Validation: go test -v ./server/router/api/v1/test/... — PASS Path Corrections: None Deviations: None

Completion Declaration

All tasks completed successfully