You aren't actually spatially filtering at all. A solr search matches documents based on the 'q' (the query string from the user; it scores) and 'fq' (filter queries, which don't score), nothing else. Neither your 'q' nor your 'fq' refers to the spatial filter that you put into the sortsq param. See the docs: http://wiki.apache.org/solr/SolrAdaptersForLuceneSpatial4#Search
Your q=text:* is weird; what do you intend? All docs? That query might appear to work but don't do that, as its not doing what you think its doing; it's finding all docs that have any value in that field (not fast to compute), which isn't necessary all docs. Best practice is defType=edismax and q.alt=*:* and qf=text (assuming that's your text search field) which will match all docs if you don't have a query string to supply.
By the way, it doesn't make any sense to follow score sorting with anything else. There are a huge variety of floating point values and consequently the distance will rarely be consulted. You probably want to boost scores by distance instead. Here's an example of that: &boost=query({! score=recipDistance filter=false v=$spatialfilter}) (substitute the name of your parameter that has the spatial search for spatialFilter).