SYM Swift is the reference Swift/iOS implementation of the Mesh Memory Protocol (MMP). All changes must comply with the specification.
mainis protected. No direct pushes.- Create feature branches from
main(e.g.feat/uuid-v7,fix/bonjour-discovery). - Submit a pull request. All PRs require at least one review and passing CI before merge.
- Read the spec. If your change touches identity, transport, connection, memory, coupling, or any protocol layer, verify it conforms to MMP.
- Run tests. All tests must pass:
swift test - Verify both platforms. Changes must compile for iOS 17+ and macOS 14+.
- Keep commits focused. One logical change per commit. Reference MMP spec sections where applicable.
git clone https://github.com/sym-bot/sym-swift.git
cd sym-swift
swift build
swift testRequires Xcode with iOS 17 SDK and macOS 14 SDK.
SYMCore.xcframework is a precompiled binary dependency containing the cognitive core (context encoder, SVAF evaluator, E2E crypto). The source lives in a separate private repository (sym-core-swift). If your change requires modifications to SYMCore, open an issue first.
- Match existing patterns. Follow Swift conventions.
- Production quality: proper error handling, no shortcuts.
- Only add comments where logic isn't self-evident.
- Use
os.log(Logger) for diagnostics, notprint().
If you believe the MMP spec itself should change, open an issue describing the proposed change and rationale before implementing. Spec changes require separate review at symbot-website.