Implement final fixes and close out the implemetation roadmap

This commit is contained in:
2026-07-17 23:16:16 -05:00
parent 604c7a7945
commit 9fa9154dda
14 changed files with 463 additions and 879 deletions

View File

@@ -135,6 +135,20 @@ func TestRunnerPassesIndependentConcreteMetadataToValidatorsAndExtractors(t *tes
}
}
func TestRunnerRejectsMetadataThatCannotBeCloned(t *testing.T) {
prepared := preparedAttemptDebugPipeline(t)
cyclic := make(map[string]any)
cyclic["self"] = cyclic
_, err := New().Run(context.Background(), RunInput{
Prepared: prepared,
RawInput: []byte("input"),
Metadata: map[string]any{"cyclic": cyclic},
})
if err == nil || !strings.Contains(err.Error(), "clone run metadata: metadata.cyclic.self contains a cycle") {
t.Fatalf("Run() error = %v, want contextual metadata clone failure", err)
}
}
func TestRunnerContinuesFromFreshAndReusedExtractResults(t *testing.T) {
prepared := preparedAttemptDebugPipeline(t)
extractCalls := 0