@@ -7013,6 +7013,7 @@ fn changing_or_prepending_a_declared_system_message_invalidates_the_prefix() {
70137013
70147014 let mut prepended = original. clone ( ) ;
70157015 crate :: cache:: prepend_system_message ( & mut prepended, "new instruction" . into ( ) ) ;
7016+ assert_ne ! ( original. prompt_fingerprint, prepended. prompt_fingerprint) ;
70167017 super :: run_loop:: refresh_prompt_cache_fingerprint ( & mut prepended) ;
70177018 assert_ne ! (
70187019 crate :: cache:: prompt_cache_key( & original) ,
@@ -7207,7 +7208,6 @@ fn zero_prefix_stable_prepend_and_tools_keep_both_segments_in_either_order() {
72077208
72087209#[ test]
72097210fn tools_only_prefix_survives_a_leading_compaction_summary ( ) {
7210- use tinyinference_llm:: model:: { PromptSegment , SegmentRole } ;
72117211 use tinyinference_llm:: tool:: ToolSchema ;
72127212
72137213 let tool = ToolSchema :: new (
@@ -7216,19 +7216,12 @@ fn tools_only_prefix_survives_a_leading_compaction_summary() {
72167216 serde_json:: json!( { "type" : "object" } ) ,
72177217 ) ;
72187218 let mut before = ModelRequest :: new ( vec ! [ Message :: user( "first" ) ] ) . with_tools ( vec ! [ tool. clone( ) ] ) ;
7219- before. cache_segments = vec ! [ PromptSegment {
7220- id: "tools" . into( ) ,
7221- role: SegmentRole :: Tools ,
7222- cacheable: true ,
7223- } ] ;
7224- before. prompt_fingerprint = Some ( "declared-tools" . into ( ) ) ;
7225- let mut after = ModelRequest :: new ( vec ! [
7226- Message :: system( "changing history summary" ) ,
7227- Message :: user( "later" ) ,
7228- ] )
7229- . with_tools ( vec ! [ tool] ) ;
7230- after. cache_segments = before. cache_segments . clone ( ) ;
7231- after. prompt_fingerprint = before. prompt_fingerprint . clone ( ) ;
7219+ super :: run_loop:: mark_empty_frozen_prefix ( & mut before, Some ( 0 ) ) ;
7220+ let mut after = ModelRequest :: new ( vec ! [ Message :: user( "later" ) ] ) . with_tools ( vec ! [ tool] ) ;
7221+ super :: run_loop:: mark_empty_frozen_prefix ( & mut after, Some ( 0 ) ) ;
7222+ after
7223+ . messages
7224+ . insert ( 0 , Message :: system ( "changing history summary" ) ) ;
72327225
72337226 super :: run_loop:: refresh_prompt_cache_fingerprint ( & mut before) ;
72347227 super :: run_loop:: refresh_prompt_cache_fingerprint ( & mut after) ;
0 commit comments