diff --git a/AGENTS.md b/AGENTS.md index 7715587..8355dd9 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -25,9 +25,15 @@ MCP service in one npm/Turborepo workspace. and prove the relevant compatibility contracts still hold. Preserve deployed interfaces and supported client behavior; repository checks alone do not prove a live change is safe. -10. Scope work to the task. Route bounded implementation through the project - `implementation` agent when delegation is useful; the primary agent retains - acceptance, review, and final verification. Do not delegate trivial edits. +10. Delegate every substantive repository task to at least one project agent so + detailed exploration or execution stays out of the primary context. + "Substantive" includes repository exploration, multi-file reasoning, + implementation, test execution, or contract/risk analysis. Use `repo_scout` + for read-only investigation and `implementation` for bounded changes; use + the additional roles according to `docs/agents/routing.md`. The primary + agent retains scope, acceptance, review, and the final answer. Skip + delegation only for trivial conversation, a single obvious lookup, or a + mechanical one-line edit whose coordination cost exceeds the work. 11. Use high-effort reviewers only for the risk triggers in `docs/agents/routing.md`. diff --git a/apps/mobile/android/app/build.gradle b/apps/mobile/android/app/build.gradle index 3d9126a..c5e84d5 100644 --- a/apps/mobile/android/app/build.gradle +++ b/apps/mobile/android/app/build.gradle @@ -92,8 +92,8 @@ android { applicationId 'com.sauci.app' minSdkVersion rootProject.ext.minSdkVersion targetSdkVersion rootProject.ext.targetSdkVersion - versionCode 47 - versionName "1.0.5" + versionCode 48 + versionName "1.0.6" buildConfigField "String", "REACT_NATIVE_RELEASE_LEVEL", "\"${findProperty('reactNativeReleaseLevel') ?: 'stable'}\"" } signingConfigs { diff --git a/apps/mobile/app.json b/apps/mobile/app.json index fc29235..49b2ebc 100644 --- a/apps/mobile/app.json +++ b/apps/mobile/app.json @@ -2,7 +2,7 @@ "expo": { "name": "Sauci", "slug": "sauci", - "version": "1.0.5", + "version": "1.0.6", "orientation": "portrait", "icon": "./assets/icon.png", "scheme": "app.sauci", @@ -16,12 +16,15 @@ "ios": { "supportsTablet": false, "bundleIdentifier": "com.sauci.app", + "config": { + "usesNonExemptEncryption": false + }, "entitlements": { "com.apple.security.application-groups": [ "group.com.sauci.app" ] }, - "buildNumber": "43", + "buildNumber": "44", "usesAppleSignIn": true, "googleServicesFile": "./GoogleService-Info.plist", "infoPlist": { @@ -183,7 +186,7 @@ "backgroundColor": "#1a1a2e" }, "package": "com.sauci.app", - "versionCode": 47, + "versionCode": 48, "googleServicesFile": "./google-services.json", "permissions": [ "RECEIVE_BOOT_COMPLETED", diff --git a/apps/mobile/ios/Sauci.xcodeproj/project.pbxproj b/apps/mobile/ios/Sauci.xcodeproj/project.pbxproj index 220531e..f6de4c5 100644 --- a/apps/mobile/ios/Sauci.xcodeproj/project.pbxproj +++ b/apps/mobile/ios/Sauci.xcodeproj/project.pbxproj @@ -570,7 +570,7 @@ INFOPLIST_FILE = Sauci/Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 15.1; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - MARKETING_VERSION = 1.0.5; + MARKETING_VERSION = 1.0.6; OTHER_LDFLAGS = ( "$(inherited)", "-ObjC", @@ -599,7 +599,7 @@ INFOPLIST_FILE = Sauci/Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 15.1; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - MARKETING_VERSION = 1.0.5; + MARKETING_VERSION = 1.0.6; OTHER_LDFLAGS = ( "$(inherited)", "-ObjC", @@ -772,7 +772,7 @@ CODE_SIGN_ENTITLEMENTS = ../targets/widget/generated.entitlements; CODE_SIGN_STYLE = Automatic; COPY_PHASE_STRIP = NO; - CURRENT_PROJECT_VERSION = 43; + CURRENT_PROJECT_VERSION = 44; DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; DEVELOPMENT_TEAM = BXVPBATDZY; GCC_C_LANGUAGE_STANDARD = gnu11; @@ -782,7 +782,7 @@ INFOPLIST_KEY_NSHumanReadableCopyright = ""; IPHONEOS_DEPLOYMENT_TARGET = 16.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @executable_path/../../Frameworks"; - MARKETING_VERSION = 1.0.5; + MARKETING_VERSION = 1.0.6; MTL_FAST_MATH = YES; OTHER_SWIFT_FLAGS = "$(inherited) -D EXPO_CONFIGURATION_RELEASE"; PRODUCT_BUNDLE_IDENTIFIER = com.sauci.app.LiveDrawWidget; @@ -808,7 +808,7 @@ CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; CODE_SIGN_ENTITLEMENTS = ../targets/widget/generated.entitlements; CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 43; + CURRENT_PROJECT_VERSION = 44; DEBUG_INFORMATION_FORMAT = dwarf; DEVELOPMENT_TEAM = BXVPBATDZY; GCC_C_LANGUAGE_STANDARD = gnu11; @@ -818,7 +818,7 @@ INFOPLIST_KEY_NSHumanReadableCopyright = ""; IPHONEOS_DEPLOYMENT_TARGET = 16.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @executable_path/../../Frameworks"; - MARKETING_VERSION = 1.0.5; + MARKETING_VERSION = 1.0.6; MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; MTL_FAST_MATH = YES; OTHER_SWIFT_FLAGS = "$(inherited) -D EXPO_CONFIGURATION_DEBUG"; diff --git a/apps/mobile/ios/Sauci/Info.plist b/apps/mobile/ios/Sauci/Info.plist index df7195f..875de15 100644 --- a/apps/mobile/ios/Sauci/Info.plist +++ b/apps/mobile/ios/Sauci/Info.plist @@ -21,7 +21,7 @@ CFBundlePackageType $(PRODUCT_BUNDLE_PACKAGE_TYPE) CFBundleShortVersionString - 1.0.5 + 1.0.6 CFBundleSignature ???? CFBundleURLTypes @@ -47,9 +47,11 @@ CFBundleVersion - 43 + 44 GOOGLE_ANALYTICS_INAPURCHASE_COLLECTION_ENABLED + ITSAppUsesNonExemptEncryption + LSMinimumSystemVersion 12.0 LSRequiresIPhoneOS diff --git a/apps/mobile/targets/widget/Info.plist b/apps/mobile/targets/widget/Info.plist index 8a159fe..c7c5fea 100644 --- a/apps/mobile/targets/widget/Info.plist +++ b/apps/mobile/targets/widget/Info.plist @@ -8,8 +8,8 @@ com.apple.widgetkit-extension CFBundleVersion - 43 + 44 CFBundleShortVersionString - 1.0.5 + 1.0.6 - \ No newline at end of file + diff --git a/docs/agents/routing.md b/docs/agents/routing.md index ff7d803..adf0979 100644 --- a/docs/agents/routing.md +++ b/docs/agents/routing.md @@ -1,9 +1,12 @@ # Agent routing and effort -The primary agent owns scope, acceptance criteria, task decomposition, and the -final answer. Use one implementation agent when a bounded handoff will keep noisy -execution out of the primary context. Do not pay the coordination cost for a -trivial one-file edit. Add other agents only for separable work or a risk trigger. +The primary agent owns scope, acceptance criteria, task decomposition, review, +and the final answer. Every substantive repository task must delegate at least +one bounded unit to the best-fit project agent. Use `repo_scout` for read-only +discovery or analysis and `implementation` for product or harness changes. Add +other agents only for separable work or the risk triggers below. Skip delegation +only for trivial conversation, a single obvious lookup, or a mechanical one-line +edit whose coordination cost exceeds the work. ## Implementation and integration diff --git a/docs/release-notes.md b/docs/release-notes.md index 7b8e489..d79d04b 100644 --- a/docs/release-notes.md +++ b/docs/release-notes.md @@ -1,5 +1,15 @@ # Sauci Mobile Release Notes +## v1.0.6 — 30 August 2026 +_iOS build 44 · Android build 48_ + +A little more clarity, momentum, and playfulness for your shared check-ins. + +- **Your turn at a glance** — A private Home prompt now shows when questions from your partner are waiting, without revealing their answers. +- **New ways to play** — Browse, send, and respond to Dares together from a dedicated shared space. +- **Streaks that fit your day** — Shared streaks now follow your local day, with clearer progress and reminder controls. +- **Smoother shared moments** — Leaner syncing keeps questions, matches, chat, and Live Draw feeling current with less unnecessary refreshing. + ## v1.0.1 (Build 30) - January 2025 ### New Features diff --git a/docs/releasing.md b/docs/releasing.md index 32fe209..4727911 100644 --- a/docs/releasing.md +++ b/docs/releasing.md @@ -258,7 +258,7 @@ To verify you're using the correct keystore: keytool -list -v -keystore android/sauci-release.keystore -storepass ``` -Expected SHA1: `C3:70:C5:8C:85:E5:B5:92:97:82:A9:B0:47:98:40:99:AC:C8:47:43` +Expected EAS production upload-key SHA1: `F0:60:26:C7:54:B0:46:F2:80:FE:AC:43:8A:69:10:BD:9A:62:B4:59` ---