Versions in this module Expand all Collapse all v0 v0.2.0 Nov 13, 2026 Changes in this version + const CollapsedReason + const FileLimitReason type Attachment + Origins []ImageOrigin + SourceURLs []string type DescriptionImage + Origins []ImageOrigin + SourceURLs []string + type ImageOrigin struct + ChildInput string + ChildSession string + Input string + Kind string + Position int + Session string + Timestamp *time.Time + Tool string + ToolName string + Turn int type PreviousVersion + Attachments []string v0.2.0-rc.3 Nov 13, 2026 v0.2.0-rc.2 Nov 12, 2026 v0.2.0-rc.1 Nov 11, 2026 v0.1.0 Nov 4, 2026 Changes in this version + const AttachmentExternal + const AttachmentFailed + const AttachmentOverLimit + const AttachmentStored + const AttachmentTooLarge + const AttachmentUnsupported + const CitedPromptHeadBytes + const EvidenceBudgetExceededReason + const OmittedBinaryReason + const OmittedBudgetReason + const OmittedSizeReason + const OmittedSubmoduleReason + const PromptScanChars + const ProvisionalReviewConfigPath + const ReferenceAuthorshipDisclosure + const ReferenceCherryPick + const ReferenceFollowUp + const ReferenceImage + const ReferenceIncludes + const ReferenceIssueKey + const ReferenceSpec + const ReferenceStackedOn + const ReferenceSupersedes + const ReferenceVideo + const RoleCode + const RoleConfig + const RoleDocs + const RoleGenerated + const RoleMigration + const RoleTest + const RoleVendored + const SummaryCommentMarker + var ErrInvalidArchive = errors.New("invalid archive") + var ErrNotFound = errors.New("not found") + var ErrOutputTooLarge = errors.New("git output exceeds configured limit") + var ErrPatchUnreadable = errors.New("git could not diff the file") + func ApplyCaps(bundle *Bundle, caps Caps) + func ApplyCheckoutOmissions(b *Bundle, omissions []CheckoutOmission) + func AttachCommitChanges(ctx context.Context, comparer CommitComparer, pr *PullRequest) error + func AttachThreads(b *Bundle, threads []ReviewThreadInput) + func AttachmentID(sourceURL string) string + func BudgetExceededReason(name string) string + func CapReviewConfigContent(config *ReviewConfig) bool + func ChangePaths(change FileChange) []string + func ChangesReviewConfig(hunks []Hunk) bool + func CheckRunID(databaseID int64) string + func CommandOutcome(status string) string + func CommandText(input []byte) string + func ExplicitAutomationProvider(body string) (provider string, ok bool) + func Fit(bundle *Bundle, caps Caps) error + func FlagBotContribution(item *ConversationItem) + func FlagBotReport(item *ConversationItem, markers []string) + func GitHubContentURL(u *url.URL) bool + func HunkDiffURL(path string, line int) string + func IsBotActor(actorType string) bool + func KeepKnownCommandTargets(sessions []Session, knownPath func(string) bool) + func KnownPaths(paths ...string) func(string) bool + func MarkdownUploads(body string) map[string]string + func MaxAttachmentsArchiveBytes(maxImages int, maxImageBytes int64) int64 + func ProviderFromLogin(login string) string + func PullRequestState(state string, merged bool) string + func Redact(ctx context.Context, bundle *Bundle, redactor *Redactor) error + func RedactFilePatch(ctx context.Context, redactor *Redactor, path, patch string) (masked string, ok bool, err error) + func RoleForPath(filePath string) string + func SetDigest(bundle *Bundle) error + func SniffImage(content []byte) (contentType string, width, height int, ok bool) + func SortChecks(checks []Check) + func SortConversation(items []ConversationItem) + func StatusCheckID(nodeID string, databaseID int64) string + func TargetPath(target string) string + func UnpackAttachments(ctx context.Context, archive, dir string, attachments []Attachment, ...) error + func UnpackCheckout(ctx context.Context, archive, dir string, caps CheckoutConfig) error + func UnpackHeadCheckout(ctx context.Context, archive, dir string, caps CheckoutConfig) error + func ValidAttachmentID(id string) bool + type Attachment struct + Alt string + ContentType string + Heading string + Height int + ID string + Path string + Position int + SHA256 string + SourceURL string + Width int + func DescriptionAttachments(body string, images []DescriptionImage) []Attachment + type BlobFetcher interface + Blob func(ctx context.Context, commitOID, path string) ([]byte, error) + type Bundle struct + Attachments []Attachment + Checks []Check + Conversation []ConversationItem + Diff []Hunk + Digest string + FileComparisons []FileComparison + MaskedSpanCount int + Previous *PreviousVersion + PullRequest PullRequest + References []Reference + Repository string + ReviewConfig *ReviewConfig + Sessions []Session + Sources Sources + Threads []Thread + Truncated []string + func (b *Bundle) DecisionIDs() map[string][]string + func (b *Bundle) SetDecisionIDs(ids map[string][]string) + type Caps struct + MaxBytes int + MaxCommandEventsPerSession int + MaxComments int + MaxDiffFiles int + MaxDiffIndexBytes int + MaxDiffPatchBytes int64 + MaxHunkPatchLines int + MaxImageAltBytes int + MaxPromptsPerSession int + MaxSessions int + func (c Caps) DiffLimits() DiffLimits + type Check struct + CompletedAt *time.Time + Conclusion string + HeadSHA string + ID string + Kind string + Name string + Required *bool + StartedAt *time.Time + Status string + URL string + type CheckoutBuilder struct + Config CheckoutConfig + func NewCheckoutBuilder(config CheckoutConfig) *CheckoutBuilder + func (b *CheckoutBuilder) WriteArchive(ctx context.Context, pinned PinnedExport, head, mergeBase string, hunks []Hunk, ...) (omissions []CheckoutOmission, err error) + type CheckoutConfig struct + MaxFileBytes int64 + MaxTotalBytes int64 + MaxTotalFiles int + ScratchRoot string + func (c CheckoutConfig) MaxArchiveBytes() int64 + type CheckoutOmission struct + Path string + Reason string + type CommandEntry struct + Category string + Program string + Target string + func ParseCommandParaphrase(command string, knownPath func(string) bool) []CommandEntry + type CommandEvent struct + Commands []CommandEntry + ID string + Outcome string + Time *time.Time + type Commit struct + Additions *int + CommittedAt *time.Time + Deletions *int + Parents []string + SHA string + Subject string + type CommitComparer interface + Compare func(ctx context.Context, baseOID, headOID, mode string) (Comparison, error) + type ComparedFile struct + Change string + OldPath string + Path string + type Comparison struct + BaseOID string + Files []FileChange + HeadOID string + MergeBaseOID string + type ConversationItem struct + AuthorAssociation string + AuthorLogin string + Body string + Bot bool + BotReport bool + BotTool string + Commit string + CreatedAt *time.Time + ID string + Kind string + Path string + Resolved *bool + Review string + State string + Thread string + ThreadRoot bool + type DescriptionImage struct + Alt string + ContentType string + Height int + ID string + ObjectKey string + Position int + SHA256 string + Size int64 + SourceURL string + State string + Width int + func WriteAttachments(ctx context.Context, images []DescriptionImage, archive io.Writer, ...) ([]DescriptionImage, error) + type DiffLimits struct + MaxFiles int + MaxHunkLines int + MaxPatchBytes int64 + type FileChange struct + Additions *int64 + Deletions *int64 + NewMode string + NewOID string + NewPath string + OldMode string + OldOID string + OldPath string + PatchHash string + Status string + type FileComparison struct + BaseRevision string + Changes []ComparedFile + type Hunk struct + Additions int + Change string + Deletions int + DiffURL string + ID string + LineCount int + OldPath string + Patch string + Path string + Role string + StartLine int + Textless bool + TextlessReason string + func BuildDiffIndex(comparison Comparison, fetch PatchFetcher, roleFor func(path string) string) ([]Hunk, error) + func BuildDiffIndexWithin(comparison Comparison, fetch PatchFetcher, roleFor func(path string) string, ...) ([]Hunk, []string, error) + type PatchFetcher func(paths ...string) ([]byte, error) + type PinnedExport interface + ExportCommit func(ctx context.Context, commitOID string) (io.ReadCloser, error) + ExportCommitPath func(ctx context.Context, commitOID, path string) (io.ReadCloser, error) + type PreviousSection struct + Content json.RawMessage + HunkContentHashes []string + ID string + Kind string + Title string + type PreviousVersion struct + HunkRanges map[string][2]int + Sections []PreviousSection + Version int + type Prompt struct + At *time.Time + ID string + Index int + Reply string + Text string + TouchedPaths []string + type PullRequest struct + AuthorAssociation string + AuthorBot bool + AuthorLogin string + BaseRef string + BaseSHA string + Body string + Commits []Commit + Draft bool + HeadRef string + HeadSHA string + MergeBaseSHA string + MergedSHA string + Number int + OpenedAt *time.Time + RequestedReviewers []string + State string + Title string + type Redactor struct + func NewRedactor() (*Redactor, error) + func (r *Redactor) Find(ctx context.Context, s string) ([]redact.Span, error) + func (r *Redactor) RedactLines(ctx context.Context, lines []string) ([]string, int, error) + func (r *Redactor) RedactString(ctx context.Context, s string) (string, int, error) + type Reference struct + Kind string + Source string + Value string + func CollectReferences(b Bundle) []Reference + func ExtractReferences(text, source string) []Reference + type RenderedImage struct + Alt string + FetchURL string + ID string + SourceURL string + State string + func RenderedImages(bodyHTML string, uploads map[string]string) []RenderedImage + type ReviewConfig struct + ChangedInPullRequest bool + Content string + Digest string + Present bool + func LoadReviewConfig(ctx context.Context, fetcher BlobFetcher, commitSHA string) (*ReviewConfig, error) + type ReviewThreadComment struct + ID string + URL string + type ReviewThreadInput struct + Comments []ReviewThreadComment + ID string + Line *int + Outdated bool + Path string + Resolved bool + Side string + type Session struct + AuthoritativeLink bool + Branch string + CommandEvents []CommandEvent + Confidence float64 + Decisions *[]SessionDecision + EndedAt *time.Time + HasStartedAt bool + Models []string + NotVerified []ValidationGap + Outcome string + Prompts []Prompt + Restricted bool + RootSessionID string + SetAside []ValidationSetAside + StartedAt *time.Time + StartedAtValue time.Time + Title string + ValidationEvents []SessionEvent + ValidationUnavailable string + Validations *[]SessionValidation + Vendor string + type SessionDecision struct + Category string + DecidedTurn int + DecisionID string + Evidence string + EvidenceTurn int + Files []string + Rationale string + RejectedAlternative string + Summary string + Superseded bool + Title string + Trigger string + Turns []int + Who string + type SessionEvent struct + ID string + Summary string + Time *time.Time + Verb string + type SessionValidation struct + Caveats string + Checked string + CommitLabel ValidationCommitLabel + EventIDs []string + EvidenceClass string + ID string + Method string + Outcome string + type Sources map[string]bool + type Thread struct + ID string + Line *int + Outdated bool + Path string + Resolved bool + URL string + type ValidationCommitLabel struct + Reason string + SHA string + State string + type ValidationGap struct + EventIDs []string + Turns []int + What string + type ValidationSetAside struct + EventIDs []string + StatedReason string + Turns []int + What string v0.1.0-rc.2 Nov 3, 2026 v0.1.0-rc.1 Nov 3, 2026