@velinussage/locus-agent-skill 0.1.39 → 0.1.41
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +6 -3
- package/bin/locus-agent-skill.js +2 -2
- package/package.json +1 -1
- package/skill/locus-agent-tools/SKILL.md +41 -11
- package/skill/locus-aging-owner/SKILL.md +108 -0
- package/skill/locus-escrow-shock/SKILL.md +138 -0
- package/skill/locus-home-watch/SKILL.md +202 -0
- package/skill/locus-inherited-home/SKILL.md +105 -0
- package/skill/locus-insurance-nonrenewal/SKILL.md +111 -0
- package/skill/locus-payment-hardship/SKILL.md +71 -0
- package/skill/locus-property-tax-protest/SKILL.md +4 -1
- package/skill/locus-seller-readiness/SKILL.md +112 -0
- package/skill/locus-water-incident/SKILL.md +173 -0
|
@@ -0,0 +1,202 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: locus-home-watch
|
|
3
|
+
preamble-tier: 1
|
|
4
|
+
version: 1.2.1
|
|
5
|
+
description: Use when an owner who is keeping a property, or their agent, wants a standing watch on one address or a saved pool so money deadlines and nearby public-record changes surface on their own, each with a plain next step.
|
|
6
|
+
triggers:
|
|
7
|
+
- watch my house
|
|
8
|
+
- keep an eye on my property
|
|
9
|
+
- remind me of property tax deadlines
|
|
10
|
+
- tell me when something changes near my home
|
|
11
|
+
- homestead exemption renewal reminder
|
|
12
|
+
- set up alerts for my address
|
|
13
|
+
- monitor my rental properties
|
|
14
|
+
- standing watch on my home
|
|
15
|
+
allowed-tools: Bash Read AskUserQuestion
|
|
16
|
+
license: MIT
|
|
17
|
+
---
|
|
18
|
+
# Locus home watch workflow
|
|
19
|
+
|
|
20
|
+
Locus supplies dated deadlines and cited public-record changes for an address. The agent turns
|
|
21
|
+
each event into one plain next step. The owner decides what to act on and what to pay for.
|
|
22
|
+
Never present an event as "you must", "you are at risk", "this lowers your value" or "you
|
|
23
|
+
should appeal". State the fact, its date and its source, then the question the owner can ask
|
|
24
|
+
next.
|
|
25
|
+
|
|
26
|
+
**How to speak:** follow "How to speak with owners, sellers and buyers" in the `locus-agent-tools`
|
|
27
|
+
skill (https://api.locus.report/.well-known/skill.md), including its 988 crisis guard.
|
|
28
|
+
|
|
29
|
+
Inputs you need from the owner: the street address (or up to 10 addresses), and whether they want
|
|
30
|
+
you to poll on their behalf or receive signed webhooks. Do not collect account numbers, names,
|
|
31
|
+
phone numbers or email addresses for the watch. Calendar reminders may also take the owner's renewal or escrow-analysis month, as a number from 1 to 12. Do not collect policy or loan numbers.
|
|
32
|
+
|
|
33
|
+
## 1. Choose the watch target
|
|
34
|
+
|
|
35
|
+
1. **One to ten addresses, no sign-in.** Inline `addresses` work on
|
|
36
|
+
`https://mcp.locus.report/mcp` with `events/poll` (or the model tool `poll_events`). This is
|
|
37
|
+
free and needs no account.
|
|
38
|
+
2. **A saved pool (2 to 25 addresses), signed in.** Connect to
|
|
39
|
+
`https://mcp.locus.report/muse/mcp` (OAuth, scopes `pools events:subscribe`, or
|
|
40
|
+
`Authorization: Bearer lmc_...`). Create the pool with `create_pool` and use its `poolId`. Pool
|
|
41
|
+
events and webhooks need this sign-in; an unsigned call returns an authentication error, not
|
|
42
|
+
an empty result.
|
|
43
|
+
3. Read the live schema before the first call: `events/list`, the model tool `list_event_types`,
|
|
44
|
+
or free `locus_mcp_events_catalog` with `{}`. The schema wins over this skill if they differ.
|
|
45
|
+
|
|
46
|
+
## 2. Set up the two standing events
|
|
47
|
+
|
|
48
|
+
4. **Money deadlines:** `locus.real_estate.deadline_approaching` with
|
|
49
|
+
`{ "addresses": [...], "horizonDays": 60 }` (or `{ "poolId": "..." }`). The default lanes are
|
|
50
|
+
`locus_tax_calendar`, `locus_appeal_window`, `locus_program_windows`, `locus_owner_programs`,
|
|
51
|
+
`locus_tax_sale_calendar` and `locus_open_disaster_assistance`. Add
|
|
52
|
+
`"basis": ["as filed", "statutory"]` to drop published-schedule dates if the owner wants fewer
|
|
53
|
+
alerts.
|
|
54
|
+
5. **Changes around the home:** `locus.real_estate.changes_detected` with
|
|
55
|
+
`{ "addresses": [...], "lanes": [...], "includeUpcomingDays": 60 }`. Pick up to six free lanes
|
|
56
|
+
that fit the owner's question, for example `locus_flood_map_change_notices`,
|
|
57
|
+
`locus_metro_permits`, `locus_development_cases`, `locus_parcel_code_cases` and
|
|
58
|
+
`locus_boil_water_notices` (state-published boil-water orders for the serving system). A lane outside
|
|
59
|
+
the address's coverage returns `out_of_coverage` when called directly; check with
|
|
60
|
+
`locus_lane_availability` first rather than promising coverage.
|
|
61
|
+
6. **Delivery.** Pick one:
|
|
62
|
+
- **Poll.** Omit `cursor` on the first call. Store the returned `cursor` only after you have
|
|
63
|
+
processed the response, and pass it on the next poll.
|
|
64
|
+
- **Signed webhook (signed in only).** `events/subscribe` or `subscribe_event` with a public
|
|
65
|
+
HTTPS URL and a `whsec_...` secret. Your receiver must answer the verification challenge
|
|
66
|
+
within 5 seconds. Verify `webhook-signature` and `webhook-timestamp` on every delivery and
|
|
67
|
+
deduplicate by `eventId`. Deliveries go out when a signed-in session calls `poll_events` with
|
|
68
|
+
`"deliverWebhooks": true`, so schedule that call at your cadence; a subscription alone does
|
|
69
|
+
not push. Renew before `refreshBefore`.
|
|
70
|
+
|
|
71
|
+
## 3. Cadence guide
|
|
72
|
+
|
|
73
|
+
| Event | Suggested cadence | Why |
|
|
74
|
+
|---|---|---|
|
|
75
|
+
| `deadline_approaching` | Weekly, with `horizonDays` of 30 to 60 | Deadlines move slowly; a wider horizon gives the owner time to gather papers. |
|
|
76
|
+
| `changes_detected` | Daily, and never slower than every 24 hours | A poll cursor expires after 24 hours. A late poll starts a new baseline and reports nothing for the gap. |
|
|
77
|
+
| `changes_detected` with `locus_boil_water_notices` | At least every 12 hours, or `subscribe_event` when signed in | Boil-water notices are time-critical, and the lane lists active orders only: a notice issued during a re-baseline after a late poll joins the baseline silently and never emits. Locus is not an emergency alert; the utility's own alerts come first. |
|
|
78
|
+
| Any event | Not faster than `nextPollMs` (one hour) | Faster polls add load and find nothing new. |
|
|
79
|
+
|
|
80
|
+
If you poll `deadline_approaching` weekly, omit the old cursor: a fresh poll lists every dated
|
|
81
|
+
event inside the horizon, and you deduplicate by `eventId` yourself. For `changes_detected`, if
|
|
82
|
+
a cursor has expired, tell the owner the watch restarted on that date and that changes before it
|
|
83
|
+
were not compared.
|
|
84
|
+
|
|
85
|
+
## 4. Read each poll honestly
|
|
86
|
+
|
|
87
|
+
7. **Empty poll.** It means "nothing new was seen in the lanes checked", not "nothing happened".
|
|
88
|
+
Say exactly that, and name the lanes.
|
|
89
|
+
8. **`truncated: true`.** The result is incomplete: a lane or address was unavailable, the
|
|
90
|
+
cursor was stale, or more events are waiting (`hasMore: true`). Poll again with the new cursor
|
|
91
|
+
for `hasMore`. For an unavailable lane, say which lane could not be read; do not report it as
|
|
92
|
+
clear.
|
|
93
|
+
9. **`source_unavailable` or `unavailable` on a lane.** That source failed. It is not zero
|
|
94
|
+
records and not good news. Report it as a gap and check again on the next poll.
|
|
95
|
+
10. **The first poll of `changes_detected`** sets a baseline and normally reports no changes.
|
|
96
|
+
Say "the watch is set; changes after today will show", not "no changes found".
|
|
97
|
+
|
|
98
|
+
## 5. Triage each event into one next step
|
|
99
|
+
|
|
100
|
+
11. **`deadline_approaching`.** Report `event`, `date`, `daysRemaining`, `basis` and the source
|
|
101
|
+
(`sourceName`, `sourceUrl`, `fetchedAt`). Then:
|
|
102
|
+
- **Appeal or assessment deadline** (tool `locus_appeal_window`, or a `locus_tax_calendar`
|
|
103
|
+
event about revaluation, review, protest, listing or equalization): hand off to the
|
|
104
|
+
`locus-property-tax-protest` skill with the address, the deadline and the notice date if the
|
|
105
|
+
owner has it. That skill owns the clock, the evidence and the filing.
|
|
106
|
+
- **Exemption, relief or program window** (`locus_program_windows`, `locus_owner_programs`):
|
|
107
|
+
call the same free tool for the address and list what the owner must file and by when. If a
|
|
108
|
+
homestead or relief exemption is not on the owner's bill, say it is a separate filing with
|
|
109
|
+
its own deadline.
|
|
110
|
+
- **Tax due or tax-sale date** (`locus_tax_calendar`, `locus_tax_sale_calendar`): report the
|
|
111
|
+
date and the county's official source. Do not estimate penalties.
|
|
112
|
+
- **Disaster assistance** (`locus_open_disaster_assistance`): report the program and its
|
|
113
|
+
closing date from the source.
|
|
114
|
+
- A `basis` of `"published schedule"` is the authority's own calendar; `"statutory"` is the
|
|
115
|
+
date the law sets; `"as filed"` comes from a record. Say which one it is.
|
|
116
|
+
12. **`changes_detected`.** Report `summary`, then each item in `newRecords` with its
|
|
117
|
+
`sourceName`, `sourceUrl` and `fetchedAt`, and each item in `newUpcoming` with its date. Then:
|
|
118
|
+
- **A flood-map change notice** (`locus_flood_map_change_notices`): say a map revision that
|
|
119
|
+
names the county is proposed or final, give its comment deadline or effective date from the
|
|
120
|
+
notice, and say a county notice is not a change to this parcel's zone. Suggest the owner ask
|
|
121
|
+
their insurer how the revision would apply once it is effective.
|
|
122
|
+
- **A permit, development case or code case near or at the address**: give the record
|
|
123
|
+
number, the status and the date, then the next question (for example, "when is the hearing,
|
|
124
|
+
and how do I comment?"). For a code case at the owner's own address, give the case status
|
|
125
|
+
and the issuing office; do not interpret it.
|
|
126
|
+
- **A boil-water notice** (`locus_boil_water_notices`): give the notice status, issue date,
|
|
127
|
+
affected water system and source URL, and point to the utility's own instructions. Say it
|
|
128
|
+
is system context, not confirmed impact at this address. Give no health or safety verdict.
|
|
129
|
+
State-issued boil orders only; a precautionary advisory from the utility may not appear.
|
|
130
|
+
Check the utility's alerts.
|
|
131
|
+
A notice that drops off the list was not necessarily lifted; check the utility. If the
|
|
132
|
+
owner asks what their own service line is made of, call `locus_service_line_material`
|
|
133
|
+
(California, address level); for a break or leak, hand off to `locus-water-incident`.
|
|
134
|
+
- **New dated events** in `newUpcoming` are handled as in step 11.
|
|
135
|
+
|
|
136
|
+
## 6. Paid next steps: offer, never auto-pay
|
|
137
|
+
|
|
138
|
+
13. Deadline and change events carry `nextActions`: a pre-filled paid call with `tool`, `priceUsdc`, `adds`
|
|
139
|
+
and `charge: "charge_free_unless_substantive"`. Typical tools are `locus-assessment-position`,
|
|
140
|
+
`locus-owner-action-brief`, `locus-property-tax`, `locus-permit-closeout-check` and
|
|
141
|
+
`locus-property-update`.
|
|
142
|
+
14. Offer it in one line: what it adds (quote `adds`) and its price (quote `priceUsdc`). Ask the
|
|
143
|
+
owner. Only after a clear yes, call it through `locus_execute` with the x402 payment in
|
|
144
|
+
`_meta["x402/payment"]`, or the REST path in `call.rest`. Never pay because an event arrived,
|
|
145
|
+
and never pay twice for the same `eventId`.
|
|
146
|
+
15. `charged: false` in the paid result means the data was too thin to charge for. Report what
|
|
147
|
+
came back, and do not retry to force a charge.
|
|
148
|
+
16. An event notification is never payment authorization, and never a safe or unsafe verdict.
|
|
149
|
+
|
|
150
|
+
## 7. Landlords and holders of several homes
|
|
151
|
+
|
|
152
|
+
17. Use a signed-in pool and `locus.pool.changes_detected`. For a rental, the free tools
|
|
153
|
+
`locus_rental_registration_check`, `locus_tenant_statute_pointers` and
|
|
154
|
+
`locus_fair_market_rents` answer the common follow-up questions. Keep tenant names and
|
|
155
|
+
contact details out of every call.
|
|
156
|
+
|
|
157
|
+
## 8. Title watch for vacant land, second homes and rentals
|
|
158
|
+
|
|
159
|
+
18. Owners of vacant land, a second home or a rental, and older owners, are the main targets of
|
|
160
|
+
seller-impersonation fraud: someone poses as the owner and tries to sell or mortgage the
|
|
161
|
+
property. (ALTA's 2026 reporting puts vacant land at 82% of targets; that figure is from a
|
|
162
|
+
secondary source.) Offer two steps, with no alarm:
|
|
163
|
+
- **Watch the owner's own parcel for new recorded sales.** Add `locus_parcel_transfers` to the
|
|
164
|
+
`changes_detected` lanes. Its sale rows carry no record id, so the event reports that the
|
|
165
|
+
lane's answer changed, not which sale. When it fires, call `locus_parcel_transfers` for the
|
|
166
|
+
address and look for a row whose site address is the owner's own; the lane lists recorded
|
|
167
|
+
sales within 500 m, so most rows, and most events, will be neighbors' sales. Tell the owner
|
|
168
|
+
that, and check the site address before treating an event as theirs. The lane covers only
|
|
169
|
+
counties whose assessor publishes sales (check `locus_lane_availability` first), and
|
|
170
|
+
assessor sale data can lag the recorder by weeks, so it is a backstop, not an early warning.
|
|
171
|
+
- **Enroll in the county recorder's alert.** Call `locus_fraud_alert_pointer` for the address
|
|
172
|
+
and give the enrollment link or office it returns. Where a county runs an alert service, it
|
|
173
|
+
notifies the enrolled owner when a document is recorded under their name, usually sooner
|
|
174
|
+
than assessor sale data. Where no local row exists, give the recorder search guidance it
|
|
175
|
+
returns and say Locus has not listed an alert service for that county.
|
|
176
|
+
19. Locus does **not** verify a seller's identity or compare a seller to the owner of record.
|
|
177
|
+
For a sale or loan in progress, that check belongs to the title company or closing attorney.
|
|
178
|
+
|
|
179
|
+
## 9. Calendar preparation reminders
|
|
180
|
+
|
|
181
|
+
Offer these reminders only where `locus_mcp_events_catalog` lists them. The provider's default-off calendar flag controls availability; when it is off, both catalogs omit these three events. If they are absent, keep the existing deadline and record-change watches instead. Each listed calendar event uses one `address`, not `addresses` or `poolId`:
|
|
182
|
+
|
|
183
|
+
| Event | Arguments | Trigger and free next steps |
|
|
184
|
+
|---|---|---|
|
|
185
|
+
| `locus.real_estate.seasonal_hazard_window` | `{ "address": "123 Main St, Wilmington, NC 28401" }` | May 1 preparation window for the official June 1 Atlantic hurricane season start, in registered coastal counties only. Call `locus_flood_zone` and `locus_flood_premium_context`. Wildfire is skipped because no dated official state season has been verified. |
|
|
186
|
+
| `locus.real_estate.insurance_renewal_approaching` | `{ "address": "...", "renewalMonth": 7 }` | 45 days before the first day of the supplied month. Call `locus_homeowners_insurance_context` and `locus_mitigation_incentives`. |
|
|
187
|
+
| `locus.real_estate.escrow_analysis_approaching` | `{ "address": "...", "escrowAnalysisMonth": 7 }` | 30 days before the first day of the supplied month. Read `locus_owner_mortgage_calendar` with `{}` for the cited fact cards, then `locus_tax_calendar` and `locus_homeowners_insurance_context` for the address. |
|
|
188
|
+
|
|
189
|
+
The month boundary is not the actual renewal or servicer date. Confirm that date with the insurer or servicer. A missing month returns `calendarStatus: "missing_date"` and no event. Caller months are labeled `caller_supplied`; they have no invented source URL or verification date. Seasonal dates carry the official source and its recorded verification date. Every reminder carries a reason and free `nextActions` with `charge: "free"` and `priceUsdc: "0.00"`. Do not attach payment metadata to those calls.
|
|
190
|
+
|
|
191
|
+
Use the same poll or signed-webhook setup as step 6 in section 2, with the selected event name and its arguments. Set up a subscription before the trigger window opens; its initial baseline is silent. A subscription alone still does not schedule delivery. Keep the polling caller active and renew before expiry.
|
|
192
|
+
|
|
193
|
+
Poll at least every 12 hours and honor `nextPollMs`. Cursors expire after 24 hours even though the calendar cycles are yearly. Passing a stale cursor creates a truncated, silent baseline and may suppress a reminder. To recover a missed poll, omit the expired cursor and deduplicate the fresh result by `eventId`. Fresh polls list reminders only from `triggerDate` through `date`, inclusive, in UTC. Closed windows are not backfilled. A new annual cycle has a new event ID.
|
|
194
|
+
|
|
195
|
+
Exemption and appeal re-surfacing stays on `deadline_approaching`. Only concrete dated rows count. A recurring prose rule or a prior year's deadline never becomes a guessed current-year date.
|
|
196
|
+
|
|
197
|
+
## Completion
|
|
198
|
+
|
|
199
|
+
The owner has: the watch target (addresses or pool), the two events set up with their
|
|
200
|
+
arguments, the delivery mode and cadence, and where the cursor or subscription is stored. For
|
|
201
|
+
each event so far: the fact, its date and source, the next step, and any paid offer with its
|
|
202
|
+
price and the owner's answer. Every gap from a failed or truncated read is named, not hidden.
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: locus-inherited-home
|
|
3
|
+
preamble-tier: 1
|
|
4
|
+
version: 1.0.0
|
|
5
|
+
description: Use when someone's parent or relative died and left a US house, and they ask what is due on it, how to protect it while it is empty, and where the state's estate, heirs-property and court pointers are, from cited Locus records.
|
|
6
|
+
triggers:
|
|
7
|
+
- I inherited a house
|
|
8
|
+
- my parent died and left the house
|
|
9
|
+
- what do I do with my mom's house
|
|
10
|
+
- property tax on an inherited home
|
|
11
|
+
- heirs property
|
|
12
|
+
- transfer on death deed
|
|
13
|
+
- small estate affidavit for a house
|
|
14
|
+
- vacant house after a death
|
|
15
|
+
allowed-tools: Bash Read AskUserQuestion
|
|
16
|
+
license: MIT
|
|
17
|
+
---
|
|
18
|
+
# Locus inherited-home workflow
|
|
19
|
+
|
|
20
|
+
The person has lost someone. Start with one plain sentence of acknowledgement, then move to what is
|
|
21
|
+
due and when. Locus gives dated, cited facts about the home and pointers to official estate law.
|
|
22
|
+
A probate attorney or legal aid decides which estate procedure applies, who has authority to act,
|
|
23
|
+
and who owns the home. The family decides whether to keep, rent or sell it.
|
|
24
|
+
|
|
25
|
+
**Never:** recommend selling or keeping the home; say who owns it, who inherits it, or who may sign
|
|
26
|
+
for the estate; give legal, tax or financial advice. Locus does not produce those statements and
|
|
27
|
+
neither may you on Locus's behalf.
|
|
28
|
+
|
|
29
|
+
**How to speak:** follow "How to speak with owners, sellers and buyers" in the `locus-agent-tools`
|
|
30
|
+
skill (https://api.locus.report/.well-known/skill.md), including its 988 crisis guard.
|
|
31
|
+
|
|
32
|
+
Inputs you need: the home's street address and state. Do not collect the deceased person's name,
|
|
33
|
+
heirs' names, phone numbers, account numbers or family details. You do not need them.
|
|
34
|
+
|
|
35
|
+
## 1. What is due on the home (free)
|
|
36
|
+
|
|
37
|
+
1. `locus_tax_payment_status` with `{ address }`: whether the current bill shows paid or unpaid,
|
|
38
|
+
with the source and date. If the lane is out of coverage or unavailable, say so; never report
|
|
39
|
+
an unavailable read as "nothing due".
|
|
40
|
+
2. `locus_tax_calendar` for the county: bill dates, due dates and the delinquency rule. Name the
|
|
41
|
+
next due date first.
|
|
42
|
+
|
|
43
|
+
## 2. Exemptions that may end (free)
|
|
44
|
+
|
|
45
|
+
3. `locus_owner_programs` with `{ address, classes: ["exemption_relief", "tax_relief_local", "assessment_deferral"] }`.
|
|
46
|
+
For each homestead, senior, veteran or disability row, quote the fact and source. Say that such
|
|
47
|
+
exemptions are usually tied to the owner who lived there, and that the county assessor decides
|
|
48
|
+
when one ends. The next step is to tell the assessor's office about the death and ask what
|
|
49
|
+
changes and when. Never say an exemption has ended.
|
|
50
|
+
|
|
51
|
+
## 3. Insurance on an empty house (pointer only)
|
|
52
|
+
|
|
53
|
+
4. Say that many homeowner policies have terms about a home left vacant or unoccupied, and that
|
|
54
|
+
the policyholder or estate should ask the insurer, soon, what applies and what the insurer
|
|
55
|
+
needs. Locus cannot read the policy or quote coverage.
|
|
56
|
+
`locus_homeowners_insurance_context` can give area cost context if they ask about price.
|
|
57
|
+
|
|
58
|
+
## 4. Watch the empty house for fraud (free)
|
|
59
|
+
|
|
60
|
+
No one is checking an empty home's mail. Watching its public records lets the family see a new
|
|
61
|
+
recording early, while there is still time to act.
|
|
62
|
+
5. `locus_parcel_transfers` with the address: recent recorded sales near the address, with dates.
|
|
63
|
+
Check the site address before treating a row as the owner's own. A recording is a fact, not a
|
|
64
|
+
judgment that it was fraud. For the full title watch, follow section 8 (title watch) of the
|
|
65
|
+
`locus-home-watch` skill.
|
|
66
|
+
6. `locus_fraud_alert_pointer` for the county: how to enroll in the recorder's free alert, if the
|
|
67
|
+
county offers one.
|
|
68
|
+
7. Offer a standing watch with the `locus-home-watch` skill on the address, so new recordings,
|
|
69
|
+
tax dates and permits surface early.
|
|
70
|
+
Locus does not verify anyone's identity or ownership. Send that question to a title company or
|
|
71
|
+
the attorney.
|
|
72
|
+
|
|
73
|
+
## 5. State estate pointers (free)
|
|
74
|
+
|
|
75
|
+
8. `locus_estate_property_pointers` with `{ address }` or `{ state }`. Report each part with its
|
|
76
|
+
own status:
|
|
77
|
+
- `transferOnDeathDeed`: if `verified`, the state has a transfer-on-death (beneficiary) deed
|
|
78
|
+
statute; give the citation and link. Whether one was recorded for this home is a question for
|
|
79
|
+
the county recorder or the attorney; Locus does not search for it.
|
|
80
|
+
- `smallEstate`: if `verified`, give the citation, link and `realProperty` value. Quote
|
|
81
|
+
`thresholdText` only if it is present, and say thresholds change.
|
|
82
|
+
- `heirsProperty`: the Uniform Partition of Heirs Property Act status from the Uniform Law
|
|
83
|
+
Commission. This matters when several heirs share ownership. `not_listed` is not proof the
|
|
84
|
+
state has no related law.
|
|
85
|
+
- `courtHelp`: the state court self-help page for probate.
|
|
86
|
+
- A `not_verified` part names no rule. Give the portal pointer and say Locus has not checked it.
|
|
87
|
+
|
|
88
|
+
## 6. If the family decides to sell
|
|
89
|
+
|
|
90
|
+
9. Only when the family says they plan to sell, hand off to the `locus-seller-readiness` skill.
|
|
91
|
+
Selling an estate home usually needs the estate's legal authority first; say so.
|
|
92
|
+
|
|
93
|
+
## 7. Human help
|
|
94
|
+
|
|
95
|
+
10. End with the route to a probate attorney or legal aid, and the state court self-help page from
|
|
96
|
+
step 8. For help with payments on the home, HUD-approved housing counselors are free or low-cost:
|
|
97
|
+
`locus_housing_counselors` with the address lists nearby agencies, and the
|
|
98
|
+
`locus-payment-hardship` skill covers payment trouble.
|
|
99
|
+
|
|
100
|
+
## Completion
|
|
101
|
+
|
|
102
|
+
The person has: the tax status and the next due date; the exemption rows and the assessor
|
|
103
|
+
question; the insurance question to ask; the recorded-transfer check, the recorder alert and an
|
|
104
|
+
optional watch; the state estate pointers with their verification status; and the route to a
|
|
105
|
+
probate attorney or legal aid. Every statement traces to a Locus citation or the person's own input.
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: locus-insurance-nonrenewal
|
|
3
|
+
preamble-tier: 1
|
|
4
|
+
version: 1.1.0
|
|
5
|
+
description: Use when a US homeowner says their homeowners insurer will not renew, or is dropping, their policy and wants to know the state notice rule, the insurer of last resort, the complaint route, mitigation credits, flood exposure and the dates that matter before the policy lapses, from cited Locus records.
|
|
6
|
+
triggers:
|
|
7
|
+
- my insurer won't renew my policy
|
|
8
|
+
- homeowners insurance nonrenewal notice
|
|
9
|
+
- insurance company dropping my house
|
|
10
|
+
- FAIR Plan
|
|
11
|
+
- Citizens insurance
|
|
12
|
+
- insurer of last resort
|
|
13
|
+
- how much notice before nonrenewal
|
|
14
|
+
allowed-tools: Bash Read AskUserQuestion
|
|
15
|
+
license: MIT
|
|
16
|
+
---
|
|
17
|
+
# Locus insurance-nonrenewal workflow
|
|
18
|
+
|
|
19
|
+
The owner has received a notice that their homeowners policy will not renew. Locus supplies
|
|
20
|
+
pointers to official rules and cited area records. The owner, a licensed insurance agent and the
|
|
21
|
+
state insurance department decide what coverage to buy and whether a notice met the rules.
|
|
22
|
+
|
|
23
|
+
Never recommend a policy, a carrier or a coverage amount. Never say whether a nonrenewal was
|
|
24
|
+
lawful, valid or late. Locus does not produce those statements and neither may you on Locus's
|
|
25
|
+
behalf. Report facts with their dates and sources, and end each finding with the next question.
|
|
26
|
+
Nonrenewal notices have become more common in many states. Help from the state insurance
|
|
27
|
+
department is free.
|
|
28
|
+
|
|
29
|
+
**How to speak:** follow "How to speak with owners, sellers and buyers" in the `locus-agent-tools`
|
|
30
|
+
skill (https://api.locus.report/.well-known/skill.md), including its 988 crisis guard.
|
|
31
|
+
|
|
32
|
+
Inputs you need first: the state (or the property address), the date on the notice, and the
|
|
33
|
+
date the current policy ends. Do not collect the policy number, names, phone numbers or account
|
|
34
|
+
details.
|
|
35
|
+
|
|
36
|
+
## 1. The state rules (free)
|
|
37
|
+
|
|
38
|
+
1. Ask for the notice date and the policy end date. Count the days between them yourself and
|
|
39
|
+
show the arithmetic. Say that the count is the owner's dates, not a finding.
|
|
40
|
+
2. `locus_insurance_nonrenewal_pointers` with `{ address }` or `{ state }`.
|
|
41
|
+
- `notice.status: "verified"`: quote `days`, `citation`, `scope`, any `conditions`, and the
|
|
42
|
+
official URL. Put the rule beside the owner's own day count, and say that the department
|
|
43
|
+
decides whether a notice met the rule.
|
|
44
|
+
- `notice.status: "not_verified"`: Locus has not checked a rule for this state. Give the
|
|
45
|
+
department's portal and suggest the owner ask the department what notice applies. Do not
|
|
46
|
+
say the state has no rule.
|
|
47
|
+
- `insurerOfLastResort.status: "listed"`: name each plan and its URL. It is a fallback when
|
|
48
|
+
the regular market declines; eligibility and price are the plan's decision.
|
|
49
|
+
`"not_checked"` means Locus has no plan row for this state; ask the department.
|
|
50
|
+
- `department.complaintUrl`: the page for questions and complaints.
|
|
51
|
+
- `emergencyRules`: quote each rule in force with its start and end dates and source. An
|
|
52
|
+
empty list means no dated rule is recorded here, not that none exists.
|
|
53
|
+
- `available: false` (`out_of_coverage`, `input_too_coarse`, `jurisdiction_mismatch`,
|
|
54
|
+
`source_unavailable`): report the status and ask for a two-letter state or a full address.
|
|
55
|
+
|
|
56
|
+
## 2. Mitigation credits (free)
|
|
57
|
+
|
|
58
|
+
3. `locus_mitigation_incentives` with the place and, where it fits, `hazard` (`wind`,
|
|
59
|
+
`wildfire`, `flood` or `earthquake`). Report each cited grant, discount rule or program with
|
|
60
|
+
its window and source. Suggest the owner ask any insurer which of these it credits.
|
|
61
|
+
|
|
62
|
+
## 3. Flood (free)
|
|
63
|
+
|
|
64
|
+
Homeowners policies usually exclude flood, and many flood losses happen outside the high-risk
|
|
65
|
+
zones. A new policy search is a good time to look at flood separately.
|
|
66
|
+
|
|
67
|
+
4. `locus_flood_zone` for the address: the effective FEMA zone and its source date.
|
|
68
|
+
5. `locus_flood_premium_context` for the address: the spread of National Flood Insurance
|
|
69
|
+
Program (NFIP) policy costs in the ZIP. It is an estimate, never a quote.
|
|
70
|
+
|
|
71
|
+
## 4. Area premium context (free)
|
|
72
|
+
|
|
73
|
+
6. `locus_homeowners_insurance_context` for the address: the Census median homeowners-insurance
|
|
74
|
+
cost band with its vintage. It is a survey estimate, never a quote for this home.
|
|
75
|
+
- `fioZip`: Treasury Federal Insurance Office (FIO) figures for the ZIP, by year, labeled
|
|
76
|
+
**2018-2022 historical area context**: `premiumsPerPolicyUsd`, `nonrenewalRate`,
|
|
77
|
+
cancellation rates, `claimFrequency`, `claimSeverityUsd` and `paidLossRatio`. They describe
|
|
78
|
+
the ZIP's market then, not this policy, today's premium or a forecast. Read `fioZip.status`:
|
|
79
|
+
`reported` gives the figures; `suppressed` means some cells are blank (null is not zero);
|
|
80
|
+
`not_in_source` means the ZIP is absent, which may be suppression or a coverage gap;
|
|
81
|
+
`source_unavailable` means the figures could not be read here (the read failed or the
|
|
82
|
+
snapshot is not enabled). Report it as a gap, not as zero.
|
|
83
|
+
For a nonrenewal question, quote `nonrenewalRate` by year as published: insurer
|
|
84
|
+
nonrenewals divided by policies in force at year end, as a fraction (0.02 is 2%), for
|
|
85
|
+
participating private HO-3 and HO-5 insurers only (no FAIR or Citizens plans). It shows how
|
|
86
|
+
common insurer nonrenewals were in the ZIP in those years. It says nothing about why this
|
|
87
|
+
policy was not renewed, and it is not a current rate.
|
|
88
|
+
|
|
89
|
+
## 5. Mortgage dates (free, only if the home has a mortgage)
|
|
90
|
+
|
|
91
|
+
7. `locus_owner_mortgage_calendar`. If the owner has a letter from the lender or servicer about
|
|
92
|
+
lapsed or force-placed insurance, pass its date as `forcePlacedNoticeDate`. Quote only the
|
|
93
|
+
tool's cited fact cards and computed dates. Suggest the owner send the servicer proof of new
|
|
94
|
+
coverage as soon as it is bound.
|
|
95
|
+
|
|
96
|
+
## Completion: choices and dates
|
|
97
|
+
|
|
98
|
+
End with a short dated list of the owner's choices, for example:
|
|
99
|
+
|
|
100
|
+
- Shop with one or more licensed agents before the policy end date (date).
|
|
101
|
+
- Ask about the insurer of last resort named above if the regular market declines.
|
|
102
|
+
- Ask insurers about the mitigation credits found.
|
|
103
|
+
- Consider flood coverage separately, given the flood facts above.
|
|
104
|
+
- If paying for a new policy becomes hard, hand off to the `locus-payment-hardship` skill.
|
|
105
|
+
`locus_housing_counselors` lists agencies in HUD's housing counseling directory near the
|
|
106
|
+
address; confirm the agency's HUD approval, fees and availability with the agency.
|
|
107
|
+
- Ask the department, or file a complaint at its page, if the notice timing seems short against
|
|
108
|
+
the cited rule.
|
|
109
|
+
- If there is a mortgage, send the servicer proof of coverage by the dates in the calendar.
|
|
110
|
+
|
|
111
|
+
Every statement traces to a Locus citation or to a date the owner gave you.
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: locus-payment-hardship
|
|
3
|
+
description: "Use when a US owner is behind on mortgage payments, property taxes, or both and needs human help and official process pointers."
|
|
4
|
+
preamble-tier: 1
|
|
5
|
+
version: 1.0.2
|
|
6
|
+
triggers:
|
|
7
|
+
- behind on my mortgage
|
|
8
|
+
- cannot pay my property taxes
|
|
9
|
+
- mortgage payment hardship
|
|
10
|
+
- foreclosure notice
|
|
11
|
+
- find a HUD-approved housing counselor
|
|
12
|
+
allowed-tools: Bash Read AskUserQuestion
|
|
13
|
+
license: MIT
|
|
14
|
+
---
|
|
15
|
+
1. Open without shame: **“Payment trouble is common. We can look for agencies listed in HUD's housing counseling directory and ask about free or low-cost counseling.”**
|
|
16
|
+
Ask whether the issue is the mortgage, property taxes, or both. Do not ask why.
|
|
17
|
+
Use an address or point the caller already supplied; ask for the state if it is missing.
|
|
18
|
+
Do not collect names, account numbers, private financial documents, or a hardship narrative.
|
|
19
|
+
|
|
20
|
+
**How to speak:** follow "How to speak with owners, sellers and buyers" in the `locus-agent-tools` skill (https://api.locus.report/.well-known/skill.md), including its 988 crisis guard.
|
|
21
|
+
|
|
22
|
+
2. **Crisis STOP:** if the person says they are thinking of harming themselves or are in crisis, stop the records task.
|
|
23
|
+
Give the US **988 Suicide and Crisis Lifeline**: call or text **988**, or use <https://988lifeline.org/>.
|
|
24
|
+
Locus is not a mental-health service. Do not continue tool calls or treat ordinary payment stress alone as a crisis declaration.
|
|
25
|
+
3. Recover any existing address, source results, dates, and prior decisions from the current conversation before repeating calls.
|
|
26
|
+
Read the live free schemas from <https://api.locus.report/tools/list>. Use existing consent only; do not install, update, charge, log personal details, or publish anything.
|
|
27
|
+
|
|
28
|
+
## Mortgage payments
|
|
29
|
+
|
|
30
|
+
4. Call `locus_housing_counselors` **first**, with `{ "address": "<the caller's address>" }`
|
|
31
|
+
or `{ "lat": 35.78, "lon": -78.64 }` using the caller's actual point, not these example coordinates.
|
|
32
|
+
The optional `service: "DFC"` filters to mortgage delinquency/default resolution; `LM` is loss mitigation and `RMC` is reverse mortgage counseling.
|
|
33
|
+
- `ok`: give the nearest agency options with their published business phone, address, website, service/language codes, source, and retrieval date.
|
|
34
|
+
Distance is straight-line proximity, not a quality ranking. Report `sourceStatusCode` as the raw HUD `agc_STATUS` code, not an approval or participation finding; null means the source did not provide a code.
|
|
35
|
+
Describe all results as **agencies listed in HUD's housing counseling directory**, never as currently HUD-approved based on the listing or its code.
|
|
36
|
+
Ask the caller to confirm the agency's HUD-approval status with HUD or the agency, plus fees, services, language and appointment availability.
|
|
37
|
+
- `no_agencies_in_radius`: explain the checked radius and filter. Offer a wider bounded search or HUD's official directory; remote counseling may be available.
|
|
38
|
+
Do not say there is no help.
|
|
39
|
+
- `source_unavailable`: say the read failed. Give <https://data.hud.gov/housing_counseling.html> as a fallback; do not call the response empty.
|
|
40
|
+
5. Call `locus_foreclosure_process_pointers` with the confirmed state.
|
|
41
|
+
- `verified`: give the process classification, statute citations, official self-help and mediation pointers the row actually returns.
|
|
42
|
+
- `not_verified`: give the official portal only and say no process rule was verified. Never fill the gap from memory.
|
|
43
|
+
- `out_of_coverage`: name the limitation and offer `locus_request_coverage`; do not substitute a different state.
|
|
44
|
+
A state process type is not a determination of which process applies to this mortgage or tax lien.
|
|
45
|
+
6. Call `locus_owner_mortgage_calendar` for its servicer-loss-mitigation fact cards.
|
|
46
|
+
Without caller dates, use `{}` to get the cards. Supply a sale or notice date only if the caller provided it.
|
|
47
|
+
Label any computed dates as arithmetic from caller inputs, subject to the cited conditions and actual notices.
|
|
48
|
+
Do not answer “how much time do I have?” with a countdown, predicted sale date, or assurance that an application stops a sale.
|
|
49
|
+
Ask the counselor or servicer to confirm the actual notice, application process and applicable dates.
|
|
50
|
+
|
|
51
|
+
## Property taxes
|
|
52
|
+
|
|
53
|
+
7. Check local lane coverage with `locus_lane_availability` using the exact address; tax-payment status is not nationally wired.
|
|
54
|
+
8. Where covered, call `locus_tax_payment_status`, then `locus_tax_calendar` and `locus_tax_sale_calendar`.
|
|
55
|
+
Read each live input schema; do not guess a parcel ID, county, payment status, balance or delinquency date.
|
|
56
|
+
A missing, unsupported or failed balance read is not a zero balance or proof of no delinquency.
|
|
57
|
+
9. Call `locus_owner_programs` for the same jurisdiction. Surface only source-returned deferral, installment and hardship rows, including senior deferrals where listed.
|
|
58
|
+
Explain the program facts and application source. Ask the tax office or program administrator what documents and dates apply.
|
|
59
|
+
Never decide that the owner qualifies, recommend a legal action, or promise that applying pauses collection.
|
|
60
|
+
|
|
61
|
+
## Answer and completion
|
|
62
|
+
|
|
63
|
+
- Give choices, never a verdict. Pair each concern with a feasible next step, the named agency or business contact, and a source-backed date.
|
|
64
|
+
If the date is unknown, say who can confirm it and when the caller can ask; do not invent a deadline.
|
|
65
|
+
- State what is known, what is unknown, and how the unknown can be checked. Keep factual dates separate from any caller-chosen follow-up date.
|
|
66
|
+
- Use calm words, no alarm wording or fear imagery. Offer early human help without waiting for a deadline.
|
|
67
|
+
Offer a calendar follow-up only if the caller wants it; it does not authorize a subscription, payment or automatic action.
|
|
68
|
+
- Cite each source and its checked/retrieved date. `fetchedAt` is not a source-update date.
|
|
69
|
+
- Never predict foreclosure, give legal or financial advice, screen a borrower, judge eligibility, or tell someone to stop paying.
|
|
70
|
+
- Finish **DONE** when the caller has agency options (or an honest unavailable/empty fallback), verified or portal-only process pointers, relevant fact cards and tax-program choices, and one concrete question for the counselor, servicer or tax office.
|
|
71
|
+
Use **DONE_WITH_CONCERNS** for coverage gaps or unverified pointers. Use **BLOCKED** if a required source is unavailable and no useful official handoff can be given.
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: locus-property-tax-protest
|
|
3
3
|
preamble-tier: 1
|
|
4
|
-
version: 1.
|
|
4
|
+
version: 1.2.0
|
|
5
5
|
description: Use when an owner or their agent wants to contest a property-tax assessment for one US address and needs the deadline, the cited evidence, the filing steps and an outcome baseline from Locus tools.
|
|
6
6
|
triggers:
|
|
7
7
|
- protest my property taxes
|
|
@@ -23,6 +23,9 @@ hearing. Never let a Locus output be presented as "you are over-assessed", "you
|
|
|
23
23
|
"your value should be X" or "you will win": Locus does not produce those statements and neither
|
|
24
24
|
may you on Locus's behalf. Report record facts and arithmetic, attribute every number to its source.
|
|
25
25
|
|
|
26
|
+
**How to speak:** follow "How to speak with owners, sellers and buyers" in the `locus-agent-tools`
|
|
27
|
+
skill (https://api.locus.report/.well-known/skill.md), including its 988 crisis guard.
|
|
28
|
+
|
|
26
29
|
Inputs you need from the owner before spending money: the street address; the noticed (appraised
|
|
27
30
|
or assessed) value and the date printed on the notice; whether the home is the owner's primary
|
|
28
31
|
residence; the tax year. Do not collect or forward Social Security numbers, account numbers or
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: locus-seller-readiness
|
|
3
|
+
preamble-tier: 1
|
|
4
|
+
version: 1.2.0
|
|
5
|
+
description: Use when an owner who plans to sell one US property, or their agent, wants a pre-listing check of disclosure law, open permits, code cases, flood status, district levies and closing-tax arithmetic from cited Locus records.
|
|
6
|
+
triggers:
|
|
7
|
+
- getting ready to sell my house
|
|
8
|
+
- pre-listing checklist
|
|
9
|
+
- seller disclosure
|
|
10
|
+
- what do I have to disclose
|
|
11
|
+
- open permits before listing
|
|
12
|
+
- lead paint disclosure
|
|
13
|
+
- transfer tax when selling
|
|
14
|
+
allowed-tools: Bash Read AskUserQuestion
|
|
15
|
+
license: MIT
|
|
16
|
+
---
|
|
17
|
+
# Locus seller-readiness workflow
|
|
18
|
+
|
|
19
|
+
Locus supplies pointers to official disclosure law and the cited public records a buyer, lender
|
|
20
|
+
or inspector is likely to find. The owner and their agent or attorney decide what to disclose,
|
|
21
|
+
what to fix and the asking price. Never let a Locus output be presented as "you must disclose X",
|
|
22
|
+
"this is safe to list", "the house is worth Y" or "you are compliant". Locus does not produce
|
|
23
|
+
those statements and neither may you on Locus's behalf. Report record facts with their dates and
|
|
24
|
+
sources, and end each finding with the next question to ask.
|
|
25
|
+
|
|
26
|
+
**How to speak:** follow "How to speak with owners, sellers and buyers" in the `locus-agent-tools`
|
|
27
|
+
skill (https://api.locus.report/.well-known/skill.md), including its 988 crisis guard.
|
|
28
|
+
|
|
29
|
+
Inputs you need from the owner before spending money: the street address, the state, and roughly
|
|
30
|
+
when they plan to list. Do not collect names of occupants, phone numbers, account numbers or
|
|
31
|
+
narratives about past tenants.
|
|
32
|
+
|
|
33
|
+
## 1. Disclosure duties (free)
|
|
34
|
+
|
|
35
|
+
1. `locus_seller_disclosure_pointers` with `{ address }` or `{ state }`.
|
|
36
|
+
- `statePointer.status: "verified"`: quote the citation, the official URL, the regime
|
|
37
|
+
(`statutory_form` or `statute_without_form`) and `namedItems`. An empty `namedItems` list
|
|
38
|
+
means read the official text; it does not mean nothing is listed.
|
|
39
|
+
- `statePointer.status: "not_verified"`: Locus has not checked a statute for this state. Give
|
|
40
|
+
the official portal pointer and say so. Do not describe the state as having no disclosure law.
|
|
41
|
+
- `available: false` (`out_of_coverage`, `input_too_coarse`, `jurisdiction_mismatch`,
|
|
42
|
+
`source_unavailable`): report the status and ask for a two-letter state or a specific address.
|
|
43
|
+
2. `locus_parcel_lookup` with the address for the recorded year built. If the record shows a
|
|
44
|
+
year before 1978, list the `federalPointers` (42 U.S.C. 4852d, 40 CFR 745 subpart F, 24 CFR 35
|
|
45
|
+
subpart A) as rules whose scope covers pre-1978 housing, subject to their exceptions. If the
|
|
46
|
+
year built is missing, say it is unknown; never treat a missing year as post-1978.
|
|
47
|
+
|
|
48
|
+
## 2. Open permits (free, then paid with approval)
|
|
49
|
+
|
|
50
|
+
3. `locus_permit_rules` for the jurisdiction: the permit authority, its portal and which work
|
|
51
|
+
needs a permit or a final inspection.
|
|
52
|
+
4. With the owner's approval of the price, paid `locus-permit-closeout-check` for the exact
|
|
53
|
+
parcel: permit status and the final or closeout fields the source publishes. Report open or
|
|
54
|
+
expired permits as record facts with their dates and permit numbers. Whether old work was
|
|
55
|
+
permitted is a question for the permit office, not a Locus finding.
|
|
56
|
+
|
|
57
|
+
## 3. Code cases (free)
|
|
58
|
+
|
|
59
|
+
5. `locus_parcel_code_cases` with the address or parcel id. Report each case's status, dates and
|
|
60
|
+
source link. Coverage is limited; an `out_of_coverage` or empty result is not proof that no case
|
|
61
|
+
exists. Point the owner to the local code-enforcement office for a records request.
|
|
62
|
+
|
|
63
|
+
## 4. Flood (free)
|
|
64
|
+
|
|
65
|
+
6. `locus_flood_zone` for the effective FEMA zone, base flood elevation and floodway fields.
|
|
66
|
+
7. `locus_flood_map_change_notices` for the county: proposed or final map revisions and their
|
|
67
|
+
comment or effective dates. A pending notice is not a change to this parcel's zone; say which
|
|
68
|
+
panel or community it names and that the owner should read the notice.
|
|
69
|
+
|
|
70
|
+
## 5. District levies (free)
|
|
71
|
+
|
|
72
|
+
8. `locus_taxing_districts` and `locus_special_district_levy` for the address: the districts on
|
|
73
|
+
the bill and any special assessment or levy a buyer will inherit. Report amounts and years as
|
|
74
|
+
the source gives them. `locus_special_district_levy` covers Texas TCEQ districts only; outside
|
|
75
|
+
Texas, or when the result is empty, ask the county tax office or title company about special
|
|
76
|
+
assessments.
|
|
77
|
+
|
|
78
|
+
## 6. Tax proration and transfer tax (free, then paid with approval)
|
|
79
|
+
|
|
80
|
+
9. `locus_tax_calendar` for the county: bill dates, due dates and the delinquency rule, so the
|
|
81
|
+
owner and closing agent know which tax period the proration covers.
|
|
82
|
+
10. With the owner's approval of the price, paid `locus-piti-transfer-tax-calculator` with the
|
|
83
|
+
owner's assumed sale price and closing date. The price is the owner's input, never a Locus
|
|
84
|
+
estimate. Label every figure as arithmetic over the owner's assumptions and the cited schedule.
|
|
85
|
+
|
|
86
|
+
## 7. Service-line material (free)
|
|
87
|
+
|
|
88
|
+
Locus reports what the utility has published. It is not an inspection, and "unknown" is never
|
|
89
|
+
"non-lead".
|
|
90
|
+
|
|
91
|
+
- `locus_water_systems` for the address: each serving system's `serviceLineInventory`, the EPA
|
|
92
|
+
system-level counts of lead, galvanized-requiring-replacement, lead-status-unknown and
|
|
93
|
+
non-lead lines, with the reporting period. These counts describe the whole system, not this
|
|
94
|
+
address.
|
|
95
|
+
- `locus_service_line_material` with `{ address }`: in California, the utility-reported
|
|
96
|
+
system-side and customer-side material for the address (`systemOwnedMaterial`,
|
|
97
|
+
`customerOwnedMaterial`), with basis, date and source. `no_matching_record` is not a non-lead
|
|
98
|
+
finding. Outside California it returns `out_of_coverage`.
|
|
99
|
+
- Where the verified state row names lead service lines (Iowa: Iowa Code 558A.4, as amended by
|
|
100
|
+
2025 Iowa Acts ch. 144, from January 1, 2026), report the system-level counts from
|
|
101
|
+
`locus_water_systems` and point the seller to the utility's published service-line inventory
|
|
102
|
+
for the address. What the disclosure form must say is a question for the seller's agent or
|
|
103
|
+
attorney.
|
|
104
|
+
|
|
105
|
+
## Completion
|
|
106
|
+
|
|
107
|
+
The owner has: the disclosure-law pointers with their verification status; the federal lead-paint
|
|
108
|
+
pointers when the record shows pre-1978 construction; open-permit and code-case records with dates
|
|
109
|
+
and sources; the flood zone and any pending map notice; the districts and levies on the bill; and
|
|
110
|
+
the tax-calendar facts plus any approved closing arithmetic. Every statement traces to a Locus
|
|
111
|
+
citation or to an input the owner gave you, and each finding ends with the next question to ask
|
|
112
|
+
the owner's agent, attorney, permit office or utility.
|