|
|
|
|
@@ -77,8 +77,8 @@ func TestPromptAssetsDeclareTheFourGeneratedTextPrompts(t *testing.T) {
|
|
|
|
|
if err := yaml.Unmarshal(data, &definition); err != nil {
|
|
|
|
|
t.Fatalf("decode prompt definition: %v", err)
|
|
|
|
|
}
|
|
|
|
|
if definition.ID != tc.id || definition.Version != "2.0.0" || definition.DefaultProfile != tc.profile {
|
|
|
|
|
t.Fatalf("definition = %#v, want %s version 2.0.0 and profile %s", definition, tc.id, tc.profile)
|
|
|
|
|
if definition.ID != tc.id || definition.Version != "2.1.0" || definition.DefaultProfile != tc.profile {
|
|
|
|
|
t.Fatalf("definition = %#v, want %s version 2.1.0 and profile %s", definition, tc.id, tc.profile)
|
|
|
|
|
}
|
|
|
|
|
sharedInstruction := false
|
|
|
|
|
for _, message := range definition.Messages {
|
|
|
|
|
@@ -92,8 +92,8 @@ func TestPromptAssetsDeclareTheFourGeneratedTextPrompts(t *testing.T) {
|
|
|
|
|
if len(definition.Inputs) != 1 || definition.Inputs[0].Name != "data_package" || !definition.Inputs[0].Required || definition.Inputs[0].ContentType != "application/yaml" {
|
|
|
|
|
t.Fatalf("inputs = %#v, want one required YAML data_package", definition.Inputs)
|
|
|
|
|
}
|
|
|
|
|
if definition.Output.Format != "json" || definition.Output.ValidationMode != "json_schema" || definition.Output.SchemaPath != tc.schemaID+".generated_text.schema.json" || definition.Output.RepairAttempts != nil {
|
|
|
|
|
t.Fatalf("output = %#v, want JSON schema output without repair attempts", definition.Output)
|
|
|
|
|
if definition.Output.Format != "json" || definition.Output.ValidationMode != "json_schema" || definition.Output.SchemaPath != tc.schemaID+".generated_text.schema.json" || definition.Output.RepairAttempts == nil || *definition.Output.RepairAttempts != 1 {
|
|
|
|
|
t.Fatalf("output = %#v, want JSON schema output with one repair attempt", definition.Output)
|
|
|
|
|
}
|
|
|
|
|
if _, err := promptassets.Schema(tc.schemaID); err != nil {
|
|
|
|
|
t.Fatalf("Schema(%q) error = %v", tc.schemaID, err)
|
|
|
|
|
@@ -286,11 +286,11 @@ func TestPromptkitInspectsEmbeddedPromptsOffline(t *testing.T) {
|
|
|
|
|
{"weather.hourly_generated_text", "weather-light", "deepseek/deepseek-v4-flash"},
|
|
|
|
|
} {
|
|
|
|
|
t.Run(want.id, func(t *testing.T) {
|
|
|
|
|
inspection, err := engine.InspectPrompt(context.Background(), want.id, "2.0.0")
|
|
|
|
|
inspection, err := engine.InspectPrompt(context.Background(), want.id, "2.1.0")
|
|
|
|
|
if err != nil {
|
|
|
|
|
t.Fatalf("InspectPrompt() error = %v", err)
|
|
|
|
|
}
|
|
|
|
|
if inspection.PromptID != want.id || inspection.PromptVersion != "2.0.0" || inspection.DefaultProfileID != want.profile {
|
|
|
|
|
if inspection.PromptID != want.id || inspection.PromptVersion != "2.1.0" || inspection.DefaultProfileID != want.profile || inspection.OutputContract.RepairAttempts != 1 {
|
|
|
|
|
t.Fatalf("inspection = %#v", inspection)
|
|
|
|
|
}
|
|
|
|
|
profile, err := engine.InspectProfile(context.Background(), inspection.DefaultProfileID)
|
|
|
|
|
@@ -414,7 +414,7 @@ func TestPromptAssetsExcludeRetiredRuntimeSettings(t *testing.T) {
|
|
|
|
|
if err != nil {
|
|
|
|
|
return err
|
|
|
|
|
}
|
|
|
|
|
for _, unwanted := range []string{"local-heavy", "pipeline-weather/", "application/json", "repair_attempts:", "weather.daily_report"} {
|
|
|
|
|
for _, unwanted := range []string{"local-heavy", "pipeline-weather/", "application/json", "weather.daily_report"} {
|
|
|
|
|
if strings.Contains(string(data), unwanted) {
|
|
|
|
|
t.Fatalf("%s contains retired runtime setting %q", path, unwanted)
|
|
|
|
|
}
|
|
|
|
|
|