Files
crank/TASKS.md
T
2026-05-14 16:49:25 +00:00

134 lines
6.1 KiB
Markdown

# TASKS
## Current
### `feat/community-finalization`
Status: done
Goal:
- довести `crank-community` до окончательного самостоятельного состояния как открытой `REST-only` редакции;
- убрать transitional split-логику, legacy premium ballast и скрытые assumptions из эпохи общего репозитория.
Main code areas:
- `TASKS.md`
- `docs/community-source-whitelist.md`
- `docs/implementation-plan.md`
- `docs/repository-split-map.md`
- `docs/community-release-checklist.md`
- `docs/commercial-boundaries.md`
- workspace manifests
- Community backend/UI tests and fixtures
- Community UI copy and localization
Implementation slices:
1. привести документацию и backlog к реальному состоянию `crank-community`;
2. убрать premium зависимости из Community workspace manifests;
3. очистить Community test boundary и убрать зависимость от `test = false` как способа скрывать legacy tests;
4. удалить premium backend ballast, который больше не относится к Community;
5. дочистить UI, локализацию и e2e fixtures до честного Community surface;
6. пройти финальную верификацию Community release path.
DoD:
- `crank-community` описывает себя как самостоятельный public repository, а не как промежуточный этап split;
- Community manifests и workspace dependencies соответствуют `REST-only` product boundary;
- Community tests и fixtures проверяют только Community functionality;
- UI и docs не содержат рабочих premium flows и misleading copy;
- Community release path воспроизводим и проверяем без ссылок на transitional import procedure.
Verification:
- docs consistency pass;
- `cargo metadata --no-deps`;
- `just fmt`
- `just check`
- `just test`
- UI build and Community-targeted smoke/e2e pass.
Progress:
- done:
- `deploy/community/*` already acts as the canonical Community delivery contour
- Community capability model is already constrained to:
- `REST`
- static agent key
- `security_level = standard`
- public wizard HTML surface is already reduced to the Community `REST` flow
- transitional docs and backlog now describe `crank-community` as the current source of truth instead of a future split artifact
- premium protocol toolchain dependencies have been removed from the Community workspace manifest while keeping the `REST-only` workspace green under `cargo check`
- Community backend crates no longer rely on `test = false`; `just test` now runs against a real Community-only test surface on the isolated local test database
- premium protocol and streaming ballast has been removed from Community backend test/dev paths, and Community demo expectations now match the actual `REST-only` demo seed
- dormant premium UI modules, fixtures, and translation strings have been removed, while the remaining Community wizard and admin pages stay green under local Playwright smoke
- final Community verification pass completed:
- `cargo metadata --no-deps`
- `just fmt`
- `just check`
- `just test`
- `apps/ui` build
- Community-targeted Playwright smoke
## Next
### `feat/community-release-hardening`
Status: done
Goal:
- закрепить воспроизводимый Community release path и release checklist без скрытых переходных допущений.
Main code areas:
- `.github/workflows/ci.yml`
- `.github/workflows/deploy.yml`
- `deploy/community/*`
- `docs/community-release-checklist.md`
- `docs/deploy-and-staging-smoke.md`
- `docs/authenticated-staging-pass.md`
- `docs/public-smoke-targets.md`
- `docs/staging-regression-notes.md`
- `scripts/staging-smoke.sh`
- `scripts/authenticated-staging-smoke.sh`
- `scripts/staging-note-block.sh`
Implementation slices:
1. проверить соответствие CI Community manifests;
2. зафиксировать Community-only smoke baseline;
3. обновить release checklist после финальной cleanup-фазы.
DoD:
- Community release path не зависит от private repositories;
- checklist соответствует реальному Community deploy surface;
- пост-деплойная проверка повторяема.
Verification:
- `python3` YAML parse for `.github/workflows/ci.yml`
- `docker compose -f deploy/community/docker-compose.yml --env-file deploy/community/.env.example config -q`
- `docker compose -f deploy/community/docker-compose.yml --env-file deploy/community/.env.example --profile cache config -q`
- `just check`
- `apps/ui` build
- Community-targeted Playwright smoke including `staging-authenticated.spec.js`
Progress:
- done:
- `UI Checks` in `CI` now run real `npm ci` and `npm run build` before the container image build
- Community release docs and helper scripts now describe only the real `REST-only` deploy smoke baseline
- staging templates and regression notes no longer require `GraphQL`, `gRPC`, `WebSocket`, `SOAP`, or streaming scenarios in Community
- Community public smoke targets are reduced to the canonical `REST -> Open-Meteo` path
- obsolete split-helper artifact `scripts/export-community.sh` and stale premium smoke payloads have been removed from the public repo
### `feat/common-public-improvements`
Status: ready
Goal:
- вносить общие улучшения в публичную базу, которые потом синхронно переносятся в `enterprise` и `cloud`.
Main code areas:
- общий Community runtime/UI/API surface
Implementation slices:
1. делать изменение в `crank-community`;
2. переносить тот же change set в `crank-enterprise`;
3. переносить тот же change set в `crank-cloud`.
DoD:
- общий функционал не расходится между тремя редакциями без необходимости;
- Community остается source base для общей open-core логики.