Overview › Documentation & Comments

Documentation & Comments

Stale README; minimal DocC coverage; no ADRs.

0 findings in this category · iOS
55
SCORE

Summary

Top-level README.md exists; per-package READMEs in Costco-Digital/ are absent. DocC not adopted. No ADRs.

Documentation surface vs target

AssetTodayTarget
Root READMEPresent, possibly staleRefresh: setup steps, scheme map, branching, on-call, security contact
Per-SPM-package READMEAbsent (29 packages)1 paragraph each: purpose, public types, example
DocC catalogsNot adoptedFor Core, CoreImplementation, CostcoDesignSystem
ADRs (architectural decisions)None5-10 backfilled (CocoaPods→SPM, MVVM, RZVinyl retirement, etc.)
CODEOWNERSLikely absentMap SPM packages to teams
Setup scriptLikely absentscripts/setup.sh for new-engineer first-run
API surface annotations/// comments sparseSwiftLint missing_docs for shared package public API

DocC quick-start

# Add a documentation catalog to a package:
# Costco-Digital/Core/Sources/Core/Core.docc/Core.md

# Document a public type:
/// A high-level description.
///
/// Detailed description with examples.
///
/// - Important: Anything thread-safety or lifecycle related.
public protocol NetworkClient {
    /// Sends a request and returns a typed response.
    func send<T: Decodable>(_ request: APIRequest<T>) async throws -> T
}

# Build & preview:
swift package generate-documentation --target Core
swift package --disable-sandbox preview-documentation --target Core

Suggested ADR backlog

  1. Why CocoaPods + SPM hybrid (and the migration plan).
  2. MVVM as default architecture — when to use Coordinators / TCA.
  3. RZVinyl retirement strategy and replacement (CostcoNetworkClient + Codable).
  4. SwiftUI vs UIKit for new screens (decision tree).
  5. Snapshot testing baseline (per-locale plans, when to update reference images).
  6. Privacy Manifest workflow (who owns updates).

Findings

""
HIGH

No per-SPM-package README

29 SPM packages, no module-level docs. New engineers must read code to understand intent.
Recommendation: Add a 1-paragraph README to each package: purpose, public types, example usage.
MEDIUM

DocC not used

Apple's DocC ships with Xcode and produces beautiful API docs from /// comments.
Recommendation: Generate DocC for Core, CoreImplementation, CostcoDesignSystem first; publish to internal Pages.
MEDIUM

No ADRs

Architectural decisions (CocoaPods → SPM migration, MVVM choice, RZVinyl retirement plan) undocumented.
Recommendation: Adopt MADR; backfill 5-10 key decisions.
No findings logged in this category yet for iOS.
Costco iOS · Code Review Report · Generated 2026-05-07 · 88 machine-curated findings