mobile: fix flex-row text overflow; parallelize door-ingest poll; docs refresh

Mobile responsiveness: several flex rows had a `truncate` child without
`min-w-0`, so a long value (member/door name, channel name, published form
URL) would not shrink and pushed the row past the viewport on a phone. Added
`min-w-0` (with `flex-1`/`shrink-0` where needed) on the dashboard presence +
door-self-entry rows, the comms channel list, and the form-builder URL.

Door inbound poll: `/api/cron/door-ingest` now polls connections with
Promise.allSettled instead of a sequential loop, so one tick is bounded to the
slowest single poll rather than the sum of all per-call timeouts; each
connection stays isolated and the run is idempotent.

Docs: refreshed ARCHITECTURE (door epic marked complete P1-P5), the README
access-control feature bullet + project-status pointer, a historical banner on
the older AUDIT.md, a door-epic CHANGELOG entry, and the rolling HANDOFF audit
log (passes 65-68). No migration; no behavior change for existing users.
This commit is contained in:
Moheeb Zara
2026-05-20 21:55:49 -07:00
parent 0ac69abc8e
commit 32934124c2
10 changed files with 86 additions and 31 deletions
+7 -4
View File
@@ -1,6 +1,6 @@
# Hackerspace.sh - Architecture Documentation
> **Last Updated**: 2026-05-17
> **Last Updated**: 2026-05-21
> **Version**: 1.0.0
> **Status**: In production (serving live traffic)
>
@@ -451,7 +451,10 @@ forms + waivers + onboarding form step + per-space form slug + invite roles,
`030` certifications + Instructor capability, `031` secrets SELECT honors
`ops.secrets.read`, `032` classes + sessions + signups, `033` equipment +
reservations, `034` member access cards + door permissions, `035` door
connections + access log).
connections + access log, `036` door card slots; later migrations through
`054` add classes/equipment/Stripe-dues/notifications and the door epic's
inbound access-log ingest (`053`) + universal API-call buttons (`054`) — see
docs/DATABASE_SCHEMA.md for the full, authoritative migration history).
### Forms & waivers (migrations 026-029; complete Phases 1-5)
@@ -575,9 +578,9 @@ status='reserved'` constraint (migration 042 + `btree_gist`), so two
simultaneous requests for the same window cannot both insert. No
anonymous path.
### Door / access control (migrations 034-036; epic in progress)
### Door / access control (migrations 034-036, 053-054; epic complete, P1-P5)
Phased; P1-P3 built, including member self-entry (reviewed at the locked checkpoint, then built). `member_cards` (034) associates RFID/NFC UIDs to
Phased and complete: P1-P5 built + deployed, including member self-entry (reviewed at the locked checkpoint, then built). `member_cards` (034) associates RFID/NFC UIDs to
members; the UID is a credential (`door.manage`-only RLS, no member SELECT;
masked count+last4 self-view via a service-client action). `door.manage` /
`door.operate` permissions (group Access). `door_connections` (035) is a