Regeneration merges the on-device learned evidence with dictation and reply choices since the last generation instead of re-reading only the newest ~2,500 characters. It unlocks after 500 new characters, fades traits that stop getting support, and fully relearns styles without saved evidence.
334 lines
13 KiB
JSON
334 lines
13 KiB
JSON
{
|
|
"$schema_comment": "OSGKeyboard test suite: each test class belongs to exactly one atomic group. Presets only compose groups (no duplicated class lists).",
|
|
"version": 1,
|
|
"defaults": {
|
|
"ios_scheme": "OSGKeyboard",
|
|
"ios_project": "OSGKeyboard.xcodeproj",
|
|
"ios_destination": "platform=iOS Simulator,name=iPhone 17",
|
|
"mac_scheme": "OSGKeyboardMac",
|
|
"mac_destination": "platform=macOS"
|
|
},
|
|
"groups": {
|
|
"config": {
|
|
"description": "App Group configuration, onboarding flags, ConfigurationStore, Keychain",
|
|
"platform": "ios",
|
|
"tests": [
|
|
"OSGKeyboardTests/AppGroupConfigurationTests",
|
|
"OSGKeyboardTests/AppDistributionChannelTests",
|
|
"OSGKeyboardTests/AppGroupOnboardingStoreTests",
|
|
"OSGKeyboardTests/ConfigurationStoreTests",
|
|
"OSGKeyboardTests/KeychainTests",
|
|
"OSGKeyboardTests/ProviderToolRequestCoordinatorTests"
|
|
]
|
|
},
|
|
"account": {
|
|
"description": "Host-private session, Apple integrity protocol, account center, and referral links",
|
|
"platform": "ios",
|
|
"tests": [
|
|
"OSGKeyboardTests/AccountAPIClientTests",
|
|
"OSGKeyboardTests/AccountCenterViewModelTests",
|
|
"OSGKeyboardTests/AccountCreditPurchaseManagerTests",
|
|
"OSGKeyboardTests/AccountSecurityPrimitiveTests",
|
|
"OSGKeyboardTests/AccountSignInCoordinatorTests",
|
|
"OSGKeyboardTests/AccountSnapshotLoaderTests",
|
|
"OSGKeyboardTests/DeviceIntegrityTests",
|
|
"OSGKeyboardTests/ReferralProfileTests"
|
|
]
|
|
},
|
|
"managed_gateway": {
|
|
"description": "Scope-limited grants and managed LLM transport",
|
|
"platform": "ios",
|
|
"tests": [
|
|
"OSGKeyboardExtTests/ManagedGatewayTests"
|
|
]
|
|
},
|
|
"analytics": {
|
|
"description": "Privacy-safe analytics schema, durable queue, uploader, and identity lifecycle",
|
|
"platform": "ios",
|
|
"tests": [
|
|
"OSGKeyboardTests/AnalyticsModelTests",
|
|
"OSGKeyboardTests/AnalyticsAttributionTests",
|
|
"OSGKeyboardTests/AnalyticsRepositoryTests",
|
|
"OSGKeyboardTests/AnalyticsUploadCoordinatorTests",
|
|
"OSGKeyboardTests/AnalyticsUploadSchedulingTests",
|
|
"OSGKeyboardTests/AnalyticsAIOperationTests",
|
|
"OSGKeyboardTests/KeyboardUsageModelTests",
|
|
"OSGKeyboardTests/KeyboardUsageRepositoryTests",
|
|
"OSGKeyboardTests/KeyboardUsageUploadCoordinatorTests"
|
|
]
|
|
},
|
|
"sync": {
|
|
"description": "iCloud KVS merge/sync for settings, local-only clipboard consent, dictionary, speech history, usage stats",
|
|
"platform": "ios",
|
|
"tests": [
|
|
"OSGKeyboardTests/SettingsCloudSyncTests",
|
|
"OSGKeyboardTests/PersonalDictionaryCloudSyncTests",
|
|
"OSGKeyboardTests/PersonalDictionaryEntryServiceTests",
|
|
"OSGKeyboardTests/PersonalDictionaryMergeTests",
|
|
"OSGKeyboardTests/SpeechHistoryCloudSyncTests",
|
|
"OSGKeyboardTests/SpeechHistoryDayDeletionTests",
|
|
"OSGKeyboardTests/UsageStatisticsCloudSyncTests",
|
|
"OSGKeyboardTests/AIHistoryAndUsageTests"
|
|
]
|
|
},
|
|
"polish": {
|
|
"description": "Intelligent polish pipeline, prompt composer, validator, style packs, LLM HTTP client (stubbed)",
|
|
"platform": "ios",
|
|
"tests": [
|
|
"OSGKeyboardTests/IntelligentPolishTests",
|
|
"OSGKeyboardTests/PolishPromptComposerQuestionTests",
|
|
"OSGKeyboardTests/PolishOutputValidatorTests",
|
|
"OSGKeyboardTests/PolishStylePackTests",
|
|
"OSGKeyboardTests/PolishStyleCorpusExportStoreTests",
|
|
"OSGKeyboardTests/PolishStyleLearningServiceTests",
|
|
"OSGKeyboardTests/PersonalStyleLearningStateStoreTests",
|
|
"OSGKeyboardTests/PolishStylesL10nTests",
|
|
"OSGKeyboardTests/LLMClientTests",
|
|
"OSGKeyboardTests/TranscriptLanguageDetectorTests",
|
|
"OSGKeyboardTests/AIModeLLMClientTests",
|
|
"OSGKeyboardTests/AIQuestionServiceTests",
|
|
"OSGKeyboardTests/AIClipboardPromptTests"
|
|
]
|
|
},
|
|
"edit_last_input": {
|
|
"description": "Long-press edit prompt, target validation, gestures, and Flow start transactions",
|
|
"platform": "ios",
|
|
"tests": [
|
|
"OSGKeyboardTests/EditLastInputPromptTests",
|
|
"OSGKeyboardTests/EditableInputReferenceTests",
|
|
"OSGKeyboardTests/FlowStartTransactionPolicyTests",
|
|
"OSGKeyboardTests/SpeechHistoryRevisionTests",
|
|
"OSGKeyboardTests/EditTransactionStoreTests",
|
|
"OSGKeyboardTests/RecordButtonGesturePolicyTests",
|
|
"OSGKeyboardExtTests/EditHintSchedulerTests"
|
|
]
|
|
},
|
|
"cloud_asr": {
|
|
"description": "Cloud ASR catalog/routing helpers, streaming fixtures/event parsers, HTTP clients, vocabulary sync (hermetic; live API is live_api)",
|
|
"platform": "ios",
|
|
"tests": [
|
|
"OSGKeyboardTests/CloudASRTests",
|
|
"OSGKeyboardTests/CloudASRStreamingHelpersTests",
|
|
"OSGKeyboardTests/CloudASRStreamingEventParsingTests",
|
|
"OSGKeyboardTests/CloudASRHTTPClientTests",
|
|
"OSGKeyboardTests/AlibabaVocabularySyncTests",
|
|
"OSGKeyboardTests/CloudASRServiceTests"
|
|
]
|
|
},
|
|
"local_asr": {
|
|
"description": "Local ASR catalog, bias adapter, download source order, PCM conversion, dictation controller stop contract",
|
|
"platform": "ios",
|
|
"tests": [
|
|
"OSGKeyboardTests/LocalASRModelCatalogTests",
|
|
"OSGKeyboardTests/LocalASRBiasAdapterTests",
|
|
"OSGKeyboardTests/LocalASRDownloadSourceSorterTests",
|
|
"OSGKeyboardTests/ASRConversionTests",
|
|
"OSGKeyboardTests/PreviewASRControllerStateTests"
|
|
]
|
|
},
|
|
"utterance": {
|
|
"description": "Chunked utterance pipeline, stitch/guard/fallback policies (Host pipeline vs Ext short-final recovery are different layers)",
|
|
"platform": "ios",
|
|
"tests": [
|
|
"OSGKeyboardTests/ChunkedUtterancePipelineTests",
|
|
"OSGKeyboardTests/UtteranceStreamChunkerTests",
|
|
"OSGKeyboardTests/UtteranceTranscriptStitcherTests",
|
|
"OSGKeyboardTests/UtteranceTranscriptGuardTests",
|
|
"OSGKeyboardTests/UtteranceBatchFallbackPolicyTests",
|
|
"OSGKeyboardTests/ProgressiveDictationTranscriptAccumulatorTests",
|
|
"OSGKeyboardTests/FlowASRPostProcessorTests",
|
|
"OSGKeyboardExtTests/FinalChunkRecoveryTests"
|
|
]
|
|
},
|
|
"flow": {
|
|
"description": "Flow handoff policy, App Group session bridge, budgets, tail drain, mic availability, keyboard↔host decision helpers",
|
|
"platform": "ios",
|
|
"tests": [
|
|
"OSGKeyboardTests/FlowHandoffPolicyTests",
|
|
"OSGKeyboardTests/FlowFailureDiagnosticsTests",
|
|
"OSGKeyboardTests/FlowLevelStoreTests",
|
|
"OSGKeyboardTests/FlowPiPLossReportGateTests",
|
|
"OSGKeyboardTests/FlowSessionWarningReportGateTests",
|
|
"OSGKeyboardTests/FlowHomePiPStatusPolicyTests",
|
|
"OSGKeyboardTests/FlowPiPRecoveryPolicyTests",
|
|
"OSGKeyboardTests/FlowAdaptiveDownsamplerTests",
|
|
"OSGKeyboardTests/FlowSessionBridgeTests",
|
|
"OSGKeyboardTests/FlowSessionPolicyTests",
|
|
"OSGKeyboardTests/FlowBudgetAndMergeTests",
|
|
"OSGKeyboardTests/FlowCaptureTailDrainTests",
|
|
"OSGKeyboardTests/FlowUtteranceEndCoordinatorTests",
|
|
"OSGKeyboardTests/FlowUtterancePCMStoreTests",
|
|
"OSGKeyboardTests/MicVoiceAvailabilityTests",
|
|
"OSGKeyboardTests/FlowKeyboardPoliciesTests",
|
|
"OSGKeyboardTests/FlowReliabilityTests",
|
|
"OSGKeyboardTests/FlowSessionManagerAnalyticsTests",
|
|
"OSGKeyboardTests/FlowFailureLogStoreTests",
|
|
"OSGKeyboardTests/AISessionStateTests"
|
|
]
|
|
},
|
|
"keyboard": {
|
|
"description": "Typing surface, clipboard privacy/storage policy, secure-field UI, English lexicon, Rime, cursor navigation",
|
|
"platform": "ios",
|
|
"tests": [
|
|
"OSGKeyboardExtTests/EnglishTypingTests",
|
|
"OSGKeyboardTests/EnglishTypingOnDeviceTests",
|
|
"OSGKeyboardExtTests/CandidatePanelExpandTests",
|
|
"OSGKeyboardExtTests/ClipboardSuggestionLifecycleTests",
|
|
"OSGKeyboardExtTests/KeyboardStateTests",
|
|
"OSGKeyboardExtTests/DictationProgressTests",
|
|
"OSGKeyboardExtTests/KeyboardUsageTypingTests",
|
|
"OSGKeyboardExtTests/KeyboardSurfaceStateTests",
|
|
"OSGKeyboardExtTests/KeyHitTestingTests",
|
|
"OSGKeyboardExtTests/LibrimeIntegrationTests",
|
|
"OSGKeyboardExtTests/PinyinNextKeyResolverTests",
|
|
"OSGKeyboardExtTests/RimeSchemaGeneratorTests",
|
|
"OSGKeyboardExtTests/RimePersonalDictionaryExporterTests",
|
|
"OSGKeyboardExtTests/TypingTouchTrackerTests",
|
|
"OSGKeyboardTests/AssistantFieldActionTests",
|
|
"OSGKeyboardTests/AppleNaturalLanguageCapabilityTests",
|
|
"OSGKeyboardTests/KeyboardTranslationConfigProtectionTests",
|
|
"OSGKeyboardTests/AIHintPoolTests",
|
|
"OSGKeyboardTests/AIHintKeywordExtractorTests",
|
|
"OSGKeyboardTests/AIClipboardSkillTests",
|
|
"OSGKeyboardTests/WebPageContentServiceTests",
|
|
"OSGKeyboardTests/AIAgentSkillLayoutTests",
|
|
"OSGKeyboardTests/AIUserSkillTests",
|
|
"OSGKeyboardTests/AIUserSkillStoreTests",
|
|
"OSGKeyboardTests/AIEventExtractionTests",
|
|
"OSGKeyboardTests/AIAddressExtractionTests",
|
|
"OSGKeyboardTests/AIMapNavigationTests",
|
|
"OSGKeyboardTests/AINoteExportTests",
|
|
"OSGKeyboardTests/ClipboardSemanticAnalyzerTests",
|
|
"OSGKeyboardTests/ClipboardSkillSemanticRankerTests",
|
|
"OSGKeyboardTests/ClipboardHistoryPolicyTests",
|
|
"OSGKeyboardTests/ClipboardHistoryStoreTests",
|
|
"OSGKeyboardTests/KeyboardExtensionMemoryBudgetTests",
|
|
"OSGKeyboardTests/KeyboardInstallationProbeTests",
|
|
"OSGKeyboardTests/AIReplyVariantTests",
|
|
"OSGKeyboardTests/ClipboardReplyFeedbackStoreTests",
|
|
"OSGKeyboardTests/ClipboardSemanticShadowMetricsStoreTests",
|
|
"OSGKeyboardTests/KeyboardExtensionMemoryReliefTests",
|
|
"OSGKeyboardTests/InternalDiagnosticsUploaderTests",
|
|
"OSGKeyboardTests/AppL10nFallbackTests",
|
|
"OSGKeyboardTests/OfficialSkillCatalogTests",
|
|
"OSGKeyboardTests/FrequentTermStoreTests"
|
|
]
|
|
},
|
|
"host_misc": {
|
|
"description": "Host deep links, tips, open-source license catalog (not on the PR critical path)",
|
|
"platform": "ios",
|
|
"tests": [
|
|
"OSGKeyboardTests/HostAppURLRegistryTests",
|
|
"OSGKeyboardTests/PublicContentRefreshServiceTests",
|
|
"OSGKeyboardTests/OpenSourceLicenseCatalogTests"
|
|
]
|
|
},
|
|
"pipeline_perf": {
|
|
"description": "Hermetic voice→polish stage timings (synthetic PCM, stub ASR/LLM; no mic/live network)",
|
|
"platform": "ios",
|
|
"tests": [
|
|
"OSGKeyboardTests/VoicePipelinePerformanceTests"
|
|
]
|
|
},
|
|
"mac": {
|
|
"description": "macOS host recorder, dictation VM, text insertion",
|
|
"platform": "mac",
|
|
"tests": [
|
|
"OSGKeyboardMacTests/MacAudioRecorderSnapshotStreamTests",
|
|
"OSGKeyboardMacTests/MacDictationViewModelTests",
|
|
"OSGKeyboardMacTests/MacTextInsertionServiceTests",
|
|
"OSGKeyboardMacTests/ProviderToolRequestCoordinatorTests"
|
|
]
|
|
},
|
|
"live_api": {
|
|
"description": "Optional live network and physical-device smoke; excluded from all/pr by design",
|
|
"platform": "ios",
|
|
"tests": [
|
|
"OSGKeyboardTests/FlowPhysicalAudioStressTests"
|
|
]
|
|
}
|
|
},
|
|
"presets": {
|
|
"all": {
|
|
"description": "Full iOS + Ext hermetic suite (includes host_misc + pipeline_perf; excludes mac and live_api)",
|
|
"groups": [
|
|
"config",
|
|
"account",
|
|
"managed_gateway",
|
|
"analytics",
|
|
"sync",
|
|
"polish",
|
|
"edit_last_input",
|
|
"cloud_asr",
|
|
"local_asr",
|
|
"utterance",
|
|
"flow",
|
|
"keyboard",
|
|
"host_misc",
|
|
"pipeline_perf"
|
|
]
|
|
},
|
|
"pr": {
|
|
"description": "Default CI / PR gate: critical path without host_misc, pipeline_perf, or mac",
|
|
"groups": [
|
|
"config",
|
|
"account",
|
|
"managed_gateway",
|
|
"analytics",
|
|
"sync",
|
|
"polish",
|
|
"edit_last_input",
|
|
"cloud_asr",
|
|
"local_asr",
|
|
"utterance",
|
|
"flow",
|
|
"keyboard"
|
|
]
|
|
},
|
|
"api": {
|
|
"description": "Online API contracts + polish/LLM stubs",
|
|
"groups": ["cloud_asr", "polish", "managed_gateway"]
|
|
},
|
|
"account": {
|
|
"description": "Account, Apple integrity, and referral-link contracts",
|
|
"groups": ["account"]
|
|
},
|
|
"managed": {
|
|
"description": "Managed gateway grant and provider transports",
|
|
"groups": ["managed_gateway", "cloud_asr"]
|
|
},
|
|
"asr": {
|
|
"description": "Cloud + local ASR + utterance stitching",
|
|
"groups": ["cloud_asr", "local_asr", "utterance"]
|
|
},
|
|
"polish": {
|
|
"description": "Polish-only",
|
|
"groups": ["polish"]
|
|
},
|
|
"edit": {
|
|
"description": "Long-press editing lifecycle and prompt contract only",
|
|
"groups": ["edit_last_input"]
|
|
},
|
|
"keyboard": {
|
|
"description": "Keyboard typing/Rime plus flow handoff/mic (keyboard-critical)",
|
|
"groups": ["keyboard", "flow"]
|
|
},
|
|
"flow": {
|
|
"description": "Flow session / handoff only",
|
|
"groups": ["flow"]
|
|
},
|
|
"sync": {
|
|
"description": "iCloud sync only",
|
|
"groups": ["sync"]
|
|
},
|
|
"perf": {
|
|
"description": "Hermetic voice→polish pipeline stage timings only",
|
|
"groups": ["pipeline_perf"]
|
|
},
|
|
"mac": {
|
|
"description": "macOS host tests only",
|
|
"groups": ["mac"]
|
|
}
|
|
}
|
|
}
|