f99010fae1
CI / lint (push) Failing after 1s
CI / frontend (push) Failing after 1s
CI / scripts (push) Failing after 1s
CI / Go Test (ubuntu-latest) (push) Failing after 0s
CI / frontend-node-25 (push) Failing after 1s
CI / docs (push) Failing after 0s
CI / coverage (push) Failing after 0s
CI / e2e (push) Failing after 0s
Docker / build-and-push (push) Failing after 1s
CI / integration (push) Failing after 4m43s
CI / Go Test (windows-latest) (push) Has been cancelled
CI / Desktop Unit Tests (Windows) (push) Has been cancelled
Desktop Artifacts / Desktop Build (Linux (arm64)) (push) Has been cancelled
Desktop Artifacts / Desktop Build (Linux) (push) Has been cancelled
Desktop Artifacts / Desktop Build (Windows) (push) Has been cancelled
Desktop Artifacts (macOS) / Desktop Build (macOS (aarch64)) (push) Has been cancelled
Desktop Artifacts (macOS) / Desktop Build (macOS (x86_64)) (push) Has been cancelled
64 lines
2.4 KiB
Go
64 lines
2.4 KiB
Go
package parser
|
|
|
|
//go:generate go run github.com/dmarkham/enumer -type=CapabilitySupport -json -text -transform=snake -trimprefix=Capability -output=capabilitysupport_enumer.go
|
|
|
|
// CapabilitySupport describes whether a provider implements or can represent a
|
|
// source or content feature. The zero value is unsupported.
|
|
type CapabilitySupport uint8
|
|
|
|
const (
|
|
CapabilityUnsupported CapabilitySupport = iota
|
|
CapabilitySupported
|
|
CapabilityNotApplicable
|
|
)
|
|
|
|
// Capabilities groups provider source mechanics and parsed-content features.
|
|
// Capabilities are declarative: a concrete provider that reports Supported must
|
|
// implement the matching behavior rather than relying on ProviderBase defaults.
|
|
// Callers may still invoke optional methods and handle their no-op or typed
|
|
// unsupported results, but scheduling and validation should trust this
|
|
// declaration once a provider has migrated off the legacy adapter.
|
|
type Capabilities struct {
|
|
Source SourceCapabilities
|
|
Content ContentCapabilities
|
|
}
|
|
|
|
// SourceCapabilities declares optional source mechanics implemented by a
|
|
// provider.
|
|
type SourceCapabilities struct {
|
|
DiscoverSources CapabilitySupport
|
|
WatchSources CapabilitySupport
|
|
ClassifyChangedPath CapabilitySupport
|
|
StoredSourceHints CapabilitySupport
|
|
FindSource CapabilitySupport
|
|
CompositeFingerprint CapabilitySupport
|
|
IncrementalAppend CapabilitySupport
|
|
MultiSessionSource CapabilitySupport
|
|
PerSessionErrors CapabilitySupport
|
|
ExcludedSessions CapabilitySupport
|
|
ForceReplaceOnParse CapabilitySupport
|
|
VerifiedLocalStat CapabilitySupport
|
|
}
|
|
|
|
// ContentCapabilities declares optional normalized content fields a provider
|
|
// may emit.
|
|
type ContentCapabilities struct {
|
|
FirstMessage CapabilitySupport
|
|
SessionName CapabilitySupport
|
|
Cwd CapabilitySupport
|
|
GitBranch CapabilitySupport
|
|
Relationships CapabilitySupport
|
|
Subagents CapabilitySupport
|
|
Thinking CapabilitySupport
|
|
ToolCalls CapabilitySupport
|
|
ToolResults CapabilitySupport
|
|
ToolResultEvents CapabilitySupport
|
|
PerMessageTokenUsage CapabilitySupport
|
|
AggregateUsageEvents CapabilitySupport
|
|
TerminationStatus CapabilitySupport
|
|
MalformedLineCount CapabilitySupport
|
|
TruncationStatus CapabilitySupport
|
|
Model CapabilitySupport
|
|
StopReason CapabilitySupport
|
|
}
|