Files
pi-kit/skills/swift-standards/SKILL.md
T
dev e98e4ca9ae feat(skills): add kotlin-standards + swift-standards for mobile profile
- kotlin-standards: gradle build/test, ktlint/detekt, Android lint; company specifics TODO
- swift-standards: SwiftPM/xcodebuild, swiftformat/swiftlint, XCTest; company specifics TODO
- wire mobile profile -> kotlin+swift; 'all' now includes both; README matrix updated
- verified all six *-standards skills load via pi RPC
2026-07-16 12:31:12 +03:00

3.0 KiB

name, description
name description
swift-standards Используй при написании, ревью и проверке кода на Swift (iOS/macOS) — структура проекта, запуск swiftformat/swiftlint, сборка и тесты, формат коммитов и merge request. Применяй всегда, когда пишешь или правишь Swift-код, готовишь MR, а также в командах /bugfix, /feature и /review для Swift/iOS-репозиториев.

Стандарты Swift

Один из наших языков — Swift (iOS/macOS). Ниже — общепринятые дефолты экосистемы; специфичное для компании помечено TODO — уточняй, не выдумывай.

Структура

Ориентир (уточняется под компанию):

Package.swift            # SwiftPM, или *.xcodeproj / *.xcworkspace
Sources/<Target>/...
Tests/<Target>Tests/...

Линтеры и форматирование

  • Форматирование: swiftformat — swiftformat --lint . (автоформат swiftformat .).
  • Линтер: swiftlint — swiftlint (конфиг .swiftlint.yml), в CI swiftlint --strict.

Тесты

  • SwiftPM: swift test.
  • Xcode-проект: xcodebuild test -scheme <Scheme> -destination 'platform=iOS Simulator,name=iPhone 15'.
  • Требования к покрытию / обязательные виды тестов: <!-- TODO -->.

Сборка и зависимости

  • Сборка: swift build (или xcodebuild build -scheme <Scheme>).
  • Зависимости: <!-- TODO: SwiftPM / CocoaPods --> — lock (Package.resolved/Podfile.lock) коммитим.

Коммиты и MR

  • Формат коммитов: <!-- TODO: например Conventional Commits или свой -->.
  • MR обязателен (см. корпоративные правила из контекста сессии). Прямой push в защищённые ветки запрещён — расширение permission-gate дополнительно переспросит.
  • Перед MR: swiftformat --lint ., swiftlint --strict, тесты — всё зелёное.
  • Описание MR: что и зачем, как проверено, ссылка на тикет (скилл jira-workflow).

Чек-лист перед MR

  • swiftformat --lint . чисто
  • swiftlint --strict чисто
  • тесты зелёные, есть тесты на новую логику / фикс
  • нет секретов и закоммиченных ключей/.env
  • описание MR со ссылкой на тикет