sqlc

package
v1.0.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 11, 2026 License: Apache-2.0 Imports: 9 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type BulkInitializeSourceSyncsParams added in v1.0.0

type BulkInitializeSourceSyncsParams struct {
	SourceIds    []uuid.UUID  `json:"source_ids"`
	SyncStatuses []SyncStatus `json:"sync_statuses"`
	ErrorMsgs    []string     `json:"error_msgs"`
}

type BulkUpsertConfigSourcesParams added in v1.0.0

type BulkUpsertConfigSourcesParams struct {
	Names         []string           `json:"names"`
	SourceTypes   []string           `json:"source_types"`
	Formats       []string           `json:"formats"`
	SourceConfigs [][]byte           `json:"source_configs"`
	FilterConfigs [][]byte           `json:"filter_configs"`
	SyncSchedules []pgtypes.Interval `json:"sync_schedules"`
	Syncables     []bool             `json:"syncables"`
	Claims        [][]byte           `json:"claims"`
	CreatedAts    []time.Time        `json:"created_ats"`
	UpdatedAts    []time.Time        `json:"updated_ats"`
}

type BulkUpsertConfigSourcesRow added in v1.0.0

type BulkUpsertConfigSourcesRow struct {
	ID   uuid.UUID `json:"id"`
	Name string    `json:"name"`
}

type CreationType added in v0.4.4

type CreationType string
const (
	CreationTypeAPI    CreationType = "API"
	CreationTypeCONFIG CreationType = "CONFIG"
)

func (*CreationType) Scan added in v0.4.4

func (e *CreationType) Scan(src interface{}) error

type DBTX

type DBTX interface {
	Exec(context.Context, string, ...interface{}) (pgconn.CommandTag, error)
	Query(context.Context, string, ...interface{}) (pgx.Rows, error)
	QueryRow(context.Context, string, ...interface{}) pgx.Row
}

type DeleteEntryVersionParams added in v0.6.4

type DeleteEntryVersionParams struct {
	EntryID uuid.UUID `json:"entry_id"`
	Version string    `json:"version"`
}

type DeleteOrphanedEntryVersionsParams added in v1.0.1

type DeleteOrphanedEntryVersionsParams struct {
	SourceID  uuid.UUID   `json:"source_id"`
	EntryType EntryType   `json:"entry_type"`
	KeepIds   []uuid.UUID `json:"keep_ids"`
}

type DeleteRegistryEntryParams added in v0.6.0

type DeleteRegistryEntryParams struct {
	SourceID  uuid.UUID `json:"source_id"`
	EntryType EntryType `json:"entry_type"`
	Name      string    `json:"name"`
}

type EntryType added in v0.6.0

type EntryType string
const (
	EntryTypeMCP   EntryType = "MCP"
	EntryTypeSKILL EntryType = "SKILL"
)

func (*EntryType) Scan added in v0.6.0

func (e *EntryType) Scan(src interface{}) error

type EntryVersion added in v0.6.4

type EntryVersion struct {
	ID          uuid.UUID  `json:"id"`
	EntryID     uuid.UUID  `json:"entry_id"`
	Version     string     `json:"version"`
	Title       *string    `json:"title"`
	Description *string    `json:"description"`
	CreatedAt   *time.Time `json:"created_at"`
	UpdatedAt   *time.Time `json:"updated_at"`
	Name        string     `json:"name"`
}

type GetAPISourcesByNamesRow added in v1.0.0

type GetAPISourcesByNamesRow struct {
	ID           uuid.UUID        `json:"id"`
	Name         string           `json:"name"`
	CreationType CreationType     `json:"creation_type"`
	SourceType   string           `json:"source_type"`
	Format       *string          `json:"format"`
	SourceConfig []byte           `json:"source_config"`
	FilterConfig []byte           `json:"filter_config"`
	SyncSchedule pgtypes.Interval `json:"sync_schedule"`
	Claims       []byte           `json:"claims"`
	CreatedAt    *time.Time       `json:"created_at"`
	UpdatedAt    *time.Time       `json:"updated_at"`
}

type GetLatestEntryVersionParams added in v1.0.0

type GetLatestEntryVersionParams struct {
	Name     string    `json:"name"`
	SourceID uuid.UUID `json:"source_id"`
}

type GetManagedSourcesRow added in v1.0.0

type GetManagedSourcesRow struct {
	ID           uuid.UUID    `json:"id"`
	Name         string       `json:"name"`
	SourceType   string       `json:"source_type"`
	CreationType CreationType `json:"creation_type"`
	Claims       []byte       `json:"claims"`
	CreatedAt    *time.Time   `json:"created_at"`
	UpdatedAt    *time.Time   `json:"updated_at"`
}

type GetRegistryEntryByNameParams added in v0.6.4

type GetRegistryEntryByNameParams struct {
	SourceID  uuid.UUID `json:"source_id"`
	EntryType EntryType `json:"entry_type"`
	Name      string    `json:"name"`
}

type GetRegistryEntryByNameRow added in v1.0.0

type GetRegistryEntryByNameRow struct {
	ID     uuid.UUID `json:"id"`
	Claims []byte    `json:"claims"`
}

type GetServerIDsByRegistryNameVersionRow added in v0.3.2

type GetServerIDsByRegistryNameVersionRow struct {
	VersionID uuid.UUID `json:"version_id"`
	Name      string    `json:"name"`
	Version   string    `json:"version"`
}

type GetServerVersionBySourceNameParams added in v1.0.0

type GetServerVersionBySourceNameParams struct {
	Name       string `json:"name"`
	Version    string `json:"version"`
	SourceName string `json:"source_name"`
}

type GetServerVersionBySourceNameRow added in v1.0.0

type GetServerVersionBySourceNameRow struct {
	RegistryType        string     `json:"registry_type"`
	ID                  uuid.UUID  `json:"id"`
	Name                string     `json:"name"`
	Version             string     `json:"version"`
	IsLatest            bool       `json:"is_latest"`
	CreatedAt           *time.Time `json:"created_at"`
	UpdatedAt           *time.Time `json:"updated_at"`
	Description         *string    `json:"description"`
	Title               *string    `json:"title"`
	Website             *string    `json:"website"`
	UpstreamMeta        []byte     `json:"upstream_meta"`
	ServerMeta          []byte     `json:"server_meta"`
	RepositoryUrl       *string    `json:"repository_url"`
	RepositoryID        *string    `json:"repository_id"`
	RepositorySubfolder *string    `json:"repository_subfolder"`
	RepositoryType      *string    `json:"repository_type"`
	Claims              []byte     `json:"claims"`
	Position            int32      `json:"position"`
}

type GetServerVersionParams added in v0.3.0

type GetServerVersionParams struct {
	RegistryID     uuid.UUID   `json:"registry_id"`
	Name           string      `json:"name"`
	Version        string      `json:"version"`
	SourceName     *string     `json:"source_name"`
	CursorPosition pgtype.Int4 `json:"cursor_position"`
	CursorSourceID *uuid.UUID  `json:"cursor_source_id"`
	Size           int64       `json:"size"`
}

type GetServerVersionRow added in v0.3.0

type GetServerVersionRow struct {
	RegistryType        string     `json:"registry_type"`
	ID                  uuid.UUID  `json:"id"`
	Name                string     `json:"name"`
	Version             string     `json:"version"`
	IsLatest            bool       `json:"is_latest"`
	CreatedAt           *time.Time `json:"created_at"`
	UpdatedAt           *time.Time `json:"updated_at"`
	Description         *string    `json:"description"`
	Title               *string    `json:"title"`
	Website             *string    `json:"website"`
	UpstreamMeta        []byte     `json:"upstream_meta"`
	ServerMeta          []byte     `json:"server_meta"`
	RepositoryUrl       *string    `json:"repository_url"`
	RepositoryID        *string    `json:"repository_id"`
	RepositorySubfolder *string    `json:"repository_subfolder"`
	RepositoryType      *string    `json:"repository_type"`
	Claims              []byte     `json:"claims"`
	SourceID            uuid.UUID  `json:"source_id"`
	Position            int32      `json:"position"`
}

type GetSkillVersionBySourceNameParams added in v1.0.0

type GetSkillVersionBySourceNameParams struct {
	Name       string `json:"name"`
	Version    string `json:"version"`
	SourceName string `json:"source_name"`
}

type GetSkillVersionBySourceNameRow added in v1.0.0

type GetSkillVersionBySourceNameRow struct {
	RegistryType   string      `json:"registry_type"`
	ID             uuid.UUID   `json:"id"`
	Name           string      `json:"name"`
	Version        string      `json:"version"`
	IsLatest       bool        `json:"is_latest"`
	CreatedAt      *time.Time  `json:"created_at"`
	UpdatedAt      *time.Time  `json:"updated_at"`
	Description    *string     `json:"description"`
	Title          *string     `json:"title"`
	SkillVersionID uuid.UUID   `json:"skill_version_id"`
	Namespace      string      `json:"namespace"`
	Status         SkillStatus `json:"status"`
	License        *string     `json:"license"`
	Compatibility  *string     `json:"compatibility"`
	AllowedTools   []string    `json:"allowed_tools"`
	Repository     []byte      `json:"repository"`
	Icons          []byte      `json:"icons"`
	Metadata       []byte      `json:"metadata"`
	ExtensionMeta  []byte      `json:"extension_meta"`
	Claims         []byte      `json:"claims"`
	Position       int32       `json:"position"`
}

type GetSkillVersionParams added in v0.6.3

