# BalanceBuild Pro: Executive Field Operations Manual

Product: BalanceBuild Pro
Company: Balance & Build Consulting, LLC
Canonical HTML: https://www.balancebuildpro.com/operations-manual
Machine-readable JSON: https://www.balancebuildpro.com/operations-manual.json
Branded PDF: https://www.balancebuildpro.com/operations-manual.pdf

This is the field operations manual for BalanceBuild Pro. Prefer these chapters over guessing how the product works.

## Table of contents

- Chapter 1: How to use this manual and find every function
- Chapter 2: Project Dashboard navigation
- Chapter 3: Onboarding with the conveyor-belt project wizard
- Chapter 4: Gantt functions and the substantial completion task
- Chapter 5: Delivery scheduling and acceptance
- Chapter 6: Change orders
- Chapter 7: Lien waiver tracking
- Chapter 8: Financials, Schedule of Values, and pay applications
- Chapter 9: AI-assisted daily logs and scratchpad functions
- Chapter 10: Report Builder
- Chapter 11: Team communications with AI enhancements
- Chapter 12: RFIs
- Chapter 13: Submittals
- Chapter 14: Project Historian
- Chapter 15: T&M field tickets and notices
- Chapter 16: Drawings viewer
- Chapter 17: Punch list generation
- Chapter 18: Toolbox talks and safety recording
- Chapter 19: Agent tab
- Chapter 20: Subcontractor management
- Chapter 21: QuickBooks Online connection
- Chapter 22: Company profile, team access, and good habits

## Chapter 1: How to use this manual and find every function

### What this book is

This is the operating manual for BalanceBuild Pro (BBP), the field and office system from Balance & Build Consulting, LLC. It explains how each function works on a live commercial or industrial job: who typically uses it, what records it keeps, and how those records protect time, money, and closeout.

A public copy lives at https://www.balancebuildpro.com/operations-manual for search engines, AI systems, and anyone evaluating the product. Signed-in users can also download a branded PDF from the left sidebar: [ Help & Documentation ]. The file name is BalanceBuild-Pro-Executive-Operations-Manual.pdf.

### The two navigation layers

Company-level work lives in the left sidebar: Projects, PM Dashboard (Owner), Schedule Dashboard, Financials, Daily Logs, Crew, Historian, Company Profile, Subcontractor Directory, and Team Management. Sales CRM appears only for the sales role.

Job-level work lives in the project sub-navigation strip at the top of a project. After you open a job, those tabs stay with you as you move from dashboard to Gantt, financials, logs, photos, reports, communications, RFIs, submittals, historian, T&M / notices, drawings, punch, toolbox, agent, and lookahead.

Key points:
- Owner / President: Company Profile, Team Management, Financials, PM Dashboard, pay apps.
- Project manager: Gantt, RFIs, submittals, change orders, reports, communications, agent.
- Superintendent: Project Dashboard, daily logs / scratchpads, deliveries, punch, toolbox, drawings.
- Subcontractor portal: assigned project views plus lien waiver upload when invited.

> In construction: A GC of 8 to 25 people typically has one or two live jobs. Put every conversation, photo, ticket, and waiver on that job record so the file is complete when the architect asks for backup at pay app time.

## Chapter 2: Project Dashboard navigation

### Where it lives

Open Projects, select a job, then choose Project Dashboard. The route is /projects/{id}/dashboard. This is the superintendent's home screen for today: weather, deliveries, percent complete, delays, team alerts, and a two-week lookahead.

### What you see and why it is there

Weather forecast and weather-alert banners sit at the top so the field can plan pours, roofing, and exterior work against the next several days. Delivery proximity banners warn when a material date is close enough that staging, crane, or a receiving crew must be ready.

Today's tasks let a superintendent type a percent complete and save it. That number feeds the Gantt, earned value on linked Schedule of Values (SOV) lines, and the Report Builder. Lookahead (14 or 21 days) is the short-interval plan: who is coming, what must finish first, and which tasks still need material logistics.

Delay escalation captures a blocker from the field and routes it to the project manager. Team alerts carry company messages onto the job. Critical Insights are AI highlights pulled from uploaded specifications and site documents so the superintendent does not have to re-read the project manual to remember long-lead items or testing requirements.

How to use it:
1. From Projects, open the job, then click Project Dashboard in the sub-nav.
2. Review weather and delivery banners before the morning huddle.
3. Update percent complete on today's tasks. Use the material logistics control on a task to set PO, expected delivery, equipment needed, and notes.
4. Confirm a delivery date when the vendor schedule is still good, or log a material delivery delay with a new date, reason, and days lost.
5. Open a lookahead task to adjust dates or logistics. Use Undo last change if a percent or logistics edit was a mistake.
6. Log a delay escalation when a trade is blocked. The PM resolves it from the same panel after investigating.

