골목가게와 맛집은 두 절이 아니라 한 명부의 두 물음이다.
000359가 이미 DB에 새겨 두었다 — “맛집과 동네골목이 한 명부를 두 렌즈로 본다.
두 렌즈의 차이는 거르는 축 하나뿐이고, 정렬은 둘 다 햇수다.”
화면은 그 구조를 따라간다. 그래서 정문의 절은 하나만 늘고,
기존 「우리 골목 가게」는 재료를 명부로 갈아입는다.
왼쪽이 신설되는 맛집 절(front_door_tastes — 라이브), 오른쪽이
재료를 갈아입은 「우리 골목 가게」(markets 본보기 8장 → 명부 골목 렌즈).
id는 shops 그대로다 — 쿠키에 박힌 계약이라, 사용자가 정한 순서·숨김이 한 명도 안 깨진다.
⚠두 절은 각자 출처 줄을 제 발치에 갖는다 — 절 순서는 사용자의 것이라 이웃 보장이 없다.
두 폰은 자리의 두 켜를 함께 보인다: 왼쪽은 자리를 모르는 폰(시·군·구 낙하산),
오른쪽은 동을 아는 폰(쿠키 ubell_place — 오너 축 내림 "접속한 동을 표현"의 이행).
폰 — 맛집 절 (고정 6줄 · 통계는 실측)
우벨은 맛을 매기지 않습니다. 한자리에서 오래 연 순서로.
지방행정 인허가 데이터 · 2026년 8월 기준.
우벨의 가게가 아니라 행정 기록입니다.
절 머리는 「남구 맛집」 — 사람들이 치는 말이다. 「한자리」는 상인방 문장 속에 산다.
11차 §6-4의 label '한자리'는 이 목업이 정정한다(설계 §1-1).
폰 — 「우리 골목 가게」 재료 교체 · 동을 아는 폰 (통계는 실측 · 이름은 견본)
동네 가게를 주소대로 폈습니다 — 양림동부터, 오래 연 순서로.
지방행정 인허가 데이터 · 2026년 8월 기준.
우벨의 가게가 아니라 행정 기록입니다.
★머리의 동은 쿠키 ubell_place에서 온다 — 위치 권한 팝업은 뜬 적이 없다.
양림동의 그 밖 업종은 실측 36곳이라 절이 동만으로 찬다(문턱 6 = 절의 길이).
둘째 행(사직이용원)이 침묵의 견본이다 — permit_trusted=false면 RPC가
years를 null로 주고, 화면은 그 자리에 아무것도 안 그린다. “날짜 미상” 배지도 없다 —
침묵에 이름표를 붙이면 그것도 말이다.
markets 20곳 · 진짜 가게 0 · 전부 본보기. 본보기 문패 8장이 정문의 밀도를 대신 서고 있다 — 절 전체가 거짓 밀도다.
명부 골목 렌즈 — 남구만 비먹는 업종 영업중 수천, 전역 20,656곳.
문패 건 집(market_slug)만 색이 켜지고 /madang/market/[slug]로 열린다.
오늘 stamped는 전 지역 0 — 회색 사이에서 색이 켜질 자리가 처음 생겼다.
shops(markets)와 골목 절(명부 stamped 행)에 두 번 서게 된다 —
커밋 3448856 「아파트: 들어가는 문이 둘로 겹쳤다」의 재발이다.
물건의 세계로 가는 정문의 문은 market 절(직거래 장)이 그대로 갖고 있어 길은 끊기지 않는다.
업종(is_eating_trade)은 갈림의 그림자다. 사람은 “남구 맛집”은 검색하지만
“남구 미용실”은 검색하지 않고 걸어가며 두리번거린다. 그 차이가 화면의 머리를 가른다.
| 맛집 | 골목가게 | |
|---|---|---|
| 물음 | “어디 갈까” — 목적지 탐색 | “우리 동네에 뭐가 있나” — 생활 반경 |
| 누가 | ★그 동네에 안 사는 사람도(담양 가는 길에 “담양 맛집”) | 사는 사람과, 제 가게 이름을 찾아보는 주인 |
| 주소 | 경로가 곧 검색어 — /tastes/광주-남구 | 한 지면 + 렌즈 상태 — /alley/광주-남구?k=salon |
| 갈래 칩 | sub_kind — 한식 922 · 치킨·호프 341 · 카페 316 · … | trade_kind — 미용실 · 이발소 · 세탁소 · 의원 |
| GPS 문 | 발치에 조용히 — 담양 검색자는 광주에 앉아 있다 | ★머리에 — 물음 자체가 “근처”다 |
| 같은 것 | 한 명부 · 정렬은 햇수 · 도장은 주인만 · 행은 3차 없음 · 출처 줄 의무 — 000359가 표 층에서 이미 잠갔다 | |
⚠?k=는 11차 §7-1(질의 기각)과 모순이 아니다 — 그 기각의 근거가 “존재 이유는 검색”(색인)이었고,
골목 지면의 존재 이유는 검색이 아니라 생활이다. 그러면 2차의 원칙 “상태까지 URL에”가 그대로
돌아온다(산토끼의 /org?k= 선례). 경로 이름이 golmok이 아닌 이유:
그 이름은 이미 markets 세계의 코드다(golmok.ts·golmokHost.ts) —
이름 겹침은 문 겹침의 앞마당이다.
오너 축 내림(2026-08-15): “우벨을 접속한 동의 현재 위치를 표현해 주면 되는 것 아니냐.”
우벨은 이미 묻지 않고 안다 — 쿠키 ubell_place(광주|남구|양림동)와
/api/geo/reverse가 라이브다. 판정: 동은 지면을 낳지 않고, 지면 안의 첫 줄과
앞세움이 된다. 선례는 골목에 라이브다 — GolmokLens의 “필터가 아니라 정렬”.
먹는 곳 178 · 그 밖 36 · 20년 넘은 곳 27. 절이 동만으로 찬다. ★그리고 닫힌 곳 문장이 동에서도 선다 — 양림동 228 닫음 vs 214 영업중. 영업중보다 많다. 이 문장은 동으로 좁힐수록 무거워진다.
전역 1,294개 동 중 732개가 여섯 곳 미만이다. 그대로 동을 축으로 삼으면 시골 정문의 절이 통째로 비거나 두세 줄로 초라해진다 — 정문의 병이 정확히 빈 절이었다. 문턱은 임의 숫자가 아니라 절의 길이 그 자체 = 6: 동의 것을 먼저 다 놓고 나머지를 시·군·구에서 채우며, 머리가 말한다.
/tastes/[dong]빈 지면 732장을 낳는다. 사람이 치는 말의 몸통도 “남구 맛집”이지 동이 아니다 —
“양림동 맛집”이 실재하는 유명 동은 지면이 아니라 지면 안의 앞세움으로 답한다.
/tastes/[region](주소가 곧 검색어)은 유지된다.
“정렬은 영원히 햇수”가 막는 것은 돈·발걸음·인기가 순서를 사는 것이다.
자리는 살 수 없는 사실이고, 더 가는 낱알(GPS 거리순)을 이미 같은 근거로 허용했다.
단 밝힌다 — 조용한 앞세움은 그때부터 개인화다(6차의 선).
RPC 계약: p_dong은 필터가 아니라 정렬 머리 (dong_raw = p_dong) desc.
/alley/광주-남구?k=salon 새것
h1이 렌즈를 따라 정직하게 바뀐다 — ?k=salon이면 「광주 남구 미용실」.
통계 넉 줄(923 · 152 · 595 · 1972)은 실측이다. 데스크탑은 목록형 단일 780(§12 —
고르는 화면이라 신문형 3기둥 기각).
폰 — 2차 (위치 주기 전 — 기본 상태)
우벨은 가게를 평가하지 않습니다.
한자리에서 오래 연 순서로 보여드려요.
남구에 문 연 미용실 923곳. 그중 20년을 넘긴 곳 152곳.
지방행정 인허가 데이터 · 2026년 8월 기준. 우벨의 가게가 아니라 행정 기록입니다.
데스크탑 — 목록형 단일 780 (★셋째 행: 문패 켜진 상태의 견본 — 오늘 stamped는 전 지역 0)
우벨은 가게를 평가하지 않습니다. 한자리에서 오래 연 순서로 보여드려요 — 순서를 정하는 것은 돈이 아니라 날짜입니다.
남구에 문 연 미용실 923곳. 그중 20년을 넘긴 곳 152곳. 가장 오래된 곳은 1972년부터입니다.
지방행정 인허가 데이터 · 2026년 8월 기준. 우벨의 가게가 아니라 행정 기록입니다.
⚠넷째 행(백운미용실)에는 길찾기도 없다 — 좌표 없는 8% 행이다.
주소로 짐작한 길찾기는 molit-public-data의 그 사고다(“주소를 짐작하면 틀린다”).
모르는 것마다 그 조각만 침묵하고, 행은 선다.
11차 §4-1-2의 근거는 좌표의 부재가 아니라 예의였고, 예의는 좌표가 생겨도 그대로다. 자리의 표현은 세 켜다 — ① 쿠키의 동(기본 · 묻지 않는다 — ②-보) · ② GPS(누른 사람만 · 미터 거리순) · ③ 아무것도 없으면 시·군·구 낙하산. 권한을 구걸하는 켜는 없다. 문을 누르는 순간 브라우저가 묻는다 — 묻는 손가락이 사용자의 것이 되는 것, 그것이 구현이다. 가운데가 허락한 사람의 화면 — 세 집과 거리·햇수는 2026-08-15 양림동 실측이다.
누르기 전 — 기본. 위치의 흔적이 0이다
정렬: 햇수. 동 이름이 자리를 말한다 — 위치 권한 팝업은 뜬 적이 없다.
허락한 사람 — 거리순 + 지도 띠 (실측: 양림동 500m)
거리와 햇수가 한 행에 함께 선다(establishments_near가 둘 다 준다).
메타포의 햇수 자리가 빈 것도 규칙 그대로다 — 모르면 침묵.
거부·실패한 사람 — 아무것도 부서지지 않는다
원래 목록 그대로 + 답 한 문장. GPS는 더하는 문이지 조건이 아니다.
frontPrefs.ts — v를 올리지 않는다, 병합을 고친다 새것
실측 하나가 판정을 정한다: normalize()는 raw.v를 아예 읽지 않는다.
“v를 올린다”는 검사 코드를 새로 짓고 사용자가 제 손으로 정한 order를 버리는 일이다 —
6차의 선(“사용자 지정은 그 사람이 말한 것”)을 새 절 광고하자고 지우는 셈. 게다가 일회용 망치다.
→ 삽입 자리를 존중하는 병합: 씨앗을 앞에서부터 걸으며 붓끝을 옮긴다 — 이미 있는 절을
만나면 붓끝을 그 자리로, 없는 절은 붓끝 바로 뒤에 끼운다.
불변식: 끼워 넣은 절은 씨앗에서의 앞 이웃 곁에 선다. 가게 세계를 맨 아래로 내린 사람에게는 맛집도 아래로 간다 — 버그가 아니라 그 사람의 말을 존중한 것이다. 이 수리는 앞으로의 모든 새 절에 한 번에 적용된다.
| 계약 | 값 |
|---|---|
SectionId | + 'tastes' — 'shops'는 id 유지(쿠키에 박힌 계약, 재료만 갈린다) |
SECTIONS | { id:'tastes', label:'맛집', hint:'별점 대신 햇수 — 한자리에서 오래 연 순서' } — 자리는 'jobs' 다음 · 'shops' 앞.'shops' hint 교체: '동네 가게의 문패' → '동네 가게를 주소대로 — 문패 건 집만 열려요' |
ANCHORS | 넣지 않는다 — 숨길 수 있어야 한다 |
SEEDS | 여섯 씨앗 모두 'tastes'를 'shops' 바로 앞에. 직군별 높이는 shops의 자리가 이미 갖고 있다(desk 2번째 · shop 3번째 · field 5번째 · worker/classroom 6번째 · pulpit 7번째) — 규칙 하나가 표 하나를 이긴다 |
★RPC에 골목 렌즈 값이 없다. tastes_list의 p_trade_kind는
null(맛집)·'전부'·특정 키 셋뿐 — “먹는 업종을 뺀 나머지”를 부르는 값이 없다.
establishments_near의 '먹는곳'도 짝이 없다. 골목 절·[전부] 칩이 이 값을 쓴다.
| # | 무엇 | 비고 |
|---|---|---|
| 1 | '골목' 렌즈 값 + front_door_alley(p_region, p_limit, p_dong) | 이게 먼저다 — 골목 절이 부를 것이 없다 |
| 1-1 | p_dong 앞세움 인자 — front_door_tastes·front_door_alley·tastes_list 정렬 머리에 (dong_raw = p_dong) desc + tastes_summary에 dong_open | ⚠필터가 아니라 정렬 — 거르면 시골 절이 빈다(②-보) |
| 2 | frontPrefs 병합 수리 → 'tastes' 추가 + shops hint 교체 | 순서를 바꾸면 새 절이 전원에게 맨 아래 — 죽은 화면 |
| 3 | 정문: 맛집 절 신설 + shops 절 재료 교체 | 출처 줄 각자 · 본보기 문패 은퇴(미결 ①) |
| 4 | /tastes/[region] (11차 순서표 4번 그대로) | 우리말 슬러그 · 사이트맵은 지역 단위 |
| 5 | /alley/[region] + ?k= 상태 | h1이 렌즈를 따라 바뀐다 |
| 6 | GPS 문 두 지면 + establishments_near 연결 | 실패 시 답 한 문장 — 아무것도 안 부서진다 |
| 7 | 「여기 사장님이세요?」 → /shop/open 씨앗(trade·name·region·개업일) | 이제 전 업종 — 의원 행에도 선다(규제는 trade_kinds가 방 안에서 안다) |
| 8 | 카카오맵 띠 + 행 길찾기 | 맨 뒤 — 지도 없이도 전부 성립한다. SDK 키는 오너 몫 |
/alley도 넣을지(맛집은 넣는다 — 골목은 존재 이유가 검색이 아니라 안 넣는 것이 제안) ·
④ 카카오맵 JS SDK 앱 키 발급·도메인 등록.
church)이 이미 있으므로, 종교시설
명부가 오면 절 신설이 아니라 그 절의 재료 문제로 먼저 판정한다. 문 겹침 사고의 세 번째 후보 자리다.
설계 문서: docs/design/ubell-front-tastes-alley.md · 형제:
ubell-tastes.md(11차 — 몸통) · ubell-front-custom.md(6차) ·
ubell-window-strategy.md(§12 · §13)