type GetSkillVersionParams struct {
	RegistryID     uuid.UUID   `json:"registry_id"`
	Name           string      `json:"name"`
	Version        string      `json:"version"`
	SourceName     *string     `json:"source_name"`
	Namespace      *string     `json:"namespace"`
	CursorPosition pgtype.Int4 `json:"cursor_position"`
	CursorSourceID *uuid.UUID  `json:"cursor_source_id"`
	Size           int64       `json:"size"`
}

type GetSkillVersionRow added in v0.6.3

type GetSkillVersionRow struct {
	RegistryType   string      `json:"registry_type"`
	ID             uuid.UUID   `json:"id"`
	Name           string      `json:"name"`
	Version        string      `json:"version"`
	IsLatest       bool        `json:"is_latest"`
	CreatedAt      *time.Time  `json:"created_at"`
	UpdatedAt      *time.Time  `json:"updated_at"`
	Description    *string     `json:"description"`
	Title          *string     `json:"title"`
	SkillVersionID uuid.UUID   `json:"skill_version_id"`
	Namespace      string      `json:"namespace"`
	Status         SkillStatus `json:"status"`
	License        *string     `json:"license"`
	Compatibility  *string     `json:"compatibility"`
	AllowedTools   []string    `json:"allowed_tools"`
	Repository     []byte      `json:"repository"`
	Icons          []byte      `json:"icons"`
	Metadata       []byte      `json:"metadata"`
	ExtensionMeta  []byte      `json:"extension_meta"`
	Claims         []byte      `json:"claims"`
	SourceID       uuid.UUID   `json:"source_id"`
	Position       int32       `json:"position"`
}

type GetSourceByNameRow added in v1.0.0

type GetSourceByNameRow struct {
	ID           uuid.UUID        `json:"id"`
	Name         string           `json:"name"`
	CreationType CreationType     `json:"creation_type"`
	SourceType   string           `json:"source_type"`
	Format       *string          `json:"format"`
	SourceConfig []byte           `json:"source_config"`
	FilterConfig []byte           `json:"filter_config"`
	SyncSchedule pgtypes.Interval `json:"sync_schedule"`
	Claims       []byte           `json:"claims"`
	CreatedAt    *time.Time       `json:"created_at"`
	UpdatedAt    *time.Time       `json:"updated_at"`
}

type GetSourceRow added in v1.0.0

type GetSourceRow struct {
	ID           uuid.UUID        `json:"id"`
	Name         string           `json:"name"`
	CreationType CreationType     `json:"creation_type"`
	SourceType   string           `json:"source_type"`
	Format       *string          `json:"format"`
	SourceConfig []byte           `json:"source_config"`
	FilterConfig []byte           `json:"filter_config"`
	SyncSchedule pgtypes.Interval `json:"sync_schedule"`
	Claims       []byte           `json:"claims"`
	CreatedAt    *time.Time       `json:"created_at"`
	UpdatedAt    *time.Time       `json:"updated_at"`
}

type IconTheme

type IconTheme string
const (
	IconThemeLIGHT IconTheme = "LIGHT"
	IconThemeDARK  IconTheme = "DARK"
)

func (*IconTheme) Scan

func (e *IconTheme) Scan(src interface{}) error

type InitializeSourceSyncParams added in v1.0.0

type InitializeSourceSyncParams struct {
	Name       string     `json:"name"`
	SyncStatus SyncStatus `json:"sync_status"`
	ErrorMsg   *string    `json:"error_msg"`
}

type InsertEntryVersionParams added in v0.6.4

type InsertEntryVersionParams struct {
	EntryID     uuid.UUID  `json:"entry_id"`
	Name        string     `json:"name"`
	Version     string     `json:"version"`
	Title       *string    `json:"title"`
	Description *string    `json:"description"`
	CreatedAt   *time.Time `json:"created_at"`
	UpdatedAt   *time.Time `json:"updated_at"`
}

type InsertRegistryEntryParams added in v0.6.0

type InsertRegistryEntryParams struct {
	SourceID  uuid.UUID  `json:"source_id"`
	EntryType EntryType  `json:"entry_type"`
	Name      string     `json:"name"`
	Claims    []byte     `json:"claims"`
	CreatedAt *time.Time `json:"created_at"`
	UpdatedAt *time.Time `json:"updated_at"`
}

type InsertServerIconParams added in v0.3.0

type InsertServerIconParams struct {
	ServerID  uuid.UUID `json:"server_id"`
	SourceUri string    `json:"source_uri"`
	MimeType  string    `json:"mime_type"`
	Theme     IconTheme `json:"theme"`
}

type InsertServerPackageParams added in v0.3.0

type InsertServerPackageParams struct {
	ServerID         uuid.UUID `json:"server_id"`
	RegistryType     string    `json:"registry_type"`
	PkgRegistryUrl   string    `json:"pkg_registry_url"`
	PkgIdentifier    string    `json:"pkg_identifier"`
	PkgVersion       string    `json:"pkg_version"`
	RuntimeHint      *string   `json:"runtime_hint"`
	RuntimeArguments []string  `json:"runtime_arguments"`
	PackageArguments []string  `json:"package_arguments"`
	EnvVars          []byte    `json:"env_vars"`
	Sha256Hash       *string   `json:"sha256_hash"`
	Transport        string    `json:"transport"`
	TransportUrl     *string   `json:"transport_url"`
	TransportHeaders []byte    `json:"transport_headers"`
}

type InsertServerRemoteParams added in v0.3.0

type InsertServerRemoteParams struct {
	ServerID         uuid.UUID `json:"server_id"`
	Transport        string    `json:"transport"`
	TransportUrl     string    `json:"transport_url"`
	TransportHeaders []byte    `json:"transport_headers"`
}

type InsertServerVersionForSyncParams added in v0.3.2

type InsertServerVersionForSyncParams struct {
	VersionID           uuid.UUID `json:"version_id"`
	Website             *string   `json:"website"`
	UpstreamMeta        []byte    `json:"upstream_meta"`
	ServerMeta          []byte    `json:"server_meta"`
	RepositoryUrl       *string   `json:"repository_url"`
	RepositoryID        *string   `json:"repository_id"`
	RepositorySubfolder *string   `json:"repository_subfolder"`
	RepositoryType      *string   `json:"repository_type"`
}

type InsertServerVersionParams added in v0.3.0

type InsertServerVersionParams struct {
	VersionID           uuid.UUID `json:"version_id"`
	Website             *string   `json:"website"`
	UpstreamMeta        []byte    `json:"upstream_meta"`
	ServerMeta          []byte    `json:"server_meta"`
	RepositoryUrl       *string   `json:"repository_url"`
	RepositoryID        *string   `json:"repository_id"`
	RepositorySubfolder *string   `json:"repository_subfolder"`
	RepositoryType      *string   `json:"repository_type"`
}

type InsertSkillGitPackageParams added in v0.6.3

type InsertSkillGitPackageParams struct {
	SkillID   uuid.UUID `json:"skill_id"`
	Url       string    `json:"url"`
	Ref       *string   `json:"ref"`
	CommitSha *string   `json:"commit_sha"`
	Subfolder *string   `json:"subfolder"`
}

type InsertSkillOciPackageParams added in v0.6.3

type InsertSkillOciPackageParams struct {
	SkillID    uuid.UUID `json:"skill_id"`
	Identifier string    `json:"identifier"`
	Digest     *string   `json:"digest"`
	MediaType  *string   `json:"media_type"`
}

type InsertSkillVersionForSyncParams added in v0.6.3

type InsertSkillVersionForSyncParams struct {
	VersionID     uuid.UUID       `json:"version_id"`
	Namespace     string          `json:"namespace"`
	Status        NullSkillStatus `json:"status"`
	License       *string         `json:"license"`
	Compatibility *string         `json:"compatibility"`
	AllowedTools  []string        `json:"allowed_tools"`
	Repository    []byte          `json:"repository"`
	Icons         []byte          `json:"icons"`
	Metadata      []byte          `json:"metadata"`
	ExtensionMeta []byte          `json:"extension_meta"`
}

type InsertSkillVersionParams added in v0.6.3

type InsertSkillVersionParams struct {
	VersionID     uuid.UUID       `json:"version_id"`
	Namespace     string          `json:"namespace"`
	Status        NullSkillStatus `json:"status"`
	License       *string         `json:"license"`
	Compatibility *string         `json:"compatibility"`
	AllowedTools  []string        `json:"allowed_tools"`
	Repository    []byte          `json:"repository"`
	Icons         []byte          `json:"icons"`
	Metadata      []byte          `json:"metadata"`
	ExtensionMeta []byte          `json:"extension_meta"`
}

type InsertSourceParams added in v1.0.0

type InsertSourceParams struct {
	Name         string           `json:"name"`
	CreationType CreationType     `json:"creation_type"`
	SourceType   string           `json:"source_type"`
	Format       *string          `json:"format"`
	SourceConfig []byte           `json:"source_config"`
	FilterConfig []byte           `json:"filter_config"`
	SyncSchedule pgtypes.Interval `json:"sync_schedule"`
	Syncable     bool             `json:"syncable"`
	Claims       []byte           `json:"claims"`
	CreatedAt    *time.Time       `json:"created_at"`
	UpdatedAt    *time.Time       `json:"updated_at"`
}

type InsertSourceSyncParams added in v1.0.0

type InsertSourceSyncParams struct {
	SourceID   *uuid.UUID `json:"source_id"`
	SyncStatus SyncStatus `json:"sync_status"`
	ErrorMsg   *string    `json:"error_msg"`
	StartedAt  *time.Time `json:"started_at"`
}

