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:
@@ -6,7 +6,7 @@ description: Используй при написании, ревью и про
|
||||
# Стандарты Swift
|
||||
|
||||
Один из наших языков — **Swift** (iOS/macOS). Ниже — общепринятые дефолты экосистемы;
|
||||
специфичное для компании помечено `TODO` — уточняй, не выдумывай.
|
||||
значения под M.Video заполнены дефолтами индустрии — тюним позже.
|
||||
|
||||
## Структура
|
||||
|
||||
@@ -18,24 +18,24 @@ Sources/<Target>/...
|
||||
Tests/<Target>Tests/...
|
||||
```
|
||||
|
||||
<!-- TODO: заполнить реальной эталонной структурой (SwiftPM vs Xcodeproj, менеджер зависимостей: SPM/CocoaPods) -->
|
||||
> Ориентир: SwiftPM-пакет (`Package.swift`), `Sources/` + `Tests/`. Эталон уточним.
|
||||
|
||||
## Линтеры и форматирование
|
||||
|
||||
- Форматирование: **swiftformat** — `swiftformat --lint .` (автоформат `swiftformat .`).
|
||||
- Линтер: **swiftlint** — `swiftlint` (конфиг `.swiftlint.yml`), в CI `swiftlint --strict`.
|
||||
<!-- TODO: корпоративные конфиги swiftformat/swiftlint (общий пресет), если есть -->
|
||||
Дефолт: SwiftLint + SwiftFormat (дефолтные конфиги). Корпоративный пресет уточним.
|
||||
|
||||
## Тесты
|
||||
|
||||
- SwiftPM: `swift test`.
|
||||
- Xcode-проект: `xcodebuild test -scheme <Scheme> -destination 'platform=iOS Simulator,name=iPhone 15'`.
|
||||
- Требования к покрытию / обязательные виды тестов: `<!-- TODO -->`.
|
||||
- Покрытие: `swift test --enable-code-coverage`, мягкий ориентир. (пороги уточним)
|
||||
|
||||
## Сборка и зависимости
|
||||
|
||||
- Сборка: `swift build` (или `xcodebuild build -scheme <Scheme>`).
|
||||
- Зависимости: `<!-- TODO: SwiftPM / CocoaPods -->` — lock (`Package.resolved`/`Podfile.lock`) коммитим.
|
||||
- Зависимости: **SwiftPM** (`Package.resolved` коммитим); CocoaPods — только для легаси.
|
||||
|
||||
## Коммиты и MR
|
||||
|
||||
|
||||
Reference in New Issue
Block a user