A guest limit is both a product rule and a trust boundary. If the counter, badge, modal, and backend disagree, users can be stopped earlier than the interface promised or continue after it said access ended.
The Main page explicitly describes up to 25 messages per device. The counter must increment on accepted turns, survive a refresh, and explain what happens next without pretending signup is mandatory for unrelated features.
What was actually going wrong
Scattered constants and vague trial language could drift into inconsistent enforcement.
What I tried
- Counting button clicks before a message was accepted
- Keeping the count only in page memory
- Using open-ended free-trial copy with a hidden cutoff
One visible 25-message rule is paired with device persistence and a clear transition to account signup.
Why it worked
The user sees the same limit the application actually enforces.
A usage limit is honest only when its unit, threshold, and consequence are explicit.
Where EACI uses this today
Guests can test Main companions for up to 25 messages per device before choosing whether to sign up.
This journal covers real engineering on EACI Companion / The Veil. Companions include Caelum, Chad, Natalia, Atreus, Luna, Roxy, and Cael. Journal articles stay family-safe in content. See Privacy and Ethics.