Expose captured configuration inspection and redacted reports

This commit is contained in:
2026-09-30 03:29:28 +00:00
parent d818e0d162
commit aba5e960aa
9 changed files with 378 additions and 6 deletions

View File

@@ -81,7 +81,8 @@ func (o *Options) SetSchemaFile(path string) error {
// Engine forwards domain operations to the single assembled use-case runner.
type Engine struct {
runner *usecase.Runner
runner *usecase.Runner
inspection configuration.Inspection
}
// New assembles an engine from facade-selected configuration and collaborators.
@@ -131,7 +132,18 @@ func New(cfg Config, options Options) (*Engine, error) {
reader = artifact.NewCompositeReader()
}
return &Engine{runner: usecase.NewRunnerWithRepairer(snapshot, snapshot, snapshot, reader, prompt.NewCompiledRenderer(snapshot), client, validator, usecase.NewDefaultOutputRepairer(client), manager, defaultRetries)}, nil
return &Engine{
runner: usecase.NewRunnerWithRepairer(snapshot, snapshot, snapshot, reader, prompt.NewCompiledRenderer(snapshot), client, validator, usecase.NewDefaultOutputRepairer(client), manager, defaultRetries),
inspection: snapshot.Inspection(),
}, nil
}
// InspectConfiguration returns read-only operations over the captured result.
func (e *Engine) InspectConfiguration() configuration.Inspection {
if e == nil {
return nil
}
return e.inspection
}
func validateSourceFS(fsys fs.FS, root string) error {