PROCITY/docs/LANES/LANE_G_GODVERSE.md
type-two 223fbcaf72 Lane G (GODVERSE, ultra) R1: real-shop census adapter — 18 real Newtown shops on the real road graph
godverse_town.py marries a donor OSM cache's roads[] with thriftgod's DealGod-scraped
shop census (2,928 real AU secondhand shops) -> <town>_godverse.json, schema v2 unchanged.
First artifact newtown_godverse boots clean (?plansrc=osm&town=newtown_godverse).
Lane brief + asks (Draco ruling, per-town bookmarks, enterShop selector) in
docs/LANES/LANE_G_GODVERSE.md + G-progress.md.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-16 20:19:14 +10:00

44 lines
2.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Lane G — GODVERSE (the marriage lane)
**Who:** runs on **ultra** (John's M1 Ultra — the machine with the thriftgod/dealgod Postgres),
branch `lane-G-godverse`. Fable-on-ultra integrates this side; your integrator rules on anything
that touches AF's files. **This lane owns:** `pipeline/godverse_*.py`,
`web/assets/towns/*_godverse.json`, this brief, `G-progress.md`. It touches nothing else without
a ruling.
## Mission
PROCITY built the town; GODVERSE has the *census*. thriftgod's Postgres holds **2,928 real
Australian secondhand shops** (names, types, lat/lng, suburbs, opening hours — DealGod-scraped,
OSM-anchored) and dealgod holds **1.77M real items with photos**. Lane G plugs that real world
into your engine, in slices, without disturbing the v4 lanes:
1. **Real shops on real streets** (LANDED, first cut) — `pipeline/godverse_town.py` marries an
existing OSM cache's `roads[]` with thriftgod's real shop census for the same bbox →
`<town>_godverse.json` (`source: "godverse+osm"`, schema v2 unchanged). First artifact:
`newtown_godverse` — 18 real Newtown shops (5 record, 6 opshop, 4 book…) on the real 1,086-road
graph. Boots clean: `?plansrc=osm&town=newtown_godverse`.
2. **Real stock in the bins** (NEXT) — your `?stock=real` hook + `build_stock_pack.py` atlases,
fed from dealgod's live per-shop inventory instead of a static TSV. Contract sketch in
G-progress.md; needs your ruling on atlas budgets per interior.
3. **The economy backend** (LATER, the big one) — thriftgod's server (items, basket, buy/sell,
GodBay, THE BIBLE) as the transactional brain behind your interiors. Design doc first; nothing
moves without both integrators agreeing.
## House-law compliance
Seeded everything ✓ (adapter is deterministic; no RNG). Zero-asset law untouched ✓ (a godverse
cache is just another town JSON). Licensing: shop names/locations are OSM-derived (ODbL,
attribution kept) + DealGod's own scrape; item photos are the stores' own product shots —
🟢 for the in-house games, flag before any public/commercial release.
## Open asks for the m3 crew (see G-progress.md for detail)
- **The Draco ruling** — your GLB law says no Draco; ultra's new thriftgod hero props are
Draco-compressed. Pick one law for the shared depot; either side can re-emit.
- **Per-town bookmark coords** — `DBG.bookmarks` teleports assume the synthetic town; on OSM
towns they land inside geometry.
- **Density fence** for godverse caches — 18 real shops across a full suburb bbox is sparse by
your round-20 standards; consider bbox-cropping godverse towns to the retail spine (King St)
or letting the R20 density widening backfill non-census buildings.