rdmsm4x-changelog-20260827-1708-amagansett-guide-venue-census
rdmsm4x-changelog-20260827-1708-amagansett-guide-venue-census
Expanded the private amagansett.app Guide from a 48-row synthetic seed directory to a reproducible, source-attributed 816-venue East End census, deployed it behind the existing Cloudflare Access gate, and verified the real live directory end to end.
Scope
- Host:
rdmsm4x - Canonical project:
/Users/richh/dev/sites/amagansett-app - Isolated writer worktree:
/Users/richh/dev/_handoff/codex-out/amagansett-guide-venues-20260827 - Branch:
codex/amagansett-guide-venues-20260827 - Base:
3930ab2e7744ef3b2457acb433612f72a1357a71 - Final HEAD:
fbd35e73ffafd40dabcf8967d3d1b16126b1a129 - Geography: Southampton through Montauk plus Shelter Island; 11 explicit ZIP codes and 12 Guide communities.
Files changed
- Inventory and refresh:
packages/data/guide-venues.generated.ts,packages/data/seed.ts,scripts/generate-guide-inventory.mjs,scripts/refresh-guide-inventory.sh,docs/guide-inventory.md. - Data contract and migration:
packages/core/guide.ts,packages/platform/types.ts,packages/platform/d1-repository.ts,packages/platform/memory-repository.ts,migrations/0009_guide_venue_census.sql. - API and edge:
worker/src/api.ts,worker/src/platform-api.ts,worker/src/platform-fragments.ts,workers/amagansett-guide-edge/src/index.ts. - Guide UI:
sites/guide/index.html,sites/guide/src/main.ts,sites/guide/src/site.css. - Tests: Guide inventory/search/edge/durable contracts, platform API/repository/migration/fragment tests, and approved-design browser fixture coverage.
- Project records:
README.md,ISSUES.md,SESSION-STATE.md,docs/GUIDE-VENUE-CENSUS-LAUNCH-RECEIPT-20260827.md. - Coordination:
/Users/richh/.agent-coordination/checkins/codex-rdmsm4x-amagansett-guide-venues-20260827.jsonmarked completed with shared paths released; sharedPROJECTS.mdmilestone dispatched to its active owner in message20260827-170534-E7975703.
Inventory result
- Total: 816 venues.
- Restaurant: 430; Breakfast: 8; Farm stand: 37; Convenience: 33; Market: 101; Bakery: 56; Coffee: 60; Seafood: 53; Bar: 33; Food truck: 5.
- All 816 remote rows have an address, an in-scope ZIP, non-empty valid provenance, and latitude/longitude.
- Eleven remote
guide-venuescoverage rows are uncapped. - Fifty-one institutional/private facilities were excluded.
- Bhumi Farms, Breadzilla, and standalone Dreesen’s Donuts were excluded for the documented current-source reasons.
- Balsam Farms was reconciled to 293 Town Lane, Amagansett, NY 11930; the conflicting NY retail record remains provenance, not a duplicate venue.
Commands and changes executed
- Ran
bash scripts/refresh-guide-inventory.shagainst current Overture, Suffolk County, New York retail-food, and New York farmers-market sources. - Ran focused Vitest acceptance tests, strict TypeScript, all four
Vite builds, the shared API Worker dry run, the Guide edge dry run, the
real-Wrangler Guide local contract, and the full
CI=1 npm run verifygate. - Queried the live D1 database before migration; it contained 48 Guide businesses.
- Exported the remote D1 database before mutation and restored the export into local SQLite for an integrity/count smoke test.
- Applied remote migration
0009_guide_venue_census.sql. - Queried the remote D1 database after migration and matched all category, community, ZIP, provenance, coordinate, and exclusion counts.
- Deployed the shared API Worker, then the Guide edge Worker.
- Authenticated browser QA caught a production-only 403 caused by
requiring
Originon safe same-origin GETs. Added a failing regression test, aligned Guide reads with the existing AK security model, preserved exact-Origin mutation checks, rebuilt, redeployed, and reverified live. - Sent the exact finished descendant point to Amagansett task
01a040e2-c41c-77c3-9c3c-a7c4f5586967for the separate AK public-read repair; no AK behavior was changed in this lane.
Verification evidence
- Fresh source refresh: 816 venues, stable category/community/ZIP counts.
- Vitest: 26 files / 179 tests passed.
- Strict TypeScript: passed.
- Guide, AK, Forst, and Preview builds: passed.
- Shared API Worker and Guide edge dry runs: passed.
- Real-Wrangler Guide local API/static contract: passed.
- Preview real-Wrangler contract: passed.
- Playwright: 30 desktop/mobile/interaction/accessibility scenarios passed.
- Staged secret scan: about 2.91 MB scanned, zero findings.
- Git whitespace check, shell syntax, and generator syntax: passed.
- Authenticated live Guide: 816 rows, 816 addresses, 816 map markers, 13 town choices, 438 dining-filter rows, 37 farm stands, 33 convenience stores, and 52 ZIP-11930 rows.
- Balsam live selection: 293 Town Lane, 11930, source link, one selected row, and one active marker.
- Cookie-free Guide and API probes:
302to Cloudflare Access. - Share root: hardened
404. - Misspelled
amgansett.app: DNS does not resolve; correct product hostname isamagansett.app.
Deployment identifiers
- API/share Worker:
5f5993fa-3e70-4761-ac24-7a8ba15bd10e, 100% active. - Guide edge Worker:
34219429-4e5d-4012-9742-dd5f2d03f410, 100% active. - Superseded intermediate Guide version:
34e5252a-b80b-4566-be25-81710910e341. - Pre-change API anchor:
2da0ab23-26df-40c1-9509-b37b631b6132. - Pre-change Guide anchor:
06eaa274-eb8d-48cc-85c6-b778f6e8e6db.
Backup and undo
- Pre-migration D1 export:
/Users/richh/dev/_migration/backups/amagansett-app/20260827-165117/amagansett-platform-before-guide-census.sql. - Backup mode: 600.
- Backup size: 2,926,771 bytes.
- Backup SHA-256:
bfed06bef410e6e3cb1ffd7bf58892307917f0561702b81f5aad2d49815c6041. - Restore smoke test: SQLite integrity
ok, with the expected 48 businesses and 48 place-source rows. - Worker rollback is available through the pre-change version IDs. Database restoration would overwrite current state and must only be done after preserving the current database and receiving explicit approval.
Outstanding owner actions
- Accept or integrate branch
codex/amagansett-guide-venues-20260827; the canonical checkout was deliberately not overwritten. - The active shared-index owner must integrate the dispatched
amagansett.app milestone into the canonical
PROJECTS.md; this task did not collide with that shared file. - Decide later whether the declared geographic scope should expand west of Southampton. Current completeness is strictly Southampton through Montauk plus Shelter Island.
- Keep live hours, menus, ordering, ratings, and continuous opening/closure adapters open until permitted, source-dated integrations are approved.
- Keep the Guide bundle/marker performance follow-up open for Production mode.