Skip to content

Add AGENTS.md documentation for agent-assisted development - #29

Open
RTsta wants to merge 2 commits into
masterfrom
feat/agents-md-setup
Open

RTsta wants to merge 2 commits into
masterfrom
feat/agents-md-setup

Conversation

@RTsta

@RTsta RTsta commented Sep 21, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Adds AGENTS.md (root), Sources/AGENTS.md, and Tests/AGENTS.md — agent-facing documentation describing the package from the outside: the ModuleRegistration composition root, scope rules, resolution, runtime arguments, testing app code, and the runtime traps to avoid.
  • Adds CONTRIBUTING.md with the contributor workflow, build/test commands, public API compatibility expectations, and the container invariants that are easy to break.
  • Recommends AsyncContainer over Container for new code (especially under Swift 6 language mode), since Container is @unchecked Sendable over unlocked dictionaries and the concurrency checker can't verify it; documents the trade-off (no autoregister, no property wrappers on the async side).
  • Documents ModuleRegistration/AsyncModuleRegistration as the composition-root pattern — previously public API with no docs outside DocC comments.
  • Fixes stale/broken README.md content: non-compiling resolution examples (removed argument:/argument1:/argument2: labels), incorrect default-scope claim, stale Swift 5.3/Xcode 11 requirements, an installation snippet that excluded every 2.x release, and a broken source link.
  • Updates CHANGELOG.md with an [Unreleased] section covering the above.

Why

AGENTS.md/CONTRIBUTING.md give coding agents (and new contributors) accurate, package-specific context instead of relying on stale README content or guesswork — reducing incorrect assumptions about scope defaults, thread-safety, and supported Swift/Xcode versions.

Inspiration / prior art referenced while writing these docs:

Note

This branch stacks on #28 (raise minimum deployment targets), so the diff includes those changes until #28 merges.

Test plan

  • Read through AGENTS.md, Sources/AGENTS.md, Tests/AGENTS.md, CONTRIBUTING.md for accuracy
  • Verify README code snippets compile against the current public API
  • Confirm CHANGELOG.md [Unreleased] entry matches the actual changes

RTsta and others added 2 commits September 17, 2026 14:10
Xcode 27 ships SDKs for iOS/tvOS/watchOS/macOS 27 and requires iOS 17+,
tvOS 17+, and watchOS 10+ for on-device debugging and Instruments,
leaving the previous iOS 13 / macOS 10.15 / tvOS 13 / watchOS 6 floor
increasingly out of step with what the toolchain actually supports.

Bump the minimums one release family forward to iOS 15 / macOS 12 /
tvOS 15 / watchOS 8.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@RTsta
RTsta marked this pull request as ready for review September 21, 2026 16:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant