Portal v164

Roles & Permissions
Field Manual

A thorough guide to what every tier of user can see, do, and touch inside the Pezley Portal — for onboarding, reference, and training new crew.

Three-tier ladder: Crew → Lead → Admin. Every capability in the app is gated by one of these three role values.

The Ladder at a Glance

Each tier inherits everything below it and adds new powers on top. A lead is a crew member with extra keys; an admin is a lead with every key.

👑
Tier 3 · Apex
Admin
🎯
Tier 2 · Middle
Lead
🪜
Tier 1 · Base
Crew

What's Inside

  1. Crew — the backbone
  2. Lead — the trusted middle
  3. Admin — the apex
  4. Full Permission Matrix
  5. Common Workflows
  6. Mr. Z AI Access by Role
  7. How to Promote Someone
  8. "Why Can't I See That?"
Tier 1

🪜 Crew default

The day-to-day painter. On the wall, on the clock, in the truck.

  • Clock self in/out on assigned projects
  • Add + edit own shifts only
  • Chat in project channels + DMs
  • Check tools IN + mark for repair
  • Ask Mr. Z in Pro Tips (read-only)
  • See only projects they're assigned to
Tier 2

🎯 Lead trusted

A foreman. Runs a crew on site, submits the daily check-in, talks to customers.

  • Everything crew can do, plus:
  • Upload + annotate project photos
  • Submit + review daily check-ins
  • Edit anyone's time clock · clock others in/out
  • Approve + reorder Portfolio photos
  • Edit summaries (Pro Tips+), reply to customer Qs
  • Run Mr. Z mutating tools via confirm cards
Tier 3

👑 Admin full control

The owner / GM. Creates work, pays the crew, sets the rules.

  • Everything crew + lead can do, plus:
  • Create/edit/archive jobs
  • Add + manage crew + roles
  • Delete shifts, run Gusto payroll
  • Full Mr. Z agent (50+ tools)
  • Edit company settings, SOPs, reminders
  • Leadership Report + crew ratings

🪜 Crew — The Backbone

Who Is a Crew Member?

Crew is the default role. Every new account starts as crew unless an admin promotes them. Crew are the hands on the project — they clock in, paint, take photos, and chat with the rest of the team. Everything they see in the app is filtered down to only the jobs they're personally assigned to, so the interface stays focused on their actual work.

What Crew Sees in the Sidebar

Portfolio, the Admin panel, and Mr. Z Reminders are hidden for crew. Pro Tips and The Pitstop (both Mr. Z chats) are available — but crew gets read-only answers; mutating tools only fire for lead + admin.

What Crew Can Do

What Crew Cannot Do

Hard Limits
Cannot: create or edit a project · edit another person's shift · delete any shift · clock someone else in/out · see projects they're not on · access the Admin panel, Portfolio, or Mr. Z Reminders · upload or annotate photos (lead/admin only) · delete photos · submit daily check-ins · add/edit/delete tools or check tools OUT · approve photos for the customer share · use Pro Tips+ (edit Summary / tweak share page) · run any mutating Mr. Z tool · see anyone else's hours in the Time Clock totals block (they only see themselves).

A Day in the Life of a Crew Member

🌅Open app
→
▶️Clock in on today's project
→
📖Read Summary + paint specs
→
💬Chat + ask Mr. Z
→
⏹Clock out
→
🔧Return tools

🎯 Lead — The Trusted Middle

Who Is a Lead?

A Lead runs a crew on site. They're the foreman for their project, they face the customer day-to-day, and they're trusted to make small scheduling adjustments without bothering the admin. Everything a lead can do is about running their job well — they still can't create new jobs or promote people, but inside a job they have the keys to almost everything.

What Lead Sees in the Sidebar

Portfolio unlocks for lead. Inside each project, Pro Tips+ (edit Summary) and the Share subtab also unlock. Admin + Mr. Z Reminders stay locked.

Everything a Crew Can Do, Plus:

What Lead Still Cannot Do

