ReviewOS

also looking at this

loghqorg/loghq

Promote main to production: signed-out chrome and the subscriber tables

#17
Merged glennmichael123 wants to merge main into production
54 files +4252 -1353
9 days ago

Promotes 41 commits from main. Production has no unique work: all six commits it carries that main does not are merge commits from previous promotions.

The two things users can see

Signed-out visitors are offered signed-in controls. /projects renders "+ New app" and "Log out" directly above a panel reading "You're signed out"; /dashboard and /analytics float a fixed "Log out" button and an "Upgrade" link over the sign-in panel; /account has no signed-out state at all and sits on a skeleton name, an empty email and a Free plan badge. Nothing leaked, every one of those controls answers 401 or logs nobody out, but "Log out" tells a visitor they are signed in while the panel beneath says they are not. Gated in tests/unit/auth-chrome.test.ts.

The newsletter form answers 500. POST /api/email/subscribe has no subscribers table on the box. 0000000025-create-subscriber-tables.sql creates both tables it posts into.

Migration check before merging

Replayed the whole 21-file corpus against a fresh sqlite database. Both tables land with the right columns:

subscribers:       id, uuid, email, status, source, unsubscribed_at, user_id, created_at, updated_at
subscriber_emails: id, uuid, email, source, subscriber_id, created_at, updated_at

The deploy's migrate step runs on the box, so the one new file applies there on merge. The deployment smoke asserts the subscribe endpoint, so if it does not apply, this deploy fails loudly rather than quietly.

The rest

12 fix, 7 refactor, 7 chore, 5 docs, 4 feat, 3 test, 1 revert. Highlights beyond the two above: aria-busy on every async button, the em-dash CI gate, the Chrome startup fix for visual validation, a seeded owner with a known credential, and the read-scoped project key.

CI is green on ea5243e.

54 changed files on the files tab, with 0 review threads.

Sign in to comment on this pull request.