Hey,
here are two formulas that will give you the desired effect.
This first one allows the percentage to go over 100% all the way up to 233% when the full week is completed.
round(100 * (toNumber(replace(prop("Mon"), "true", "1")) + toNumber(replace(prop("Tue"), "true", "1")) + toNumber(replace(prop("Wed"), "true", "1")) + toNumber(replace(prop("Thu"), "true", "1")) + toNumber(replace(prop("Fri"), "true", "1")) + toNumber(replace(prop("Sat"), "true", "1")) + toNumber(replace(prop("Sun"), "true", "1"))) / 3) / 100
This second one goes only up to 100% even when you complete more than 3 days.
min(1, round(100 * (toNumber(replace(prop("Mon"), "true", "1")) + toNumber(replace(prop("Tue"), "true", "1")) + toNumber(replace(prop("Wed"), "true", "1")) + toNumber(replace(prop("Thu"), "true", "1")) + toNumber(replace(prop("Fri"), "true", "1")) + toNumber(replace(prop("Sat"), "true", "1")) + toNumber(replace(prop("Sun"), "true", "1"))) / 3) / 100)
I would also recommend replacing the number "3" (your weekly goal) in the formula with prop("Goal") and adding a property "Goal" to your database. This way you can have different goal for each habit if needed
The two formulas would look like this then:
1) Allows over 100%:
round(100 * (toNumber(replace(prop("Mon"), "true", "1")) + toNumber(replace(prop("Tue"), "true", "1")) + toNumber(replace(prop("Wed"), "true", "1")) + toNumber(replace(prop("Thu"), "true", "1")) + toNumber(replace(prop("Fri"), "true", "1")) + toNumber(replace(prop("Sat"), "true", "1")) + toNumber(replace(prop("Sun"), "true", "1"))) / prop("Goal")) / 100
2) Upto 100%:
min(1, round(100 * (toNumber(replace(prop("Mon"), "true", "1")) + toNumber(replace(prop("Tue"), "true", "1")) + toNumber(replace(prop("Wed"), "true", "1")) + toNumber(replace(prop("Thu"), "true", "1")) + toNumber(replace(prop("Fri"), "true", "1")) + toNumber(replace(prop("Sat"), "true", "1")) + toNumber(replace(prop("Sun"), "true", "1"))) / prop("Goal")) / 100)