Skip to content

Feat/bodok#12

Open
CodingWithTashi wants to merge 12 commits into
mainfrom
feat/bodok
Open

Feat/bodok#12
CodingWithTashi wants to merge 12 commits into
mainfrom
feat/bodok

Conversation

@CodingWithTashi

Copy link
Copy Markdown
Owner

No description provided.

CodingWithTashi and others added 12 commits March 31, 2026 22:24
…o MVVM structure

- Move data models (DataClass, User, ChatMessage) to data/model/
- Move UserPreferences to data/local/
- Move API infrastructure (RetrofitClient, YigChik*API) to data/remote/
- Move services (TibetanKeyboard, MyFirebaseMessagingService) to service/
- Move app base classes (TibetanKeyboardApp, InputMethodActivity) to app/
- Update all package declarations and imports
- Update AndroidManifest.xml for moved components

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Move AIRepository, AIService, PremiumFeatureManager from ai/ to data/repository/
- Move ChatRepository from chat/ to data/repository/
- Move UserRepository from repo/ to data/repository/
- Move RevenueCatManager from subscription/ to data/repository/
- Update all package declarations and imports

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Move TibetanKeyboardView, AIKeyboardView, AIKeyboardCodes to ui/keyboard/
- Move EmojiKeyboardView, EmojiItemList, SimpleSearchKeyboard to ui/keyboard/
- Move CorrectionsAdapter, KeyboardType, AIKeyboardInterface to ui/keyboard/
- Update all package declarations and imports

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…i/ packages

- Move all chat components (ChatActivity, ChatViewModel, ChatAdapter, etc.) to ui/chat/
- Move grammar components (GrammarActivity, GrammarViewModel, GrammarCorrectionAdapter) to ui/grammar/
- Move TransliterationActivity to ui/transliteration/
- Move SubscriptionUIComponent to ui/subscription/
- Update all package declarations and imports

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…e packages

- Create HomeViewModel, SettingsViewModel, TransliterationViewModel
- Move HomeActivity to ui/home/
- Move SplashScreenActivity to ui/splash/
- Move LoginActivity to ui/login/
- Move SettingsActivity to ui/settings/
- Update AndroidManifest.xml for all Activity moves
- Update all cross-Activity Intent references and imports

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
The keyboard XML layouts referenced TibetanKeyboardView by its old
full class name (com.kharagedition.tibetankeyboard.TibetanKeyboardView).
After moving to ui.keyboard package, XML references must be updated to
the new path (com.kharagedition.tibetankeyboard.ui.keyboard.TibetanKeyboardView).

Fixes: ClassNotFoundException crash when opening the soft keyboard.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Tokenize.kt: fix infinite loop when non-syllable chunk terminates a
  trie match (foundMaxMatch flag was inside syllable-only branch)
- Tokenize.kt: fix infinite loop in addFoundWordOrNonWord for single-
  syllable partial trie match (now returns syls[0]+1, not syls[0])
- ChunkTokenizer: fix getChunkTypeName to use chunkValues map (markers
  are 100-based, not 1-based); add CharCategories.init in test method
- SentenceTokenizer: fix joinNoVerbSentences silently dropping sentences
  longer than threshold
- StackTokenizer: rewrite with correct STACK_RE (base consonant + marks)
  and syllable-split tokenize; old regex matched only combining marks
- LenientNormalization: extend REMOVE_AFFIXES_RE to cover plain suffixes
  (ིས/ི/ོ/ས/ར/མ/ང); fix rule 1 replacement to preserve ཏེ
- ParagraphTokenizer: fix empty-list guard and token length calculation
- Text.kt: revert wordTok to space-split (real trie tok via Botok API);
  fix chunkTok to use Chunks pipeline
- ParityTest: correct splitIntoStacks assertions (བཀྲ → [བ, ཀྲ])
- TrieTest: @ignore full-dictionary build test (integration, ~40 min)
- SpaceDebugUnitTest: @ignore entire class (debug test, builds full trie)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@sonarqubecloud

sonarqubecloud Bot commented Jun 9, 2026

Copy link
Copy Markdown

Quality Gate Failed Quality Gate failed

Failed conditions
C Reliability Rating on New Code (required ≥ A)

See analysis details on SonarQube Cloud

Catch issues before they fail your Quality Gate with our IDE extension SonarQube for IDE

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