type LatestEntryVersion added in v0.6.0

type LatestEntryVersion struct {
	SourceID        uuid.UUID `json:"source_id"`
	Name            string    `json:"name"`
	Version         string    `json:"version"`
	LatestVersionID uuid.UUID `json:"latest_version_id"`
}

type LinkRegistrySourceParams added in v1.0.0

type LinkRegistrySourceParams struct {
	RegistryID uuid.UUID `json:"registry_id"`
	SourceID   uuid.UUID `json:"source_id"`
	Position   int32     `json:"position"`
}

type ListEntriesByRegistryRow added in v1.0.0

type ListEntriesByRegistryRow struct {
	EntryType  EntryType `json:"entry_type"`
	Name       string    `json:"name"`
	Version    string    `json:"version"`
	SourceName string    `json:"source_name"`
	Position   int32     `json:"position"`
}

type ListEntriesBySourceRow added in v1.0.0

type ListEntriesBySourceRow struct {
	EntryType   EntryType  `json:"entry_type"`
	Name        string     `json:"name"`
	Claims      []byte     `json:"claims"`
	Version     string     `json:"version"`
	Title       *string    `json:"title"`
	Description *string    `json:"description"`
	CreatedAt   *time.Time `json:"created_at"`
	UpdatedAt   *time.Time `json:"updated_at"`
}

type ListEntryVersionsRow added in v0.6.6

type ListEntryVersionsRow struct {
	ID      uuid.UUID `json:"id"`
	Version string    `json:"version"`
}

type ListRegistriesParams

type ListRegistriesParams struct {
	Cursor *string `json:"cursor"`
	Size   int64   `json:"size"`
}

type ListRegistrySourcesRow added in v1.0.0

type ListRegistrySourcesRow struct {
	ID   uuid.UUID `json:"id"`
	Name string    `json:"name"`
}

type ListServerPackagesRow added in v0.4.9

type ListServerPackagesRow struct {
	ServerID         uuid.UUID `json:"server_id"`
	RegistryType     string    `json:"registry_type"`
	PkgRegistryUrl   string    `json:"pkg_registry_url"`
	PkgIdentifier    string    `json:"pkg_identifier"`
	PkgVersion       string    `json:"pkg_version"`
	RuntimeHint      *string   `json:"runtime_hint"`
	RuntimeArguments []string  `json:"runtime_arguments"`
	PackageArguments []string  `json:"package_arguments"`
	EnvVars          []byte    `json:"env_vars"`
	Sha256Hash       *string   `json:"sha256_hash"`
	Transport        string    `json:"transport"`
	TransportUrl     *string   `json:"transport_url"`
	TransportHeaders []byte    `json:"transport_headers"`
}

type ListServersParams

type ListServersParams struct {
	RegistryID    uuid.UUID  `json:"registry_id"`
	Name          *string    `json:"name"`
	Search        *string    `json:"search"`
	UpdatedSince  *time.Time `json:"updated_since"`
	CursorName    *string    `json:"cursor_name"`
	CursorVersion *string    `json:"cursor_version"`
	Version       *string    `json:"version"`
	Size          int64      `json:"size"`
}

type ListServersRow

type ListServersRow struct {
	RegistryType        string     `json:"registry_type"`
	ID                  uuid.UUID  `json:"id"`
	Name                string     `json:"name"`
	Version             string     `json:"version"`
	IsLatest            bool       `json:"is_latest"`
	CreatedAt           *time.Time `json:"created_at"`
	UpdatedAt           *time.Time `json:"updated_at"`
	Description         *string    `json:"description"`
	Title               *string    `json:"title"`
	Website             *string    `json:"website"`
	UpstreamMeta        []byte     `json:"upstream_meta"`
	ServerMeta          []byte     `json:"server_meta"`
	RepositoryUrl       *string    `json:"repository_url"`
	RepositoryID        *string    `json:"repository_id"`
	RepositorySubfolder *string    `json:"repository_subfolder"`
	RepositoryType      *string    `json:"repository_type"`
	Claims              []byte     `json:"claims"`
	Position            int32      `json:"position"`
}

type ListSkillsParams added in v0.6.3

type ListSkillsParams struct {
	RegistryID    uuid.UUID  `json:"registry_id"`
	Namespace     *string    `json:"namespace"`
	Name          *string    `json:"name"`
	Search        *string    `json:"search"`
	UpdatedSince  *time.Time `json:"updated_since"`
	CursorName    *string    `json:"cursor_name"`
	CursorVersion *string    `json:"cursor_version"`
	Size          int64      `json:"size"`
}

type ListSkillsRow added in v0.6.3

type ListSkillsRow struct {
	RegistryType  string      `json:"registry_type"`
	VersionID     uuid.UUID   `json:"version_id"`
	Name          string      `json:"name"`
	Version       string      `json:"version"`
	IsLatest      bool        `json:"is_latest"`
	CreatedAt     *time.Time  `json:"created_at"`
	UpdatedAt     *time.Time  `json:"updated_at"`
	Description   *string     `json:"description"`
	Title         *string     `json:"title"`
	Namespace     string      `json:"namespace"`
	Status        SkillStatus `json:"status"`
	License       *string     `json:"license"`
	Compatibility *string     `json:"compatibility"`
	AllowedTools  []string    `json:"allowed_tools"`
	Repository    []byte      `json:"repository"`
	Icons         []byte      `json:"icons"`
	Metadata      []byte      `json:"metadata"`
	ExtensionMeta []byte      `json:"extension_meta"`
	Claims        []byte      `json:"claims"`
	Position      int32       `json:"position"`
}

type ListSourceSyncsByLastUpdateRow added in v1.0.0

type ListSourceSyncsByLastUpdateRow struct {
	Name                  string           `json:"name"`
	ID                    uuid.UUID        `json:"id"`
	SourceID              *uuid.UUID       `json:"source_id"`
	SyncStatus            SyncStatus       `json:"sync_status"`
	ErrorMsg              *string          `json:"error_msg"`
	StartedAt             *time.Time       `json:"started_at"`
	EndedAt               *time.Time       `json:"ended_at"`
	AttemptCount          int64            `json:"attempt_count"`
	LastSyncHash          *string          `json:"last_sync_hash"`
	LastAppliedFilterHash *string          `json:"last_applied_filter_hash"`
	ServerCount           int64            `json:"server_count"`
	SkillCount            int64            `json:"skill_count"`
	SyncSchedule          pgtypes.Interval `json:"sync_schedule"`
}

type ListSourceSyncsRow added in v1.0.0

type ListSourceSyncsRow struct {
	Name                  string           `json:"name"`
	ID                    uuid.UUID        `json:"id"`
	SourceID              *uuid.UUID       `json:"source_id"`
	SyncStatus            SyncStatus       `json:"sync_status"`
	ErrorMsg              *string          `json:"error_msg"`
	StartedAt             *time.Time       `json:"started_at"`
	EndedAt               *time.Time       `json:"ended_at"`
	AttemptCount          int64            `json:"attempt_count"`
	LastSyncHash          *string          `json:"last_sync_hash"`
	LastAppliedFilterHash *string          `json:"last_applied_filter_hash"`
	ServerCount           int64            `json:"server_count"`
	SkillCount            int64            `json:"skill_count"`
	SyncSchedule          pgtypes.Interval `json:"sync_schedule"`
}

type ListSourcesParams added in v1.0.0

type ListSourcesParams struct {
	Next *time.Time `json:"next"`
	Prev *time.Time `json:"prev"`
	Size int64      `json:"size"`
}

type ListSourcesRow added in v1.0.0

type ListSourcesRow struct {
	ID           uuid.UUID        `json:"id"`
	Name         string           `json:"name"`
	CreationType CreationType     `json:"creation_type"`
	SourceType   string           `json:"source_type"`
	Format       *string          `json:"format"`
	SourceConfig []byte           `json:"source_config"`
	FilterConfig []byte           `json:"filter_config"`
	SyncSchedule pgtypes.Interval `json:"sync_schedule"`
	Claims       []byte           `json:"claims"`
	CreatedAt    *time.Time       `json:"created_at"`
	UpdatedAt    *time.Time       `json:"updated_at"`
}

type McpServer

type McpServer struct {
	Website             *string   `json:"website"`
	UpstreamMeta        []byte    `json:"upstream_meta"`
	ServerMeta          []byte    `json:"server_meta"`
	RepositoryUrl       *string   `json:"repository_url"`
	RepositoryID        *string   `json:"repository_id"`
	RepositorySubfolder *string   `json:"repository_subfolder"`
	RepositoryType      *string   `json:"repository_type"`
	VersionID           uuid.UUID `json:"version_id"`
}

type McpServerIcon

type McpServerIcon struct {
	ServerID  uuid.UUID `json:"server_id"`
	SourceUri string    `json:"source_uri"`
	MimeType  string    `json:"mime_type"`
	Theme     IconTheme `json:"theme"`
}

type McpServerPackage

type McpServerPackage struct {
	ServerID         uuid.UUID `json:"server_id"`
	RegistryType     string    `json:"registry_type"`
	PkgRegistryUrl   string    `json:"pkg_registry_url"`
	PkgIdentifier    string    `json:"pkg_identifier"`
	PkgVersion       string    `json:"pkg_version"`
	RuntimeHint      *string   `json:"runtime_hint"`
	RuntimeArguments []string  `json:"runtime_arguments"`
	PackageArguments []string  `json:"package_arguments"`
	Sha256Hash       *string   `json:"sha256_hash"`
	Transport        string    `json:"transport"`
	TransportUrl     *string   `json:"transport_url"`
	EnvVars          []byte    `json:"env_vars"`
	TransportHeaders []byte    `json:"transport_headers"`
}

