Depends on: Issue 1, Issue 2
Implement the discord Provider:
list(scope) — query discord/channel (or thread listing) scoped by
scope.discordChannelId, match thread names prefixed with {KEY}, map
to WorkItem[]
comments(item) — query discord/message + discord/message-bot +
discord/bot-message select(.channel_id == item.externalId) (see §5)
Acceptance criteria
Depends on: Issue 1, Issue 2
Implement the
discordProvider:list(scope)— querydiscord/channel(or thread listing) scoped byscope.discordChannelId, match thread names prefixed with{KEY}, mapto
WorkItem[]comments(item)— querydiscord/message+discord/message-bot+discord/bot-messageselect(.channel_id == item.externalId)(see §5)Acceptance criteria
list()finds real project threads for the pilot project's Discordchannel and extracts the correct key
comments()returns the full message history for one real thread,scoped server-side (never pulling the whole
discord/messagecollection client-side — see §7's store-load risk)