Predictika · Fremont SB 9 Project Check

Before an AI agent tells a homeowner an SB 9 project looks approvable, it is pre-screened against state law and the Fremont code

A homeowner in Fremont, California, asks an AI agent whether a two-unit project or an urban lot split under SB 9 looks approvable. Before the agent answers, the call goes to Predictika’s Fremont SB 9 Project Check. It reads the project against California SB 9 (Gov. Code 65852.21 and 66411.7) and Fremont Municipal Code 18.190.007 together: zone, excluded sites, historic status, tenant history, unit counts, setbacks, parking, utilities, rentals, parcel sizes, the owner-occupancy affidavit and the recorded covenant. Where the city is stricter than state law, state law prevails and the validator says so. Then it returns one verdict: approvable by right, approvable with changes, or needs staff review.

Pre-screen only. This is a pre-screen, not a permit or map decision, and it is not legal advice. The rules reflect SB 9 and Fremont Municipal Code 18.190.007 (Ord. 07-2023, amended by Ord. 02-2026) as understood in September 2026, and have not been reviewed by the city or an attorney. We are not affiliated with the City of Fremont.

Scope: SB 9 two-unit projects and urban lot splits on one single-family parcel in Fremont, CaliforniaSee everything this validator covers

This validator decides one thing: how one proposed SB 9 project looks against California SB 9 and Fremont Municipal Code 18.190.007 read together. It does not issue a permit or map decision, and it does not check plans.

  • Projects — a two-unit development, an urban lot split, or a lot split followed by new units, on a single-family parcel in Fremont.
  • Site and history — eligible single-family zone, excluded sites (farmland, wetlands, hazardous waste, earthquake fault, habitat, flood and fire zones), historic status, Ellis Act withdrawal in the last 15 years, rent-restricted or tenant-occupied housing that would be demolished.
  • Development rules — the number of units including ADUs and junior ADUs, side and rear setbacks, parking and transit exceptions, separate utility connections, rental terms of 30 days or less, and nonconforming conditions.
  • Lot-split rules — parcel size and the 40 percent rule, units per resulting parcel, number of parcels, the owner-occupancy affidavit, a parcel from an earlier split, a split of an adjacent parcel, right-of-way dedication, and Fremont’s recorded covenant.

Within these rules the validator handles any SB 9 project in Fremont that touches the listed items, not just the scenarios shown on this page. The unit limit applied is Fremont's total of four units of any kind (FMC 18.190.007(d)(4)); the validator does not apply separate ADU or JADU counts, sizes or setbacks (FMC 18.190.005, state ADU law), which are not checked here. Not covered: other cities, ADU-only projects, plan review and design standards, fees, and anything the applicant does not state. Site facts such as hazard zones, historic status and tenant history are taken as stated and are not verified.

What the validator sees: the project the applicant describes, as statedRead more

The validator takes the project as inputs: the project type, unit counts, setbacks, parking, utilities, parcel sizes, and the answers to the zone, site, historic, tenant, affidavit and covenant questions. It computes the limits and returns the verdict and every finding, with the law behind each.

Two honest limits. The validator judges the project it is given: if an applicant understates a setback, the answer follows. And a project is only pre-screened if the agent calls the validator; in a deployment the intake workflow makes the call. Once a project is approvable by right, the validator accepts its release for the ministerial application, which is also not a permit decision; a project that needs changes or review is not released.

The AI agentDescribes the homeowner’s project, says how it looks, then calls the validator before answering.
Predictika validatorReads the project against state law and the Fremont code, then returns one verdict and every finding.

6 scenarios in 3 groups · each group runs from the agent’s first attempt to the outcome · click one to switch

What the agent proposes

The AI agent says

Illustrative agent statement. The validator receives the structured request below.

Proposing agent: AI agent (scripted)

Before sending, the agent must call Recorded run

Predictika validator


      
Waiting for the call.

Where permit pre-screening gets it wrong

Click to expand

Our assessment of how a typical permit form or checklist handles the same cases. It is a general judgment about effort and reliability, not a statement about any named product or city system, and anyone running a specific tool will know it better than we do.

What the validator caughtTypical toolPredictika
A unit limit made of a state rule and a city ruleOnly with workarounds
SB 9 requires two units; the city sets a total including ADUs and junior ADUs. A form has to carry both numbers and compare them with the plan.
Every rule is checked on every call and the verdict lists each finding.
A city condition that state law does not mentionOnly if someone is vigilant
The recorded covenant is a Fremont requirement. A checklist built from state law passes the project unless someone remembers it.
Every rule is checked on every call and the verdict lists each finding.
A question that depends on history nobody gaveOnly if someone is vigilant
Tenant history in the last three years decides whether a demolition qualifies. A form can leave it blank and move on.
Every rule is checked on every call and the verdict lists each finding.
Reporting every problem at onceOnly if someone is vigilant
A form usually shows the first problem. Here each rule fires on its own and all are reported with the law behind them.
Every rule is checked on every call and the verdict lists each finding.
More units on one parcel than the rules allowOnly with workarounds
The limit mixes a state rule (two units) with a city rule on the total of units, ADUs and junior ADUs. A form has to know both and compare them with the plan.
Every rule is checked on every call and the verdict lists each finding.
Required covenant not agreedOnly if someone is vigilant
A checklist built from state law passes this split. The covenant is a local condition, so someone has to remember to check it.
Every rule is checked on every call and the verdict lists each finding.
Tenant history not confirmedOnly with workarounds
Some questions cannot be settled by a rule. The right result is a review, not a guess either way.
Every rule is checked on every call and the verdict lists each finding.

