Commit graph

61 commits

Author SHA1 Message Date
daa8cb1748
Push geocoding down a layer
This makes it possible to always save address information from our
geocoder.
2026-03-04 18:29:52 +00:00
6959499d37
Add signal database schema 2026-03-04 14:58:43 +00:00
6a5a59f8b8
Merge aerial flyover and pool CSV row datatypes
They are extremely similar, having both was just extra work.
2026-03-04 14:52:34 +00:00
6aa7fa60b4
Add region (state) to address 2026-03-03 20:27:12 +00:00
a0eee3a95f
Rework mailer database schema, add UUID to mailers
At this point, I sent out our first test mailers for Delta.
2026-03-02 23:27:55 +00:00
ff2ec0ad14
Split out ability to upload flyover data from pool uploads
Tons of changes here, all in the name of quickly getting to where I can
create test compliance letters.
2026-03-02 18:49:02 +00:00
91fe244da8
Add data for handling parcel images 2026-02-28 22:54:39 +00:00
7b1ffbab12
Add new tables for storing parcel and address data 2026-02-26 18:18:33 +00:00
2bb4a134b2
Add centroid information when geocoding
I would use the boundary rect, but I'm getting a 500-level error from
stadia maps
2026-02-25 16:08:32 +00:00
7ea66dc02e
Add user account roles 2026-02-18 07:03:32 +00:00
5a7c9fd090
Move data out of import.district and in to organization
Then get the organization settings page to work again.

Tons of other stuff is broken now.
2026-02-17 05:33:12 +00:00
a65f1e0776
Fix up attaching errors to rows 2026-02-16 17:59:18 +00:00
ef569aef18
Save tags on pool rows, show errors in summary table 2026-02-16 16:38:04 +00:00
f859e372c6
Fill in correct data about the district 2026-02-16 15:26:41 +00:00
a1cc2dbaff
Add district setting page and display of district boundary 2026-02-16 15:03:26 +00:00
2bc0e18b9e
Actually finish uploaded files 2026-02-14 05:40:27 +00:00
bdd862e649
Show actual information on oauth integration setting page 2026-02-13 21:14:46 +00:00
e40fe55eaf
Modify email subscription table to drop district ID
I don't have time to work out all the behavior, this is just to get to
where I can release
2026-02-10 05:12:42 +00:00
d93cdbef41
Drop district_id from subscriptions 2026-02-10 04:59:27 +00:00
b25daf12fa
Add table for holding subscriptions from users 2026-02-10 04:31:57 +00:00
d06b8f7949
Add mode data to pool upload rows, move to fileupload schema
This allows users to review the data before committing it to the
database
2026-02-09 19:03:27 +00:00
135ad2b73e
Do file upload, show list of uploads, do initial processing. 2026-02-09 18:25:44 +00:00
f9c8f37cec
Add organization to file upload
So everyone in the org can see it.
2026-02-08 05:00:14 +00:00
6716bc68c9
Make file uploads of CSV actually save to disk 2026-02-08 01:44:44 +00:00
57191fa222
Alter report submission page to request reporter name and consent
This also adds the new mechanism for handling notifications on reports
2026-02-06 15:39:49 +00:00
9328e7a2f8
Properly record and display pool reports 2026-02-05 21:43:29 +00:00
5fc0f9fa3d
Update storage and display of nuisance report 2026-02-05 16:56:36 +00:00
9d7ca81508
Make 'view in browser' on emails work correctly 2026-02-02 19:34:37 +00:00
d28e3e2ccc
Re-add missing Geom4326 column
I removed it on accident when I destroyed the entire database and forgot
it has to be created by hand.
2026-01-31 22:28:17 +00:00
527f6a5628
Store images with nuisance reports 2026-01-31 22:14:46 +00:00
a9b0a55f20
Create report platform layer
Rework phone subscription at the database layer so that we have a
seprate phone status and subscriptions to district communications.
2026-01-31 20:08:08 +00:00
bf8c4ca6da
Prune data layer on nuisance report
After this, we can successfully POST the report.
2026-01-31 16:14:19 +00:00
1fbe41b725
Clean out a bunch of unused nuisance report fields
Feedback had us simplify the form significantly
2026-01-31 15:39:14 +00:00
981f444609
Add support for continuing background text jobs on subscription 2026-01-29 22:20:03 +00:00
a68b8781e7
Add ability to make LLM agent forget the conversation history
This is extremely useful for testing.

In order to do this I needed to actually deploy the migration to a bob
fork so I could start to add support for behaviors I really want.
Specifically the ability to search for ids in a slice.
2026-01-27 18:44:02 +00:00
b8e7b9b7fd
Working LLM responses and Twilio status tracking
The responses aren't good, but they do exist.
2026-01-27 14:29:55 +00:00
e8e840ec44
Make username unique, make is_subscribed nullable 2026-01-26 21:11:31 +00:00
adc99e8871
Add ability to delay text message sending 2026-01-26 16:10:30 +00:00
c0b6398de2
Overhaul text messaging system to be like emails
It's a better system for organization and makes it so we can have better
logs about what gets sent.
2026-01-25 18:47:22 +00:00
f549243c10
Render organization logos by 'slug'
This avoids leaking org IDs in the URL, and makes it possible to have a
district-specific root mock that works in both dev and prod.
2026-01-24 19:13:55 +00:00
196792810b
Overhaul email sending system
Add logging and saving templates to the database for historical
accuracy.
2026-01-23 20:36:16 +00:00
61d8d14fc2
Bunch of work around assigning reports to districts
I added some DB schema to track logos and to relate reports to
organizations. I reworked how GPS data comes from EXIF data on images
because it wasn't working for JPEGs. I might have broken PNGs in the
process. Also made the config options for domain names more
standardized.
2026-01-22 03:27:32 +00:00
f4a88623af
Overhaul system for handling text messaging
Move away from "SMS" as the operative word - we're going RCS.
Move all comms processing to a separate goroutine
Rename the DB tables
2026-01-21 03:30:03 +00:00
842e6cff43
Move comms work to background goroutine
This is a sort of random checkpoint of work
 * add schema for tracking messages sent to DB
 * add terms of service and privacy policy for RCS compliance
 * standardize some things about background workers
 * update some missing stuff from generated DB code
2026-01-20 17:10:22 +00:00
079d20c086
Extract EXIF data from images
This required a schema change and actually dumps all existing photo data
from the public reports page. That's probably fine since it's not
deployed to any customers so all data is currently test data.
2026-01-16 20:16:58 +00:00
684c424131
Move imported districts to its own schema, add ref from organization
This will make it possible to assign reports to an organization
2026-01-16 14:43:26 +00:00
948f967a16
Add aggregation map for traps
This also makes the first time I've done a Mapbox map within a web
component. It's not officially supported according to:

https://github.com/mapbox/mapbox-gl-js/issues/12796

but I found a codepen that had a working example:

https://codepen.io/keichan34/pen/ZEKqeEj?editors=1111
2026-01-15 20:25:00 +00:00
06140a9062
Remove bob submodule, add arcgis.user
I had to remove the submodule because of the go bug at
https://github.com/golang/go/issues/77196
I found the bug because of a bug in bob itself
https://github.com/stephenafamo/bob/issues/610
This was because I'm trying to save data about the Arcgis user for use
in determining if I can set up hooks to avoid the polling for data
changes.
2026-01-15 19:20:39 +00:00
a4c0e367a8
Make organization.name not-nullable, consolidate org in dash context 2026-01-14 21:50:47 +00:00
00fd676adc
Add district table for california districts. 2026-01-13 19:47:19 +00:00