type McpServerRemote

type McpServerRemote struct {
	ServerID         uuid.UUID `json:"server_id"`
	Transport        string    `json:"transport"`
	TransportUrl     string    `json:"transport_url"`
	TransportHeaders []byte    `json:"transport_headers"`
}

type NullCreationType added in v0.4.4

type NullCreationType struct {
	CreationType CreationType `json:"creation_type"`
	Valid        bool         `json:"valid"` // Valid is true if CreationType is not NULL
}

func (*NullCreationType) Scan added in v0.4.4

func (ns *NullCreationType) Scan(value interface{}) error

Scan implements the Scanner interface.

func (NullCreationType) Value added in v0.4.4

func (ns NullCreationType) Value() (driver.Value, error)

Value implements the driver Valuer interface.

type NullEntryType added in v0.6.0

type NullEntryType struct {
	EntryType EntryType `json:"entry_type"`
	Valid     bool      `json:"valid"` // Valid is true if EntryType is not NULL
}

func (*NullEntryType) Scan added in v0.6.0

func (ns *NullEntryType) Scan(value interface{}) error

Scan implements the Scanner interface.

func (NullEntryType) Value added in v0.6.0

func (ns NullEntryType) Value() (driver.Value, error)

Value implements the driver Valuer interface.

type NullIconTheme

type NullIconTheme struct {
	IconTheme IconTheme `json:"icon_theme"`
	Valid     bool      `json:"valid"` // Valid is true if IconTheme is not NULL
}

func (*NullIconTheme) Scan

func (ns *NullIconTheme) Scan(value interface{}) error

Scan implements the Scanner interface.

func (NullIconTheme) Value

func (ns NullIconTheme) Value() (driver.Value, error)

Value implements the driver Valuer interface.

type NullSkillStatus added in v0.6.3

type NullSkillStatus struct {
	SkillStatus SkillStatus `json:"skill_status"`
	Valid       bool        `json:"valid"` // Valid is true if SkillStatus is not NULL
}

func (*NullSkillStatus) Scan added in v0.6.3

func (ns *NullSkillStatus) Scan(value interface{}) error

Scan implements the Scanner interface.

func (NullSkillStatus) Value added in v0.6.3

func (ns NullSkillStatus) Value() (driver.Value, error)

Value implements the driver Valuer interface.

type NullSyncStatus

type NullSyncStatus struct {
	SyncStatus SyncStatus `json:"sync_status"`
	Valid      bool       `json:"valid"` // Valid is true if SyncStatus is not NULL
}

func (*NullSyncStatus) Scan

func (ns *NullSyncStatus) Scan(value interface{}) error

Scan implements the Scanner interface.

func (NullSyncStatus) Value

func (ns NullSyncStatus) Value() (driver.Value, error)

Value implements the driver Valuer interface.

type PropagateSourceClaimsToEntriesParams added in v1.0.0

type PropagateSourceClaimsToEntriesParams struct {
	Claims   []byte    `json:"claims"`
	SourceID uuid.UUID `json:"source_id"`
}

type Querier

type Querier interface {
	BulkInitializeSourceSyncs(ctx context.Context, arg BulkInitializeSourceSyncsParams) error
	// Bulk insert or update CONFIG sources (only updates existing CONFIG sources)
	BulkUpsertConfigSources(ctx context.Context, arg BulkUpsertConfigSourcesParams) ([]BulkUpsertConfigSourcesRow, error)
	CountEntryVersions(ctx context.Context, entryID uuid.UUID) (int64, error)
	// Count how many registries reference a given source (via registry_source junction).
	CountRegistriesBySourceID(ctx context.Context, sourceID uuid.UUID) (int64, error)
	// Temp Entry Version Table Operations
	CreateTempEntryVersionTable(ctx context.Context) error
	// Temp Icon Table Operations
	CreateTempIconTable(ctx context.Context) error
	// Temp Package Table Operations
	CreateTempPackageTable(ctx context.Context) error
	// Temporary table operations for bulk sync
	// Note: These queries reference temp tables that don't exist in the schema.
	// sqlc cannot validate these, but we organize them here for maintainability.
	// Temp Server Table Operations
	CreateTempRegistryEntryTable(ctx context.Context) error
	// Temp Remote Table Operations
	CreateTempRemoteTable(ctx context.Context) error
	// Temp Server Table Operations
	CreateTempServerTable(ctx context.Context) error
	// Delete CONFIG registry rows whose names are not in the provided list.
	// Used during config sync to clean up registry/junction rows before deleting orphaned sources.
	DeleteConfigRegistriesNotInList(ctx context.Context, keepNames []string) error
	// Delete CONFIG sources not in the provided list (for config file sync)
	DeleteConfigSourcesNotInList(ctx context.Context, ids []uuid.UUID) error
	DeleteEntryVersion(ctx context.Context, arg DeleteEntryVersionParams) (int64, error)
	DeleteOrphanedEntryVersions(ctx context.Context, arg DeleteOrphanedEntryVersionsParams) error
	DeleteOrphanedIcons(ctx context.Context, serverIds []uuid.UUID) error
	DeleteOrphanedPackages(ctx context.Context, serverIds []uuid.UUID) error
	DeleteOrphanedRemotes(ctx context.Context, serverIds []uuid.UUID) error
	// Delete a registry by name. Go callers guard against deleting wrong creation_type.
	DeleteRegistry(ctx context.Context, name string) (int64, error)
	DeleteRegistryEntry(ctx context.Context, arg DeleteRegistryEntryParams) (int64, error)
	DeleteRegistryEntryByID(ctx context.Context, id uuid.UUID) (int64, error)
	DeleteServerIconsByServerId(ctx context.Context, serverID uuid.UUID) error
	DeleteServerPackagesByServerId(ctx context.Context, serverID uuid.UUID) error
	DeleteServerRemotesByServerId(ctx context.Context, serverID uuid.UUID) error
	DeleteServersByRegistry(ctx context.Context, sourceID uuid.UUID) error
	DeleteSkillGitPackagesBySkillId(ctx context.Context, skillID uuid.UUID) error
	DeleteSkillOciPackagesBySkillId(ctx context.Context, skillID uuid.UUID) error
	DeleteSkillsByRegistry(ctx context.Context, sourceID uuid.UUID) error
	// Delete a source by name. Go callers guard against deleting wrong creation_type.
	DeleteSource(ctx context.Context, name string) (int64, error)
	DropTempEntryVersionTable(ctx context.Context) error
	DropTempRegistryEntryTable(ctx context.Context) error
	GetAPISourcesByNames(ctx context.Context, names []string) ([]GetAPISourcesByNamesRow, error)
	GetLatestEntryVersion(ctx context.Context, arg GetLatestEntryVersionParams) (string, error)
	GetManagedSources(ctx context.Context) ([]GetManagedSourcesRow, error)
	GetRegistryByName(ctx context.Context, name string) (Registry, error)
	GetRegistryEntryByName(ctx context.Context, arg GetRegistryEntryByNameParams) (GetRegistryEntryByNameRow, error)
	GetServerIDsByRegistryNameVersion(ctx context.Context, sourceID uuid.UUID) ([]GetServerIDsByRegistryNameVersionRow, error)
	// Despite the name, this query returns multiple rows. The actual number of
	// records is bounded by the number of sources that provide the same name and
	// version, which we currently don't expect to be more than a few.
	// Cursor-based pagination using (position, source_id) compound cursor.
	// position is the sort key but may not be unique; source_id is the tiebreaker.
	GetServerVersion(ctx context.Context, arg GetServerVersionParams) ([]GetServerVersionRow, error)
	// Source-scoped variant of GetServerVersion used by the publish fetch-back path.
	// source_name and version are required; registry filtering is not applied.
	GetServerVersionBySourceName(ctx context.Context, arg GetServerVersionBySourceNameParams) (GetServerVersionBySourceNameRow, error)
	// Despite the name, this query returns multiple rows. The actual number of
	// records is bounded by the number of sources that provide the same name and
	// version, which we currently don't expect to be more than a few.
	// Cursor-based pagination using (position, source_id) compound cursor.
	// position is the sort key but may not be unique; source_id is the tiebreaker.
	GetSkillVersion(ctx context.Context, arg GetSkillVersionParams) ([]GetSkillVersionRow, error)
	// Source-scoped variant of GetSkillVersion used by the publish fetch-back path.
	// source_name and version are required; registry filtering is not applied.
	GetSkillVersionBySourceName(ctx context.Context, arg GetSkillVersionBySourceNameParams) (GetSkillVersionBySourceNameRow, error)
	GetSource(ctx context.Context, id uuid.UUID) (GetSourceRow, error)
	GetSourceByName(ctx context.Context, name string) (GetSourceByNameRow, error)
	GetSourceSync(ctx context.Context, id uuid.UUID) (RegistrySync, error)
	GetSourceSyncByName(ctx context.Context, name string) (RegistrySync, error)
	InitializeSourceSync(ctx context.Context, arg InitializeSourceSyncParams) error
	InsertEntryVersion(ctx context.Context, arg InsertEntryVersionParams) (uuid.UUID, error)
	InsertRegistryEntry(ctx context.Context, arg InsertRegistryEntryParams) (uuid.UUID, error)
	InsertServerIcon(ctx context.Context, arg InsertServerIconParams) error
	// TODO: this seems unused
	InsertServerPackage(ctx context.Context, arg InsertServerPackageParams) error
	InsertServerRemote(ctx context.Context, arg InsertServerRemoteParams) error
	InsertServerVersion(ctx context.Context, arg InsertServerVersionParams) (uuid.UUID, error)
	InsertServerVersionForSync(ctx context.Context, arg InsertServerVersionForSyncParams) (uuid.UUID, error)
	InsertSkillGitPackage(ctx context.Context, arg InsertSkillGitPackageParams) error
	InsertSkillOciPackage(ctx context.Context, arg InsertSkillOciPackageParams) error
	InsertSkillVersion(ctx context.Context, arg InsertSkillVersionParams) (uuid.UUID, error)
	InsertSkillVersionForSync(ctx context.Context, arg InsertSkillVersionForSyncParams) (uuid.UUID, error)
	// ============================================================================
	// Source Queries (unified, creation_type guards are in Go)
	// ============================================================================
	// Insert a new source with full configuration. creation_type is passed as a parameter.
	InsertSource(ctx context.Context, arg InsertSourceParams) (Source, error)
	InsertSourceSync(ctx context.Context, arg InsertSourceSyncParams) (uuid.UUID, error)
	LinkRegistrySource(ctx context.Context, arg LinkRegistrySourceParams) error
	ListAllSourceNames(ctx context.Context) ([]string, error)
	ListEntriesByRegistry(ctx context.Context, registryID uuid.UUID) ([]ListEntriesByRegistryRow, error)
	ListEntriesBySource(ctx context.Context, sourceID uuid.UUID) ([]ListEntriesBySourceRow, error)
	ListEntryVersions(ctx context.Context, entryID uuid.UUID) ([]ListEntryVersionsRow, error)
	// Queries for the new lightweight registry table and registry_source junction.
	ListRegistries(ctx context.Context, arg ListRegistriesParams) ([]Registry, error)
	ListRegistrySources(ctx context.Context, registryID uuid.UUID) ([]ListRegistrySourcesRow, error)
	ListServerPackages(ctx context.Context, versionIds []uuid.UUID) ([]ListServerPackagesRow, error)
	ListServerRemotes(ctx context.Context, versionIds []uuid.UUID) ([]McpServerRemote, error)
	// Cursor-based pagination using (name, version) compound cursor.
	// The cursor_name and cursor_version parameters define the starting point.
	// When cursor is provided, results start AFTER the specified (name, version) tuple.
	// Returns position from registry_source for source priority ordering.
	// When name is provided, results are filtered to versions of that specific server.
	ListServers(ctx context.Context, arg ListServersParams) ([]ListServersRow, error)
	ListSkillGitPackages(ctx context.Context, versionIds []uuid.UUID) ([]SkillGitPackage, error)
	ListSkillOciPackages(ctx context.Context, versionIds []uuid.UUID) ([]SkillOciPackage, error)
	// Cursor-based pagination using (name, version) compound cursor.
	// The cursor_name and cursor_version parameters define the starting point.
	// When cursor is provided, results start AFTER the specified (name, version) tuple.
	// Returns position from registry_source for source priority ordering.
	ListSkills(ctx context.Context, arg ListSkillsParams) ([]ListSkillsRow, error)
	ListSourceSyncs(ctx context.Context) ([]ListSourceSyncsRow, error)
	ListSourceSyncsByLastUpdate(ctx context.Context) ([]ListSourceSyncsByLastUpdateRow, error)
	ListSources(ctx context.Context, arg ListSourcesParams) ([]ListSourcesRow, error)
	// Update all registry entries for a source to match the source's current claims.
	// Used during initialization to fix drift when source claims change without data change.
	PropagateSourceClaimsToEntries(ctx context.Context, arg PropagateSourceClaimsToEntriesParams) error
	UnlinkAllRegistrySources(ctx context.Context, registryID uuid.UUID) error
	UnlinkRegistrySource(ctx context.Context, arg UnlinkRegistrySourceParams) error
	// Update an existing source. Go callers guard against modifying wrong creation_type.
	UpdateSource(ctx context.Context, arg UpdateSourceParams) (Source, error)
	UpdateSourceSync(ctx context.Context, arg UpdateSourceSyncParams) error
	UpdateSourceSyncStatusByName(ctx context.Context, arg UpdateSourceSyncStatusByNameParams) error
	UpsertEntryVersionsFromTemp(ctx context.Context) ([]UpsertEntryVersionsFromTempRow, error)
	UpsertIconsFromTemp(ctx context.Context) error
	UpsertLatestServerVersion(ctx context.Context, arg UpsertLatestServerVersionParams) (uuid.UUID, error)
	UpsertLatestSkillVersion(ctx context.Context, arg UpsertLatestSkillVersionParams) (uuid.UUID, error)
	UpsertPackagesFromTemp(ctx context.Context) error
	// Insert or update a registry. The creation_type is passed as a parameter.
	// Business logic in Go guards against cross-type overwrites.
	UpsertRegistry(ctx context.Context, arg UpsertRegistryParams) (Registry, error)
	UpsertRegistryEntriesFromTemp(ctx context.Context) ([]UpsertRegistryEntriesFromTempRow, error)
	UpsertRemotesFromTemp(ctx context.Context) error
	UpsertServerVersionForSync(ctx context.Context, arg UpsertServerVersionForSyncParams) (uuid.UUID, error)
	UpsertServersFromTemp(ctx context.Context) error
	UpsertSkillVersionForSync(ctx context.Context, arg UpsertSkillVersionForSyncParams) (uuid.UUID, error)
	// ============================================================================
	// CONFIG Source Queries (only operate on creation_type='CONFIG')
	// ============================================================================
	// Insert or update a source. The creation_type is passed as a parameter.
	// Business logic in Go guards against cross-type overwrites.
	UpsertSource(ctx context.Context, arg UpsertSourceParams) (uuid.UUID, error)
	UpsertSourceSyncByName(ctx context.Context, arg UpsertSourceSyncByNameParams) error
}

