Bicycle/.claude/memory/idea_cli_entrypoint.md
Egor Isaev af0c247403 dev
2026-08-06 17:02:53 +03:00

1.9 KiB
Raw Blame History

name description metadata
idea-cli-entrypoint Идея на будущее — добавить CLI-точку входа (cli.php) для миграций/крона/скриптов
type
project

Отложенная идея для Bicycle: добавить CLI-точку входа — отдельный скрипт cli.php в корне (рядом с index.php), запускаемый из терминала (php cli.php <команда>).

Назначение: миграции БД, крон-задачи (рассылки/отчёты), обслуживающие скрипты (сидинг, очистка логов) — то, что нельзя/опасно вешать на веб-URL.

Структура: cli.php повторяет «голову» index.php (константы, autoload, Core::init()), но вместо Request::factory()->execute() разбирает $argv и запускает команду. Команды — классы в App/Command/ (аналог контроллеров для консоли), простой роутинг по имени. symfony/console — оверкилл для «велосипеда» (см. feedback_educational_project.md).

Why: пользователю идея понравилась, но решили отложить — пока нет потребителя (нет слоя БД → нет миграций, нет крон-задач). Делать сейчас = пустая инфраструктура без клиента (как был удалённый ApiController).

How to apply: реализовать, когда появится первый реальный потребитель — вероятнее всего слой БД (первый клиент — миграции, см. roadmap.md) или конкретная фоновая задача. Тогда cli.php пишется за полчаса под неё.