--- tags: - personal-os - database - runbook updated: '2026-10-14' --- # Браузер БД Personal OS **Проверено 14.10.2026:** GitHub, ситуации, work items и designs находятся в основной `personal_os` после подтверждённого переноса 17 таблиц с совпавшими хешами. 121 work item / 17 репозиториев, 105 в очереди; 79 проверенных PR, 215 точных Asana–PR связей; 16 сигналов и 39 явных gaps. Локальный агент вызывается отдельно, его результат остаётся кандидатом. [Приёмка в репозитории](/Users/admin/Developer/personal-os/planning/github-work-situations-2026-10-14.md). **Work items**: ручная связь с Asana, объединение контекста related repos, локальный учёт, исключение с причиной, отдельный вызов локального агента. **Tech designs**: задачи Asana и заметки Obsidian с версиями/hash; смысловой `draft_of` требует принятия. Новая Asana-задача сначала сохраняется локальным черновиком, затем создаётся отдельным действием из проверенного черновика. Сам агент внешних записей не делает. Содержимое внешних дизайн-документов пока не загружается. Локальный интерфейс для просмотра данных Personal OS на `http://127.0.0.1:4317`. ## Источник данных По умолчанию браузер использует PostgreSQL из корневого `config.json`: база `personal_os` на `localhost:5432`. Таблицы E1 находятся в этой же базе. Переменная `E1_COVERAGE_DATABASE_URL` подключает отдельную базу только для тестирования; для обычного просмотра её не задавать. Все подключения браузера используют PostgreSQL `default_transaction_read_only=on`. Сам интерфейс слушает только loopback-адрес `127.0.0.1`. ## Запуск Из корня репозитория: ```sh env -u E1_COVERAGE_DATABASE_URL npm run db:browser ``` Открыть `http://127.0.0.1:4317`. Для постоянной работы после входа установлен LaunchAgent `com.personalos.db-browser`: он запускается при входе, удаляет `E1_COVERAGE_DATABASE_URL` и перезапускает браузер после неуспешного завершения. Статус: `launchctl print gui/$(id -u)/com.personalos.db-browser`. Остановить и выгрузить: `launchctl bootout gui/$(id -u) ~/Library/LaunchAgents/com.personalos.db-browser.plist`. Исходный plist находится в `scripts/com.personalos.db-browser.plist`. Проверить доступность интерфейса и источников: ```sh curl -fsS -o /dev/null -w '%{http_code}\n' http://127.0.0.1:4317/ curl -fsS http://127.0.0.1:4317/api/bootstrap ``` В bootstrap после поставки 14.10 ожидаются `sources.e1=true`, `evidence_origin=primary`, `work_dashboard=true`, `local_resolution_enabled=true`, `read_only=false`. Последнее означает наличие действий через host runner; SQL-соединения браузера по-прежнему read-only. Если соединение не устанавливается, проверить PostgreSQL на `localhost:5432`, поле `database` в `config.json` и отсутствие старого `E1_COVERAGE_DATABASE_URL`. ## Ссылки Исходники и подробности интерфейса: `web/db-browser/` и `web/db-browser/README.md` в репозитории personal-os.