type Queries

type Queries struct {
	// contains filtered or unexported fields
}

func New

func New(db DBTX) *Queries

func (*Queries) BulkInitializeSourceSyncs added in v1.0.0

func (q *Queries) BulkInitializeSourceSyncs(ctx context.Context, arg BulkInitializeSourceSyncsParams) error

func (*Queries) BulkUpsertConfigSources added in v1.0.0

func (q *Queries) BulkUpsertConfigSources(ctx context.Context, arg BulkUpsertConfigSourcesParams) ([]BulkUpsertConfigSourcesRow, error)

Bulk insert or update CONFIG sources (only updates existing CONFIG sources)

func (*Queries) CountEntryVersions added in v0.6.4

func (q *Queries) CountEntryVersions(ctx context.Context, entryID uuid.UUID) (int64, error)

func (*Queries) CountRegistriesBySourceID added in v1.0.0

func (q *Queries) CountRegistriesBySourceID(ctx context.Context, sourceID uuid.UUID) (int64, error)

Count how many registries reference a given source (via registry_source junction).

func (*Queries) CreateTempEntryVersionTable added in v0.6.4

func (q *Queries) CreateTempEntryVersionTable(ctx context.Context) error

Temp Entry Version Table Operations

func (*Queries) CreateTempIconTable added in v0.3.2

func (q *Queries) CreateTempIconTable(ctx context.Context) error

Temp Icon Table Operations

func (*Queries) CreateTempPackageTable added in v0.3.2

func (q *Queries) CreateTempPackageTable(ctx context.Context) error

Temp Package Table Operations

func (*Queries) CreateTempRegistryEntryTable added in v0.6.0

func (q *Queries) CreateTempRegistryEntryTable(ctx context.Context) error

Temporary table operations for bulk sync Note: These queries reference temp tables that don't exist in the schema. sqlc cannot validate these, but we organize them here for maintainability. Temp Server Table Operations

func (*Queries) CreateTempRemoteTable added in v0.3.2

func (q *Queries) CreateTempRemoteTable(ctx context.Context) error

Temp Remote Table Operations

func (*Queries) CreateTempServerTable added in v0.3.2

func (q *Queries) CreateTempServerTable(ctx context.Context) error

Temp Server Table Operations

func (*Queries) DeleteConfigRegistriesNotInList added in v0.4.7

func (q *Queries) DeleteConfigRegistriesNotInList(ctx context.Context, keepNames []string) error

Delete CONFIG registry rows whose names are not in the provided list. Used during config sync to clean up registry/junction rows before deleting orphaned sources.

func (*Queries) DeleteConfigSourcesNotInList added in v1.0.0

func (q *Queries) DeleteConfigSourcesNotInList(ctx context.Context, ids []uuid.UUID) error

Delete CONFIG sources not in the provided list (for config file sync)

func (*Queries) DeleteEntryVersion added in v0.6.4

func (q *Queries) DeleteEntryVersion(ctx context.Context, arg DeleteEntryVersionParams) (int64, error)

func (*Queries) DeleteOrphanedEntryVersions added in v1.0.1

func (q *Queries) DeleteOrphanedEntryVersions(ctx context.Context, arg DeleteOrphanedEntryVersionsParams) error

func (*Queries) DeleteOrphanedIcons added in v0.3.2

func (q *Queries) DeleteOrphanedIcons(ctx context.Context, serverIds []uuid.UUID) error

func (*Queries) DeleteOrphanedPackages added in v0.3.2

func (q *Queries) DeleteOrphanedPackages(ctx context.Context, serverIds []uuid.UUID) error

func (*Queries) DeleteOrphanedRemotes added in v0.3.2

