Skip to content

Pinley Mechanical — Sprint 3 Demo & Sprint 4 Planning

Date: March 24, 2026 Attendees: Conor Halpin (HVAC Construction Inc.), Development Team Project: Pinley Mechanical — Insurance Compliance & Construction Project Management Platform


1. Current Status

What's Complete

Component Status
Auth (Login / Forgot Password / Reset / Verify) COMPLETE (Backend + Frontend)
Invite User Flow (admin creates user → email → set password) COMPLETE (Backend + Frontend)
User CRUD (list, add, edit, view, roles) COMPLETE (Backend + Frontend)
Role & Permission System (5 roles, 32 permissions) COMPLETE
Email Templates (verify, reset, invite) COMPLETE
Subcontractor CRUD + Contacts COMPLETE (Backend + Frontend)
Broker CRUD + Contacts COMPLETE (Backend + Frontend)
Vendor CRUD + Contacts COMPLETE (Backend + Frontend)
Client CRUD + Contacts COMPLETE (Backend + Frontend)
Project CRUD (list, add, edit, PM dropdown) COMPLETE (Backend + Frontend)
Settings — Users + Roles & Permissions COMPLETE (Backend + Frontend)
Sidebar Navigation (collapsible + project switcher) COMPLETE
Dark/Light Theme (persistent toggle) COMPLETE
45+ Domain Models Registered & Seeded
15 Proto Definitions (all wired end-to-end) COMPLETE

Overall Progress: ~25%

The foundation and all CRUD scaffolding is production-ready. Authentication, RBAC (5 roles, 32 permissions), the entire data layer (45+ models), and full frontend CRUD for all directory entities and projects are complete. What remains is business logic modules (COI, compliance, documents, incidents, indemnity), detail pages, integrations, bids, tasks, and the dashboard.


2. Sprint 3 Accomplishments

  • Directory UI for all 4 entity types (Subcontractors, Brokers, Vendors, Clients) with tabbed layout
  • Add/Edit/View modals with embedded contacts management (ContactsTable)
  • Project CRUD with project manager dropdown
  • Auth redesign — dark themed login pages, admin-creates-user flow (no self-registration)
  • Email notifications with auto-login for forgot password and invite flows
  • Sidebar navigation with collapsible state and project switcher
  • Dark/light theme with persistent toggle
  • Settings pages — Users list + Roles & Permissions cards

3. Demo Walkthrough

Recommended order (~20 min):

  1. Auth Flow (3 min) — Dark-themed login, invite user flow (Settings → Users → Add → email sent → user sets password → auto-login)
  2. Dark/Light Theme (1 min) — Toggle from profile dropdown, persists across sessions
  3. Sidebar Navigation (2 min) — Collapsed/expanded states, global nav groups, admin-only Settings
  4. Project Switcher (2 min) — Click "Select Project" → searchable modal → select → sidebar adds project-scoped section (Subcontractors, Insurance, Documents, Compliance, Tasks, Incidents, Indemnity) → clear with X button
  5. Directory (4 min) — Tabbed layout, add subcontractor, view with contacts table, add contact
  6. Projects (3 min) — List, add with PM dropdown, edit, status badges
  7. Settings (2 min) — Users list with role filter, Roles & Permissions cards

4. Sidebar UX Deep-Dive

Global Navigation (always visible): - Dashboard, Projects, Directory (→ Subcontractors, Vendors, Clients, Brokers), Bids, Tasks, Settings (admin only → Users, Roles & Permissions)

Project Switcher: - Button at top of sidebar, below logo - Opens modal with searchable project list - Shows project initials badge + name when active - X button to clear selection

Project-Scoped Navigation (appears when project selected): - Divider + project name header - Subcontractors, Insurance, Documents, Compliance, Tasks, Incidents, Indemnity - All scoped to the selected project

Collapsed Mode: Icon-only with tooltips, project switcher becomes icon button


5. Revised Development Plan — 3 Parallel Streams

With a new developer onboarding in Sprint 4, the remaining work is organized into three concurrent streams. This allows Bids and Tasks — originally planned as post-launch — to ship at MVP alongside core compliance features.

Stream A — Core MVP (Lead Dev) Projects → COI → Documents → Compliance → Incidents → Indemnity + Dashboard

Stream B — Bids (New Dev + Lead Dev) Proto + Models → Backend → Pipeline UI → Detail → Analytics

Stream C — Tasks (New Dev) Proto + Models → Backend → Kanban UI → Auto-generation → Integration

