The minimum of one hour is easy to circumvent. I wake up, turn off the alarm and then set another for 12 hours from now..
Theoretically if this is to track healthy sleeping then 6-8 hours max per day is the target. If users start logging 23 hours of sleep a day you probably shouldn't be rewarding them unless its a 'Master Sloth' achievement. haha
Maybe a simple solution is to prevent the player from receiving constellation growth unless at least X hours have passed since the last alarm completed? X could be a hardcoded 8 hours or maybe its the size of the previous alarm's duration?
Do you plan on having leaderboards or ways to share your constellation? If not I think that could be a feature to make the app more viral. I don't know if it would ever happen but imagine people sharing Nebula links in their Tinder bio as a way to signal healthy living...? Maybe there is a world where you pair users based on their constellation similarities. Could Nebula evolve into a dating app because maybe 'sleep patterns are actually one of the best indicators of compatibility' ? Probably far fetched and poisoning to the core idea but thought I'd share in case it plants any seeds for you.
As for Nebula evolving in to a dating app, if a single person ever shared anything related to this app in a tinder bio for any reason at all, I think that's when I'll know it's time for a hard pivot. I believe (and I could be totally wrong) there have been links to people's odors and who they find attractive because we seek partners with complementary immune systems to our own and one indicator of that is the way someone smells. Maybe sleep patterns have a similar correlation. If the pivot ever happens I'll credit you for giving the idea.
In matters of love,
let the reptile brain decide.
Marry based on smell.
I like the narrow scope of Nebula, and would happily pay for the app to remove the ads, once you've ironed out some of the rough edges (you really need to remove the flashing indicators in the tutorial).
Naturally, if you want to transform the app into something else in the future, that's entirely your choice, and I will simply have to move on to something else that doesn't try to cram social networks down my throat.
Also, why care if a user wants to abuse the app to get more constellations? They are only ruining it for themselves, and adding rules and checks will only complicate your code.