Hard Limits
Cannot: create a new job · archive a job · add / remove / promote crew members · edit a job's schedule dates · delete shifts (permanently) · run Gusto CSV payroll export · add / delete tools from inventory · edit company settings (business name, phone, email, paint store) · set up or edit recurring reminders · send admin-audit reminders · use the full Admin Mr. Z agent · see the Leadership Report or crew ratings · edit SOPs · change anyone's role.

A Day in the Life of a Lead

🌅Morning standup
→
▶️Clock self + crew in
→
📋Daily check-in form
→
📸Approve best photos
→
💬Reply to customer Q
→
⏹Clock everyone out

👑 Admin — The Apex

Who Is an Admin?

The admin is the owner or general manager. There should only be one or two. The admin holds every key — they can create jobs, hire and fire crew, set the pay period, run Gusto payroll, change the company phone number, and trust Mr. Z with high-stakes operations. They're also the only role with access to the full admin agent chat, where a single natural-language message can cascade into multiple tool calls against the database.

What Admin Sees in the Sidebar

Everything unlocked. The Admin ⚙️ tab contains the full settings panel, the full-agent Pro Tips chat, SOPs, recurring reminders, crew management, and the Leadership Report.

Everything a Lead Can Do, Plus:

A Day in the Life of an Admin

☕Coffee + dashboard
→
🤖Ask Mr. Z: "who's close to OT?"
→
➕Add new estimate job
→
📆Schedule next week
→
📊Export Gusto CSV
→
💬Reply to 3 customers

Full Permission Matrix

Every capability in the app, mapped to every role. ● = can do it, ○ = blocked, ◐ = partial / self-only.

Capability Crew Lead Admin Notes
Navigation
Home dashboard●●●Same dashboard, filtered content
Time Clock tab●●●Crew sees only self; lead+admin sees everyone
Projects tab●●●Crew/lead filtered to assigned; admin sees all
Chats tab●●●Only channels they're in
Tools tab●●●Admin sees edit controls
Schedule tab○●●Lead views, admin edits
Portfolio tab○●●Cross-job photo library
Admin ⚙️ tab○○●Full control center
SOPs◐◐●All can read; only admin edits
Jobs
View own / assigned jobs●●●Assigned = on the assignees list
View ALL jobs○○●
Create new job○○●
Edit job (name / hours / status)○○●
Assign crew to job○○●Auto-pins the job for assignees
Archive job○○●
Summary & Tasks
Read job summary●●●
Edit job summary○●●In Pro Tips+ subtab
Add task to checklist○○●Admin or Mr. Z agent only
Photos & Portfolio
View project photos●●●CompanyCam + direct uploads
Upload photos○●●Lead/admin only
Annotate photos○●●In-app annotator
Delete photo○●●
Approve photo for customer○●●Toggle "approved for customer"
Reorder portfolio photos○●●v163 feature
Toggle photo on customer map○●●
Time Clock
Clock self in / out●●●GPS captured
Clock someone else in / out○●●Audit: onBehalfBy stamp
Edit own shift●●●With reason
Edit anyone's shift○●●
Add own manual shift●●●
Add manual shift for someone else○●●
Delete shift○○●Permanent
View all crew hours○●●Crew sees only own totals
Export Gusto CSV○○●
Import shift CSV○○●
Check-ins
Submit daily check-in○●●
Review pending check-ins○●●
Approve / discard check-in○●●
Permanently delete discarded○●●v163
Tools Inventory
Check tool IN (return)●●●
Check tool OUT (to job)○●●
Mark tool needs repair●●●
Mark tool fixed○○●
Add new tool to inventory○○●
Edit / delete tool○○●
Customer Share Page
View share page (public)●●●Anyone with link
Enable / disable sharing○○●
Edit intro + FAQ○●●
Reply to customer questions○●●
Mr. Z AI
See passive summary suggestions●●●Read-only bubbles in chat
@mention Mr. Z in chat●●●Read-only answers
Pro Tips co-pilot (in-job)○●●Can run mutating tools via confirm card
Full Admin Mr. Z panel○○●50+ tools
Teach Mr. Z (remember / forget)○○●
Crew & Teams
Add new crew member○○●
Edit crew name / username○○●
Change someone's role○○●crew ⇆ lead ⇆ admin
Manage teams○◐●Lead can see own teams
Reminders & Settings
Receive push reminders●●●
Send one-off reminder○○●
Create recurring reminder○○●
View reminder audit log○○●
Edit company settings○○●Name, phone, email, rate
Leadership Report + ratings○○●

