Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 8 additions & 8 deletions internal/api/handler_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -733,8 +733,8 @@ func TestHandleManagerOmitsRuntimeOptionSchemas(t *testing.T) {
func TestHandleFeishuRoomsMembers(t *testing.T) {
feishuSvc := feishu.NewServiceWithCreateChatAndAddMembers(
map[string]feishu.AppConfig{
"manager": {AppID: "manager-app-id", AppSecret: "app-secret", AdminOpenID: "ou_admin"},
"fsu-alice": {AppID: "alice-app-id", AppSecret: "alice-secret"},
"agent-manager": {AppID: "manager-app-id", AppSecret: "app-secret", AdminOpenID: "ou_admin"},
"fsu-alice": {AppID: "alice-app-id", AppSecret: "alice-secret"},
},
func(_ context.Context, _ feishu.AppConfig, req feishu.CreateChatRequest) (feishu.CreateChatResponse, error) {
return feishu.CreateChatResponse{
Expand Down Expand Up @@ -793,7 +793,7 @@ func TestHandleFeishuRoomsMembers(t *testing.T) {
if len(members) != 2 {
t.Fatalf("members = %+v, want two users", members)
}
if members[0].ID != "manager" || members[1].ID != "fsu-alice" {
if members[0].ID != "agent-manager" || members[1].ID != "fsu-alice" {
t.Fatalf("members = %+v, want bot ids", members)
}
}
Expand Down Expand Up @@ -6131,7 +6131,7 @@ func TestHandleMessagesPostPrefixesMentionID(t *testing.T) {

func TestHandleFeishuMessagesPostSendsMessage(t *testing.T) {
feishuSvc := feishu.NewServiceWithSendMessage(
map[string]feishu.AppConfig{"manager": {AppID: "cli_manager", AppSecret: "manager-secret"}},
map[string]feishu.AppConfig{"agent-manager": {AppID: "cli_manager", AppSecret: "manager-secret"}},
func(_ context.Context, _ feishu.AppConfig, req feishu.SendMessageRequest) (feishu.SendMessageResponse, error) {
if req.ChatID != "oc_alpha" || req.Content != "hello" {
t.Fatalf("send request = %+v, want chat/content", req)
Expand Down Expand Up @@ -6161,7 +6161,7 @@ func TestHandleFeishuMessagesPostSendsMessage(t *testing.T) {
func TestHandleFeishuMessagesPostKeepsCanonicalSlashCommandAsPlainMessage(t *testing.T) {
wantContent := `<slash-command arg="skill-creator" name="use-skill"/> create & review`
feishuSvc := feishu.NewServiceWithSendMessage(
map[string]feishu.AppConfig{"manager": {AppID: "cli_manager", AppSecret: "manager-secret"}},
map[string]feishu.AppConfig{"agent-manager": {AppID: "cli_manager", AppSecret: "manager-secret"}},
func(_ context.Context, _ feishu.AppConfig, req feishu.SendMessageRequest) (feishu.SendMessageResponse, error) {
if req.ChatID != "oc_alpha" || req.Content != wantContent {
t.Fatalf("send request = %+v, want chat/content %q", req, wantContent)
Expand Down Expand Up @@ -6191,7 +6191,7 @@ func TestHandleFeishuMessagesPostKeepsCanonicalSlashCommandAsPlainMessage(t *tes
func TestHandleFeishuMessagesPostKeepsSlashShorthandAsPlainMessage(t *testing.T) {
wantContent := `/skill-creator create & review`
feishuSvc := feishu.NewServiceWithSendMessage(
map[string]feishu.AppConfig{"manager": {AppID: "cli_manager", AppSecret: "manager-secret"}},
map[string]feishu.AppConfig{"agent-manager": {AppID: "cli_manager", AppSecret: "manager-secret"}},
func(_ context.Context, _ feishu.AppConfig, req feishu.SendMessageRequest) (feishu.SendMessageResponse, error) {
if req.ChatID != "oc_alpha" || req.Content != wantContent {
t.Fatalf("send request = %+v, want chat/content %q", req, wantContent)
Expand Down Expand Up @@ -6220,7 +6220,7 @@ func TestHandleFeishuMessagesPostKeepsSlashShorthandAsPlainMessage(t *testing.T)

func TestHandleFeishuMessagesGetListsRoomMessages(t *testing.T) {
feishuSvc := feishu.NewServiceWithCreateChatAndListRoomMessages(
map[string]feishu.AppConfig{"manager": {AppID: "cli_manager", AppSecret: "manager-secret", AdminOpenID: "ou_admin"}},
map[string]feishu.AppConfig{"agent-manager": {AppID: "cli_manager", AppSecret: "manager-secret", AdminOpenID: "ou_admin"}},
func(_ context.Context, _ feishu.AppConfig, req feishu.CreateChatRequest) (feishu.CreateChatResponse, error) {
return feishu.CreateChatResponse{ChatID: "oc_alpha", Name: req.Title}, nil
},
Expand Down Expand Up @@ -6677,7 +6677,7 @@ func TestHandleFeishuRoomsDeleteRemovesRoom(t *testing.T) {
deleted := make([]string, 0, 1)
srv := &Handler{
feishu: feishu.NewServiceWithDeleteChat(
map[string]feishu.AppConfig{"manager": {AppID: "cli_manager", AppSecret: "manager-secret", AdminOpenID: "ou_admin"}},
map[string]feishu.AppConfig{"agent-manager": {AppID: "cli_manager", AppSecret: "manager-secret", AdminOpenID: "ou_admin"}},
func(_ context.Context, _ feishu.AppConfig, roomID string) error {
deleted = append(deleted, roomID)
return nil
Expand Down
10 changes: 3 additions & 7 deletions internal/channel/feishu/service.go
Original file line number Diff line number Diff line change
Expand Up @@ -27,10 +27,6 @@ const (
// "pt-manager"), so resolve its app through the canonical Agent ID instead
// of assuming a participant named "manager".
feishuManagerAgentID = "agent-manager"

// feishuManagerBotID is retained for services constructed with an in-memory
// app map, whose historical Manager key is "manager".
feishuManagerBotID = "manager"
)

type CreateUserRequest struct {
Expand Down Expand Up @@ -1957,11 +1953,11 @@ func (s *Service) managerAppConfigLocked() (AppConfig, error) {
return validateAppConfig(app, participantID)
}
}
app, ok := s.appConfigByIDLocked(feishuManagerBotID)
app, ok := s.appConfigByIDLocked(feishuManagerAgentID)
if !ok {
return AppConfig{}, fmt.Errorf("feishu app is not configured for %q", feishuManagerBotID)
return AppConfig{}, fmt.Errorf("feishu app is not configured for %q", feishuManagerAgentID)
}
return validateAppConfig(app, feishuManagerBotID)
return validateAppConfig(app, feishuManagerAgentID)
}

func (s *Service) appConfigByIDLocked(participantID string) (AppConfig, bool) {
Expand Down
Loading
Loading