@@ -30,6 +30,44 @@ let assertRedirect = (source, destination, status) => {
3030 return entry ;
3131} ;
3232
33+ let assertManualLlmsVersionRedirects = ( sourceVersion , destinationVersion ) => {
34+ const sourcePrefix = `/llms/manual/${ sourceVersion } ` ;
35+ const destinationPrefix = `/llms/manual/${ destinationVersion } ` ;
36+ const index = assertRedirect (
37+ `${ sourcePrefix } /llms.txt` ,
38+ `${ destinationPrefix } /llms.txt` ,
39+ "307" ,
40+ ) ;
41+ const full = assertRedirect (
42+ `${ sourcePrefix } /llms-full.txt` ,
43+ `${ destinationPrefix } /llm-full.txt` ,
44+ "307" ,
45+ ) ;
46+ const small = assertRedirect (
47+ `${ sourcePrefix } /llms-small.txt` ,
48+ `${ destinationPrefix } /llm-small.txt` ,
49+ "307" ,
50+ ) ;
51+ const wildcard = assertRedirect (
52+ `${ sourcePrefix } /*` ,
53+ `${ destinationPrefix } /:splat` ,
54+ "307" ,
55+ ) ;
56+
57+ assert . ok (
58+ index . index < wildcard . index ,
59+ `${ sourcePrefix } /llms.txt must be listed before ${ sourcePrefix } /*` ,
60+ ) ;
61+ assert . ok (
62+ full . index < wildcard . index ,
63+ `${ sourcePrefix } /llms-full.txt must be listed before ${ sourcePrefix } /*` ,
64+ ) ;
65+ assert . ok (
66+ small . index < wildcard . index ,
67+ `${ sourcePrefix } /llms-small.txt must be listed before ${ sourcePrefix } /*` ,
68+ ) ;
69+ } ;
70+
3371assertRedirect ( "/llms/manual/llms.txt" , "/llms.txt" , "307" ) ;
3472const latestAlias = assertRedirect (
3573 "/llms/manual/latest/llms.txt" ,
@@ -41,6 +79,10 @@ const nextAlias = assertRedirect(
4179 "/llms.txt" ,
4280 "307" ,
4381) ;
82+ assertManualLlmsVersionRedirects ( "v13.0.0" , "v13" ) ;
83+ assertManualLlmsVersionRedirects ( "v12.0.0" , "v12" ) ;
84+ assertManualLlmsVersionRedirects ( "v11" , "v12" ) ;
85+ assertManualLlmsVersionRedirects ( "v11.0.0" , "v12" ) ;
4486
4587assert . ok (
4688 latestAlias . index < findEntry ( "/llms/manual/latest/*" ) . index ,
0 commit comments