Documentation
¶
Index ¶
- Variables
- func ExtractConfluenceRichContent(plan ConfluenceQueryPlan, raw json.RawMessage, options RichContentOptions) (RichContentItem, []RichContentChunk, error)
- func ExtractJiraRichContent(plan JiraQueryPlan, raw json.RawMessage, options RichContentOptions) (RichContentItem, []RichContentChunk, error)
- func RetryAfter(header string) time.Duration
- type ActiveSyncRunStore
- type AsyncPollRunner
- type ConfluencePlanInput
- type ConfluencePoller
- type ConfluenceProgressPoller
- type ConfluenceQueryPlan
- type CredentialResolver
- type Credentials
- type ErrorCategory
- type IntegrationToolError
- type ItemCountStore
- type ItemListOptions
- type ItemListResult
- type ItemListStore
- type ItemMetadata
- type ItemMetadataInput
- type JiraPlanInput
- type JiraPoller
- type JiraProgressPoller
- type JiraQueryPlan
- type LocalItemListInput
- type LocalReadInput
- type LocalSearchInput
- type Planner
- type PollItem
- type PollProgress
- type PollProgressFunc
- type PollResult
- type PollRunResult
- type PollRunner
- type ProjectIntegrationCounts
- type Provider
- type ProviderCoverage
- type ProviderError
- type ProviderItemCount
- type ProviderPollAccepted
- type ProviderPollStatus
- type ProviderSchedule
- type ProviderStatus
- type ProviderSummary
- type RichContentArtifact
- type RichContentChunk
- type RichContentChunkView
- type RichContentField
- type RichContentGraphResult
- type RichContentGraphStore
- func (store *RichContentGraphStore) GetRichContentItem(ctx context.Context, projectID string, provider Provider, itemID string, ...) (RichContentReadResult, error)
- func (store *RichContentGraphStore) ListRichContentTitles(ctx context.Context, projectID string, provider Provider, itemIDs []string) (map[string]string, error)
- func (store *RichContentGraphStore) PutRichContentItem(ctx context.Context, item RichContentItem, chunks []RichContentChunk) (RichContentGraphResult, error)
- func (store *RichContentGraphStore) SearchRichContent(ctx context.Context, projectID string, options RichContentSearchOptions) ([]RichContentSearchResult, error)
- type RichContentItem
- type RichContentOptions
- type RichContentPayload
- type RichContentReadOptions
- type RichContentReadResult
- type RichContentReader
- type RichContentSearchOptions
- type RichContentSearchResult
- type RichContentStore
- type RichContentTitleReader
- type Runner
- func (runner *Runner) ExecutePreparedProviderPoll(ctx context.Context, run SyncRun) (PollRunResult, error)
- func (runner *Runner) FailPreparedProviderPoll(ctx context.Context, run SyncRun, errorCategory string) (SyncRun, error)
- func (runner *Runner) PrepareProviderPoll(ctx context.Context, projectID string, provider Provider, kind SyncKind) (SyncRun, error)
- func (runner *Runner) RunProviderPoll(ctx context.Context, projectID string, provider Provider, kind SyncKind) (PollRunResult, error)
- type RunnerBatchItemStore
- type RunnerOptions
- type RunnerStore
- type SQLiteStore
- func (store *SQLiteStore) CountItems(ctx context.Context, projectID string, provider Provider) (int, error)
- func (store *SQLiteStore) CreateSyncRun(ctx context.Context, run SyncRun) error
- func (store *SQLiteStore) FailActiveSyncRuns(ctx context.Context, finishedAt time.Time, errorCategory string) (int, error)
- func (store *SQLiteStore) GetActiveSyncRun(ctx context.Context, projectID string, provider Provider) (SyncRun, error)
- func (store *SQLiteStore) GetSyncRun(ctx context.Context, projectID string, provider Provider, runID string) (SyncRun, error)
- func (store *SQLiteStore) GetSyncState(ctx context.Context, projectID string, provider Provider) (SyncState, error)
- func (store *SQLiteStore) ListItems(ctx context.Context, projectID string, provider Provider) ([]ItemMetadata, error)
- func (store *SQLiteStore) ListItemsPage(ctx context.Context, projectID string, provider Provider, ...) (ItemListResult, error)
- func (store *SQLiteStore) ListSources(ctx context.Context, projectID string) ([]SourceMetadata, error)
- func (store *SQLiteStore) UpdateSyncRun(ctx context.Context, run SyncRun) error
- func (store *SQLiteStore) UpdateSyncState(ctx context.Context, input SyncStateInput) (SyncState, error)
- func (store *SQLiteStore) UpsertItem(ctx context.Context, input ItemMetadataInput) (ItemMetadata, error)
- func (store *SQLiteStore) UpsertItems(ctx context.Context, inputs []ItemMetadataInput) ([]ItemMetadata, error)
- func (store *SQLiteStore) UpsertSource(ctx context.Context, input SourceMetadataInput) (SourceMetadata, error)
- type Scheduler
- func (scheduler *Scheduler) Diagnostics() SchedulerDiagnostics
- func (scheduler *Scheduler) RunProviderPoll(ctx context.Context, projectID string, provider Provider, kind SyncKind) (PollRunResult, error)
- func (scheduler *Scheduler) ScheduledProviders() []ProviderSchedule
- func (scheduler *Scheduler) Start(ctx context.Context) error
- func (scheduler *Scheduler) Stop(ctx context.Context) error
- func (scheduler *Scheduler) SubmitProviderPoll(ctx context.Context, projectID string, provider Provider, kind SyncKind) (SyncRun, error)
- type SchedulerDiagnostics
- type SchedulerOptions
- type Service
- func (service *Service) Counts(ctx context.Context, projectID string) (ProjectIntegrationCounts, error)
- func (service *Service) ListLocalItemTitles(ctx context.Context, projectID string, provider Provider, items []ItemMetadata) (map[string]string, error)
- func (service *Service) ListLocalItems(ctx context.Context, input LocalItemListInput) (ItemListResult, error)
- func (service *Service) ListProviders(projectID string) ([]ProviderSummary, error)
- func (service *Service) PollProvider(ctx context.Context, projectID string, provider Provider, kind SyncKind) (ProviderPollStatus, error)
- func (service *Service) PollRunStatus(ctx context.Context, projectID string, provider Provider, runID string) (ProviderPollStatus, error)
- func (service *Service) ReadLocalContent(ctx context.Context, input LocalReadInput) (RichContentReadResult, error)
- func (service *Service) SearchLocalContent(ctx context.Context, input LocalSearchInput) ([]RichContentSearchResult, error)
- func (service *Service) Status(ctx context.Context, projectID string, provider Provider) (ProviderStatus, error)
- func (service *Service) SubmitProviderPoll(ctx context.Context, projectID string, provider Provider, kind SyncKind) (ProviderPollAccepted, error)
- func (service *Service) UpsertConfiguredSources(ctx context.Context, projectID string) ([]SourceMetadata, error)
- type ServiceOptions
- type SourceMetadata
- type SourceMetadataInput
- type Store
- type SyncKind
- type SyncRun
- type SyncRunStatus
- type SyncRunStatusView
- type SyncState
- type SyncStateInput
- type SyncStateStatus
- type ToolErrorReason
Constants ¶
This section is empty.
Variables ¶
View Source
var ErrInvalidInput = errors.New("invalid integration input")
View Source
var ErrNotFound = errors.New("integration resource not found")
View Source
var ErrProviderRequestFailed = errors.New("integration provider request failed")
Functions ¶
func ExtractConfluenceRichContent ¶
func ExtractConfluenceRichContent(plan ConfluenceQueryPlan, raw json.RawMessage, options RichContentOptions) (RichContentItem, []RichContentChunk, error)
func ExtractJiraRichContent ¶
func ExtractJiraRichContent(plan JiraQueryPlan, raw json.RawMessage, options RichContentOptions) (RichContentItem, []RichContentChunk, error)
func RetryAfter ¶
Types ¶
type ActiveSyncRunStore ¶
type AsyncPollRunner ¶
type ConfluencePlanInput ¶
type ConfluencePlanInput struct {
ProjectID string
Config config.ConfluenceIntegration
State SyncState
Kind SyncKind
}
type ConfluencePoller ¶
type ConfluencePoller interface {
PollConfluence(context.Context, Credentials, ConfluenceQueryPlan) (PollResult, error)
}
type ConfluenceProgressPoller ¶
type ConfluenceProgressPoller interface {
PollConfluenceWithProgress(context.Context, Credentials, ConfluenceQueryPlan, PollProgressFunc) (PollResult, error)
}
type ConfluenceQueryPlan ¶
type ConfluenceQueryPlan struct {
ProjectID string
Provider Provider
Kind SyncKind
SpaceKeys []string
CQL string
PageSize int
MaxResults int
IncrementalInterval time.Duration
OverlapWindow time.Duration
Since time.Time
BodyRepresentation string
IncludeBody bool
IncludeComments bool
IncludeLabels bool
IncludeProperties bool
}
func PlanConfluenceQuery ¶
func PlanConfluenceQuery(input ConfluencePlanInput) (ConfluenceQueryPlan, error)
type CredentialResolver ¶
type CredentialResolver struct {
LookupEnv func(string) (string, bool)
ReadFile func(string) ([]byte, error)
}
func NewCredentialResolver ¶
func NewCredentialResolver() CredentialResolver
func (CredentialResolver) ResolveAtlassian ¶
func (resolver CredentialResolver) ResolveAtlassian(refs config.AtlassianCredentialRefs) (Credentials, error)
type Credentials ¶
type ErrorCategory ¶
type ErrorCategory string
const ( ErrorCategoryAuthFailed ErrorCategory = "auth_failed" ErrorCategoryPermissionDenied ErrorCategory = "permission_denied" ErrorCategoryNotFound ErrorCategory = "not_found" ErrorCategoryRateLimited ErrorCategory = "rate_limited" ErrorCategoryUnexpectedStatus ErrorCategory = "unexpected_status" ErrorCategoryRequestFailed ErrorCategory = "request_failed" ErrorCategoryDecodeFailed ErrorCategory = "decode_failed" ErrorCategoryStorageFailed ErrorCategory = "storage_failed" ErrorCategoryInterrupted ErrorCategory = "interrupted" )
type IntegrationToolError ¶ added in v0.1.10
type IntegrationToolError struct {
Code string `json:"code"`
Reason ToolErrorReason `json:"reason"`
ProjectID string `json:"project_id,omitempty"`
Provider Provider `json:"provider,omitempty"`
Key string `json:"key,omitempty"`
Remediation []string `json:"remediation,omitempty"`
}
func (*IntegrationToolError) Error ¶ added in v0.1.10
func (err *IntegrationToolError) Error() string
func (*IntegrationToolError) Unwrap ¶ added in v0.1.10
func (err *IntegrationToolError) Unwrap() error
type ItemCountStore ¶
type ItemListOptions ¶ added in v0.1.14
type ItemListResult ¶ added in v0.1.14
type ItemListStore ¶ added in v0.1.14
type ItemListStore interface {
ListItemsPage(context.Context, string, Provider, ItemListOptions) (ItemListResult, error)
}
type ItemMetadata ¶
type ItemMetadata struct {
ProjectID string
Provider Provider
ItemID string
ItemKey string
ItemIDHash string
ItemKeyHash string
ItemType string
ItemStatus string
ItemUpdatedAt time.Time
ContentSHA256 string
ProviderVersion string
ProviderETag string
FirstSeenAt time.Time
LastSeenAt time.Time
LastRunID string
Changed bool
}
type ItemMetadataInput ¶
type JiraPlanInput ¶
type JiraPlanInput struct {
ProjectID string
Config config.JiraIntegration
State SyncState
Kind SyncKind
}
type JiraPoller ¶
type JiraPoller interface {
PollJira(context.Context, Credentials, JiraQueryPlan) (PollResult, error)
}
type JiraProgressPoller ¶
type JiraProgressPoller interface {
PollJiraWithProgress(context.Context, Credentials, JiraQueryPlan, PollProgressFunc) (PollResult, error)
}
type JiraQueryPlan ¶
type JiraQueryPlan struct {
ProjectID string
Provider Provider
Kind SyncKind
ProjectKeys []string
JQL string
Fields []string
PageSize int
MaxResults int
IncrementalInterval time.Duration
OverlapWindow time.Duration
Since time.Time
IncludeRichFields bool
IncludeComments bool
}
func PlanJiraQuery ¶
func PlanJiraQuery(input JiraPlanInput) (JiraQueryPlan, error)
type LocalItemListInput ¶ added in v0.1.14
type LocalReadInput ¶
type LocalSearchInput ¶
type Planner ¶
type Planner struct {
Jira func(JiraPlanInput) (JiraQueryPlan, error)
Confluence func(ConfluencePlanInput) (ConfluenceQueryPlan, error)
}
type PollProgress ¶
type PollProgress struct {
ItemsSeen int
}
type PollProgressFunc ¶
type PollProgressFunc func(context.Context, PollProgress) error
type PollResult ¶
type PollResult struct {
Items []PollItem
RichContent []RichContentPayload
Cursor string
}
type PollRunResult ¶
type PollRunner ¶
type ProjectIntegrationCounts ¶
type ProjectIntegrationCounts struct {
ProjectID string
Counts []ProviderItemCount
}
type ProviderCoverage ¶ added in v0.1.10
type ProviderError ¶
type ProviderError struct {
Provider string
Operation string
Category ErrorCategory
StatusCode int
RetryAfter time.Duration
}
func DecodeError ¶
func DecodeError(provider, operation string) *ProviderError
func ProviderErrorFromStatus ¶
func ProviderErrorFromStatus(provider, operation string, statusCode int, retryAfter time.Duration) *ProviderError
func RequestError ¶
func RequestError(provider, operation string) *ProviderError
func (*ProviderError) Error ¶
func (err *ProviderError) Error() string
func (*ProviderError) Unwrap ¶
func (err *ProviderError) Unwrap() error
type ProviderItemCount ¶
type ProviderPollAccepted ¶
type ProviderPollAccepted struct {
ProjectID string
Provider Provider
Accepted bool
Run SyncRunStatusView
}
type ProviderPollStatus ¶
type ProviderPollStatus struct {
ProjectID string
Provider Provider
Run SyncRunStatusView
SyncState SyncStateStatus
}
type ProviderSchedule ¶
type ProviderStatus ¶
type ProviderStatus struct {
ProjectID string
Provider Provider
Configured bool
Enabled bool
AuthMode string
CredentialSource string
AllowlistKind string
AllowlistCount int
IngestionEnabled bool
InitialFullSync string
IncrementalInterval time.Duration
EmptyPollSleep time.Duration
MaxIdleSleep time.Duration
OverlapWindow time.Duration
InitialPageSize int
IncrementalPageSize int
MaxResults int
SourcePersisted bool
SourceAllowlistCount int
SyncState *SyncStateStatus
LastRun *SyncRunStatusView
Coverage ProviderCoverage `json:"coverage"`
SyncStateSplit *SyncStateStatus `json:"sync_state,omitempty"`
LastRunSplit *SyncRunStatusView `json:"last_run,omitempty"`
ActiveRun *SyncRunStatusView `json:"active_run,omitempty"`
}
type ProviderSummary ¶
type RichContentArtifact ¶
type RichContentChunk ¶
type RichContentChunk struct {
ID string
ProjectID string
Provider Provider
ItemID string
ItemKey string
ItemType string
FieldName string
Label string
Index int
ByteStart int
ByteEnd int
Text string
UpdatedAt time.Time
}
func ChunkRichContentItem ¶
func ChunkRichContentItem(item RichContentItem, options RichContentOptions) ([]RichContentChunk, error)
type RichContentChunkView ¶
type RichContentField ¶
type RichContentGraphResult ¶
type RichContentGraphStore ¶
type RichContentGraphStore struct {
// contains filtered or unexported fields
}
func NewRichContentGraphStore ¶
func NewRichContentGraphStore(graph integrationGraphBackend) *RichContentGraphStore
func (*RichContentGraphStore) GetRichContentItem ¶
func (store *RichContentGraphStore) GetRichContentItem(ctx context.Context, projectID string, provider Provider, itemID string, options RichContentReadOptions) (RichContentReadResult, error)
func (*RichContentGraphStore) ListRichContentTitles ¶ added in v0.1.15
func (*RichContentGraphStore) PutRichContentItem ¶
func (store *RichContentGraphStore) PutRichContentItem(ctx context.Context, item RichContentItem, chunks []RichContentChunk) (RichContentGraphResult, error)
func (*RichContentGraphStore) SearchRichContent ¶
func (store *RichContentGraphStore) SearchRichContent(ctx context.Context, projectID string, options RichContentSearchOptions) ([]RichContentSearchResult, error)
type RichContentItem ¶
type RichContentOptions ¶
type RichContentPayload ¶
type RichContentPayload struct {
Item RichContentItem
Chunks []RichContentChunk
}
type RichContentReadOptions ¶
type RichContentReadResult ¶
type RichContentReadResult struct {
Artifact RichContentArtifact `json:"artifact"`
Chunks []RichContentChunkView `json:"chunks"`
ChunksTruncated bool `json:"chunks_truncated"`
NextChunkOffset int `json:"next_chunk_offset,omitempty"`
}
type RichContentReader ¶
type RichContentReader interface {
GetRichContentItem(context.Context, string, Provider, string, RichContentReadOptions) (RichContentReadResult, error)
SearchRichContent(context.Context, string, RichContentSearchOptions) ([]RichContentSearchResult, error)
}
type RichContentSearchResult ¶
type RichContentSearchResult struct {
Artifact RichContentArtifact
Chunk RichContentChunkView
Snippet string
SnippetTruncated bool
ByteStart int
ByteEnd int
}
type RichContentStore ¶
type RichContentStore interface {
PutRichContentItem(context.Context, RichContentItem, []RichContentChunk) (RichContentGraphResult, error)
}
type RichContentTitleReader ¶ added in v0.1.15
type Runner ¶
type Runner struct {
// contains filtered or unexported fields
}
func NewRunner ¶
func NewRunner(options RunnerOptions) (*Runner, error)
func (*Runner) ExecutePreparedProviderPoll ¶
func (*Runner) FailPreparedProviderPoll ¶
func (*Runner) PrepareProviderPoll ¶
func (*Runner) RunProviderPoll ¶
type RunnerBatchItemStore ¶
type RunnerBatchItemStore interface {
UpsertItems(context.Context, []ItemMetadataInput) ([]ItemMetadata, error)
}
type RunnerOptions ¶
type RunnerOptions struct {
Projects []config.Project
Store RunnerStore
RichContentStore RichContentStore
CredentialResolver CredentialResolver
JiraClient JiraPoller
ConfluenceClient ConfluencePoller
Planner Planner
Now func() time.Time
NewRunID func() string
}
type RunnerStore ¶
type RunnerStore interface {
UpsertSource(context.Context, SourceMetadataInput) (SourceMetadata, error)
CreateSyncRun(context.Context, SyncRun) error
UpdateSyncRun(context.Context, SyncRun) error
GetSyncState(context.Context, string, Provider) (SyncState, error)
UpdateSyncState(context.Context, SyncStateInput) (SyncState, error)
UpsertItem(context.Context, ItemMetadataInput) (ItemMetadata, error)
}
type SQLiteStore ¶
type SQLiteStore struct {
// contains filtered or unexported fields
}
func NewSQLiteStore ¶
func NewSQLiteStore(db *sql.DB) *SQLiteStore
func (*SQLiteStore) CountItems ¶
func (*SQLiteStore) CreateSyncRun ¶
func (store *SQLiteStore) CreateSyncRun(ctx context.Context, run SyncRun) error
func (*SQLiteStore) FailActiveSyncRuns ¶
func (*SQLiteStore) GetActiveSyncRun ¶
func (*SQLiteStore) GetSyncRun ¶
func (*SQLiteStore) GetSyncState ¶
func (*SQLiteStore) ListItems ¶
func (store *SQLiteStore) ListItems(ctx context.Context, projectID string, provider Provider) ([]ItemMetadata, error)
func (*SQLiteStore) ListItemsPage ¶ added in v0.1.14
func (store *SQLiteStore) ListItemsPage(ctx context.Context, projectID string, provider Provider, options ItemListOptions) (ItemListResult, error)
func (*SQLiteStore) ListSources ¶
func (store *SQLiteStore) ListSources(ctx context.Context, projectID string) ([]SourceMetadata, error)
func (*SQLiteStore) UpdateSyncRun ¶
func (store *SQLiteStore) UpdateSyncRun(ctx context.Context, run SyncRun) error
func (*SQLiteStore) UpdateSyncState ¶
func (store *SQLiteStore) UpdateSyncState(ctx context.Context, input SyncStateInput) (SyncState, error)
func (*SQLiteStore) UpsertItem ¶
func (store *SQLiteStore) UpsertItem(ctx context.Context, input ItemMetadataInput) (ItemMetadata, error)
func (*SQLiteStore) UpsertItems ¶
func (store *SQLiteStore) UpsertItems(ctx context.Context, inputs []ItemMetadataInput) ([]ItemMetadata, error)
func (*SQLiteStore) UpsertSource ¶
func (store *SQLiteStore) UpsertSource(ctx context.Context, input SourceMetadataInput) (SourceMetadata, error)
type Scheduler ¶
type Scheduler struct {
// contains filtered or unexported fields
}
func NewScheduler ¶
func NewScheduler(projects []config.Project, runner PollRunner, options SchedulerOptions) (*Scheduler, error)
func (*Scheduler) Diagnostics ¶
func (scheduler *Scheduler) Diagnostics() SchedulerDiagnostics
func (*Scheduler) RunProviderPoll ¶
func (*Scheduler) ScheduledProviders ¶
func (scheduler *Scheduler) ScheduledProviders() []ProviderSchedule
type SchedulerDiagnostics ¶
type SchedulerOptions ¶
type Service ¶
type Service struct {
// contains filtered or unexported fields
}
func NewServiceWithOptions ¶
func (*Service) ListLocalItemTitles ¶ added in v0.1.15
func (*Service) ListLocalItems ¶ added in v0.1.14
func (service *Service) ListLocalItems(ctx context.Context, input LocalItemListInput) (ItemListResult, error)
func (*Service) ListProviders ¶
func (service *Service) ListProviders(projectID string) ([]ProviderSummary, error)
func (*Service) PollProvider ¶
func (*Service) PollRunStatus ¶
func (*Service) ReadLocalContent ¶
func (service *Service) ReadLocalContent(ctx context.Context, input LocalReadInput) (RichContentReadResult, error)
func (*Service) SearchLocalContent ¶
func (service *Service) SearchLocalContent(ctx context.Context, input LocalSearchInput) ([]RichContentSearchResult, error)
func (*Service) SubmitProviderPoll ¶
func (*Service) UpsertConfiguredSources ¶
type ServiceOptions ¶
type ServiceOptions struct {
Runner PollRunner
RichContent RichContentReader
}
type SourceMetadata ¶
type SourceMetadata struct {
ProjectID string
Provider Provider
SiteURLHash string
CloudIDHash string
AllowlistHash string
AllowlistCount int
AuthMode string
IngestionEnabled bool
InitialFullSync string
IncrementalInterval time.Duration
EmptyPollSleep time.Duration
MaxIdleSleep time.Duration
OverlapWindow time.Duration
InitialPageSize int
IncrementalPageSize int
MaxResults int
UpdatedAt time.Time
}
type SourceMetadataInput ¶
type SourceMetadataInput struct {
ProjectID string
Provider Provider
SiteURL string
CloudID string
Allowlist []string
AuthMode string
IngestionEnabled bool
InitialFullSync string
IncrementalInterval time.Duration
EmptyPollSleep time.Duration
MaxIdleSleep time.Duration
OverlapWindow time.Duration
InitialPageSize int
IncrementalPageSize int
MaxResults int
UpdatedAt time.Time
}
type Store ¶
type Store interface {
UpsertSource(context.Context, SourceMetadataInput) (SourceMetadata, error)
ListSources(context.Context, string) ([]SourceMetadata, error)
GetSyncState(context.Context, string, Provider) (SyncState, error)
GetSyncRun(context.Context, string, Provider, string) (SyncRun, error)
}
type SyncRun ¶
type SyncRun struct {
ID string
ProjectID string
Provider Provider
Kind SyncKind
Status SyncRunStatus
ItemsSeen int
ItemsUpserted int
ItemsChanged int
ItemsUnchanged int
RichContentChanged int
RichContentUnchanged int
EmptyPoll bool
IdleSleep time.Duration
ErrorCategory string
StartedAt time.Time
FinishedAt time.Time
}
type SyncRunStatus ¶
type SyncRunStatus string
const ( SyncRunStatusPending SyncRunStatus = "pending" SyncRunStatusRunning SyncRunStatus = "running" SyncRunStatusCompleted SyncRunStatus = "completed" SyncRunStatusFailed SyncRunStatus = "failed" SyncRunStatusNoOp SyncRunStatus = "no_op" )
type SyncRunStatusView ¶
type SyncState ¶
type SyncState struct {
ProjectID string
Provider Provider
LastRunID string
LastSuccessfulRunID string
LastSuccessAt time.Time
LastFullSyncAt time.Time
LastIncrementalSyncAt time.Time
LastEmptyPollAt time.Time
EmptyPollCount int
CurrentIdleSleep time.Duration
Cursor string
CursorHash string
UpdatedAt time.Time
}
type SyncStateInput ¶
type SyncStateInput struct {
ProjectID string
Provider Provider
LastRunID string
LastSuccessfulRunID string
LastSuccessAt time.Time
LastFullSyncAt time.Time
LastIncrementalSyncAt time.Time
LastEmptyPollAt time.Time
EmptyPollCount int
CurrentIdleSleep time.Duration
Cursor string
UpdatedAt time.Time
}
type SyncStateStatus ¶
type ToolErrorReason ¶ added in v0.1.10
type ToolErrorReason string
const ( ToolErrorReasonBadProjectID ToolErrorReason = "bad_project_id" ToolErrorReasonNotIndexed ToolErrorReason = "not_indexed" ToolErrorReasonBadArgument ToolErrorReason = "bad_argument" )
Source Files
¶
Click to show internal directories.
Click to hide internal directories.