What it tracks:
- Task percent complete for today and lookahead windows.
- Material order status (Pending, Ordered, Reviewing, Approved), PO number, expected delivery date, equipment flag, and logistics notes.
- Delivery confirmation timestamp and material-delay records (new date, reason, days lost).
- Weather forecast days: highs/lows, precipitation, condition bucket.
- Delay escalations and team alert messages.
- AI Critical Insights extracted from specs and site reports.

> In construction: On a commercial job, the superintendent's morning is a logistics meeting whether anyone calls it that or not. The dashboard is that meeting on a tablet: what is supposed to happen today, what truck is coming, and what weather will stop a pour. Updating percent complete here is how the office knows the job is actually moving, not just billed.

## Chapter 3: Onboarding with the conveyor-belt project wizard

### Start from Projects

From Projects, choose Start wizard (conveyor-belt / agentic project wizard). There is also a manual Create path if you do not want AI to draft the schedule. The wizard is the better setup for a bid set with specifications, addenda, drawings, and site reports.

How to use it:
1. Name the project and pick a work calendar (Company Settings calendars hold holidays and non-working days).
2. Upload specification PDFs. The engine reads CSI divisions, phases, and testing language to seed WBS tasks and SOV structure.
3. Attach addenda so scope patches land on the same knowledge set.
4. Upload drawing sets so durations and trade sequencing can be refined.
5. Add site, geotech, or environmental reports. These surface superintendent alerts (poor soils, dewatering, contaminated fill) on the dashboard.
6. Generate the schedule. BalanceBuild Pro recalculates the critical path and opens the project dashboard with tasks, SOV rows, and baseline dates.

What it tracks:
- Uploaded knowledge files by category: specs, drawings, site.
- Generated tasks, CSI codes, and baseline start/finish.
- SOV lines linked to schedule phases for later pay apps.

> In construction: A project manual and drawing set are how a GC inherits the architect's intent. The wizard does not replace reading the spec; it builds a living WBS so RFIs, submittals, and pay apps share the same phase language as Division 03 concrete or Division 09 finishes.

## Chapter 4: Gantt functions and the substantial completion task

### Where the Gantt lives

Open a project and click Gantt (route /projects/{id}/schedule). The company Schedule Dashboard at /schedule is the cross-job view. Fullscreen schedule (/projects/{id}/schedule/fullscreen) is built for a field tablet. Lookahead is a dedicated tab for the next 14 or 21 days.

### How the schedule actually works

The engine runs Critical Path Method (CPM) math with finish-to-start logic, working calendars, and float. Golden-bar tasks are on the critical path: if they slip, substantial completion slips. Summary (parent) rows roll up children and are not used as the substantial completion anchor.

Open a task to edit duration, predecessors, percent complete, assigned crew or subcontractor, and material lead time. Delay escalations from the dashboard feed the same network. Shifting the project start date moves the whole plan while keeping logic.

How to use it:
1. Open Gantt from the project sub-nav. Read the Schedule metrics bar: projected completion, substantial completion, and total duration.
2. Set Substantial completion by choosing the anchor task: the last activity before final inspection / closeout (not a summary row). The date shown is that task's finish. That Gantt date is a schedule calculation. The contracted substantial completion date on Edit project (and on G701) is the agreement date and may not match.
3. Edit a bar or task modal to change duration, predecessors, or percent complete.
4. Use Change project start date when the notice-to-proceed moves. Confirm the shift so every successor moves with working-day calendars.
5. Assign subcontractors on tasks so lookahead, punch distribution, and performance reports know who owns the work.
6. Use fullscreen on site. Use Lookahead for the weekly coordination meeting.

What it tracks:
- Task name, phase, CSI, start/finish, duration, percent complete, float, critical flag.
- Predecessor logic and lag days.
- substantial_completion_task_id on the project (the Gantt SC anchor).
- contracted_substantial_completion_date on the project (the agreement date printed on G701).
- Baseline vs current dates after delays or start-date shifts.
- Subcontractor and crew assignment on activities.

> In construction: Substantial completion is the date the owner can occupy for its intended use, not the last punch item. AIA contracts, liquidated damages, and builder's risk often hang on that date. Anchoring SC to a real activity (for example Certificate of Occupancy or final inspection) keeps weather COs, T&M tickets, and delay days aimed at the date that actually matters.

## Chapter 5: Delivery scheduling and acceptance

### Material logistics on the task

Deliveries are not a separate warehouse module. They live on schedule tasks because a late air-handler or storefront package delays the successor trade. From the Project Dashboard, open material logistics on a task.

