producer

package
v0.32.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 5, 2026 License: MIT Imports: 1 Imported by: 0

Documentation

Overview

Package producer attributes work to who/what produced it — a human or a specific AI tool — from commit metadata. It is deliberately conservative: detectors are few and each result carries a confidence and the evidence, so the reducer can reason over attribution without overfitting to signatures.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Producer

type Producer string

Producer is who/what authored a change.

const (
	Human      Producer = "human"
	ClaudeCode Producer = "claude-code"
	Cursor     Producer = "cursor"
	Codex      Producer = "codex"
	Copilot    Producer = "copilot"
	Memcode    Producer = "memcode" // memcode's own agent (assigned at event creation, not here)
	Unknown    Producer = "unknown"
)

type Result

type Result struct {
	Producer   Producer `json:"producer"`
	Confidence string   `json:"confidence"` // low | medium | high
	Evidence   string   `json:"evidence"`
}

Result is an attribution with its confidence and supporting evidence.

func Classify

func Classify(author, email, subject, body string) Result

Classify attributes a commit to a producer from its author, email and message.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL