What's new

Changelog

Every change that makes CrossBeam better for the cities and builders who use it, written up the night it ships.

Thursday, October 8, 2026

Screener red-flags Planning and Building filed together

When Planning and Building are filed for the same work close together, the Building screen now opens its Planning block with a red line, such as "Planning was filed 1.5 hours before Building", and fails the Planning-approval row unless a waiver is requested. Counter-cleared approvals are unaffected.

Laguna Beach plugin and new MCP requirements tools

The public Laguna Beach plugin is now generated from CrossBeam's current city rules, with the City's checklists, plan-set kinds and fee math, and is checked for drift. The MCP server adds tools to fetch a permit-drawings skill and a city's review requirements, and drawings can be handed to a city plugin to fill forms.

Screener Fees tab itemizes Laguna Building permit fees

Laguna Beach Building screens get a Fees tab that itemizes every fee by when it is due, shows the valuation and fixture counts read from the packet, and lets staff correct values inline. Totals update live, "Copy for EnerGov" copies the lines, and a missing count shows "Needs count".

Laguna site plan scores north arrow and legend separately

Laguna Beach's Planning screener now checks the site plan's north arrow and its legend as two items, so a plan that shows north but lacks a legend no longer fails the north arrow too. Both still mark the same row on the City form.

ImprovedScreener

Marked-application download shows live progress

In the Planning screener's Applicant Email tab, the marked-application button now shows a spinner with its current step and a seconds counter ("Filling the City form... 14s"). A failure turns the button red with the reason until the next try.

Staff can edit and delete their own screener notes

Each note's author now sees Edit and Delete on their own notes in the Staff notes popover. Edited notes show "edited" with the time on hover, and deleted notes disappear from the popover, the queue's latest-note line and later screening rounds; the original text is kept for audit.

Laguna Beach staff get accounts on first Microsoft sign-in

Laguna Beach staff signing in with Microsoft from the City's own Microsoft tenant now get an account in the City's organization automatically, then pick Planning, Building or Both once. The address alone is not trusted; the City's tenant must match.

Tightened who can change account roles and organizations

Users can now change only their own preferences, such as department, notifications, privacy and signature, from their account. Role, organization and other account settings can be changed only through authorized server actions, with a database-level guard so the protection holds going forward.

Laguna Beach issuance drops the Construction Deposit row

Laguna Beach Building screens no longer list "Construction Deposit" on the Issuance tab, since the City no longer requires it on any project. The filled issuance handout leaves that row blank.

Permit Assistant opens on a centered city-specific prompt

City chat links now open that city's assistant whether or not you're signed in, starting on one centered question, "What are you building?". Suggestions are the city's own curated questions plus "I'm not sure what permit I need", and the page drops the cycling multilingual placeholder and duplicate title.

Applicant email keeps item numbers in order

When staff reword a screener email item so it spans two lines, the next item keeps its number instead of restarting at "1.". Continuation lines now stay part of the item above them when edits are merged into a hand-edited email.

ImprovedPre-Check

PreCheck results email matches the brief's wording

The PreCheck results email now counts the brief as "things to do", like the Your brief tab, in the subject line, the round-1 summary and re-check lines such as "cleared 1 of 3 things to do".

PreCheck flags out-of-area plan sets and skips billing

When the drawings name a property in another city, the PreCheck round is not billed to the city. The review reads the printed address and checks the parcel's jurisdiction, and the usage page shows the round grayed out as "Not billed · Outside" the city.

Wednesday, October 7, 2026

PreCheck brief thumbnails recover from expired links

Step thumbnails on a PreCheck brief left open for a while now reload their sheet when the image link expires, instead of showing a broken image. Clicking one shows a spinner, then the close-up fades in once, already framed on the spot, with no slide or blank frame.

Tuesday, October 6, 2026

Sharper aerial imagery and reliable site plan detection

The screener's aerial-versus-site-plan check now gets high-resolution aerial imagery on most lots by stepping down resolution until the imagery service answers. It finds the site plan from the sheet's content rather than its title, and shows a capture date only when it is accurate.

Screener City Record tab opens without reloading the page

The first click on the screener's City Record tab no longer drops the whole project page back to a loading skeleton for a few seconds. The tab now shows its own loading placeholder while it loads.

City Record tab added to the screener

Screener records now have a City Record tab between Site & Zoning and Raw Docs, showing the parcel's past permits and archived documents without leaving the screen. It uses the same viewer and access rules as the job site page and appears for cities with a connected archive.

PreCheck assistant explains pin colors correctly

Asked what the pins on a sheet mean, the assistant now gives the same answer every time: red is a correction, orange needs review, green passes, coral marks an unreadable result and grey is not applicable. Four help pages that listed a nonexistent purple pin now match the sheet viewer.

ImprovedPre-Check

PreCheck queue shows submit time and applicant email

Each row on the staff PreCheck tab now shows when its latest round was submitted in Pacific time ("Submitted Oct 5, 2:14 PM", or "Started" for an unfinished upload) and the applicant's email on its own line. Search matches the email too.

PreCheck assistant shows only the answer

Applicants no longer see a stray "I need to look up..." line above an answer. Any text written before a help-page lookup is held back and dropped from the stream, so only the final answer appears; short direct answers now arrive all at once.

PreCheck assistant stops guessing at FastPass timing

The PreCheck page assistant no longer announces that it is looking something up, and no longer invents reasons for FastPass turnaround. It now says FastPass is priority review with no set timeline and sends timing questions to the Building Division.

Screener retries filings whose files failed to download

When the City's permitting portal briefly errors on every file of a new filing, CrossBeam now retries the download about every 15 minutes for 24 hours instead of marking it "Didn't finish". Rerun on a filing with no files re-downloads them, and the error message no longer says the upload failed for good.

ImprovedPre-Check

PreCheck assistant answers questions about the whole flow

Applicants on a city's PreCheck page get real answers about submitting, rounds, re-checks, corrections and FastPass instead of "I don't have information". The assistant draws on a built-in guide to the PreCheck flow and opens the relevant help-library page when it needs more detail.

City Record pulls work again in the screener

City Record lookups that failed since Oct 1 now complete. The Laserfiche portal began redirecting searches back to the same page with new cookies; the client now follows those redirects by hand and keeps every cookie, stopping with a clear error on a loop.

Monday, October 5, 2026

Terms checkbox stays on screen at intake

In the Before we start dialog, the agreement checkbox now sits in the footer next to Agree and start. Read the full terms opens the terms at full size with a Back to the summary link, and the checkbox stays visible while reading.

Change permit type hidden when the router decides

On runs where the AI review names the permit from the documents, such as every Buena Park PreCheck, the Change permit type button is gone. Before, it opened an empty dropdown and restarted the run without changing the permit.

ImprovedPre-Check

Re-checks grade the step as the applicant read it

A brief step now passes when the sentence the applicant read is done, and the re-check searches related sheets before calling a step open. Brief cards show why each comment matters under its title and drop the who, time estimate and step count.

ImprovedPre-Check

Brief runs show only Your brief and Findings

On a PreCheck run with an applicant brief, City staff now see the same two tabs as the applicant, Your brief and Findings. Empty builder tabs such as Action Items no longer appear. Runs without a brief keep their usual tabs.

Sunday, October 4, 2026

ImprovedPre-Check

FastPass at half or more of the brief's steps

A PreCheck re-check now grades each step of the round 1 brief with the same sheet verifier Backcheck uses. FastPass is earned when half or more of the steps are done, with half credit for a partly done step. Anything missing from the upload counts as open.

ImprovedPre-Check

PreCheck re-checks grade only the requested fixes

A round 2 PreCheck grades only the items the applicant was told to fix: fixed, partly fixed, still open, or not in this upload. The counts are computed once, so the email, FastPass and results card agree. Re-dropping the same address offers "Re-check my fixed plans".

Brief results open without a flash of other tabs

Opening a brief from the results email no longer shows the default PreCheck tabs and counts for about two seconds before switching. The loading skeleton holds until the brief's tabs are ready, and the brief draws once.

ImprovedPre-Check

No permit-type picker when uploading a corrections letter

Applicants who upload a corrections letter no longer pick a permit type, and "Not sure" no longer defaults to an ADU. The AI review reads the letter and plans, names the permit kind, and runs and prices the corrections read as that kind.

Saturday, October 3, 2026

ImprovedPre-Check

City staff see PreCheck corrections runs

Corrections-letter runs now appear in the City's PreCheck queue, staff summary and weekly digest, with a Corrections pill and the round at that address. Applicants are told each read uses a free round, and the results email points them to the open questions.

ImprovedPre-Check

Resubmittal briefs keep round 1 comment numbers

On a resubmittal, the brief keeps the first round's comment numbers, marks each comment Still open or New this round, and lists cleared comments under their old numbers. The re-check card reads, for example, "3 of 4 previous comments cleared".

ImprovedPre-Check

Redesigned PreCheck results and re-check emails

The round 1 email now opens with the brief's summary, lists what already works, and shows the steps in work order, with no red to-do counter. The re-check email leads with the FastPass result: the certificate and code if issued, or how many items remain.

Buena Park rules answered directly in PreCheck findings

Findings now state the answer instead of saying "confirm with OCFA": Buena Park's sprinkler retrofit threshold for garage conversions, its construction hours (BPMC 8.28.040, Mon-Sat 7 a.m.-8 p.m.), and when a one-story ADU in a liquefaction zone needs a soils report.

Repeat reviews skip needless plan re-downloads

A second review on an already-prepared workspace no longer re-downloads every plan sheet. A link setup bug created a looping folder that failed the asset check; links are now replaced in place, so back-to-back runs start sooner.

No false slow-run email after a review is re-finished

Applicants no longer get a "Your PreCheck is taking longer than usual" email when only the final step of a finished review is re-run. The stuck-run check now looks at the newest run, including re-finishes, and skips them.

PreCheck results now arrive as a short applicant brief

Buena Park PreCheck applicants get a short, ordered brief instead of a list of roughly 300 worksheet checks. It groups the failed and flagged findings into steps in work order, and each step cites the findings behind it.

Address suggestions span the full field on phones

The address suggestion list on the PreCheck form now matches the full width of the address field, including the city tag, at every screen size instead of running short on phones.

ImprovedPre-Check

PreCheck landing and staff board fit phones

On phones the PreCheck upload box now appears on the first screen and reads Tap to choose your plans. On the city staff board, project rows keep their names and addresses, badges wrap instead of clipping, tabs scroll on one row, and the PreCheck queue shows whole addresses.

Friday, October 2, 2026

ImprovedPre-Check

PreCheck results work on phones

On phones, result tabs scroll on one line, the findings toolbar keeps search and Assistant in reach, and Assistant opens as a bottom sheet. An opened finding shows its full title and a Show on sheet button, the plan sheet drawer opens at 75% of the screen, and wide tables scroll in their own box.

ImprovedPre-Check

Email typo check, round numbers and a Re-check button

The PreCheck form now suggests a fix for near-miss email domains like gmial.com, and the Terms step fits phones with the checkbox in a sticky footer. Receipts, status pages and emails show Round 2 of 3 for this address, and results have a Re-check your revised plans button showing free rounds left.

ImprovedPre-Check

PreCheck receipt updates live until results are ready

The page shown after submitting now tracks the run's stages and changes to Your results are ready when it finishes. The emailed status page also checks status on a timer, so it switches to results even if the live connection drops.

ImprovedPre-Check

One consistent PreCheck time estimate

Every applicant screen and email now says results take 30 to 90 minutes, including the intake page, receipt, live status ticker, FAQ and receipt email. The range comes from completed reviews on real plan sets, which took about 35 to 70 minutes.

PreCheck retries never fall back to round one

When a retried PreCheck cannot confirm which round it belongs to, the retry is now stopped and flagged for follow-up before anything starts, instead of assuming round one and recording the review against the wrong round.

Long file names no longer hide Submit on phones

Picking a file with a long name on a phone no longer pushes the PreCheck form past the card edge. The file name now truncates with an ellipsis, so the email and address fields and the Submit button stay on screen.

Daily limit on the PreCheck results chat

The chat on the PreCheck results page now follows the same per-user daily usage limit as every other chat, and shows a Chat paused notice instead of silently dropping a message. City staff accounts are no longer mistaken for applicants and keep Job Sites, Drive and the general chat.

ImprovedPre-Check

Focused PreCheck accounts and slow-run notices

Applicants with only city-paid PreChecks now see just Projects and their city's Ask AI assistant, without Job Sites or Drive. If a run is still going at 90 minutes, the applicant gets one email saying results are taking longer than usual and will arrive by email.

ImprovedPre-Check

PreCheck email link opens a live receipt

The link in the PreCheck receipt email now opens the same receipt card applicants saw after submitting, with live stages (Extract, Research, Review, PreCheck Report), a progress bar and elapsed time. City artwork on the receipt now crossfades slowly instead of popping.

Faster, more accurate Laguna Beach planning review

Laguna Beach planning reviews read plan sheets in parallel batches, so runs finish sooner. The Design Review criteria block now prints only when a design review entitlement applies, garage and zone setback checks no longer raise false failures, and walking-distance lookups no longer fall back to driving routes.

Thursday, October 1, 2026

Ask AI available to agents over MCP

Connected agents can now ask CrossBeam's Ask AI through the MCP server, using the same engine and tools as the web chat, and follow up by conversation ID without resending the transcript. Each request runs with the signed-in user's own permissions, and long web conversations now keep every turn in history.

PreCheck billing months follow Pacific time

The usage dashboard, invoices and month picker now follow the Pacific calendar month, so a run on the evening of the last day of the month counts toward that month instead of the next.

Help article for reading applicant PreChecks

City staff in a PreCheck program now find a PreCheck category in Help, with an article on finding the PreCheck tab, searching by address, what each status means and what the staff summary shows. Only staff who can see the tab see the article.

ImprovedPre-Check

Abandoned PreCheck uploads are cleaned up

An upload left unfinished for 24 hours, for example after the applicant closed the tab, is now removed along with its stored files. The PreCheck FAQ assistant now says phone photos in JPG, PNG or HEIC are accepted and that a PDF plan set reviews best.

ImprovedPre-Check

Usage page opens on PreCheck submittals

City admins in a PreCheck program now land on PreCheck submittals when they open Usage, and each row shows its round, permit kind and date, such as Round 2, ADU, Oct 3.

Screener stays connected to Tyler EnerGov

The new-application check against Tyler EnerGov now searches each permit number as an exact match instead of a broad text search, cutting each probe to a single page. That stops the city portal from rate-limiting CrossBeam, so the Screener Inbox and Incomplete Tasks no longer show sign-in errors.

PreCheck tab on the city staff board

City staff in a PreCheck program get a PreCheck tab under Plan Reviews, with one searchable row per address showing round, free rounds used, permit kind and true status. Opening a row shows a staff view that labels failed runs Needs attention and links to the other rounds at that address.

iPhone HEIC photos accepted and read

HEIC and HEIF photos from iPhones are now decoded to full-resolution JPEG, stored upright, with camera and date read from the photo's metadata. Decoding runs off the main request path so large photos do not slow other work, and a photo that cannot be read gets the same clear per-file message as any bad image.

City staff no longer see builder billing screens

City department accounts no longer see review credits, the Buy Credits page or the advertising data-sharing toggle. City admins get a Usage card in Settings, ad sharing is always off for city organizations, and the empty Job Sites view uses city wording.

ImprovedPlatform

PreCheck submissions survive server updates

A submission that lands while the review service is restarting is now retried automatically after short pauses instead of failing, so applicants no longer have to resubmit. Retried rounds after the first are also billed to the right round.

TIFF scans accepted for review

Applicants can upload TIFF scans on every intake flow. Each multi-page TIFF is converted to a PDF page by page and reviewed like any other plan set, and the file picker and upload copy now list PDF, JPG, PNG or TIFF.

PreCheck intake skips empty files and fits phones

A 0-byte file is now left out as it is added, with a message naming it, so the rest of the plan set submits instead of failing at the upload check. On phones the form fields start on screen, and the page now passes accessibility checks for landmarks, headings and the address list.

Clearer PreCheck results page and emails

City-paid PreCheck applicants no longer see the builder welcome tour, and a visitor signed in to the wrong account gets a plain explanation instead of a database error. Clear-cut corrections use a neutral bullet instead of a green check, the stats pill fits on phones, and failed emails are no longer dropped silently.

Slow server start no longer locks a PreCheck address

When the review server is slow to start, applicants now see "We've got your plans" instead of an error. Within minutes an automatic retry either starts the review or releases the address and sends a retry link, so resubmitting is never refused.

ImprovedPre-Check

PreCheck checks every file as you add it

Each uploaded file is now checked the moment it is added: unreadable files get a red marker and a specific fix, such as plotting DWG drawings to PDF. A summary offers to remove unsupported files, and Submit stays disabled until they are gone.

Cancelled reviews stop within a minute

A review that is cancelled or marked failed now stops its work within about a minute, and a run that finishes anyway can no longer overwrite the failed or cancelled status with results. Projects and their results always agree on status.

Laguna planning reviews read zoning rules more precisely

Laguna Beach planning reviews now apply open-space rules only to lots with more than one dwelling, decide ADU parking transit exemptions from walking distance, show the parcel's prior City cases, and update water-efficient landscape, CEQA and coastal appeal wording.

ImprovedPre-Check

PreCheck states it may miss requirements

Before starting, applicants now confirm that PreCheck may not catch every code requirement and that City staff may find more corrections in plan review. The terms add a matching "Not a Complete Review" section, so every applicant re-accepts the updated terms.

ImprovedPre-Check

PreCheck help points to CrossBeam support

The PreCheck intake FAQ adds a question on who to contact about upload or results problems, and the page assistant now sends technical issues to CrossBeam support instead of the City.

CEQA and historical building code added to law library

The code library now includes the full CEQA statute (301 sections) and the State Historical Building Code, plus Laguna Beach municipal code titles, its certified Local Coastal Program and CEQA exemption case law, so planning citations can be verified against source text.

Share PreCheck results without forwarding email

The PreCheck results page now has a Share button that gives designers revocable, read-only access after they sign in with Google or Microsoft. Opening an emailed results link in a browser signed in as someone else no longer switches that session.

Free PreCheck rounds count per unit, not per address

Each condo, apartment or suite at one street address now gets its own free PreCheck rounds instead of sharing them. Unit spellings like "#A", "Unit A", "Apt A" and "Suite A" are normalized to the same unit, and addresses without a unit work as before.

ImprovedPre-Check

PreCheck applicants never see a failed review

For city-program PreCheck, a run that hits an error keeps showing the processing view while support reruns it, and after an hour the estimate switches to a high-volume notice. Program applicants no longer see error text, retry or refund prompts, the paywall, Cancel review, or an unusable credits row.

ImprovedPre-Check

Failed PreCheck runs no longer email applicants

When a city-program PreCheck run fails, only CrossBeam support is alerted and reruns it; the applicant no longer receives a "needs another try" email. Runs that produced no output are flagged in the alert so they are rerun first.

Tenant improvement and multi-unit sets get dedicated reviews

When the AI review identifies a plan set as a commercial or restaurant tenant improvement or a multi-unit building, it now runs that permit type's dedicated review instead of the residential worksheet. Unlabeled full drawing sets get the full worksheet review rather than a counter-form check.

Buy another PreCheck round after the free ones

After an address uses its city-paid PreCheck rounds, the applicant can upload the next version and pay by card in the resubmit dialog; payment grants the credits and starts the review. Emails for that round drop the city-sponsored wording.

Buena Park simple permits run on state rules

Buena Park cleanout, panel upgrade, repipe, reroof, rewire and water heater reviews now run on the California state checks plus city info, since the city adds no local rules for them, instead of pointing at missing city checks. They stay listed wherever Buena Park's permit types appear.

ImprovedPre-Check

Large PreCheck uploads resume where they stopped

Large plan sets on the public PreCheck intake now upload in 6 MB resumable chunks, so going offline, a hung request or switching apps on a phone resumes from the last confirmed chunk instead of restarting the file.

ImprovedPre-Check

PreCheck uploads survive stalls and dropped connections

A stalled upload is aborted and retried with backoff once the device is back online, closing the tab mid-upload asks for confirmation, and a failed upload offers Try again, which re-sends only unfinished files to the same project instead of creating a duplicate.

Empty pre-check and corrections runs now fail

A pre-check or corrections analysis that produces no report now ends as failed and releases its hold, instead of completing with a blank result that looked clean. A report with zero findings still completes normally.

ImprovedPre-Check

PreCheck applicants see a progress bar while reviewing

City-sponsored PreCheck runs now show phase markers and an animated progress bar that advances with the review, in place of the raw activity log. The bar respects reduced-motion settings and other contractor runs are unchanged.

Resend link opens the review that is running

When an applicant submits twice at the same address while the first review is still running, the 'send my link again' email now opens the active review instead of the second submission that was refused.

ImprovedPre-Check

Applicants now see the PreCheck name and new terms

Every applicant-facing email, results page, certificate PDF and terms page now uses the PreCheck name, and the terms move to a new version that applicants accept once on their next submittal.

Project data trimmed to what each viewer needs

Project detail responses now return only the review data a viewer needs. Internal processing details are limited to platform administrators, so owners, applicants and city viewers see a leaner, cleaner payload.

ImprovedPre-Check

Used-up PreCheck addresses see the next-round option

Once an address has used its free PreCheck rounds, the results page replaces the next-version button with a notice showing the price of the next round, and the resubmit dialog explains the refusal in the same words.

PreCheck refuses addresses outside city limits

The intake now checks a geocoded address against the city's incorporated boundary before anything is created. An address in a neighboring city is refused right away, naming that city, and the applicant gets an email pointing to a regular paid pre-check instead.

Run activity and failure messages show only status

Review progress lines and the failed-run card now show plain status, such as turns completed or that a run reached its limit, including on older runs.

Plain-language PreCheck errors and refreshed terms

Every error the PreCheck intake, retry and resubmit dialogs can return now shows written guidance instead of a raw error code, round-limit messages show the actual limit, and an applicant whose terms page went stale is prompted to read and accept the current version.

ImprovedPre-Check

Expired PreCheck sign-in links lead to a fresh link

An applicant who opens an expired or already-used emailed sign-in link now lands on their city's PreCheck intake page with the resend form open, instead of a password login they never set up. If the browser is already signed in, they go straight to their results.

Long PreCheck reviews keep their billing hold

A PreCheck review still processing, or paused waiting on applicant answers, past 24 hours now keeps its address hold and billing record, so it completes and is charged correctly. Only submittals that never started are released by the daily cleanup.

Buena Park runs plan sets that resist classification

When the permit router cannot classify a Buena Park plan set, the review now proceeds as a general building review against state code instead of failing on every retry.

One PreCheck receipt for every submittal round

Resubmitting revised plans for round 2 or 3 now sends its own submission receipt email. Each round is tracked separately, so a retry within the same round still never sends a duplicate.

MCP connections stay signed in after protocol upgrade

The MCP server's sign-in layer moves to the newer authorization standard while existing connections keep working, and AI clients can now register by publishing a client metadata document instead of a manual registration step.

Wednesday, September 30, 2026

ImprovedPlan Review

Plain-language routing summary for City staff

The submittal routing panel now shows plan checkers a one- or two-sentence plain summary of how a submittal was routed, plus the permit number and name of each application found, instead of raw internal notes.

Results bar shows Checks run

The results bar now shows Checks run, the total behind the result pills, instead of a step count that undercounted large reviews. Planning results show how many applicable worksheet rows were reviewed.

ImprovedScreener

One fail per City ask on resubmittals

Resubmittal screenings now check only whether each City ask was delivered, across every current file, with one round summary. A delivered item with a defect, such as a missing signature, resolves its ask and shows as a staff note rather than a new applicant fail.

Design Review section only when Design Review applies

Laguna Beach Planning letters now include the Design Review Authority section only when the project actually needs Design Review approval, based on the worksheet's entitlement decisions. Ministerial ADU and SB 9 lot split letters no longer carry it.

Tuesday, September 29, 2026

ImprovedScreener

Resubmittals graded against what staff asked for

A screener resubmittal is now graded only against what City staff actually asked for, read from the permit system's communications, review comments and marked-up attachments, and against the whole current application rather than only that round's uploads.

Resubmitted filings return to Incomplete Tasks

When an applicant resubmits a filing staff returned, it now moves back to Incomplete Tasks with its Returned by chip, instead of staying in Completed Tasks where it could be missed.