Update ios-dev-builds.md to clarify xcodebuild vs Fastlane #252

Merged
ldraney merged 1 commit from fix/ios-dev-builds-docs into main 2026-06-18 23:40:07 +00:00
Owner

Summary

Clarifies that the production iOS build pipeline uses raw xcodebuild, not Fastlane. Adds cross-references to ios-pipeline.md and reframes the Fastlane section as a local dev convenience rather than the canonical build path.

Changes

  • docs/ios-dev-builds.md -- Added callout at top cross-referencing ios-pipeline.md for production builds; annotated Fastlane prerequisite to note it is for local dev only; renamed Fastlane section to "Fastlane Setup (Local Dev Only)" with a note explaining why production uses xcodebuild and linking to the "Why Not Fastlane?" rationale
  • README.md -- Updated ios-dev-builds table description from "TestFlight, wireless install, Fastlane setup" to "Local dev builds, wireless install, Fastlane reference"

Test Plan

  • Verify all markdown links resolve correctly (ios-pipeline.md, anchor link to #why-not-fastlane)
  • Confirm no Fastlane content was removed -- only reframed as local dev tooling

Review Checklist

  • Docs-only change, no code modifications
  • Existing Fastlane content preserved, only reframed
  • Cross-references to ios-pipeline.md added

None.

Closes #251

## Summary Clarifies that the production iOS build pipeline uses raw `xcodebuild`, not Fastlane. Adds cross-references to `ios-pipeline.md` and reframes the Fastlane section as a local dev convenience rather than the canonical build path. ## Changes - `docs/ios-dev-builds.md` -- Added callout at top cross-referencing ios-pipeline.md for production builds; annotated Fastlane prerequisite to note it is for local dev only; renamed Fastlane section to "Fastlane Setup (Local Dev Only)" with a note explaining why production uses xcodebuild and linking to the "Why Not Fastlane?" rationale - `README.md` -- Updated ios-dev-builds table description from "TestFlight, wireless install, Fastlane setup" to "Local dev builds, wireless install, Fastlane reference" ## Test Plan - Verify all markdown links resolve correctly (ios-pipeline.md, anchor link to #why-not-fastlane) - Confirm no Fastlane content was removed -- only reframed as local dev tooling ## Review Checklist - [x] Docs-only change, no code modifications - [x] Existing Fastlane content preserved, only reframed - [x] Cross-references to ios-pipeline.md added ## Related Notes None. ## Related Closes #251
Update ios-dev-builds.md to clarify xcodebuild vs Fastlane (Closes #251)
Some checks are pending
CI / scan_ruby (pull_request) Waiting to run
CI / scan_js (pull_request) Waiting to run
CI / lint (pull_request) Waiting to run
ci/woodpecker/push/woodpecker Pipeline was successful
ci/woodpecker/pr/woodpecker Pipeline was successful
d982bf88d9
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Author
Owner

Review

Docs-only change, 2 files, +7 / -3. Reviewed the diff against ios-pipeline.md for consistency.

Checked

  • Cross-reference accuracy: The callout at the top of ios-dev-builds.md correctly points to ios-pipeline.md for production builds.
  • Anchor link: ios-pipeline.md#why-not-fastlane resolves correctly -- the heading in ios-pipeline.md is ## Why Not Fastlane?.
  • Fastlane content preserved: No Fastlane instructions were removed. Section renamed to "Fastlane Setup (Local Dev Only)" with a note explaining the rationale.
  • README table: Description updated from "TestFlight, wireless install, Fastlane setup" to "Local dev builds, wireless install, Fastlane reference" -- accurate.
  • No code changes: Purely documentation.

Findings

No issues found.

VERDICT: APPROVE

## Review Docs-only change, 2 files, +7 / -3. Reviewed the diff against `ios-pipeline.md` for consistency. ### Checked - **Cross-reference accuracy:** The callout at the top of `ios-dev-builds.md` correctly points to `ios-pipeline.md` for production builds. - **Anchor link:** `ios-pipeline.md#why-not-fastlane` resolves correctly -- the heading in ios-pipeline.md is `## Why Not Fastlane?`. - **Fastlane content preserved:** No Fastlane instructions were removed. Section renamed to "Fastlane Setup (Local Dev Only)" with a note explaining the rationale. - **README table:** Description updated from "TestFlight, wireless install, Fastlane setup" to "Local dev builds, wireless install, Fastlane reference" -- accurate. - **No code changes:** Purely documentation. ### Findings No issues found. **VERDICT: APPROVE**
Author
Owner

PR #252 Review

DOMAIN REVIEW

Tech stack: Markdown documentation (no code changes).

This is a docs-only PR that touches two files: docs/ios-dev-builds.md and README.md. The changes reframe Fastlane as a local dev convenience rather than the production build tool, and add cross-references to docs/ios-pipeline.md (introduced in merged PR #250).

Link verification:

  • ios-pipeline.md -- exists on main (introduced by PR #250, merged). Valid.
  • ios-pipeline.md#why-not-fastlane -- the ## Why Not Fastlane? section exists in that file. Anchor is valid.
  • Existing link to pipeline.md in the opening paragraph is preserved and valid.

Content accuracy:

  • The callout block correctly states that production builds use raw xcodebuild, not Fastlane. This is consistent with docs/ios-pipeline.md and the updated docs/pipeline.md (both from PR #250).
  • The Fastlane prerequisite annotation ("used for local dev convenience; production builds use xcodebuild") is accurate and does not remove the prerequisite -- it contextualizes it.
  • The Fastlane section rename from "Fastlane Setup" to "Fastlane Setup (Local Dev Only)" with the explanatory note accurately summarizes the produce action limitation documented in ios-pipeline.md.
  • The README description change from "TestFlight, wireless install, Fastlane setup" to "Local dev builds, wireless install, Fastlane reference" correctly reflects that this doc is now scoped to local dev workflows.

No content was removed. All existing Fastlane documentation (Appfile, Fastfile, Matchfile table; first-time setup instructions; lane definitions; troubleshooting) is preserved. Only framing was changed.

BLOCKERS

None.

NITS

  1. The README.md change updates the Development section's iOS Dev Builds description, but the same file also has a line in the "Infrastructure & Deploy" section (added by PR #250) that references [iOS Pipeline](docs/ios-pipeline.md) | Turbo Native build, signing, App Store Connect, TestFlight. This is fine and consistent -- just noting that the two docs are now properly differentiated in the table of contents.

  2. Minor: the blockquote note in the Fastlane section is quite long (3 sentences). Consider breaking it into a callout with a short summary line and a details/rationale sentence. Non-blocking -- the current version is clear enough.

SOP COMPLIANCE

  • PR body has: Summary, Changes, Test Plan, Related -- all present and well-structured
  • No secrets, .env files, or credentials committed
  • No unnecessary file changes (both files are directly relevant to the issue scope)
  • Commit messages are descriptive (PR title is clear)
  • Closes #251 is present in the Related section
  • Docs-only change -- no test coverage required

PROCESS OBSERVATIONS

Clean documentation maintenance PR. The change correctly follows up on PR #250 (which introduced ios-pipeline.md and updated pipeline.md) by reconciling the remaining stale Fastlane references in ios-dev-builds.md. This prevents documentation drift where one doc says "use Fastlane" and two others say "use xcodebuild." Low change failure risk -- no code, no infrastructure.

VERDICT: APPROVED

## PR #252 Review ### DOMAIN REVIEW **Tech stack:** Markdown documentation (no code changes). This is a docs-only PR that touches two files: `docs/ios-dev-builds.md` and `README.md`. The changes reframe Fastlane as a local dev convenience rather than the production build tool, and add cross-references to `docs/ios-pipeline.md` (introduced in merged PR #250). **Link verification:** - `ios-pipeline.md` -- exists on main (introduced by PR #250, merged). Valid. - `ios-pipeline.md#why-not-fastlane` -- the `## Why Not Fastlane?` section exists in that file. Anchor is valid. - Existing link to `pipeline.md` in the opening paragraph is preserved and valid. **Content accuracy:** - The callout block correctly states that production builds use raw `xcodebuild`, not Fastlane. This is consistent with `docs/ios-pipeline.md` and the updated `docs/pipeline.md` (both from PR #250). - The Fastlane prerequisite annotation ("used for local dev convenience; production builds use `xcodebuild`") is accurate and does not remove the prerequisite -- it contextualizes it. - The Fastlane section rename from "Fastlane Setup" to "Fastlane Setup (Local Dev Only)" with the explanatory note accurately summarizes the `produce` action limitation documented in `ios-pipeline.md`. - The README description change from "TestFlight, wireless install, Fastlane setup" to "Local dev builds, wireless install, Fastlane reference" correctly reflects that this doc is now scoped to local dev workflows. **No content was removed.** All existing Fastlane documentation (Appfile, Fastfile, Matchfile table; first-time setup instructions; lane definitions; troubleshooting) is preserved. Only framing was changed. ### BLOCKERS None. ### NITS 1. The `README.md` change updates the Development section's iOS Dev Builds description, but the same file also has a line in the "Infrastructure & Deploy" section (added by PR #250) that references `[iOS Pipeline](docs/ios-pipeline.md) | Turbo Native build, signing, App Store Connect, TestFlight`. This is fine and consistent -- just noting that the two docs are now properly differentiated in the table of contents. 2. Minor: the blockquote note in the Fastlane section is quite long (3 sentences). Consider breaking it into a callout with a short summary line and a details/rationale sentence. Non-blocking -- the current version is clear enough. ### SOP COMPLIANCE - [x] PR body has: Summary, Changes, Test Plan, Related -- all present and well-structured - [x] No secrets, .env files, or credentials committed - [x] No unnecessary file changes (both files are directly relevant to the issue scope) - [x] Commit messages are descriptive (PR title is clear) - [x] `Closes #251` is present in the Related section - [x] Docs-only change -- no test coverage required ### PROCESS OBSERVATIONS Clean documentation maintenance PR. The change correctly follows up on PR #250 (which introduced `ios-pipeline.md` and updated `pipeline.md`) by reconciling the remaining stale Fastlane references in `ios-dev-builds.md`. This prevents documentation drift where one doc says "use Fastlane" and two others say "use xcodebuild." Low change failure risk -- no code, no infrastructure. ### VERDICT: APPROVED
ldraney deleted branch fix/ios-dev-builds-docs 2026-06-18 23:40:07 +00:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
ldraney/landscaping-assistant!252
No description provided.