What this validator catches: findings from its test cases

Click to expand

Every rule is checked on every call, in any order the choices arrive; one problem never hides another. Blocking findings stop the request; approval findings need a person to sign off first.

13 SB 9 unit(s), 0 ADU(s) and 0 JADU(s) on one parcel. State law requires allowing two units (Gov. Code 65852.21); Fremont allows at most four units of any kind on a parcel where no lot split is proposed (FMC 18.190.007(d)(4)). Fremont governs the limit. Appears to conflict.
2A recorded covenant is required that runs with the land and bars further subdivision and rentals of 30 days or less (FMC 18.190.007(f)(7)). Fremont governs; state law is silent on the covenant. Appears to conflict.
3The project demolishes or alters existing housing and tenant history for the last three years was not confirmed (Gov. Code 65852.21(a), 66411.7(a)). Needs review.

Scenarios and results

Click to expand

The recorded result of the validator for each scenario on this page: the request the AI agent sent, the verdict, and every finding, in the order they appear above.

1. Units on one parcel: Three units on one parcel

The agent's request. I would like to build 3 new units on my single-family parcel in Fremont. No lot split. The side and rear setbacks are 4 ft, there is 1 parking space per unit, and each unit has its own utility connections.

Verdict: Blocked.

  • More units on one parcel than the rules allow. 3 SB 9 unit(s), 0 ADU(s) and 0 JADU(s) on one parcel. State law requires allowing two units (Gov. Code 65852.21); Fremont allows at most four units of any kind on a parcel where no lot split is proposed (FMC 18.190.007(d)(4)). Fremont governs the limit. Appears to conflict.

2. Units on one parcel: The same project with 2 units

The agent's request. I would like to build 2 new units on my single-family parcel in Fremont. No lot split. The side and rear setbacks are 4 ft, there is 1 parking space per unit, and each unit has its own utility connections.

Verdict: Allowed.

3. Lot split: A lot split with no covenant

The agent's request. I would like to split my single-family parcel in Fremont into two parcels of 3000 sq ft each, with 1 unit on each parcel. I have signed the owner-occupancy affidavit.

Verdict: Blocked.

  • Required covenant not agreed. A recorded covenant is required that runs with the land and bars further subdivision and rentals of 30 days or less (FMC 18.190.007(f)(7)). Fremont governs; state law is silent on the covenant. Appears to conflict.

4. Lot split: The same split with the covenant agreed

The agent's request. I would like to split my single-family parcel in Fremont into two parcels of 3000 sq ft each, with 1 unit on each parcel. I have signed the owner-occupancy affidavit, and I agree to record the covenant that runs with the land.

Verdict: Allowed.

5. Tenant history: Demolition, tenant history not confirmed

The agent's request. I would like to demolish the existing house on my single-family parcel in Fremont and build 2 new units. The side and rear setbacks are 4 ft, there is 1 parking space per unit, and each unit has its own utility connections.

Verdict: Needs approval.

  • Tenant history not confirmed. The project demolishes or alters existing housing and tenant history for the last three years was not confirmed (Gov. Code 65852.21(a), 66411.7(a)). Needs review.

6. Tenant history: The same project with tenant history confirmed

The agent's request. I would like to demolish the existing house on my single-family parcel in Fremont and build 2 new units. The housing has had no tenant in the last three years. The side and rear setbacks are 4 ft, there is 1 parking space per unit, and each unit has its own utility connections.

Verdict: Allowed.

Narration transcript

Click to expand

The text of the narrated walkthrough, step by step.

  1. Welcome to a demo of Predictika's Validator. A homeowner in Fremont, California, asks an AI agent whether a two-unit project or an urban lot split under SB 9 looks approvable. Before the agent answers, the call goes to Predictika’s Fremont SB 9 Project Check. It reads the project against California SB 9 (Gov. Code 65852.21 and 66411.7) and Fremont Municipal Code 18.190.007 together: zone, excluded sites, historic status, tenant history, unit counts, setbacks, parking, utilities, rentals, parcel sizes, the owner-occupancy affidavit and the recorded covenant. Where the city is stricter than state law, state law prevails and the validator says so. Then it returns one verdict: approvable by right, approvable with changes, or needs staff review.
  2. I will start with the first request by the agent.
  3. The agent says. I would like to build 3 new units on my single-family parcel in Fremont. No lot split. The rest of the request is on screen.
  4. Before it goes out, the agent calls the validator.
  5. Blocked, with one finding, all in one answer. 3 SB 9 unit(s), 0 ADU(s) and 0 JADU(s) on one parcel. State law requires allowing two units (Gov. Code 65852.21); Fremont allows at most four units of any kind on a parcel where no lot split is proposed (FMC 18.190.007(d)(4)). Fremont governs the limit. Appears to conflict.
  6. The validator returned one blocking finding in one answer. A check that reads one field at a time would pass most of this; it shows only when the choices in the request are checked against each other.
  7. What this shows: for more units on one parcel than the rules allow, a tool can do this only with workarounds.
  8. Now the agent resubmits.
  9. The corrected request. It changes the project to 2 new units, no lot split.
  10. It calls the validator again.
  11. This time the validator clears it.
  12. The earlier finding is cleared.
  13. One problem caught in one call, fixed in one pass, and a clean request. That is the value of Predictika's validator: catching mistakes before the action runs. Now you can try the other scenarios yourself.