Add channel management feature with public/private channels, membership (owner/member roles), invitations, broadcast messaging, and full MCP tool exposure. New files: - internal/channels/ - types, store, service, validation, errors - internal/mcp/channel_tools.go - 8 MCP tools for channel operations - schema/002_channels.sql - migration for channel_invites table MCP tools: create_channel, join_channel, leave_channel, list_channels, invite_to_channel, kick_from_channel, send_channel_message, update_channel Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
15 lines
581 B
Go
15 lines
581 B
Go
package channels
|
|
|
|
import "errors"
|
|
|
|
// Sentinel errors for channel operations.
|
|
var (
|
|
ErrChannelNotFound = errors.New("channel not found")
|
|
ErrChannelNameConflict = errors.New("channel name already exists")
|
|
ErrNotChannelMember = errors.New("not a channel member")
|
|
ErrNotChannelOwner = errors.New("not the channel owner")
|
|
ErrOwnerCannotLeave = errors.New("channel owner cannot leave; transfer ownership or delete the channel first")
|
|
ErrNotInvited = errors.New("not invited to this private channel")
|
|
ErrInvalidChannelName = errors.New("invalid channel name")
|
|
)
|