Sprint Timeline

Sprint Dates Stream A (Core MVP) Stream B (Bids) Stream C (Tasks)
3 ✅ Mar 16-27 Directory UI + Contacts + Project CRUD + Auth + Sidebar + Theme
4 Mar 30 - Apr 10 Project Detail + Google Places* + COI proto/backend Bid proto + models + backend scaffolding (new dev onboarding) Task proto + models + backend scaffolding (new dev onboarding)
5 Apr 13-24 COI UI + Documents** + Compliance start Bid Pipeline UI + Detail page Task Kanban UI + creation + filters
6 Apr 27 - May 8 Compliance engine + Incidents + Indemnity (upload-only) Bid import + line items + project number linking Auto-generated tasks + cross-module links
7 May 11-22 Renewal workflows + Email service + auto-create contacts on send Bid vendor management + sub suggestions from COI Task reporting + dashboards + team auto-suggest
8 May 25 - Jun 5 Dashboard + External Portal + Audit Log + role process visualization Bid reporting + edge cases + integration testing Task cross-module testing + bug fixes
9 Jun 8-27 UAT + Launch Prep UAT + Launch Prep UAT + Launch Prep

* Blocked on Google Places API key from client ** Blocked on Azure Blob Storage credentials from client

Key notes:

  • Sprint 4 is onboarding sprint — new dev ramps up on Bids/Tasks (proto, models, backend scaffolding)
  • Lead dev focuses on core MVP (Stream A) and supports new dev
  • Sprints 8-9 have structured QA and launch prep for all streams

Post-Launch Roadmap (after Sprint 9):

Feature Target Notes
SharePoint document auto-sync Sprint 10 Two-way sync with SharePoint libraries
Outlook/email integration Sprint 11 Read incoming emails, flag missing/wrong format documents
Advanced role-based workflows Sprint 11 Different workflow paths per role (beyond permission gating)
Subcontractor types/roles within companies Sprint 10 Expand beyond trade field to role classification
Advanced analytics + reporting Sprint 12 Cross-module reporting and insights

Timeline Comparison

Milestone Original Plan Revised Plan Delta
MVP Launch May 8 Jun 27 +7 weeks
Tasks Module Jun 5 (post-launch) Jun 5 (in MVP) Included at launch
Bids Module Jul 3 (post-launch) Jun 5 (in MVP) Included at launch

The MVP launch moves out 7 weeks, but it now includes Tasks and Bids — both originally post-launch. Significantly more value delivered at launch.


6. Sprint 4 Plan

New Developer Onboarding (first 2-3 days): - Environment setup, architecture walkthrough - First tasks: Bid and Task proto definitions + model registration (low-risk, learns all layers)

Stream A (Lead Dev): Project Detail page, project-party linking, Google Places (if key provided), COI proto + backend Stream B (New Dev + Lead Dev): Bid proto + models + backend CRUD scaffolding Stream C (New Dev): Task proto + models + backend CRUD scaffolding


7. What You Get at Launch

  • Full authentication and role-based access control (5 roles, 32 permissions)
  • Project management with team assignments
  • Directory — Subcontractors, Brokers, Vendors, Clients with contacts
  • COI management with compliance checking
  • Document management (Azure Blob Storage)
  • Incident tracking and indemnity agreements
  • Bid management with pipeline view and analytics
  • Task/Kanban board with auto-generation from project events
  • Dashboard and reporting
  • Email notifications
  • External subcontractor portal

8. Decisions Needed

Priority 1 — Blocking Sprint 4

# Decision Recommendation Impact if Delayed
1 Google Places API key + plan Provide API key. Question: Autocomplete only, or autocomplete + map? Blocks location fields. Sprint 4 ships without addresses.
2 Azure Blob Storage credentials Provide connection string or account key. Blocks document management entirely (Sprint 5).

Google Places Trade-off:

Autocomplete Only Autocomplete + Map
UX Type address → dropdown suggestions → select Same + interactive map showing pin
Effort ~2-3 days ~5-7 days
Cost ~$2.83/1K requests +$7/1K map loads
Recommendation Start here — sufficient for compliance workflows Add later if team needs visual location context

Priority 2 — Confirm/Clarify

