fix(tui): apply default guild scope

This commit is contained in:
Vincent Koc 2026-05-02 16:47:18 -07:00
parent ada11c7313
commit 2e20cb9f11
No known key found for this signature in database
2 changed files with 27 additions and 1 deletions

View File

@ -76,6 +76,21 @@ func TestStatusSearchSQLAndListings(t *testing.T) {
NormalizedContent: "panic locked database",
RawJSON: `{}`,
}))
require.NoError(t, s.UpsertGuild(ctx, store.GuildRecord{ID: "g2", Name: "Other Guild", RawJSON: `{}`}))
require.NoError(t, s.UpsertChannel(ctx, store.ChannelRecord{ID: "c2", GuildID: "g2", Kind: "text", Name: "random", RawJSON: `{}`}))
require.NoError(t, s.UpsertMessage(ctx, store.MessageRecord{
ID: "m-other",
GuildID: "g2",
ChannelID: "c2",
ChannelName: "random",
AuthorID: "u2",
AuthorName: "Outside",
MessageType: 0,
CreatedAt: time.Now().UTC().Add(-time.Hour).Format(time.RFC3339Nano),
Content: "outside default guild",
NormalizedContent: "outside default guild",
RawJSON: `{}`,
}))
require.NoError(t, s.UpsertMessage(ctx, store.MessageRecord{
ID: "m2",
GuildID: "g1",

View File

@ -43,7 +43,7 @@ func (r *runtime) runTUI(args []string) error {
if *limit <= 0 {
return usageErr(errors.New("tui --limit must be positive"))
}
guildIDs, err := directMessageGuildScope(*dm, *guildFlag, *guildsFlag)
guildIDs, err := r.resolveTUIGuilds(*dm, *guildFlag, *guildsFlag)
if err != nil {
return usageErr(err)
}
@ -82,6 +82,17 @@ func (r *runtime) runTUI(args []string) error {
})
}
func (r *runtime) resolveTUIGuilds(dm bool, guild, guilds string) ([]string, error) {
guildIDs, err := directMessageGuildScope(dm, guild, guilds)
if err != nil || dm || len(guildIDs) > 0 {
return guildIDs, err
}
if defaultGuild := r.cfg.EffectiveDefaultGuildID(); defaultGuild != "" {
return []string{defaultGuild}, nil
}
return nil, nil
}
func (r *runtime) archiveSourceKind() string {
if strings.TrimSpace(r.cfg.Share.Remote) != "" {
return tui.SourceRemote