Repository navigation
Seed the region tree at counties, and let locals grow it - #25
Merged
Merged
Conversation
The tree now follows one rule, written into the YAML header, README and CONTRIBUTING: a place is a community first. County and city lines usually line up with communities and are the usual edge; where they don't, the community wins. RF propagation and repeater density shape the edges, and depth grows down — a place gains children only once it has the repeaters to carry them, since adding a level later breaks nothing and removing one leaves dead names on hardware. Judged that way, against a week of CoreScope node data: - San Francisco is one place. East SF and West SF were compass halves of one city and county, not communities. 46 repeaters, so a split could come back along neighbourhood lines. - Napa City and Upvalley merge into Napa Valley: one valley, one county, 13 repeaters. - Lake Tahoe is one place, Truckee included: one basin, one community across three counties, no observer data to argue for more. - Imperial County is one place. People say "the Imperial Valley" for the whole valley floor, and 4 repeaters could not carry four scopes. - Central Valley loses its North / Mid / South Valley level. Those were compass thirds, "North Valley" means Chico and Redding to most people, and at 12, 33 and 34 repeaters none could carry a scope. The towns sit directly under the region, as North California's do, and the region claims all eight valley counties on the map. Smaller fixes on the way: Gold Country no longer claims Sierra County (its one place is under North California) and its blurb starts at Placerville; Taft moves to Bakersfield; "Galt Junction" and "Dinuba Junction" go, since Galt and Dinuba are already listed where they belong. The README's counts, chain diagram and JSON sample were stale and now match the data. Retired codes: eastsf, westsf, sthelena, truckee, tahoecity, southlaketahoe, imperialvalley, northimperial, imperialborder, lowercolorado, cvnorth, cvmid, cvsouth. No redirects — scoped traffic is under half a percent of packets, so links and nodes using them are few. The detect test assumed every location choice is three levels deep; a place with no children now sits one level up, so it checks any level. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01JnzkHA1RFo6quPWccYgztw
Contributor
|
Preview: https://matkam.github.io/meshcore-settings/pr-25/ Served over HTTPS, so Web Serial and Web Bluetooth work — you can connect a Generated by Claude Code |
…g them The tree now stops at counties. County lines need no guesswork, and a town-level scope guessed from outside mostly sits empty: a scope only works once the repeaters around you carry it too. Finer areas come from the operators who run that mesh, through an issue or PR, and adding them later breaks nothing because every node keeps the parent name. 158 places become 59, and every code now names the whole area it covers. Groupings between region and county stay only where they are communities people name: North Bay and East Bay, Gold Country. Communities still override county lines where they cross them — Lake Tahoe, Yuba-Sutter, the Eastern Sierra. SLO County keeps its four local areas, the first branch grown the way the rest are meant to be. That also settles the open questions from the last change: El Dorado Hills is in El Dorado County, the too-broad Coalinga and Tehachapi areas are plain counties now, and the duplicate southbay code is gone with LA's local areas. Location detection matched a repeater against one point per place within 25 km, which works for a town and fails for a county — Ridgecrest is 150 km from Kern County's point. A position inside a place's own boundary now matches it outright, marked "inside". The map's dot hover looked only at ancestors for the shape a place stands on; a county that claims its own shape now lights itself. Yuba-Sutter gains the outline it always wholly contained. Docs follow: README, CONTRIBUTING, the YAML header and the page's own explainer describe the county seed, CONTRIBUTING's "Adding a local area" becomes "Proposing a finer area", the naming advice says a code describes its whole area, and the tags example no longer uses socal, which is a region. Tests move to county codes, and gain a Ridgecrest detection case. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01JnzkHA1RFo6quPWccYgztw
They're Midpeninsula by usage, next to Menlo Park and East Palo Alto, even though the county line puts them in Santa Clara. Search and the blurbs now follow the community; the map and location detection still follow the county shape, as on the Tahoe side. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01JnzkHA1RFo6quPWccYgztw
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The tree now stops at counties. Finer areas come from the operators who run each mesh, so we do less guessing.
Why:
#slo.The rule
Result: 158 places → 59
This also resolves the earlier open questions:
southbaycode is gone.Every place now has its own county shape on the map.
Every retired code and where it went (147 retired, 25 county codes added)
Codes in
mainthat no longer exist, under the place that now covers them. ¹ marks an old grouping that spanned more than one county and has no single replacement.delnortecrescentcityhumboldteureka,garberville,klamathtrinitytrinityweavervillemendocinoukiah,fortbragglakecountyclearlakesiskiyouyreka,mountshasta,tulelakemodocalturasshastaredding,burneylassensusanvillebuttechico,oroville,paradiseglennwillowssacramentocitrusheights,folsom,elkgroveyolowestsac,davis,woodlandplacersouthplacer,auburnnevadacountygrassvalleyeldoradoplacerville,edhtuolumnesonoratahoetruckee,tahoecity,southlaketahoeeastsierramammoth,bridgeport,bishop,lonepine,markleevillesfeastsf,westsfmarinsanrafael,millvalley,pointreyessonomasantarosa,petaluma,healdsburg,westsonomanapasthelenasolanofairfield,vallejocontracostawestcontracosta,walnutcreek,sanramon,eastcontracostaalamedaoakland,hayward,fremont,livermorepeninsulanorthpeninsula,sanmateo,redwoodcity,halfmoonbaysouthbaysanjose,paloalto,sunnyvale,cupertino,gilroysantacruz,montereymontereybay¹santacruzscottsvalley,watsonvillemontereysalinas,king,bigsursanbenitohollistersanjoaquin,stanislauscvnorth¹sanjoaquinstockton,lodi,tracystanislausmodesto,turlockmerced,madera,fresnocvmid¹mercedlosbanosmaderaoakhurstfresnosanger,coalingakingscounty,tulare,kerncvsouth¹kingscountyhanfordtularevisalia,porterville,threeriverskernbakersfield,delano,lakeisabella,tehachapi,ridgecrestsantabarbarasouthcoast,santaynez,lompocvalley,santamaria,cuyamaventuraoxnardplain,santaclarariver,ojaivalley,conejovalley,simivalleylosangeleslabasin,westside,sfv,sgv,pomonavalley,harbor,gateway,santamonicamtns,santaclarita,antelopevalley,catalinaorangecountyocnorth,occentral,occoast,ocsouth,occanyonsanbernardinocucamonga,sbvalley,sbmountains,victorvalley,centralmojave,morongobasin,coloradoriverriversidewesternriverside,perrisvalley,temeculavalley,sanjacintovalley,sanjacintomountains,coachellavalley,paloverdeimperialimperialvalley,northimperial,imperialborder,lowercoloradosandiegosdmetro,sdnorthcoast,sdnorthinland,sdeast,sdsouth,sdbackcountry,borregovalleypaloaltowas Palo Alto / Mountain View. Palo Alto and Stanford are now searched underpeninsula; Mountain View and Los Altos staysouthbay.Code changes
Docs
socal, which is a region.Earlier commit on this branch
This PR started as "Draw places around communities, and drop levels the mesh can't fill": merging SF, Napa, Tahoe and Imperial, and dropping Central Valley's middle level. The county seed supersedes most of that. That commit's community-first docs and its Gold Country and town-list fixes carry through.
Live codes affected
Of the 9 repeaters on CoreScope that report their regions, three carry codes retired here (data from 2026-10-24):
cvnorth,cvmid,modesto,turlock,losbanosstanislaus;mercedandmaderaalready on iteastcontracostacontracostalivermorealamedaTheir region and group names (
centralvalley,bayarea,eastbay) still work, so only traffic scoped to the retired codes stops reaching them. The other six use other naming schemes and are unaffected. As agreed, there are no redirects.npm run validatepasses, andnpm testpasses all 379 checks.🤖 Generated with Claude Code
https://claude.ai/code/session_01JnzkHA1RFo6quPWccYgztw