# Decision Context Our Understanding
3 Broker entity — keep or remove? Full CRUD is built (list, add, edit, contacts). Earlier decision said "remove" but it's fully functional. Recommend: keep it. Zero cost since it's built. Remove from nav if not needed.
4 Cost/Claims module — still needed? Earlier (March 10) you confirmed keeping claims + costs for incident tracking. Want to re-confirm since you mentioned possibly removing it. Current plan: keep for historical reporting. Simple UI, robust backend.
5 Indemnity — upload-only confirmed? Our plan: PM uploads template PDF, sub downloads/signs/uploads back. No clause processing, no additional terms. Confirm this is correct. Multiple indemnities per project supported.

Priority 3 — Before Sprint 5

# Decision Recommendation
6 Email service provider SendGrid (free tier for dev, built-in deliverability monitoring)
7 Navigation hierarchy Demo today — does sidebar match your workflow?

Priority 4 — Before Sprint 6

# Decision Notes
8 Bid feature priority Critical for launch vs nice-to-have?
9 Task feature priority Same question
10 SharePoint integration Recommend post-launch (Sprint 10)
11 External portal timing Recommend internal-first (Sprint 8)
12 UAT ownership Who on HVAC Construction Inc. side leads testing?

9. Risks

Risk Mitigation
Google Places API key not provided Build forms without address, retrofit later (+1 sprint rework)
Azure credentials delayed Sprint 5 re-scopes to COI + Compliance without doc upload
New dev ramp-up slower Stream B/C tasks scoped small; lead dev absorbs overflow
Broker entity ambiguity Clarify today — full CRUD exists, easy to keep or remove

10. Highlights to Emphasize

  • Enterprise auth — Admin invites by email, user clicks → sets password → auto-logged in. No self-registration.
  • Dark/light theme — Polished, persistent, dark forced on auth for premium feel
  • Project switcher — Instantly switch project context, sidebar adapts. UX backbone of the platform.
  • 4 directory entities with contacts — Full CRUD including nested contact management
  • Scaling up — New developer onboarding Sprint 4, enabling 3 parallel streams
  • Proven pipeline — 15 protos wired E2E. Adding new modules is now fast and repeatable.

11. Website Review (pinley.com)

Per Conor's request, we reviewed the current Squarespace site. Overall it's professional and well-structured. Here are observations and recommendations:

What's Working Well: - Clean, professional design appropriate for B2B mechanical contracting - Clear value proposition ("Precision Services for Every Project") - Good project categorization (Infrastructure, Office Interiors, Turnkey, etc.) - Responsive layout with mobile support - Schema.org LocalBusiness markup present

Potential Issues to Discuss

  • Video embeds — SPX Cooling Tech video may have playback reliability issues (Conor mentioned "video issues"). Recommend verifying it plays on all browsers/devices and adding a fallback image.
  • Contact form visibility — No prominent contact form/CTA above the fold on the homepage. For a contractor site, making it easy to request a quote is critical.
  • SEO gaps — No visible meta descriptions, heading hierarchy could be tightened (jumps from H1 to H4-H5)

Quick Wins

Area Recommendation
Video Test embedded video across browsers; add poster/fallback image if it fails to load
CTA Add a "Request a Quote" or "Get in Touch" button above the fold
SEO Add meta descriptions to all pages, improve heading hierarchy (H1 → H2 → H3)
Performance Lazy-load project images and partner logos
Accessibility Verify alt text on all project images, check color contrast ratios
Content Expand project case studies with specific metrics/outcomes (some already have this, make it consistent)

Recommendation: Keep Squarespace or Rebuild?

Option Pros Cons
Keep Squarespace (recommended) Already live, easy for Conor to edit, low cost, good enough for a contractor marketing site Limited customization, video embed issues, SEO ceiling
Rebuild custom Full control, better performance, unified with Pinley platform Significant effort, not core to the compliance platform, delays MVP

Our recommendation: Keep Squarespace. The current site serves its purpose — it's a marketing/portfolio site for the contracting business. The Pinley platform we're building is the internal operations tool, not a public website replacement. Spending time rebuilding pinley.com takes away from the compliance platform which is the real value.

What we can help with (low effort):

  • Fix the video issues Conor mentioned (as a website contributor)
  • Add meta descriptions and fix heading hierarchy for SEO
  • Add a prominent "Request a Quote" CTA above the fold
  • Optimize image loading

These are small Squarespace tweaks, not a rebuild. Estimate: 2-4 hours, can do outside sprint work.

Action Items: - [ ] Conor to clarify the specific video issues he mentioned - [ ] Dev team to review as contributor (Conor added us) and flag specific fixes - [ ] Confirm: website tweaks handled as side task, not part of sprint scope


Document prepared by the Pinley development team. For questions, contact the project lead.