Documentation
¶
Overview ¶
Package steps provides the action executor step.
Package steps contains the modular "Lego block" pipeline steps. Each step implements the pipeline.Step interface.
Package steps provides the indexer step for adding issues to the vector database.
Package steps provides the response builder step.
Package steps provides the similarity search step.
Package steps provides the transfer check step.
Package steps provides the triage step.
Package steps provides the VectorDB preparation step.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func RegisterAll ¶
RegisterAll registers all built-in steps with the registry.
Types ¶
type ActionExecutor ¶
type ActionExecutor struct {
// contains filtered or unexported fields
}
ActionExecutor executes the decided actions (posting comments, transferring, etc).
func NewActionExecutor ¶
func NewActionExecutor(deps *pipeline.Dependencies) *ActionExecutor
NewActionExecutor creates a new action executor step.
type Gatekeeper ¶
type Gatekeeper struct{}
Gatekeeper checks if the issue's repository is enabled and applies cooldown logic.
func NewGatekeeper ¶
func NewGatekeeper(deps *pipeline.Dependencies) *Gatekeeper
NewGatekeeper creates a new gatekeeper step.
type Indexer ¶
type Indexer struct {
// contains filtered or unexported fields
}
Indexer adds/updates the issue in the vector database.
func NewIndexer ¶
func NewIndexer(deps *pipeline.Dependencies) *Indexer
NewIndexer creates a new indexer step.
type PendingAction ¶
type PendingAction struct {
IssueNumber int `json:"issue_number"`
Org string `json:"org"`
Repo string `json:"repo"`
TransferTarget string `json:"transfer_target,omitempty"`
Reason string `json:"reason"`
CreatedAt time.Time `json:"created_at"`
ExpiresAt time.Time `json:"expires_at"`
}
PendingAction represents an action that needs to be executed later.
type PendingActionScheduler ¶
type PendingActionScheduler struct {
// contains filtered or unexported fields
}
PendingActionScheduler schedules actions that could not be executed immediately.
func NewPendingActionScheduler ¶
func NewPendingActionScheduler(deps *pipeline.Dependencies) *PendingActionScheduler
NewPendingActionScheduler creates a new PendingActionScheduler step.
func (*PendingActionScheduler) Name ¶
func (s *PendingActionScheduler) Name() string
Name returns the step name.
type ResponseBuilder ¶
type ResponseBuilder struct {
// contains filtered or unexported fields
}
ResponseBuilder constructs the comment to post on the issue.
func NewResponseBuilder ¶
func NewResponseBuilder(deps *pipeline.Dependencies) *ResponseBuilder
NewResponseBuilder creates a new response builder step.
type SimilaritySearch ¶
type SimilaritySearch struct {
// contains filtered or unexported fields
}
SimilaritySearch finds similar issues using the vector database.
func NewSimilaritySearch ¶
func NewSimilaritySearch(deps *pipeline.Dependencies) *SimilaritySearch
NewSimilaritySearch creates a new similarity search step.
func (*SimilaritySearch) Name ¶
func (s *SimilaritySearch) Name() string
Name returns the step name.
type TransferCheck ¶
type TransferCheck struct{}
TransferCheck evaluates if an issue should be transferred to another repository.
func NewTransferCheck ¶
func NewTransferCheck(deps *pipeline.Dependencies) *TransferCheck
NewTransferCheck creates a new transfer check step.
type Triage ¶
type Triage struct {
// contains filtered or unexported fields
}
Triage uses LLM to analyze and classify the issue.
func NewTriage ¶
func NewTriage(deps *pipeline.Dependencies) *Triage
NewTriage creates a new triage step.
type VectorDBPrep ¶
type VectorDBPrep struct {
// contains filtered or unexported fields
}
VectorDBPrep ensures the vector database collection exists and is ready.
func NewVectorDBPrep ¶
func NewVectorDBPrep(deps *pipeline.Dependencies) *VectorDBPrep
NewVectorDBPrep creates a new vector DB preparation step.