Every screen, backend function, data entity and component. Tap a screen to open it.
The orb 'venue brain' home screen with three live rings and quick-log actions.
The daily/weekly/monthly checklist screen staff use to run and complete task lists.
The issue inbox where staff log, search, filter, and track issues through their lifecycle.
A shift-block board where the team posts and reads the day's huddle notes.
Log, track, and claim lost-and-found items with photos, categories, and a 30-day rule.
A bilingual how-to FAQ explaining checklists, issues, and lost-and-found.
Privacy screen showing what data is stored about the user and letting them export or delete it.
User profile editor for name, photo, notification prefs, and emergency contact.
The settings menu linking to profile, property, language, notifications, and management tools.
A branded goodbye splash with a glowing logo shown on sign-out.
A mission/positioning page explaining the product's risk-detection difference and sales talking points.
The live emergency status board. Managers fire the six alert types, see the safety roll call and send all clear. Workers see the alert and acknowledge. 911 on both.
A bilingual scrolling walkthrough of the four-step loop, with sample screens and a button to replay the guided tour.
Lets a user set text size, high contrast, read-aloud, visual and haptic alerts, and sound cues, saved to their account.
An earlier alert sheet, superseded by the Emergency screen and not in active use.
The searchable build reference listing every screen, backend function, data entity, component folder and lib, with screens tappable to open.
The approve or deny screen for an AI client asking for access to app data. Not yet connected to a live consent flow.
The security issue board where staff read active and resolved security issues, group them, log new ones, and hit the panic button.
Not a screen. A three-line file in the pages folder exporting the logo image as base64, routed nowhere and imported by nothing.
A worker's personal record: shifts logged, compliance, streak, milestones, and passport.
Shows a worker's portable, verified milestones and shift-streak progress.
The worker-facing screen to view and act on issues assigned to them.
Shows upcoming holidays and cultural events with staffing and demand impact notes.
Manager overview of team compliance, open issues, pending reviews, and staff on shift, plus the Venue Memory card with the nightly engine's three predictions.
Manager-only issue workspace with inbox, assign, and verify sub-screens.
Manager team dashboard listing team members, tap to view a member.
The current venue screen combining compliance, pulse alerts, history, and trends.
Shows a log of every AI suggestion the app made, filterable by the thumbs up/down feedback given elsewhere in the app.
An older manager home screen with the Fibonacci orb and rings.
An older venue hub menu linking to holiday alerts, lost and found, issues, and the manager dashboard.
An older venue intelligence screen with pulse alerts, trends, and weather risk.
Shows this month's spend against the plan as a budget orb, with a spend log managers add entries to.
Lets leadership switch on Slack alerts, choose default and critical channels, set the digest cadence, and send test messages.
The cost centre screen showing real money lost to downtime, response labour, turnover, and budget, with trends and an export.
The Opening and End of Night report board. Owner, GM and AGM read each venue's opening and closing checklist results, open issues and emergency events, and send a report to the daily huddle in one tap.
Lets an admin create, edit, and delete checklist templates by category, industry, and venue.
Admin screen to review, edit, approve, or reject AI-generated Spanish translations before they go live.
Admin queue for handling user data-export and deletion requests.
Admin console to approve, suspend, or revoke outside integrations, manage their scopes and tokens, and read the access audit trail.
Admin view of how each flagged reviewer explored the app: time spent, sessions, revisits, top pages, and feature taps.
A spinner screen at the password-reset email link that hands the user straight to the platform's own sign-in flow.
The public marketing page explaining the product, with sign-in for existing accounts and a jump to Home when already signed in.
The email and password sign-in form with a Google option, on a dark card since APPAUDIT-0902. Routed at /login; forgot-password and register links resolve.
The client sign-up wizard: language first, then tier, company and owner with email verification, vertical, first venue, team invites and a seeded bilingual checklist library.
The invite landing where a team member opens their emailed link, verifies their email, and joins their venue.
A placeholder spinner at the reset-password email link that the platform replaces with its own reset form.
Calculates the home orb's three rings (today, 7-day, all-time compliance) for a venue from checklists and issues.
Automation trigger that recomputes one venue's orb rings when a checklist or issue changes.
When a new issue is logged, checks the last 30 days for matching issues at the same location/asset and flags the chain as repeating.
Stores telemetry and thumbs up/down feedback from AI calls, and gives admins a 7-day failure report.
Nightly job that reads each venue's last 30 days of checklists and issues through a field whitelist (never a named field), computes three predictions (a checklist likely to be missed today, an issue likely to breach its due window, next week's completion rate) with a statistical confidence, has Claude phrase them in English and Spanish, and parks the result on VenueBrainState.memory for the Manager Dashboard card.
Server-side Claude proxy that keeps the API key out of the browser and routes every in-app AI call to a smart or fast model.
Writes every AI run, including failures with their error detail, to AILog as service role so logging cannot silently fail on the caller's permissions.
Emails and notifies staff (and their managers) when their certifications are expiring or expired.
Nightly job that stamps overdue issues and escalates them by tier (7/14/30 days), pinging managers once per tier.
Daily scan that creates Pulse alerts for repeat equipment failures, location hotspots, and department compliance drops.
Nightly job emailing each manager an end-of-day summary of their team's completed/incomplete checklists and pending actions.
When a high or urgent issue is created, emails and notifies all managers/admins.
When an issue moves to pending_verification, notifies venue managers that a fix needs their confirmation.
Blasts an emergency (or all-clear) to all active staff by in-app notification and Twilio SMS, and logs it.
Internal helper that creates a PulseAlert record using service role to bypass RLS.
Raises an issue's escalation tier by one, capped at three, and notifies that venue's managers with a bilingual alert naming only task and location.
On an urgent security report, alerts venue leadership and security plus the reporter's direct manager with a bilingual message naming only the location.
Closes the panic loop by resolving a venue's open panic issues and telling leadership and security it is over. Management and security roles only.
Checks every active venue against Open-Meteo forecasts and official NWS alerts, then creates a WeatherAlert and posts a playbook checklist to the daily huddle.
Checks role permissions before a data change, logs it with a trace ID, and returns which dashboards to refresh.
Emails managers/admins a daily digest of open, urgent, overdue, and resolved issues plus checklist compliance rate.
Monday-morning job that builds a per-venue 30-day trend report (equipment, hotspots, shift, weather, department compliance) and emails owners.
Lets a worker claim their own work passport milestone, checking the record's email matches the caller before flipping its acknowledged flag.
Server-side bouncer for Issue, ChecklistCompletion, ActionItem and HuddleItem writes, refusing Law 1 violations and off-network edits, then stamping audit fields.
Server-side money gate: verifies the caller is an owner, GM, AGM, or admin via TeamMember.role, then writes CostSettings rates and monthly Budget amounts with service privileges and records each rate change in CostSettingsChange.
Recomputes a person's User.assigned_locations as the union of the venue_id on every TeamMember row carrying their email, so the venue-scoped read rules on Venue, Location, Issue and Comment can see them. Skips admins, who rely on the admin exception, and reads every write back before reporting it done.
Standalone Law 1 validator and admin sweep that refuses named worker verdict fields. Nothing currently calls it; the live gate is inside gatedWrite.
Returns a venue's monthly response labour cost as whole-dollar aggregates only, never per-person figures, and only for managers, GMs and admins.
Public no-auth beacon that records a single page view and skips bots by user agent. Nothing in the app currently calls it.
The only writer of ReviewerActivity, accepting one event or a capped batch from confirmed reviewer accounts and persisting them as service role.
Checks the request's source IP against a venue's registered ranges and returns a verdict, still allowing writes when no network is registered or the caller is exempt.
Builds the bilingual Opening or End of Night report when a venue's opening or closing checklist set completes, notifies the venue's owner, GM and AGM, and mints the openings-and-closings passport milestone. A 3am backstop mode writes the End of Night with the incomplete list when closing never finished.
Finishes client sign-up server-side: creates the Account, first Venue, the signer's owner TeamMember, the seeded bilingual checklist library and team Invites, cuts the signer's venue key, and sends invite emails; every write is read back before being reported.
Validates an invite token (7-day expiry enforced), creates the invitee's TeamMember row at the invited venue, marks the invite accepted, and recomputes their venue access.
Sends one team invite from the Team page: verifies the caller is a manager or admin, creates the 7-day-expiry invite record or re-sends a pending one's same link, and emails the bilingual invitation.
Takes recorded audio, transcribes it with Whisper, detects the language, and returns English/Spanish versions.
Auto-translates one checklist template to Spanish via OpenAI and stages it for human review.
Finds all English-only templates and translates them to Spanish in batches, auto-approving them.
Nightly seeder that writes one day's batch of seed records for the two showcase venues, stacks on prior days, and sweeps seed rows past 90 days.
Idempotently seeds the baseline bilingual knowledge article library, skipping any article whose title already exists and never touching staff-authored content.
Creates a VenueHistory event record (with shift, weather, day-of-week) when things happen in the app.
Deletes operational records older than retention windows, while never touching audit records.
Marks all unreleased templates as released and deletes ones missing role/industry.
Returns all active venues (works around a Venue read issue by using service role).
Fetches current weather from Open-Meteo and returns it plus an operational alert (wet floors, secure furniture, etc.).
The only outbound integration path, running the token, approval, scope and Law 1 field checks in strict order and auditing every call.
Records an admin's approve or reject decision as an immutable approval row with a snapshot of the scopes active at that moment.
Generates an integration token for an admin, returns the raw value exactly once, and stores only its salted hash, last four, scopes and expiry.
Handles Issue create and escalation events, assembles a name-free payload for postToSlack, posts once per issue, and never blocks the underlying write.
Governed Slack sender that reruns the integration gate, builds an alert or digest from contract fields only, and audits every attempt without throwing.
Verifies an inbound webhook's HMAC signature against the integration secret, then applies the same contract, scope and Law 1 checks before accepting it.
Marks an integration token rotated, issues a replacement linked back to it, returns the new raw token exactly once, and audits the rotation.
Hourly job that aggregates open counts, resolved counts and compliance percentage, then sends a daily or shift digest to Slack when the configured time matches.
Health probe that runs the AI prioritizer on a sample issue and logs it.
Deletes every record flagged is_test_record across the sign-up entities after a test walk, service-role and owner-gated, then re-cuts the caller's venue access to the real venues only.
A reported problem at a venue, with priority, status, and assignment.
A reusable checklist definition with its list of items and assigned roles.
A filled-out checklist for a venue on a given day, with each item's result.
A task raised by staff that needs approval and follow-up across departments.
A comment left on an issue, with author and mentions.
A message in a conversation attached to an issue or asset.
A note or talking point posted for a venue's team huddle.
A lightweight StandardsNow issue record with severity and status.
A rule that fires an automatic action when a trigger or inactivity condition is met.
A physical facility with its address, type, and timezone.
A geofenced location with coordinates, wifi, and IP ranges for presence checks.
A staff member with their role, venue, reporting line, and shift times.
An app user account with role, permissions, and assigned locations.
A milestone in a worker's record, like shifts completed, in two languages.
The client company account created at sign-up, holding tier, vertical, venue cap, primary language, the 30-day pilot clock, and the owner.
A pending team invitation with its token, venue, role, language, 7-day expiry, and accepted state.
A team member leaving a venue, recorded by date and role category with no names, by design.
A piece of equipment being tracked, with its cost, warranty, and status.
A dated event in an asset's life, like a repair, cost, or status change.
A planned or AI-suggested maintenance job for an asset.
A sensor reading from an asset, flagged if it looks anomalous.
The master record for a venue, with brand, vertical, and address.
The live orb state for a venue holding the inner, middle, and outer ring numbers, plus the nightly Venue Memory predictions in its memory field.
A logged event in a venue's history, with who logged it and when.
A score of how often problems keep recurring at a location.
An analysis of the cost of redoing work at a location.
Links a shift's staffing level to how well work was executed.
Connects staffing choices at a location to margin and profit impact.
Risk configuration for a location tuned to its industry vertical.
An AI forecast of when and how an asset is likely to fail.
Compares a past prediction to what actually happened to score accuracy.
A forecast of when a recurring trend or issue will happen next.
A detected recurring pattern across issues that may signal a systemic problem.
A detected pattern of a specific problem recurring at a location.
AI vision results checking a submitted photo for compliance and cleanliness.
AI analysis of how much a single checklist item is actually worth keeping.
An AI suggestion to change a workflow, with expected efficiency gain.
Records each decision the AI made for a venue, why it made it, and how sure it was.
Stores every AI feature call with its prompt, model, response, and user feedback.
A tamper record of who changed what data, with before and after values.
A readable log of user actions across the app with old and new values.
A system telemetry record of an operation's speed, errors, and severity.
A compliance check of an asset against frameworks, with score and violations.
A fix-it task created from a compliance violation.
An in-app how-to or reference article, sometimes AI-generated.
One Index tutorial clip: the screen it tours, theme, language, and its video file in the app store.
A user's rating and feedback on a knowledge article.
A knowledge article pulled in from a connected external source.
A linked external knowledge source with its auth and sync settings.
A news or intel headline pulled in and screened for value.
A news source with its reliability score and vote counts.
A vote on an intel source's usefulness, with reason.
A set of before, during, and after actions for one weather condition and venue type.
A single in-app notification sent to a user.
A user's settings for which alerts they get and when.
A bilingual StandardsNow notification for a recipient at a property.
Flags when a tracked metric drifts far from its normal baseline.
An alert about a repeating operational problem at a venue.
A venue pulse alert about a repeating condition needing attention.
A venue pulse alert about a recurring condition for a target audience.
A weather warning and its likely impact on operations.
A record of a broadcast alert sent to a team.
A live emergency fired at a venue, with type, active or cleared status, and expected headcount. Can never be deleted.
One person acknowledging one emergency event, used as a safety roll call, never as a metric. Write-once.
A stocked part with its quantity, reorder point, and supplier.
A single stock movement in or out, with the new stock level.
A new hire's full onboarding plan with dates and progress.
A single required task in a new hire's onboarding, with due window.
A time-sensitive alert about a new hire's onboarding task.
A pre-built template for a given industry vertical and rollout phase.
Logs what a trial user did and how far they got in the walkthrough.
One invited prospect's guided product walkthrough: who was invited, which steps they completed, and when. 0 records live.
An older prospect walkthrough session record: invite, recipient, steps completed and timing. Superseded by WalkthroughSession, 0 records live, kept for schema history.
An older per-event log of a prospect's walkthrough: sign-up, verification, login, stage reached and checklist events. Superseded by WalkthroughActivityLog.
A record that a user agreed to a specific data consent version.
A user request to access or delete their data, with its status.
A record that a user agreed to voice recording consent.
A logged voice recording session with duration and transcript link.
An export of a worker's records with a download link and expiry.
A connection to an outside system with its keys, sync status, and record count.
Rules mapping outside fields to app fields for an integration.
A connected outside vendor system, with status, data in and out contracts, and rate limit.
A request to enable an integration, with the decision, approver, and a snapshot of scopes. Write-once.
A logged integration call, with direction, operation, actor, and outcome such as denied or rate limited. Write-once.
One permission granted to an integration, with its direction, who granted it, and active flag.
A credential issued to an integration, holding its hash, last four, scopes, expiry, and status.
The app-wide Slack alert settings, covering channels, digest cadence, and whether outbound alerts are enabled.
A venue's spending target for one calendar month, with the budgeted amount and optional owner notes.
A single logged spend at a venue, with date, amount, category, and who logged it.
A venue's owner-set cost rates and priority weights used to price downtime and staff replacement.
One rate change on a venue's CostSettings: the field, old and new value, when, and the role that changed it. Never a person identifier.
A user-built dashboard layout of chosen widgets.
A rolled-up leadership summary of top risks, repeat issues, and open items.
A periodic report of trends in equipment, staff, weather, and compliance for a venue.
A saved schedule for automatically running and sending a report.
A single anonymous page view, with path, referrer, device, and an in-memory visitor hash.
One tracked reviewer action, such as a page enter, exit, or feature tap, with duration. Only a backend function can write it.
One Opening or End of Night report per venue per date, what and where only, with whether it was sent to the huddle.
The shared shadcn-style design-system primitives (buttons, dialogs, inputs, etc.).
AI engines and panels for predictions, root-cause analysis, drill-downs, and resolution suggestions.
Top-level shared components: nav, guards, error handling, the orb, and passport widget.
Equipment/asset tracking: detail views, health charts, lifecycle, and maintenance history.
Home-screen building blocks: the orb ring, next task, weather bar, quick log, and view-as switcher.
App infrastructure: caching, logging, metrics, rate limiting, and query management.
Report builders and dashboards for issues, assets, KPIs, and predictions.
Issue cards, detail, comment thread, and the manager assign/verify/inbox screens.
AI-built knowledge base: article generation, ratings, suggestions, and search.
Cost Centre cards showing money kept and at risk, the records behind each figure, rates, and exports.
Configurable dashboards and drill-down modals for managers and technicians.
Predictive maintenance: failure forecasts, schedulers, and calendars.
Team tools: skills mapping, certifications, capacity, emergency contacts, and the email invite sheet.
Weather widget, alert banner, and shared weather context.
Charts, KPI cards, and report tools for looking at trends and fleet health.
The pieces that run checklists: the runner, photo capture, sign-off, and review queue.
Quick input tools for logging via photo, voice, type picker, and due-date presets.
The notification bell, event handling, preferences, proactive maintenance alerts, and push setup.
Screen-reader announcements, read-aloud buttons, visual and haptic alert cues, and accommodation profile sync.
Audit engine, release gate, and remediation planning/tracking for compliance.
Venue-intelligence feed cards, reliability badges, and thumbs-down feedback.
The ROI projection calculator: sliders, system-set rows, and the live verdict panel.
Background rules that auto-run tasks like inactivity checks and maintenance scheduling.
Field-technician views for assets and task maps.
Fleet-wide status rows, alerts, and summary bar.
Cards and config for connecting outside systems and mapping their data.
AI predictors for parts and stock, plus inventory insights.
Manages the offline action queue tied to location.
Role-permission config, guard, and a permissions hook.
Live sensor monitoring, alerting, and data widgets.
Voice-note recording with a consent gate and recording banner.
KPI cards, a daily views bar chart, and ranked top pages and referrers. Built but not wired to any screen.
Configurable branding and a hero banner for white-label setup.
The monthly spend log with add, edit and delete, plus the recalculation pulse after a save.
Field logging forms and a required-checklist gate.
Mobile touches like page transitions and pull-to-refresh.
Stores and syncs data when the device is offline.
Install prompt and service-worker management for the web app.
The reviewer-mode banner saying nothing is saved, plus page-visit and time-on-page tracking.
The hold-to-fire panic alert button and a grouping of security issues by area or type.
Logs important actions for the audit trail.
Guards routes so only signed-in users can see them.
The locked wordmark v2 component, Wordmark.jsx (BRANDFIX-0827). The ST shield image itself is served from public/brand via constants.js LOGO_URL and LOGO_TRANSPARENT.
In-app team chat.
The data-consent pop-up.
A worker's own issue activity grouped by status, with plain counts and no scores.
The form for posting a daily huddle note.
A search bar for venue memory.
The top-nav avatar.
Manages tab navigation state.
Tracks operational actions.
User notification preferences panel.
A modal for marking recurring disease/hazard markers.
The QR-code scanner.
The delete-account section.
Docs for vertical-specific risk profiles.
The end-of-shift prompt.
Analytics dashboard for checklist templates.
The floating sun and moon button that switches between Day and Night.
Bulk actions for work orders.
Holds the low-vision prefs: text scale, high contrast, read aloud, alert cues, and sound.
Provides sign-in state, the current user, and public app settings to the whole app.
Holds the English/Spanish language choice and the translation strings.
Logs which page the user visits for activity tracking.
The fallback screen for an unknown route.
Tracks whether a voice recording is active and its stop handler.
Holds the Day or Night theme choice and applies it to every screen.
Holds the active venue and its switcher, and pins floor staff to their own venue.
Lets GM/AGM preview the app as another role (display only, never real permissions).
Stores accessibility settings on the person's record so they follow them across shared devices.
Reads app parameters from the URL or local storage.
Resolves the returnTo link after sign-in to a safe same-origin path.
The Cost Centre engine: the money math, its bilingual strings, and the defensibility pack builder.
The six emergency alert types with their English and Spanish labels and worker instructions.
Decides whether to show the greeting, once per session/day.
The Home screen's own stylesheet, its logo image data, and the page-curl transition.
English and Spanish labels for the Integration Controls screen, including every refusal reason.
Single source of truth for whether a role counts as a manager.
Lets sign-out trigger the orb shrink-out animation without a shared React context.
Configures the React Query client (caching and retry rules).
Single source of truth for a person's effective role, falling back to their job title.
Reviewer mode: detection, the nothing-is-saved write guard, and activity and tour-step tracking.
Maps raw role codes to friendly display names.
The visual sensory layer: the amber shift-halfway checklist nudge and the page-sweep timing.
The sound layer: built-in audio cues for resolved work, emergencies, and page thresholds.
Stamps transient signal records with the standing 72 hour expiry before they are written.
Goes back a page, or to Home when there is no history to return to.
Reads text aloud in English or Spanish, one utterance at a time.
Small helpers like the cn() classname merger and an iframe check.
Seeds two Value Model inputs from the venue's live issue data.
Tells components whether the screen is mobile-sized.
Queues actions in IndexedDB when offline and syncs them later.
Fires and resolves the one-tap panic alert, refusing when no venue can be resolved.
Translates issue titles/locations to Spanish with an in-memory cache.
The canonical notification message templates.
Logs each AI call to the AILog entity and returns its ID for feedback.
Converts 24-hour times to 12-hour AM/PM.
Turns a page name into its route URL.
Defines work-passport milestone thresholds and their messages.