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

41 lines
1.1 KiB
Go

// Package seriatim declares the adapter contract for transcript merge execution.
package seriatim
import (
"context"
"time"
)
// TODO: implement a real Seriatim subprocess adapter.
// Runner is the adapter boundary for seriatim merge invocations.
type Runner interface {
Run(ctx context.Context, req MergeRequest) (MergeResult, error)
}
// MergeRequest describes a seriatim merge invocation.
type MergeRequest struct {
GeneratedConfigPath string
InputTranscriptPaths []string
OutputMergedTranscriptPath string
ReportPath string
SpeakersPath string
AutocorrectPath string
StdoutLogPath string
StderrLogPath string
}
// MergeResult describes a merge output.
type MergeResult struct {
MergedTranscriptPath string
ReportPath string
StdoutLogPath string
StderrLogPath string
GeneratedConfigPath string
ExitCode int
Duration time.Duration
InvokedBinary string
OutputSchema string
Metadata map[string]any
}