Salary cap league I was in did something similar in that if someone didn't assign a contract they would get a minimum contract anyway by the signing deadline. Thus after that first year we just assigned that minimum contract to all auctioned players and the team could change it by the deadline, otherwise they got the minimum.
This solved two problems: 1) Solved the lazy owner issue and 2) automated any drops with the proper cap penalty.
So we had contracts from 1-5 years for any newly acquired player. Instead of contract of 0 until contract assigned, we set it to set all to 5 until contract assigned. This applies to both auctions and waivers. Solved all issues for us and the system could automatically do it. Commish has to manually change the contract anyway so might as well assign the default to be what most players be, less work. :)
We also have 1-5 year contracts and I can set the default to 1 year with our minimum salary. The problem with that is that then when our contracts are due, its harder to figure out who needs years assigned. If someone happens to mix in a player who is actually on a 1 year deal (with a new contract) it will be harder to notice. As it is now, on our contract due date, its very easy to see the players with 0 years who need designation. If given the two options I prefer my current setup because it is more work (having to manually apply adjustments when 0 year guys are dropped), but it is also less prone to larger errors (a guy on a 1 year deal getting new years assigned).
Got it. We took a different approach.
All newly signed players must have a contract assigned to them within 24 hours (either by auction or waivers). This is posted on the message board. Commish periodically checks for posts. If nobody posts then the player stays at the default 1 year contract. No harm, no foul and the least amount of work for everyone. You could do similar even if you have a specific contract day weeks into the future. If you want more years then the default 1 yr then you need to post it. Otherwise they will stay at the default 1. That way you as commish don't need to worry nor care about newly acquired players mixed in with older one that happen to have a 1 yr contract. You put the responsibility to your owners if they want more then 1 yr.
For our rookies that were acquired in a regular rookie draft and assigned salaries via a set sliding scale, we set the contracts to default at 5. You had until roster cut down day 3rd week in August to post if you want something different. Otherwise they stay at the 5. Again, easy peasy for the commish to deal with and least amount of manual work.
I'm sure there are hundreds of ways to do this, but it's what we did to avoid the most manual work possible.