Files
narratio/internal/adapters/audita/runner.go

45 lines
1.2 KiB
Go

// Package audita declares the adapter contract for transcript polishing.
package audita
import (
"context"
"time"
)
// Runner is the adapter boundary for audita polish invocations.
type Runner interface {
Run(ctx context.Context, req PolishRequest) (PolishResult, error)
}
// PolishRequest describes an Audita invocation. Nil Modules uses the runner's
// configured selection; a non-nil empty slice selects no modules.
type PolishRequest struct {
GeneratedConfigPath string
MergedTranscriptPath string
OutputProcessedPath string
GlossaryPath string
Modules []string
StdoutLogPath string
StderrLogPath string
}
// ReportBundle contains optional reports adjacent to the requested output.
type ReportBundle struct {
ErrorsPath string
RecoveriesPath string
OverviewPath string
}
// PolishResult describes a polish output and available diagnostics.
type PolishResult struct {
ProcessedTranscriptPath string
Reports ReportBundle
StdoutLogPath string
StderrLogPath string
GeneratedConfigPath string
ExitCode int
Duration time.Duration
InvokedBinary string
Metadata map[string]any
}