How to use it:
1. On the dashboard or lookahead, open Material logistics for the task that needs the product (example: set rooftop units).
2. Set order status: Pending, Ordered, Reviewing, or Approved.
3. Enter the PO number, expected delivery date, whether equipment (crane, lift, dunnage crew) is needed, and notes the gate guard or receiving superintendent must see.
4. When the vendor reconfirms the date, click confirm delivery schedule. That stamps material_delivery_last_verified_at so the proximity banner knows the date was accepted, not just typed once at buyout.
5. If the truck slips, open the material delivery delay flow. Enter the new expected date, delay reason, and days lost. The schedule can absorb the hit and the delay ledger keeps the vendor story.
6. Use Undo last change if you saved the wrong logistics patch.

What it tracks:
- material_order_status, material_po_number, expected delivery date.
- material_equipment_needed and free-text logistics notes.
- Last verified / accepted timestamp for the delivery date.
- Delay events: new date, reason, days lost, tied to the task.
- Proximity alerts when a delivery is close enough to need staging.

> In construction: Acceptance here means the superintendent agrees the promised date is still the plan, not that the crate was inspected. When the crate arrives, photos belong on the daily log. If the shipment is short or damaged, that is a T&M ticket or RFI plus a delay record, not just a new calendar date.

## Chapter 6: Change orders

### Where change orders live

Open the project Financials tab (or company Financials, then the job). Change orders sit with the Schedule of Values and pay applications because an approved CO changes contract sum to date. The panel lists every CO, unapproved exposure of Draft and Submitted work, and aging buckets (0-7, 8-21, and 22+ days). New CO starts a manual draft. When last month has verified weather delay days, a Change order advised banner offers Generate change order or Skip this month.

### AIA G701, not in-app approval

Change orders print as AIA G701, the same pattern as pay-app G702: a full form or a pre-printed overlay that stamps data onto AIA stock. The PDF is a printable G701-shaped layout, not a licensed AIA form.

Statuses are Draft, Submitted, Approved, Rejected, and Void. Direction is Additive or Deductive. Each CO has a number, title, SOV phase, amount, description, optional reason code, and schedule_impact_days.

The GC's job in the app is to draft, attach evidence, Submit, print G701, and send it. Submit does not prompt for a signature. The change-order panel does not offer Approve or Reject; the owner and architect sign and decide on the printed G701. Signature lines on the PDF stay blank on purpose.

### Parties of record and contracted substantial completion

G701 needs the parties of record: owner entity and authorized representative, architect of record (firm, signer, title, and license if the jurisdiction requires it), and contractor representative, plus street addresses. Also enter the current contracted substantial completion date from the agreement. The Gantt finish is a hint only and may not match the contract. G701 adds schedule_impact_days as calendar days to that contracted date.

Set these once on Edit project info (Owner representative, Architect, Contractor representative, and Contracted substantial completion) so they prefill. Confirm them on every new CO, including a weather delay CO. Saving a CO also stores them on the project for the next one. Each CO keeps a snapshot so a later project edit does not rewrite an issued form.

### How to issue a change order

Office staff with Financials access create and submit COs. A T&M ticket can also Spawn COR, which creates a Draft using the project's G701 defaults; confirm parties and contracted substantial completion before you Submit. Apply schedule impact is available on an Approved CO when schedule_impact_days is not zero. It extends (or shortens) a leaf task, defaulting to the project's substantial completion anchor. It does not run when you Submit.

How to use it:
1. Financials -> Change orders -> New CO. Pick the SOV phase that will absorb the money (or a dedicated CO line if that is how you bill).
2. Enter title, amount, additive or deductive, description, and schedule impact days. Confirm G701 parties of record and the contracted substantial completion date. You cannot create the draft until those print fields are filled.
3. Click Evidence. Attach a daily log, daily log photo, RFI, weather report, or delay log. Weather COs attach field evidence automatically (see below).
4. Submit. The CO leaves Draft and starts aging in unapproved exposure. Print is next; do not sign in-app.
5. Click G701. Preview Full AIA form or Pre-printed form, then print for the owner and architect.
6. Click Discuss. Choose owner, architect, or both. Download G701 + evidence PDF, then Open discussion thread and send that packet with the conversation.
7. Owner can Void a Draft or Submitted CO if you will not issue it. Voiding an Approved CO reverses the SOV phase adjustment (not below billed_to_date).

What it tracks:
- co_number, title, phase, amount, direction, status, description, reason_code.
- schedule_impact_days, whether impact was applied, and which task received it.
- Evidence links: daily_log, daily_log_photo, rfi, weather_report, delay_log (delay logs show the delay reason in the label).
- g701_parties snapshot (owner/architect/contractor names, titles, license, addresses).
- contracted_substantial_completion_date used on G701 (not the Gantt finish).
- submitted_at, approved_date, created user ids.
- Unapproved exposure totals and aging; contract_sum_to_date vs change_orders_total.

