7.4 KiB
7.4 KiB
TASKS
Current
feat/open-core-repo-boundary
Status: in_progress
Goal:
- закрепить техническую границу между
crank-community,crank-enterpriseиcrank-cloud.
Main code areas:
docs/commercial-boundaries.mddocs/module-decomposition.mddocs/development-rules.mddocs/implementation-plan.md- release scripts / Docker manifests / future packaging files
Implementation slices:
- Определить extension seams в public code.
- Подготовить отдельные delivery manifests для Community.
- Убрать из Community repo assumptions о размещении private code рядом с Community logic.
- Подготовить naming и packaging strategy для private repositories.
- После завершения seams и capability split остановиться на управленческом gate и создать:
- public repository
crank-community - private repository
crank-enterprise - private repository
crank-cloudТолько после этого начинать физическое вынесение commercial code из текущего monorepo.
- public repository
DoD:
- можно объяснить, что именно публикуется как OSS, а что уходит в private delivery;
- Community release path отделен от commercial release path;
- документация не ссылается на удаленные review files.
- момент создания
3целевых repositories зафиксирован в плане как отдельный обязательный шаг, а не подразумевается неявно.
Verification:
- docs consistency pass;
- release checklist review.
Progress:
- done:
- gate for creating
3target repositories is already documented before any physical commercial split - canonical Community deployment manifest and env template now live under
deploy/community/*, and public deploy uses that manifest instead of the root compose file - CI, README, runtime/deploy smoke docs now point to
deploy/community/*as the Community delivery source of truth - separate
Communityrelease checklist now exists and explicitly forbids treating futureEnterprise/Clouddelivery as just another env on the same public manifest - explicit repository split map now defines what goes to
crank-community,crank-enterprise, andcrank-cloud Communityis now fixed asREST-onlyin product docs, capability model, backend validation, demo seed, and UI protocol expectations
- gate for creating
- pending:
- remaining extension seams and packaging split still need to move from planning into concrete
crank-community/crank-enterprise/crank-cloudmanifests - next management gate is to actually create the
3target repositories before physical split starts
- remaining extension seams and packaging split still need to move from planning into concrete
Planned
feat/enterprise-access-governance
Status: ready
Goal:
- реализовать enterprise access layer вне Community scope.
Main code areas:
- private
enterpriseservices and crates - public contracts in:
docs/admin-api.mddocs/agent-auth-model.mddocs/product-editions.md
Implementation slices:
SSO2FA- extended
RBAC audit log- enterprise admin flows in UI through capability gating
DoD:
- governance features не живут как полумеры в Community;
- enterprise access model согласован с public contracts.
feat/cloud-metering-control-plane
Status: ready
Goal:
- подготовить hosted-редакцию как отдельный продуктовый контур.
Main code areas:
- private cloud services
- usage/metering integration points
docs/product-editions.mddocs/commercial-boundaries.md
Implementation slices:
- usage metering by workspace / agent / token;
- billing integration;
- hosted tenant controls;
- cloud operational tooling.
DoD:
- Cloud edition не зависит от ручного учета usage;
- hosted product surface согласован с feature matrix.
feat/release-protection-distribution
Status: ready
Goal:
- подготовить безопасную поставку Community и коммерческих редакций.
Main code areas:
- CI workflows
- Dockerfiles
- deployment manifests
- release docs
Implementation slices:
- public GitHub release flow for Community;
- private registry flow for Enterprise;
- signed artifacts and provenance;
- release checklist for edition-specific packaging.
DoD:
- Community публикуется из
crank-community; - Enterprise и Cloud используют private delivery path;
- коммерческий код не требуется публиковать в open source ради поставки.
feat/optional-cache-layer
Status: ready
Goal:
- добавить в продукт optional cache/coordination layer с
Valkey/Redisbackend без обязательной зависимости от него.
Main code areas:
crates/crank-corecrates/crank-runtimeapps/admin-apiapps/mcp-serverdeploy/community/*docs/runtime-config.mddocs/product-editions.mddocs/commercial-boundaries.md
Implementation slices:
- Зафиксировать public cache contracts:
- response cache
- rate-limit store
- token replay / one-time token store
- ephemeral coordination state
- Подготовить Community fallback path:
- без
Valkey/Redisвсе должно работать - degraded mode documented explicitly
- без
- Добавить optional
Valkeyservice в Community deployment manifests как рекомендованный, но не обязательный runtime component. - Подготовить
Valkey/Redisbackend для:- managed Cloud default
- enterprise optional cluster-aware deployment
- Протянуть capability/config model так, чтобы решение "использовать или нет внешний cache" принимал оператор, а не кодовая база.
DoD:
- без
Valkey/RedisCommunity и self-hosted deployment остаются рабочими; - с
Valkey/Redisплатформа умеет снижать runtime/load pressure и хранить ephemeral coordination state; Cloudможет использовать shared cache layer по умолчанию;Enterpriseможет подключать cache layer на своей инфраструктуре, включая кластерный вариант;- runtime/docs/manifests не делают cache обязательным для базового запуска.
feat/live-authenticated-staging-entry
Status: ready
Goal:
- держать реальный staging/demo контур в состоянии, пригодном для демонстрации и регрессии.
Main code areas:
docs/demo-runbook.mddocs/deploy-and-staging-smoke.mddocs/authenticated-staging-pass.md- deployment workflows
Implementation slices:
- актуализировать demo user flow;
- прогнать authenticated staging pass;
- зафиксировать regressions и manual checks;
- синхронизировать deploy docs с реальным окружением.
DoD:
- staging validation не зависит от локальных фикстур;
- documentation matches deployed behavior;
- demo flow reproducible on real environment.