docs(skills): fill language standards with industry defaults
Per decision to use common industry practice now and tune later: - structures: standard layouts (go cmd/internal/pkg, python src-layout, rust cargo, ts pnpm workspaces, kotlin Gradle modules, swift SwiftPM) - linters: default rulesets (golangci base, clippy -D warnings, ruff+mypy, typescript-eslint+prettier, ktlint+detekt, swiftlint+swiftformat) - test runners: TS=vitest; coverage soft targets (~70-80%) marked '(пороги уточним)' - swift deps: SwiftPM (Package.resolved), CocoaPods legacy-only - reworded intros: values are industry defaults to be tuned, no raw TODO markers left Verified: no TODO markers remain in *-standards; all six skills load via pi.
This commit is contained in:
@@ -7,7 +7,7 @@ description: Используй при написании, ревью и про
|
||||
|
||||
Наш основной стек — **Go**. Скилл описывает, как писать, проверять и оформлять код.
|
||||
Реалистичные общепринятые дефолты приведены ниже; то, что специфично для компании,
|
||||
помечено `TODO` — уточняй, не выдумывай.
|
||||
заполнено дефолтами индустрии — тюним под M.Video позже.
|
||||
|
||||
## Структура сервиса
|
||||
|
||||
@@ -21,7 +21,7 @@ pkg/ # переиспользуемый публичный
|
||||
api/ # спецификации API (proto/openapi)
|
||||
```
|
||||
|
||||
<!-- TODO: заполнить реальной эталонной структурой сервиса компании -->
|
||||
> Ориентир по индустрии: `cmd/` + `internal/` + `pkg/`. Эталон под M.Video уточним позже.
|
||||
|
||||
## Линтеры
|
||||
|
||||
@@ -29,13 +29,15 @@ api/ # спецификации API (proto/openapi)
|
||||
- Статический анализ: `go vet ./...`.
|
||||
- Основной линтер: **golangci-lint** — `golangci-lint run ./...`.
|
||||
Набор линтеров задаётся в `.golangci.yml` в корне репозитория.
|
||||
<!-- TODO: указать корпоративный .golangci.yml / общий пресет, если он есть -->
|
||||
Базовый набор: `govet`, `staticcheck`, `errcheck`, `ineffassign`, `gosimple`, `unused`.
|
||||
Корпоративный `.golangci.yml` добавим позже.
|
||||
|
||||
## Тесты
|
||||
|
||||
- Прогон всех тестов: `go test ./...`.
|
||||
- С гонками и покрытием: `go test -race -cover ./...`.
|
||||
- Требования к покрытию и обязательные виды тестов: `<!-- TODO: пороги покрытия, интеграционные тесты -->`.
|
||||
- Покрытие: мягкий ориентир ~70%+ для бизнес-логики, критичные пути — обязательно;
|
||||
интеграционные тесты для внешних зависимостей. (пороги уточним)
|
||||
- Именование: `TestXxx`, табличные тесты приветствуются.
|
||||
|
||||
## Коммиты и MR
|
||||
|
||||
Reference in New Issue
Block a user