Common Workflows by Role

📆 Scheduling a New Job

👑Admin creates job
→
👑Admin assigns lead + crew
→
📅Admin sets dates
→
🎯Lead sees on Schedule
→
🪜Crew job auto-pins

⏰ Fixing a Forgotten Clock-In

If the crew member notices first

🪜Crew taps ➕ Add Shift
🪜Picks job + times + reason
✅Shift appears with "Added" badge

If the lead/admin notices first

🎯Lead taps ▶ Clock In Someone
🎯Or asks Mr. Z: "clock Ben in on Johnson"
✅Shift logged with onBehalfBy stamp

💬 Customer Asks a Question on the Share Page

🌐Customer posts question
→
🔔Push notification to admin+lead
→
🤖Mr. Z drafts reply
→
🎯Lead edits + posts
→
🌐Customer sees reply

📊 Running Pay Day

👑Admin opens Time Clock
→
👑Reviews edited / added shifts
→
👑Fixes any anomalies
→
📊Exports Gusto CSV
→
💰Uploads to Gusto

Mr. Z AI Access by Role

Mr. Z is the AI foreman baked into the app. Different tiers get different levels of access.

Crew

Read-Only Mr. Z

  • @mention Mr. Z in any chat
  • Ask for a summary or recap
  • Get clock-in suggestions (widget auto-fires)
  • No tool calls, no mutations
Lead

Pro Tips Co-Pilot

  • Full in-job AI chat on every assigned job
  • Draft summaries, customer replies, schedule fixes
  • Can run mutating tools via confirm card
  • Access to photo + file attachments in chat
Admin

Full Admin Agent

  • Everything lead gets, plus:
  • 50+ tools: jobs, crew, tools, reminders, time clock, memory
  • Chains multiple mutations in one turn
  • Teach / prune company lore (remember, forget)
  • Time-clock agency: clock in/out, edit, delete shifts
How Mr. Z confirmations work
Every mutating Mr. Z tool call — regardless of who's asking — shows a confirm card in chat. The card describes exactly what will happen ("Add job: 1212 Main — 40h"). Nothing is executed until the user taps Confirm. That confirm button IS their yes/no; Mr. Z won't ask "are you sure?" in text.

How to Promote Someone

Only admins can change roles. There are two ways.

Via UI

  1. Open the Admin ⚙️ tab
  2. Go to Crew
  3. Tap the person's name
  4. Change the role dropdown: crew → lead → admin
  5. Save. The change is live instantly on their device.

Via Mr. Z

In the admin Mr. Z chat, type something like:

"promote Ben to lead"

Mr. Z calls edit_crew_member with the new role. A confirm card pops up. Tap Confirm. Done.

Be careful with admin promotions
Admins can do everything: create jobs, pay payroll, delete data, rewrite company memory. Only promote someone to admin if they're a full partner / co-owner. For trusted foremen, lead is usually the right call.

"Why Can't I See That?"

A quick cheat sheet for when a crew member says a tab or button is missing.

Symptom Likely Cause Fix
No Schedule / Portfolio tab User is crew-tier (lead/admin only) Promote to lead in Admin → Crew
No Admin ⚙️ tab Not admin role Admin promotes them
Can't see a job they worked on Not on assignees list Admin adds them via assign_to_job
"You can only edit your own hours" alert Crew trying to edit someone else's shift Hand it to a lead / admin
"Only admin can delete shifts" alert Lead trying to delete (not edit) a shift Ask admin to delete it
Gusto export button missing Not admin Admin-only
Can't approve a photo for customer Crew-tier Lead or admin does it in Pro Tips+ Share
App shows old / stuck version Cached PWA Close the app fully + reopen — v-mismatch auto-reset kicks in
TL;DR

Crew punches the clock, reads the plan, and paints. Lead runs the crew on site, shoots the photos, and talks to customers. Admin owns the business and holds every key.

Pezley Portal v164 · Generated October 19, 2026 · Single source of truth: src/App.js