Add Object B and self-growth canons with Cursor ledger rules; refresh connectivity and VPN runbooks.

Track day metrics/anamnesis HARD rules under .cursor/rules and personal docs so each screening updates days/{KIN}, dynamics, and big-data ledger.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
ahauimix
2026-07-26 10:22:56 +08:00
parent 4bc9629a09
commit 0238aa7c02
214 changed files with 121312 additions and 388 deletions

View File

@@ -1,17 +1,38 @@
# Стабильная настройка: Android-хотспот + Mac + Joplin
# Стабильная настройка: Joplin Mac ↔ телефон
Без облака и без VPN. Mac — WebDAV (rclone), телефон — клиент по HTTP в одной LAN (обычно **хотспот Android**).
---
## Важно: `.local` с телефона **не работает**
## Схема
`http://eternals.local:8080` резолвится на **Mac**, но **Android, раздающий хотспот, не умеет** резолвить `.local` имён **подключённых** клиентов (Mac). Запросы до rclone не доходят.
| Устройство | WebDAV URL |
|------------|------------|
| **Mac** | `http://127.0.0.1:8080` (никогда не менять) |
| **Телефон** | `http://<подсеть>.100:8080` — из `joplin-webdav-status.sh` |
**Рабочая схема:** alias **`*.100`** на `en0` + URL `http://<подсеть>.100:8080`.
На Mac **primary IP** WiFi = `*.100` через `networksetup -setmanual` (не ifconfig alias). Android маршрутизирует к **primary**; alias `.100` телефон часто не видит.
| Устройство | URL |
|------------|-----|
| Mac | `http://127.0.0.1:8080` |
| Телефон | `http://10.74.21.100:8080` (подсеть меняется → см. ниже) |
`.local` / mDNS **с Android-хотспота не работает** — только IP.
---
## Перед каждым синком (чеклист)
1. **Mac на WiFi хотспота этого телефона** — не домашний WiFi (отключить auto-join домашней сети).
2. На Mac:
```bash
./docs/apps/joplin/scripts/joplin-ensure-sync.sh
```
3. В выводе: `static IP: OK`, rclone слушает `:8080`.
4. **Телефон:** URL `http://<подсеть>.100:8080` — сначала проверить в **браузере** (логин за 23 сек), потом Joplin → синк.
5. В `~/Library/Logs/joplin-webdav/rclone.log` — `GET`/`PUT from <IP шлюза/телефона>`.
Переход на **домашний WiFi** (без Joplin с телефона):
```bash
./docs/apps/joplin/scripts/joplin-hotspot-alias.sh dhcp
```
---
@@ -19,37 +40,75 @@
```bash
./docs/apps/joplin/scripts/joplin-webdav-install.sh
bash ./docs/apps/joplin/scripts/joplin-android-hotspot-setup.sh install
./docs/apps/joplin/scripts/joplin-hotspot-alias-install.sh # LaunchAgent
./docs/apps/joplin/scripts/joplin-hotspot-alias-install-sudo.sh # sudo без пароля
```
На телефоне — URL из вывода (`joplin-hotspot-alias.sh status`).
Автоподнятие alias после reconnect:
На телефоне в Joplin → WebDAV — URL из:
```bash
./docs/apps/joplin/scripts/joplin-hotspot-alias-install-sudo.sh # sudoers, без пароля
./docs/apps/joplin/scripts/joplin-webdav-status.sh
```
---
## После reconnect
## После reconnect / смены подсети
1. Alias поднимается LaunchAgent (если sudoers установлен)
2. Проверка: `./docs/apps/joplin/scripts/joplin-webdav-status.sh`
3. Если подсеть **та же** (`10.74.21.x`) — URL на телефоне **не менять**
4. Если подсеть **сменилась** (`10.219``10.74`) — **один раз** новый URL из `status`
```bash
./docs/apps/joplin/scripts/joplin-ensure-sync.sh
```
Интернет пропал: `bash .../macos-hotspot-network-recover.sh recover`
| Ситуация | URL на телефоне |
|----------|-----------------|
| Та же подсеть (`10.121.169.x` → `10.121.169.x`) | **Не менять** |
| Подсеть сменилась (`10.74.21.x` → `10.121.169.x`) | **Один раз** новый URL из `status` |
| Mac и телефон в одной домашней WiFi | `http://192.168.1.100:8080` (пример) |
| Mac на домашнем WiFi, телефон на мобильном | **Синк невозможен** — Mac к хотспоту телефона |
Если `static IP: MISSING`:
```bash
./docs/apps/joplin/scripts/joplin-hotspot-alias.sh repair
```
Сеть «умерла» после reconnect хотспота:
```bash
bash /Users/eternal/code/local_machine/docs/connectivity/scripts/macos-hotspot-network-recover.sh recover
```
---
## Почему URL иногда меняется
## Почему десктоп «синкается», а телефон — нет
Android выдаёт **разные подсети** (`10.219.227.x`, `10.74.21.x`). Без Tailscale/VPN **нельзя** иметь один HTTP-URL при любой подсети с телефона-хотспота. Фиксированный **хвост `.100`** + автоподнятие alias минимизируют ручную работу.
Mac ходит на **`127.0.0.1:8080`** — всегда работает. Телефон зависит от:
1. **Одна сеть** — Mac и телефон в одной LAN
2. **Primary `.100`** — `static IP: OK` в status
3. **URL на телефоне = текущая подсеть** — не старый `10.74.21.100`
4. **rclone.log** — есть `GET`/`PUT from <IP>`
Joplin на Mac **скрывает** ошибки — смотреть `rclone.log`, не только UI.
---
## Подсети меняются
Без VPN нельзя иметь **один** URL при любой подсети. Фиксированный **хвост `.100`** минимизирует правки: меняется только префикс (`10.74` → `10.121` → `10.219`).
---
## История рабочих подсетей
| Дата | Подсеть | URL телефона |
|------|---------|--------------|
| 2026-06-09 | `10.219.227.x` | `http://10.219.227.100:8080` (setmanual) |
| 2026-06-19 | `10.74.21.x` | `http://10.74.21.100:8080` |
| 2026-07-04 | `10.121.169.x` | `http://10.121.169.100:8080` — **проверено, синк OK** (setmanual) |
---
## Связанное
- [RUNBOOK.md](./RUNBOOK.md)
- [RUNBOOK.md](./RUNBOOK.md) — диагностика
- [HOTSPOT_NETWORK_EMERGENCY.md](../../HOTSPOT_NETWORK_EMERGENCY.md)