func (q *Queries) DeleteOrphanedRemotes(ctx context.Context, serverIds []uuid.UUID) error

func (*Queries) DeleteRegistry added in v0.3.1

func (q *Queries) DeleteRegistry(ctx context.Context, name string) (int64, error)

Delete a registry by name. Go callers guard against deleting wrong creation_type.

func (*Queries) DeleteRegistryEntry added in v0.6.0

func (q *Queries) DeleteRegistryEntry(ctx context.Context, arg DeleteRegistryEntryParams) (int64, error)

func (*Queries) DeleteRegistryEntryByID added in v0.6.4

func (q *Queries) DeleteRegistryEntryByID(ctx context.Context, id uuid.UUID) (int64, error)

func (*Queries) DeleteServerIconsByServerId added in v0.3.2

func (q *Queries) DeleteServerIconsByServerId(ctx context.Context, serverID uuid.UUID) error

func (*Queries) DeleteServerPackagesByServerId added in v0.3.2

func (q *Queries) DeleteServerPackagesByServerId(ctx context.Context, serverID uuid.UUID) error

func (*Queries) DeleteServerRemotesByServerId added in v0.3.2

func (q *Queries) DeleteServerRemotesByServerId(ctx context.Context, serverID uuid.UUID) error

func (*Queries) DeleteServersByRegistry added in v0.3.2

func (q *Queries) DeleteServersByRegistry(ctx context.Context, sourceID uuid.UUID) error

func (*Queries) DeleteSkillGitPackagesBySkillId added in v1.0.1

func (q *Queries) DeleteSkillGitPackagesBySkillId(ctx context.Context, skillID uuid.UUID) error

func (*Queries) DeleteSkillOciPackagesBySkillId added in v1.0.1

func (q *Queries) DeleteSkillOciPackagesBySkillId(ctx context.Context, skillID uuid.UUID) error

func (*Queries) DeleteSkillsByRegistry added in v0.6.3

func (q *Queries) DeleteSkillsByRegistry(ctx context.Context, sourceID uuid.UUID) error

func (*Queries) DeleteSource added in v1.0.0

func (q *Queries) DeleteSource(ctx context.Context, name string) (int64, error)

Delete a source by name. Go callers guard against deleting wrong creation_type.

func (*Queries) DropTempEntryVersionTable added in v1.0.1

func (q *Queries) DropTempEntryVersionTable(ctx context.Context) error

func (*Queries) DropTempRegistryEntryTable added in v1.0.1

func (q *Queries) DropTempRegistryEntryTable(ctx context.Context) error

func (*Queries) GetAPISourcesByNames added in v1.0.0

func (q *Queries) GetAPISourcesByNames(ctx context.Context, names []string) ([]GetAPISourcesByNamesRow, error)

func (*Queries) GetLatestEntryVersion added in v1.0.0

func (q *Queries) GetLatestEntryVersion(ctx context.Context, arg GetLatestEntryVersionParams) (string, error)

func (*Queries) GetManagedSources added in v1.0.0

func (q *Queries) GetManagedSources(ctx context.Context) ([]GetManagedSourcesRow, error)

func (*Queries) GetRegistryByName added in v0.3.0

func (q *Queries) GetRegistryByName(ctx context.Context, name string) (Registry, error)

func (*Queries) GetRegistryEntryByName added in v0.6.4

func (q *Queries) GetRegistryEntryByName(ctx context.Context, arg GetRegistryEntryByNameParams) (GetRegistryEntryByNameRow, error)

func (*Queries) GetServerIDsByRegistryNameVersion added in v0.3.2

func (q *Queries) GetServerIDsByRegistryNameVersion(ctx context.Context, sourceID uuid.UUID) ([]GetServerIDsByRegistryNameVersionRow, error)

func (*Queries) GetServerVersion added in v0.3.0

func (q *Queries) GetServerVersion(ctx context.Context, arg GetServerVersionParams) ([]GetServerVersionRow, error)

Despite the name, this query returns multiple rows. The actual number of records is bounded by the number of sources that provide the same name and version, which we currently don't expect to be more than a few. Cursor-based pagination using (position, source_id) compound cursor. position is the sort key but may not be unique; source_id is the tiebreaker.

func (*Queries) GetServerVersionBySourceName added in v1.0.0

Source-scoped variant of GetServerVersion used by the publish fetch-back path. source_name and version are required; registry filtering is not applied.

func (*Queries) GetSkillVersion added in v0.6.3

func (q *Queries) GetSkillVersion(ctx context.Context, arg GetSkillVersionParams) ([]GetSkillVersionRow, error)

Despite the name, this query returns multiple rows. The actual number of records is bounded by the number of sources that provide the same name and version, which we currently don't expect to be more than a few. Cursor-based pagination using (position, source_id) compound cursor. position is the sort key but may not be unique; source_id is the tiebreaker.

func (*Queries) GetSkillVersionBySourceName added in v1.0.0

Source-scoped variant of GetSkillVersion used by the publish fetch-back path. source_name and version are required; registry filtering is not applied.

func (*Queries) GetSource added in v1.0.0

func (q *Queries) GetSource(ctx context.Context, id uuid.UUID) (GetSourceRow, error)

func (*Queries) GetSourceByName added in v1.0.0

func (q *Queries) GetSourceByName(ctx context.Context, name string) (GetSourceByNameRow, error)

func (*Queries) GetSourceSync added in v1.0.0

func (q *Queries) GetSourceSync(ctx context.Context, id uuid.UUID) (RegistrySync, error)

func (*Queries) GetSourceSyncByName added in v1.0.0

func (q *Queries) GetSourceSyncByName(ctx context.Context, name string) (RegistrySync, error)

func (*Queries) InitializeSourceSync added in v1.0.0

func (q *Queries) InitializeSourceSync(ctx context.Context, arg InitializeSourceSyncParams) error

func (*Queries) InsertEntryVersion added in v0.6.4

func (q *Queries) InsertEntryVersion(ctx context.Context, arg InsertEntryVersionParams) (uuid.UUID, error)

func (*Queries) InsertRegistryEntry added in v0.6.0

func (q *Queries) InsertRegistryEntry(ctx context.Context, arg InsertRegistryEntryParams) (uuid.UUID, error)

func (*Queries) InsertServerIcon added in v0.3.0

func (q *Queries) InsertServerIcon(ctx context.Context, arg InsertServerIconParams) error

func (*Queries) InsertServerPackage added in v0.3.0

func (q *Queries) InsertServerPackage(ctx context.Context, arg InsertServerPackageParams) error

TODO: this seems unused

func (*Queries) InsertServerRemote added in v0.3.0

func (q *Queries) InsertServerRemote(ctx context.Context, arg InsertServerRemoteParams) error

func (*Queries) InsertServerVersion added in v0.3.0

func (q *Queries) InsertServerVersion(ctx context.Context, arg InsertServerVersionParams) (uuid.UUID, error)

func (*Queries) InsertServerVersionForSync added in v0.3.2

func (q *Queries) InsertServerVersionForSync(ctx context.Context, arg InsertServerVersionForSyncParams) (uuid.UUID, error)

func (*Queries) InsertSkillGitPackage added in v0.6.3

func (q *Queries) InsertSkillGitPackage(ctx context.Context, arg InsertSkillGitPackageParams) error

func (*Queries) InsertSkillOciPackage added in v0.6.3

func (q *Queries) InsertSkillOciPackage(ctx context.Context, arg InsertSkillOciPackageParams) error

func (*Queries) InsertSkillVersion added in v0.6.3

func (q *Queries) InsertSkillVersion(ctx context.Context, arg InsertSkillVersionParams) (uuid.UUID, error)

func (*Queries) InsertSkillVersionForSync added in v0.6.3

func (q *Queries) InsertSkillVersionForSync(ctx context.Context, arg InsertSkillVersionForSyncParams) (uuid.UUID, error)

func (*Queries) InsertSource added in v1.0.0

func (q *Queries) InsertSource(ctx context.Context, arg InsertSourceParams) (Source, error)

============================================================================ Source Queries (unified, creation_type guards are in Go) ============================================================================ Insert a new source with full configuration. creation_type is passed as a parameter.

func (*Queries) InsertSourceSync added in v1.0.0

func (q *Queries) InsertSourceSync(ctx context.Context, arg InsertSourceSyncParams) (uuid.UUID, error)

func (*Queries) LinkRegistrySource added in v1.0.0

func (q *Queries) LinkRegistrySource(ctx context.Context, arg LinkRegistrySourceParams) error

func (*Queries) ListAllSourceNames added in v1.0.0

func (q *Queries) ListAllSourceNames(ctx context.Context) ([]string, error)

func (*Queries) ListEntriesByRegistry added in v1.0.0

func (q *Queries) ListEntriesByRegistry(ctx context.Context, registryID uuid.UUID) ([]ListEntriesByRegistryRow, error)

func (*Queries) ListEntriesBySource added in v1.0.0

func (q *Queries) ListEntriesBySource(ctx context.Context, sourceID uuid.UUID) ([]ListEntriesBySourceRow, error)

func (*Queries) ListEntryVersions added in v0.6.6

func (q *Queries) ListEntryVersions(ctx context.Context, entryID uuid.UUID) ([]ListEntryVersionsRow, error)

func (*Queries) ListRegistries

func (q *Queries) ListRegistries(ctx context.Context, arg ListRegistriesParams) ([]Registry, error)

Queries for the new lightweight registry table and registry_source junction.

func (*Queries) ListRegistrySources added in v1.0.0

func (q *Queries) ListRegistrySources(ctx context.Context, registryID uuid.UUID) ([]ListRegistrySourcesRow, error)

func (*Queries) ListServerPackages added in v0.3.0

func (q *Queries) ListServerPackages(ctx context.Context, versionIds []uuid.UUID) ([]ListServerPackagesRow, error)

func (*Queries) ListServerRemotes added in v0.3.0

func (q *Queries) ListServerRemotes(ctx context.Context, versionIds []uuid.UUID) ([]McpServerRemote, error)

func (*Queries) ListServers

func (q *Queries) ListServers(ctx context.Context, arg ListServersParams) ([]ListServersRow, error)

Cursor-based pagination using (name, version) compound cursor. The cursor_name and cursor_version parameters define the starting point. When cursor is provided, results start AFTER the specified (name, version) tuple. Returns position from registry_source for source priority ordering. When name is provided, results are filtered to versions of that specific server.

func (*Queries) ListSkillGitPackages added in v0.6.3

func (q *Queries) ListSkillGitPackages(ctx context.Context, versionIds []uuid.UUID) ([]SkillGitPackage, error)

func (*Queries) ListSkillOciPackages added in v0.6.3

func (q *Queries) ListSkillOciPackages(ctx context.Context, versionIds []uuid.UUID) ([]SkillOciPackage, error)

func (*Queries) ListSkills added in v0.6.3

func (q *Queries) ListSkills(ctx context.Context, arg ListSkillsParams) ([]ListSkillsRow, error)

Cursor-based pagination using (name, version) compound cursor. The cursor_name and cursor_version parameters define the starting point. When cursor is provided, results start AFTER the specified (name, version) tuple. Returns position from registry_source for source priority ordering.

func (*Queries) ListSourceSyncs added in v1.0.0

func (q *Queries) ListSourceSyncs(ctx context.Context) ([]ListSourceSyncsRow, error)

func (*Queries) ListSourceSyncsByLastUpdate added in v1.0.0

func (q *Queries) ListSourceSyncsByLastUpdate(ctx context.Context) ([]ListSourceSyncsByLastUpdateRow, error)

func (*Queries) ListSources added in v1.0.0

func (q *Queries) ListSources(ctx context.Context, arg ListSourcesParams) ([]ListSourcesRow, error)

func (*Queries) PropagateSourceClaimsToEntries added in v1.0.0

func (q *Queries) PropagateSourceClaimsToEntries(ctx context.Context, arg PropagateSourceClaimsToEntriesParams) error

Update all registry entries for a source to match the source's current claims. Used during initialization to fix drift when source claims change without data change.

func (*Queries) UnlinkAllRegistrySources added in v1.0.0

func (q *Queries) UnlinkAllRegistrySources(ctx context.Context, registryID uuid.UUID) error

func (*Queries) UnlinkRegistrySource added in v1.0.0

func (q *Queries) UnlinkRegistrySource(ctx context.Context, arg UnlinkRegistrySourceParams) error

func (*Queries) UpdateSource added in v1.0.0

func (q *Queries) UpdateSource(ctx context.Context, arg UpdateSourceParams) (Source, error)

Update an existing source. Go callers guard against modifying wrong creation_type.

func (*Queries) UpdateSourceSync added in v1.0.0

func (q *Queries) UpdateSourceSync(ctx context.Context, arg UpdateSourceSyncParams) error

func (*Queries) UpdateSourceSyncStatusByName added in v1.0.0

func (q *Queries) UpdateSourceSyncStatusByName(ctx context.Context, arg UpdateSourceSyncStatusByNameParams) error

func (*Queries) UpsertEntryVersionsFromTemp added in v0.6.4

func (q *Queries) UpsertEntryVersionsFromTemp(ctx context.Context) ([]UpsertEntryVersionsFromTempRow, error)

func (*Queries) UpsertIconsFromTemp added in v0.3.2

func (q *Queries) UpsertIconsFromTemp(ctx context.Context) error

func (*Queries) UpsertLatestServerVersion

func (q *Queries) UpsertLatestServerVersion(ctx context.Context, arg UpsertLatestServerVersionParams) (uuid.UUID, error)

func (*Queries) UpsertLatestSkillVersion added in v0.6.3

func (q *Queries) UpsertLatestSkillVersion(ctx context.Context, arg UpsertLatestSkillVersionParams) (uuid.UUID, error)

func (*Queries) UpsertPackagesFromTemp added in v0.3.2

func (q *Queries) UpsertPackagesFromTemp(ctx context.Context) error

func (*Queries) UpsertRegistry added in v0.3.1

func (q *Queries) UpsertRegistry(ctx context.Context, arg UpsertRegistryParams) (Registry, error)

Insert or update a registry. The creation_type is passed as a parameter. Business logic in Go guards against cross-type overwrites.

func (*Queries) UpsertRegistryEntriesFromTemp added in v0.6.0

func (q *Queries) UpsertRegistryEntriesFromTemp(ctx context.Context) ([]UpsertRegistryEntriesFromTempRow, error)

func (*Queries) UpsertRemotesFromTemp added in v0.3.2

func (q *Queries) UpsertRemotesFromTemp(ctx context.Context) error

func (*Queries) UpsertServerVersionForSync added in v0.3.2

func (q *Queries) UpsertServerVersionForSync(ctx context.Context, arg UpsertServerVersionForSyncParams) (uuid.UUID, error)

func (*Queries) UpsertServersFromTemp added in v0.3.2

func (q *Queries) UpsertServersFromTemp(ctx context.Context) error

func (*Queries) UpsertSkillVersionForSync added in v0.6.3

func (q *Queries) UpsertSkillVersionForSync(ctx context.Context, arg UpsertSkillVersionForSyncParams) (uuid.UUID, error)

func (*Queries) UpsertSource added in v1.0.0

func (q *Queries) UpsertSource(ctx context.Context, arg UpsertSourceParams) (uuid.UUID, error)

============================================================================ CONFIG Source Queries (only operate on creation_type='CONFIG') ============================================================================ Insert or update a source. The creation_type is passed as a parameter. Business logic in Go guards against cross-type overwrites.

func (*Queries) UpsertSourceSyncByName added in v1.0.0

func (q *Queries) UpsertSourceSyncByName(ctx context.Context, arg UpsertSourceSyncByNameParams) error

func (*Queries) WithTx

func (q *Queries) WithTx(tx pgx.Tx) *Queries

type Registry

type Registry struct {
	ID           uuid.UUID    `json:"id"`
	Name         string       `json:"name"`
	Claims       []byte       `json:"claims"`
	CreationType CreationType `json:"creation_type"`
	CreatedAt    *time.Time   `json:"created_at"`
	UpdatedAt    *time.Time   `json:"updated_at"`
}

type RegistryEntry added in v0.6.0

type RegistryEntry struct {
	ID        uuid.UUID  `json:"id"`
	SourceID  uuid.UUID  `json:"source_id"`
	EntryType EntryType  `json:"entry_type"`
	Name      string     `json:"name"`
	CreatedAt *time.Time `json:"created_at"`
	UpdatedAt *time.Time `json:"updated_at"`
	Claims    []byte     `json:"claims"`
}

type RegistrySource added in v1.0.0

type RegistrySource struct {
	RegistryID uuid.UUID  `json:"registry_id"`
	SourceID   uuid.UUID  `json:"source_id"`
	Position   int32      `json:"position"`
	CreatedAt  *time.Time `json:"created_at"`
}

type RegistrySync

type RegistrySync struct {
	ID                    uuid.UUID  `json:"id"`
	SourceID              *uuid.UUID `json:"source_id"`
	SyncStatus            SyncStatus `json:"sync_status"`
	ErrorMsg              *string    `json:"error_msg"`
	StartedAt             *time.Time `json:"started_at"`
	EndedAt               *time.Time `json:"ended_at"`
	AttemptCount          int64      `json:"attempt_count"`
	LastSyncHash          *string    `json:"last_sync_hash"`
	LastAppliedFilterHash *string    `json:"last_applied_filter_hash"`
	ServerCount           int64      `json:"server_count"`
	SkillCount            int64      `json:"skill_count"`
}

type Skill added in v0.6.3

type Skill struct {
	VersionID     uuid.UUID   `json:"version_id"`
	Namespace     string      `json:"namespace"`
	Status        SkillStatus `json:"status"`
	License       *string     `json:"license"`
	Compatibility *string     `json:"compatibility"`
	AllowedTools  []string    `json:"allowed_tools"`
	Repository    []byte      `json:"repository"`
	Icons         []byte      `json:"icons"`
	Metadata      []byte      `json:"metadata"`
	ExtensionMeta []byte      `json:"extension_meta"`
}

type SkillGitPackage added in v0.6.3

type SkillGitPackage struct {
	ID        uuid.UUID `json:"id"`
	SkillID   uuid.UUID `json:"skill_id"`
	Url       string    `json:"url"`
	Ref       *string   `json:"ref"`
	CommitSha *string   `json:"commit_sha"`
	Subfolder *string   `json:"subfolder"`
}

type SkillOciPackage added in v0.6.3

type SkillOciPackage struct {
	ID         uuid.UUID `json:"id"`
	SkillID    uuid.UUID `json:"skill_id"`
	Identifier string    `json:"identifier"`
	Digest     *string   `json:"digest"`
	MediaType  *string   `json:"media_type"`
}

type SkillStatus added in v0.6.3

