Versions in this module Expand all Collapse all v0 v0.0.11 Sep 24, 2026 Changes in this version + const ConceptsDir + const ExcerptTokens + const FactPrimaryConcept + const KindAliases + const KindCriterion + const KindLiterals + const KindProposals + const KindVocabulary + const MaxAliasWords + const MaxAliases + const MaxConceptCandidates + const MaxConceptOptions + const MaxCriterionChars + const MaxEntities + const MaxProposals + const MaxQuestions + const MaxSummaryChars + const MaxTitleChars + const MaxVocabulary + const MinNoneForProposals + const MinQuestions + const MinVocabulary + const NoulErrorPage + const NoulNoSpeech + const NoulPaywall + const NoulThin + const PrimaryMatched + const PrimaryNone + const ReasonErrorPage + const ReasonNoSpeech + const ReasonNotAnArticle + const ReasonPaywall + const ReasonThin + const RoleAdjacent + const RoleCollectedOnPurpose + const RoleCore + const RoleGeneral + const RoleOffTopic + const RoleUnknown + var ErrArticleExists = errors.New("classify: article already exists") + var ErrNoVocabularyDraft = errors.New(...) + func AcceptVocabulary(s *session.Session) ([]string, error) + func ArticleBanks() []*questions.Bank + func CodeFlags(doc *corpus.Document, hostLines map[string]map[string]int) []quality.Flag + func CreateStub(s *session.Session, title, criterion string, now time.Time) (string, error) + func CreateStubArticle(topicRoot, domain, title, criterion string, now time.Time) (string, error) + func DraftVocabulary(ctx context.Context, s *session.Session) ([]contract.VocabularyItem, error) + func FacetBank() *questions.Bank + func GateBank() *questions.Bank + func IsTranscriptKind(sourceKind string) bool + func SourceBanks() []*questions.Bank + type GateJudgment struct + Flags []quality.Flag + PKept float64 + POffTopic float64 + Quality map[string]float64 + QualityDecided bool + ReceiptKey string + Role string + RoleAsked bool + RoleByPath bool + RoleDecided bool + RoleProbs map[string]float64 + Undecided []string + func JudgeGate(ctx context.Context, s *session.Session, doc *corpus.Document, ...) (GateJudgment, error) + func (g GateJudgment) QualityQuestion(reason string) string + func (g GateJudgment) QualityReason(threshold float64) (string, float64) + type GateOptions struct + Contract *contract.Contract + Flags []quality.Flag + IsTranscript bool + type Options struct + All bool + OnlyMissing bool + Paths []string + type Report struct + ArticlesChanged []string + CriterionMissing []string + Decided int + Documents int + DroppedEntities int + Facets map[string]int + InvalidLiterals map[string]int + Judged int + NoVocabulary bool + PrimaryNone int + PrimaryNoneTotal int + Queued map[string]int + RelevanceOff bool + Skipped map[string]int + SkippedUserKeys map[string]int + Undecided map[string]int + UndecidedDocuments []string + Writes map[string]int + func Run(ctx context.Context, s *session.Session, opts Options) (Report, error) + func (r Report) Lines() []string + func (r Report) Rows() []map[string]any + func (r Report) UndecidedTotal() int