Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type DocumentService ¶
type DocumentService interface {
ListRepos() []RepoInfo
SearchDocs(query string) []FileEntry
GetFileContent(ctx context.Context, repo, path string) (string, error)
Status() (scanning bool, lastScan time.Time, repoCount int)
TriggerScan() bool
}
DocumentService is the inbound port called by internal/adapter/mcp tools.
type FileEntry ¶
type FileEntry struct {
RepoName string `json:"repo_name"`
Path string `json:"path"`
SHA string `json:"sha"`
Type string `json:"type"`
}
FileEntry represents an indexed documentation file.
type RepoInfo ¶
type RepoInfo struct {
Name string `json:"name"`
FullName string `json:"full_name"`
Description string `json:"description"`
HTMLURL string `json:"html_url"`
Files []FileEntry `json:"files"`
}
RepoInfo holds metadata about a repository that contains documentation.
type ScannerGateway ¶
type ScannerGateway interface {
Start(ctx context.Context)
SetOnScanComplete(func([]RepoInfo))
Status() (scanning bool, lastScan time.Time, repoCount int)
TriggerScan() bool
TriggerRepoScan(ctx context.Context, owner, repo string)
}
ScannerGateway is the outbound port implemented by internal/infra/github.
Click to show internal directories.
Click to hide internal directories.