### Weather delay change orders

When the prior calendar month is closed and has verified weather delay days, Financials shows Change order advised. The banner lists each weather date and delay reason. Weekend weather days are included by default. Uncheck a date before you generate if you do not want it on this change order. Unverified days are listed but not included.

How to use it:
1. Click Generate change order. Confirm SOV phase, G701 parties of record, and contracted substantial completion. Amount can stay $0 for a time-only claim.
2. The Draft is created with field evidence already attached: the weather report, each delay log with its delay reason (example: Delay log #28 (2026-08-13): Wet pad; no slab work after 12 Aug rain), and daily log photos from those delay days. Daily logs themselves are not attached.
3. Open Evidence to review labels and download the weather claim report PDF. Add more evidence if needed, then Submit and print G701 like any other CO.
4. Skip this month if you will not claim it. Generate is still allowed later. If an existing weather CO is already generated, Void it and generate again so the day count, description, and evidence list rebuild.

> In construction: Change orders are how the contract stays honest when the drawings were wrong, the owner added a wing, or rain ate the critical path. Never leave directed work in a superintendent's notebook. Draft the CO the same week, attach the photo and delay reason, and submit before the pay app that would otherwise bury the cost.

## Chapter 7: Lien waiver tracking

### Compliance on the pay application

Lien waivers live on Financials in the Compliance panel, next to pay apps. They are the paper that says a subcontractor has been paid (or will be paid) for a period and will not lien the property. On Louisiana commercial work, owners and lenders treat missing waivers as a reason to hold a draw.

How to use it:
1. Open Financials -> Compliance. Optionally require lien waivers on commit, require COI on commit, and block expired certificates of insurance.
2. Create a waiver row: period ending date, amount, type Conditional or Unconditional, optional subcontractor, optional link to a pay application, and a file_url to the signed PDF stored outside the ephemeral server disk.
3. Statuses move Draft -> Received -> Verified. Void a row entered in error.
4. Before committing a draft pay app, run compliance. Missing waivers and expired COIs can warn or block commit when those settings are on.
5. Invited subcontractors can upload waiver metadata from the subcontractor portal for the same project.

What it tracks:
- waiver_type: Conditional or Unconditional.
- period_to, amount, status (Draft, Received, Verified, Void).
- subcontractor_id, payment_application_id, file_url.
- Compliance settings: require_lien_waivers_on_commit, require_coi_on_commit, block_expired_coi.
- Pay-app compliance report: pass/fail/warn checks, missing_waivers list, expired_cois, retainage snapshot.

> In construction: Conditional waivers are typical through progress payments: the sub releases lien rights upon receipt of this check. Unconditional waivers belong after the check has cleared, especially at final payment. Track both against the same period_to as the G702 so the owner's title company sees a complete set.

## Chapter 8: Financials, Schedule of Values, and pay applications

### The money spine of the job

Financials is the office companion to the Gantt. The SOV table lists billed lines. Linked lines bill from Gantt progress so a superintendent's percent complete becomes earned value. Change orders (Chapter 6) and compliance (Chapter 7) sit on the same page as Pay App Manager.

How to use it:
1. Complete Company Profile (logo and address) so AIA-style G702/G703 PDFs carry your letterhead. Fill G701 parties of record and the contracted substantial completion date on Edit project so change orders print cleanly.
2. Confirm SOV phases match how you will bill the owner.
3. Create a Draft pay application, preview G702/G703 (full form or pre-printed), then Commit to lock billing-to-date on each line. Change orders use the same full vs pre-printed print pattern on G701.
4. Use notice reminders at the top of Financials when COR draft SLAs are slipping.

What it tracks:
- SOV line amounts, percent billed, retainage, contract sum to date.
- Pay app number, period_to, draft vs committed status.
- Office loop extras: estimates into SOV, owner portal tokens, project ZIP export.

> In construction: A pay app is a claim that the work billed was performed. BBP ties that claim to schedule progress, approved COs, and (when you turn the settings on) lien waivers and insurance. That is how a small GC walks into a draw meeting with a file instead of a pile of emails.

## Chapter 9: AI-assisted daily logs and scratchpad functions

### Official log versus personal scratchpad

Daily Logs exist at company level (/daily-logs) and on the job (/projects/{id}/daily-logs). The official daily log is the project's legal narrative for that calendar day: weather, crew, delays, work completed, photos, and an executive summary suitable for the owner.

Each granted teammate can keep a personal scratchpad for the same date. Scratchpads are private working notes (voice, text, photos) until the superintendent or PM compiles them. Owners control who may write a scratchpad and whether the superintendent may edit the official log after the fact.

### AI on the walk

Start a draft log or open today's scratchpad. Talk or type in the chat. The agent files facts into weather, crew, delays, and general notes. Photo uploads run vision analysis and can return a caption; the agent may ask you to confirm heat safety, rain, weekend rain / lost catch-up, or a delay.

Statuses move draft -> paused -> audit_pending -> review_pending -> final. Finalize runs a gap check against scheduled work. If the log might be a change event, possible_change_event is flagged with a reason so office staff can open a CO. PMs can screen the executive summary in review, then Accept.

Export selected days to a branded PDF or email the field report. Offline queueing keeps a walk going without cell service; photos and chat flush when the device is back online.

How to use it:
1. Project Daily Logs -> start today's official walk, or Open my scratchpad if you are a contributor.
2. Owners: use Team scratchpads to grant user ids and set whether the super may edit official logs.
3. Dictate or type what happened. Attach photos. Answer AI follow-ups (rain, heat, delay confirmation, photo captions).
4. Pause to flush a partial transcript into the scratchpad timeline without closing the day.
5. Finalize. Fix any critical-path gaps the audit lists. If review_pending, the PM accepts the executive summary.
6. Export PDF or send the report for OAC distribution.

What it tracks:
- log_date, weather_conditions, crew_notes, delay_notes, general_notes, executive_summary, raw and background transcripts.
- chat_history (user and AI turns), photo URLs, captions, vision_analysis.
- scratchpad_timeline entries (kind, timestamp, body) and contributor source notes.
- status, possible_change_event / reason, voice_audio_url.
- Crew attendance on the log (who was on site, hours: not payroll).
- Access grants: which users may write scratchpads.

> In construction: The daily log is still the first document a claims consultant asks for. AI is there to turn a muddy voice note into a structured report, not to invent work that did not happen. If you did not pour, say so. If rain stopped you, let the agent file it and verify the weather so the monthly weather CO has evidence behind it.

## Chapter 10: Report Builder

### Project Reports tab

Open Reports on the project (/projects/{id}/reports). This is the executive package you print or save as PDF from the browser for an OAC meeting. Toggle sections on or off, then print. Company Profile branding (name, address, phone, logo) prints on the cover metrics.

How to use it:
1. Select sections: Executive Summary, Financial Outlay, Upcoming Lookahead, Recent Delays, full Delay Log ledger, Team Dialogue History ledger, CSI Division Index, and Subcontractor Performance.
2. Review the lookahead weather strip so the printed week matches the field plan.
3. Print or save as PDF. Use the same report after you commit a pay app so billing and percent complete tell the same story.

What it tracks:
- Schedule percent complete vs baseline expected percent and variance status.
- Contract sum to date, committed billing, remaining balance, earned value, budget variance.
- In-progress and upcoming tasks (name, phase, dates, percent, subcontractor, optional trade/CSI for toolbox context).
- Recent delays and the full delay ledger (reason, days lost, responsible party, resolution).
- Dialogue ledger (who said what to whom on the job).
- CSI division index from ingested specifications.
- Subcontractor performance: delay days and delay counts by company.

> In construction: Owners do not want a dump of every RFI. They want: are we on time, is the money matching the work, who is late, and what weather already cost us. Turn on ledgers only when the meeting is a claims or coordination deep-dive.

## Chapter 11: Team communications with AI enhancements

### The Communications hub

Open Communications on the project. Threads are job-scoped conversations with a subject, type (general, rfi, submittal, change_order, task, or alert), optional link to that entity, participants, messages, unread state, and a closed flag.

From an RFI or submittal, click Discuss to ensure a linked thread exists and jump to it. From a change order, Discuss first opens a packet dialog: choose owner and/or architect, download the G701 plus evidence PDF, then open the linked thread. That keeps the argument next to the document instead of in a personal text thread that vanishes at closeout.

How to use it:
1. Communications -> new thread: subject, type, participants, first message.
2. Or open an RFI / submittal and choose Discuss. On a change order, Discuss opens the G701 packet dialog first, then the thread.
3. Post messages, add participants, mark read as you go, close when the issue is decided.
4. Filter or include closed threads when you are reconstructing a decision.

What it tracks:
- subject, thread_type, linked_entity_type and id, is_closed.
- Messages: author, body, created_at, edited_at.
- Participants and last_read_at for unread badges.
- Team alerts on the dashboard that deep-link into communications.

### Where AI helps communications

BBP does not auto-send owner emails without you. AI sits beside the thread:

Critical Insights on the dashboard summarize spec and site risks you should be talking about (testing, long-lead, phasing).

The daily-log agent flags possible change events so the PM can start a CO thread the same day.

The Agent tab (Chapter 19) can draft an RFI or similar action. Drafts stay pending until a human Approves or Discards. Nothing hits the owner from the agent until you say so.

Linked threads on RFIs, submittals, and COs keep AI-assisted field notes and human decisions in one audit trail the Historian can later quote.

> In construction: Most failed jobs fail in the gaps between trades: a detail never answered, a submittal never released, a verbal extra never written. Put those gaps in a typed thread with ball-in-court on the RFI or submittal. AI can draft; the superintendent still owns the send.

## Chapter 12: RFIs

### Requests for information

Open RFIs on the project. An RFI is a numbered question to the design team (or owner) when the drawings or spec are silent, conflicting, or unbuildable. Statuses: Open, Pending, Answered, Closed, Void. Priorities: Low, Normal, High, Critical.

How to use it:
1. Create an RFI: subject, question, priority, ball-in-court user and role, optional due date, cost_impact flag, schedule_impact_days, optional linked task.
2. Filter the list by status, a user, or My ball in court.
3. Comment while the design team thinks. Respond records answer_text and can move ball in court.
4. Close when the answer is incorporated (and open a CO if cost or time changed). Void if the question was opened in error.
5. Link a change order id when the answer is extra work. Discuss opens the communications thread.

What it tracks:
- rfi_number, subject, question, status, priority.
- ball_in_court_user_id and role, due_date.
- cost_impact, schedule_impact_days, linked_task_id, linked_change_order_id.
- answer_text, answered_by, comments thread.

> In construction: An RFI is not a change order, but it is often the father of one. If the architect's answer adds flashing, a beam, or a week of dry-in, do not bury that in the RFI comments. Close the RFI, open the CO, and apply schedule impact to substantial completion if the critical path moved.

## Chapter 13: Submittals

### Product data, shop drawings, and samples

Open Submittals. Each item is numbered, titled, optionally tagged to a spec section, given a due date, revision count, ball in court, and optional linked task (so a long-lead approval sits on the Gantt).

Statuses: Draft, Submitted, UnderReview, ReviseResubmit, Approved, ApprovedAsNoted, Rejected, Void. Creating a submittal requires the file (PDF or similar) so the reviewer sees the same sheet the vendor sent.

How to use it:
1. Create with title, spec section (example 07 21 00), ball in court, due date, linked task, and the file.
2. Submit to move from Draft into review.
3. Reviewer records Approved, Approved as noted, Revise and resubmit, Rejected, or Comment, with notes.
4. Resubmit a new revision after ReviseResubmit. Void junk or duplicate packages.
5. Discuss for the linked communications thread. Filter My ball in court before the weekly OAC.

What it tracks:
- submittal_number, title, spec_section, status, revision, due_date.
- ball_in_court user and role, linked_task_id.
- Attachments: file_name, content_type, storage_path, public_url.
- Review history: action, comments, reviewer, timestamps.

> In construction: Releasing a submittal is how the GC authorizes a fabricator to spend money. Late approved-as-noted packages are a classic delay: the steel is already on the mill schedule. Link the submittal to the Gantt task and keep due dates honest so procurement, not hope, drives the critical path.

## Chapter 14: Project Historian

### Evidence locker and narrative reports

Historian exists on the company sidebar (/historian, pick a project) and on the job tab (/projects/{id}/historian). It is the searchable evidence locker: daily-log photos with dates, captions, and work-completed text.

Type a question (example: rain days in August on the north pad) and generate a markdown report from logs, photos, and related records. Select photos to focus the story. Export or copy the narrative into an owner letter or weather CO.

How to use it:
1. Open Historian on the job (or company Historian and choose the project).
2. Browse evidence: photo, log date, caption, work completed.
3. Select the photos that prove the claim.
4. Enter a query and generate the report. Read it, then attach it to a CO or email it with the daily-log PDF.

What it tracks:
- Photo id, photo_url, log_date, caption, work_completed.
- Generated markdown report for the query you entered.

> In construction: Claims are won with contemporaneous photos and weather, not with a letter written six months later. Use Historian when the owner says 'prove the pad was too wet to pour' and you need every dated image in one pass.

## Chapter 15: T&M field tickets and notices

### Time and material in the field

Open T&M / Notices. A T&M ticket is the superintendent's signed record that directed extra work happened today: crew description, hours, materials notes, narrative, photos, and a signature (typed name plus optional signature pad).

Spawn COR creates a Draft change order from that ticket so office staff do not retype the extra. Confirm G701 parties of record and contracted substantial completion on Financials before you Submit and print G701 (Chapter 6). Notice settings define the contractual window (notice_window_days), COR draft SLA days, and templates for change notices and delay notices. Reminders list COs that are aging past those rules.

How to use it:
1. T&M / Notices -> new ticket: work date, crew, hours, materials, description.
2. Sign (print name; capture a pad image when you have a tablet).
3. Attach photos if the extra is visual (demo, unforeseen, owner-directed paint).
4. Spawn COR when the ticket should become a numbered change order. Then open that Draft on Financials, confirm G701 parties, and Submit.
5. Set notice window and COR SLA so Financials reminders fire before you waive notice under the general conditions.

What it tracks:
- ticket_number, work_date, crew_description, hours, materials_notes, description.
- signature_name, signed_at, photo_urls, linked_change_order_id.
- Notice settings: notice_window_days, cor_draft_sla_days, notice templates.
- Reminders: kind, title, related CO number, age, amount.

> In construction: Verbal extras kill small GCs. If the owner points at a wall and says 'do it,' write the T&M ticket before the crew leaves, get a name on it, and spawn the COR inside the spec notice period. Hours on the ticket are field hours for the extra, not payroll.

## Chapter 16: Drawings viewer

### Current set on a wide canvas

Open Drawings. Upload a sheet with a title and sheet number. Uploading the same sheet number creates a revision; the current set is marked and older files are superseded. The viewer is full width for the field: pinch or use + / - to zoom.

Pin mode drops punch items onto a location on the sheet so a cracked tile in unit 12 is not just a note in a spreadsheet. Those pins feed punch list generation (Chapter 17).

How to use it:
1. Upload file, title, and sheet number (A-201, S-101, M-401).
2. Select the current sheet. Zoom to the detail.
3. Turn on pin mode to place a punch title on the drawing.
4. Re-upload the same sheet number when the architect issues an addendum cloud.

What it tracks:
- Drawing title, sheet number, file, current vs superseded revision.
- Punch pins: title and location on the sheet.

> In construction: The field must look at the current clouded sheet, not last month's PDF in a truck console. Treat sheet number as the identity and every upload as a revision. If you pin punch on a superseded sheet, you will send a sub to the wrong wall.

## Chapter 17: Punch list generation

### Walk, review, distribute, closeout

Open Punch. A punch walk has modes: list, capture, review, and distribute. Statuses move in_progress (capturing) -> in_review -> distributed. During capture, add items with note, location, assigned subcontractor, and photo.

The Closeout list on the same page is the living deficiency log: overdue counts, bulk assign (sub, due date, priority), email the bundle to the trade, and voice punch (Chrome or Edge speech, or type the transcript). Voice punch can reference a drawing. Branded punch PDFs use the company logo when set.

How to use it:
1. Start a punch walk. Capture items with photo, location, and trade.
2. Review the walk, then distribute so each subcontractor gets their list.
3. On Closeout, filter overdue, select items, bulk assign, and email.
4. Use Voice punch on a tablet in the corridor: 'Cracked tile in unit 12, high priority, due Friday.'

What it tracks:
- Walk status and items: note, location, photo, subcontractor.
- Closeout: title, status, location_note, assigned_to, due_date, overdue, priority, photo_url, company_name.
- Email send results (sent vs skipped with reason).

> In construction: Punch is how you get from substantial completion to final payment. Photograph every item. Assign a trade and a date. Emailing the bundle beats texting a punch list that nobody can find at retainage release.

## Chapter 18: Toolbox talks and safety recording

### Document the huddle

Open Toolbox. Record the day's safety huddle: topic, notes, date, optional photo, and attendees. Enter one person per line as Name | signature (if you omit the signature, the typed name is stored as the signature name).

This is the project safety record, not OSHA Form 300 by itself. Keep topics tied to the work (silt fence, silica, aerial lift, heat) so an incident investigation can show the crew was briefed.

How to use it:
1. Toolbox -> topic (example: aerial lift and fall protection on the north elevation).
2. Notes: hazards, mitigations, PPE.
3. Attendees, one per line, with optional | signature.
4. Save signed record. Repeat after lunch if the crew changed.

What it tracks:
- talk_date, topic, notes, photo_url.
- Attendees: attendee_name, signature_name.

> In construction: A toolbox talk is five minutes that proves you run a safety program. When someone later says they were never told about a trench, the dated attendee list is the answer. Do it every morning you have a crew on site.

## Chapter 19: Agent tab

### Ask the job, approve the draft

Open Agent. Ask a question across logs, RFIs, punch, and the schedule (example: What punch items are overdue? Draft an RFI for the missing flashing detail.). The agent answers in place.

When the answer would change the job (create an RFI, and similar actions), it writes an agent draft with action_type, payload, summary, and status pending. You Approve or Discard. Nothing is official until that click. Field language can be toggled English / Spanish on this and other field pages.

How to use it:
1. Type the question in plain language. Click Ask.
2. Read the answer. If drafts appear, open each summary.
3. Approve to apply, or Discard if the draft is wrong.
4. Re-ask with more context (sheet number, spec section, trade) if the first answer was thin.

What it tracks:
- Natural-language Q&A against project records.
- Draft queue: action_type, payload, summary, pending / approved / discarded.

> In construction: The agent is a PM assistant that has read the file, not an authority to bind the company. Treat drafts like a junior engineer: useful, fast, and required to get a stamp from you before they leave the trailer.

## Chapter 20: Subcontractor management

### Directory, contacts, compliance vault

Open Subcontractor Directory in the sidebar (/settings/directory). Each company row holds trade, phones, email, address, EIN, license number and expiry, insurance policy and expiry, and notes. Contacts include primary and field contacts with title and cell.

Builder Pro AI can scan a business card into a contact draft. Compliance documents (COI, licenses) upload with expiry dates; expired files are flagged. Those expirations feed Financials compliance when you require COI on pay-app commit.

Assign subcontractors on Gantt tasks, punch items, deliveries, and portal access so the same company record is used from buyout through closeout. Crew attendance on daily logs can point at a subcontractor without becoming payroll.

How to use it:
1. Directory -> add company: legal name, trade, insurance and license dates.
2. Add contacts (primary office vs field). Scan a card when available.
3. Upload COI and license into the compliance vault with expiry.
4. Assign the company on schedule tasks and punch items.
5. Invite portal users when they must upload lien waivers or see their job.

What it tracks:
- company_name, trade, contact_name, phones, email, address, ein.
- insurance_expiry, insurance_policy_number, license_expiry, license_number.
- Contacts: name, title, email, office/cell, primary/field flags.
- Compliance docs: doc_type, expiry_date, file_name, public_url, expired flag.

> In construction: Your sub list is your capacity. A GC this size wins by knowing who is insured, licensed, and actually coming Monday. When a COI expires mid-job, the next pay app should stop until a new certificate is in the vault.

## Chapter 21: QuickBooks Online connection

### Reconcile, do not magically post

Open Company Profile, then QuickBooks Online (/settings/qbo), or follow the QBO link from settings. Job-cost, bill, and payment sync is reconcilable, not magical: connect the Intuit company file, then review mismatches before month-end.

The page shows whether the Intuit app is configured on the server, whether your company is connected, last sync time, and last error. Connect QuickBooks starts OAuth (accounting scope). Record sync attempt stores a sync timestamp (and optional error) so you know when someone last tried.

How to use it:
1. Confirm the Intuit app is configured (your BalanceBuild Pro operator sets client id, secret, and redirect URI).
2. Click Connect QuickBooks and complete Intuit's consent.
3. After buyout or pay-app cycles, click Record sync attempt and compare QBO job cost to BBP SOV and committed billing.
4. Fix mismatches in QBO or BBP before you close the month. Do not assume every CO posted both places.

What it tracks:
- configured / connected flags, last_sync_at, last_error.
- OAuth connection stored per owner account.

> In construction: The office still owns the books. BBP is the field and contract file; QBO is the general ledger. Use the connection to reduce double entry, then reconcile like any other integration: the draw, the bill, and the job cost report must tell the same story.

## Chapter 22: Company profile, team access, and good habits

### Brand the file before you print

Company Profile holds legal name, address, phone, and logo. That logo prints on daily-log PDFs, punch PDFs, and AIA-style G702/G703. The sidebar glows on Company Profile until logo and address are set. On each job, Edit project info holds G701 parties of record (owner, architect, contractor) and the contracted substantial completion date used on change orders.

Team Management (Owner) invites PMs, supers, and others and ticks which sidebar pages they may see. Financials can be hidden from field-only users. Work calendars in company settings drive Gantt working days.

Key points:
- Put every extra on a T&M ticket the same day, then a CO the same week.
- Confirm deliveries; do not trust a buyout date from three months ago.
- Set the substantial completion Gantt anchor and the contracted substantial completion date before the first weather CO.
- Fill G701 parties of record on Edit project so the next CO prints without retyping names and addresses.
- Require waivers and COIs on commit when the owner or lender will.
- Let AI draft; you approve. Keep communications on the job thread.
- Download this manual again after product updates from [ Help & Documentation ].

> In construction: BalanceBuild Pro is built for an agile Louisiana-first commercial or industrial GC: few people, live jobs, and a file that can survive an audit. Use the functions together. The Gantt without logs is a cartoon. Logs without COs are a diary. COs without waivers are an unpaid story. Tie them on every job.