type SkillStatus string
const (
	SkillStatusACTIVE     SkillStatus = "ACTIVE"
	SkillStatusDEPRECATED SkillStatus = "DEPRECATED"
	SkillStatusARCHIVED   SkillStatus = "ARCHIVED"
)

func (*SkillStatus) Scan added in v0.6.3

func (e *SkillStatus) Scan(src interface{}) error

type Source added in v1.0.0

type Source struct {
	ID           uuid.UUID        `json:"id"`
	Name         string           `json:"name"`
	CreatedAt    *time.Time       `json:"created_at"`
	UpdatedAt    *time.Time       `json:"updated_at"`
	CreationType CreationType     `json:"creation_type"`
	SyncSchedule pgtypes.Interval `json:"sync_schedule"`
	SourceType   string           `json:"source_type"`
	Format       *string          `json:"format"`
	SourceConfig []byte           `json:"source_config"`
	FilterConfig []byte           `json:"filter_config"`
	Syncable     bool             `json:"syncable"`
	Claims       []byte           `json:"claims"`
}

type SyncStatus

type SyncStatus string
const (
	SyncStatusINPROGRESS SyncStatus = "IN_PROGRESS"
	SyncStatusCOMPLETED  SyncStatus = "COMPLETED"
	SyncStatusFAILED     SyncStatus = "FAILED"
)

func (*SyncStatus) Scan

func (e *SyncStatus) Scan(src interface{}) error

type TempEntryVersion added in v0.6.4

type TempEntryVersion struct {
	ID          uuid.UUID  `json:"id"`
	EntryID     uuid.UUID  `json:"entry_id"`
	Name        string     `json:"name"`
	Version     string     `json:"version"`
	Title       *string    `json:"title"`
	Description *string    `json:"description"`
	CreatedAt   *time.Time `json:"created_at"`
	UpdatedAt   *time.Time `json:"updated_at"`
}

type TempMcpServer added in v0.3.2

type TempMcpServer struct {
	VersionID           uuid.UUID `json:"version_id"`
	Website             *string   `json:"website"`
	UpstreamMeta        []byte    `json:"upstream_meta"`
	ServerMeta          []byte    `json:"server_meta"`
	RepositoryUrl       *string   `json:"repository_url"`
	RepositoryID        *string   `json:"repository_id"`
	RepositorySubfolder *string   `json:"repository_subfolder"`
	RepositoryType      *string   `json:"repository_type"`
}

type TempMcpServerIcon added in v0.3.2

type TempMcpServerIcon struct {
	ServerID  uuid.UUID `json:"server_id"`
	SourceUri string    `json:"source_uri"`
	MimeType  string    `json:"mime_type"`
	Theme     string    `json:"theme"`
}

type TempMcpServerPackage added in v0.3.2

type TempMcpServerPackage struct {
	ServerID         uuid.UUID `json:"server_id"`
	RegistryType     string    `json:"registry_type"`
	PkgRegistryUrl   string    `json:"pkg_registry_url"`
	PkgIdentifier    string    `json:"pkg_identifier"`
	PkgVersion       string    `json:"pkg_version"`
	RuntimeHint      *string   `json:"runtime_hint"`
	RuntimeArguments []string  `json:"runtime_arguments"`
	PackageArguments []string  `json:"package_arguments"`
	EnvVars          []string  `json:"env_vars"`
	Sha256Hash       *string   `json:"sha256_hash"`
	Transport        string    `json:"transport"`
	TransportUrl     *string   `json:"transport_url"`
	TransportHeaders []string  `json:"transport_headers"`
}

type TempMcpServerRemote added in v0.3.2

type TempMcpServerRemote struct {
	ServerID         uuid.UUID `json:"server_id"`
	Transport        string    `json:"transport"`
	TransportUrl     string    `json:"transport_url"`
	TransportHeaders []string  `json:"transport_headers"`
}

type TempRegistryEntry added in v0.6.0

type TempRegistryEntry struct {
	ID        uuid.UUID  `json:"id"`
	SourceID  uuid.UUID  `json:"source_id"`
	EntryType EntryType  `json:"entry_type"`
	Name      string     `json:"name"`
	Claims    []byte     `json:"claims"`
	CreatedAt *time.Time `json:"created_at"`
	UpdatedAt *time.Time `json:"updated_at"`
}

type UnlinkRegistrySourceParams added in v1.0.0

type UnlinkRegistrySourceParams struct {
	RegistryID uuid.UUID `json:"registry_id"`
	SourceID   uuid.UUID `json:"source_id"`
}

type UpdateSourceParams added in v1.0.0

type UpdateSourceParams struct {
	SourceType   string           `json:"source_type"`
	Format       *string          `json:"format"`
	SourceConfig []byte           `json:"source_config"`
	FilterConfig []byte           `json:"filter_config"`
	SyncSchedule pgtypes.Interval `json:"sync_schedule"`
	Syncable     bool             `json:"syncable"`
	Claims       []byte           `json:"claims"`
	UpdatedAt    *time.Time       `json:"updated_at"`
	Name         string           `json:"name"`
}

type UpdateSourceSyncParams added in v1.0.0

type UpdateSourceSyncParams struct {
	SyncStatus SyncStatus `json:"sync_status"`
	ErrorMsg   *string    `json:"error_msg"`
	EndedAt    *time.Time `json:"ended_at"`
	ID         uuid.UUID  `json:"id"`
}

type UpdateSourceSyncStatusByNameParams added in v1.0.0

type UpdateSourceSyncStatusByNameParams struct {
	SyncStatus SyncStatus `json:"sync_status"`
	StartedAt  *time.Time `json:"started_at"`
	Name       string     `json:"name"`
}

type UpsertEntryVersionsFromTempRow added in v0.6.4

type UpsertEntryVersionsFromTempRow struct {
	ID      uuid.UUID `json:"id"`
	EntryID uuid.UUID `json:"entry_id"`
	Version string    `json:"version"`
}

type UpsertLatestServerVersionParams

type UpsertLatestServerVersionParams struct {
	SourceID  uuid.UUID `json:"source_id"`
	Name      string    `json:"name"`
	Version   string    `json:"version"`
	VersionID uuid.UUID `json:"version_id"`
}

type UpsertLatestSkillVersionParams added in v0.6.3

type UpsertLatestSkillVersionParams struct {
	SourceID  uuid.UUID `json:"source_id"`
	Name      string    `json:"name"`
	Version   string    `json:"version"`
	VersionID uuid.UUID `json:"version_id"`
}

type UpsertRegistryEntriesFromTempRow added in v0.6.0

type UpsertRegistryEntriesFromTempRow struct {
	ID        uuid.UUID `json:"id"`
	SourceID  uuid.UUID `json:"source_id"`
	EntryType EntryType `json:"entry_type"`
	Name      string    `json:"name"`
}

type UpsertRegistryParams added in v0.3.1

type UpsertRegistryParams struct {
	Name         string       `json:"name"`
	Claims       []byte       `json:"claims"`
	CreationType CreationType `json:"creation_type"`
	CreatedAt    *time.Time   `json:"created_at"`
	UpdatedAt    *time.Time   `json:"updated_at"`
}

type UpsertServerVersionForSyncParams added in v0.3.2

type UpsertServerVersionForSyncParams struct {
	VersionID           uuid.UUID `json:"version_id"`
	Website             *string   `json:"website"`
	UpstreamMeta        []byte    `json:"upstream_meta"`
	ServerMeta          []byte    `json:"server_meta"`
	RepositoryUrl       *string   `json:"repository_url"`
	RepositoryID        *string   `json:"repository_id"`
	RepositorySubfolder *string   `json:"repository_subfolder"`
	RepositoryType      *string   `json:"repository_type"`
}

type UpsertSkillVersionForSyncParams added in v0.6.3

type UpsertSkillVersionForSyncParams struct {
	VersionID     uuid.UUID       `json:"version_id"`
	Namespace     string          `json:"namespace"`
	Status        NullSkillStatus `json:"status"`
	License       *string         `json:"license"`
	Compatibility *string         `json:"compatibility"`
	AllowedTools  []string        `json:"allowed_tools"`
	Repository    []byte          `json:"repository"`
	Icons         []byte          `json:"icons"`
	Metadata      []byte          `json:"metadata"`
	ExtensionMeta []byte          `json:"extension_meta"`
}

type UpsertSourceParams added in v1.0.0

type UpsertSourceParams struct {
	Name         string           `json:"name"`
	CreationType CreationType     `json:"creation_type"`
	SourceType   string           `json:"source_type"`
	Format       *string          `json:"format"`
	SourceConfig []byte           `json:"source_config"`
	FilterConfig []byte           `json:"filter_config"`
	SyncSchedule pgtypes.Interval `json:"sync_schedule"`
	Syncable     bool             `json:"syncable"`
	Claims       []byte           `json:"claims"`
	CreatedAt    *time.Time       `json:"created_at"`
	UpdatedAt    *time.Time       `json:"updated_at"`
}

type UpsertSourceSyncByNameParams added in v1.0.0

type UpsertSourceSyncByNameParams struct {
	Name                  string     `json:"name"`
	SyncStatus            SyncStatus `json:"sync_status"`
	ErrorMsg              *string    `json:"error_msg"`
	StartedAt             *time.Time `json:"started_at"`
	EndedAt               *time.Time `json:"ended_at"`
	AttemptCount          int64      `json:"attempt_count"`
	LastSyncHash          *string    `json:"last_sync_hash"`
	LastAppliedFilterHash *string    `json:"last_applied_filter_hash"`
	ServerCount           int64      `json:"server_count"`
	SkillCount            int64      `json:"skill_count"`
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL