<freeStyleBuild _class='hudson.model.FreeStyleBuild'><action _class='hudson.model.CauseAction'><cause _class='hudson.model.Cause$UserIdCause'><shortDescription>Started by user Mike Dawson</shortDescription><userId>mike</userId><userName>Mike Dawson</userName></cause></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmain-maestro-cloud-run _class='hudson.plugins.git.util.Build'><buildNumber>10</buildNumber><marked><SHA1>4c7679e7b9c80b89ea503c28608711ef175a6ba3</SHA1><branch><SHA1>4c7679e7b9c80b89ea503c28608711ef175a6ba3</SHA1><name>refs/remotes/origin/main-maestro-cloud-run</name></branch></marked><revision><SHA1>4c7679e7b9c80b89ea503c28608711ef175a6ba3</SHA1><branch><SHA1>4c7679e7b9c80b89ea503c28608711ef175a6ba3</SHA1><name>refs/remotes/origin/main-maestro-cloud-run</name></branch></revision></refsremotesoriginmain-maestro-cloud-run><refsremotesoriginmain _class='hudson.plugins.git.util.Build'><buildNumber>130</buildNumber><marked><SHA1>a5328345c6425d0a9bf53cbec75d150f012676a0</SHA1><branch><SHA1>a5328345c6425d0a9bf53cbec75d150f012676a0</SHA1><name>refs/remotes/origin/main</name></branch></marked><revision><SHA1>a5328345c6425d0a9bf53cbec75d150f012676a0</SHA1><branch><SHA1>a5328345c6425d0a9bf53cbec75d150f012676a0</SHA1><name>refs/remotes/origin/main</name></branch></revision></refsremotesoriginmain></buildsByBranchName><lastBuiltRevision><SHA1>a5328345c6425d0a9bf53cbec75d150f012676a0</SHA1><branch><SHA1>a5328345c6425d0a9bf53cbec75d150f012676a0</SHA1><name>refs/remotes/origin/main</name></branch></lastBuiltRevision><remoteUrl>https://github.com/UstadMobile/Respect.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><artifact><displayPath>001_001_invite_using_invite_code_test.mp4</displayPath><fileName>001_001_invite_using_invite_code_test.mp4</fileName><relativePath>.maestro/video-downloader/cypress/downloads/001_001_invite_using_invite_code_test.mp4</relativePath></artifact><artifact><displayPath>001_002_add_user_direct_test.mp4</displayPath><fileName>001_002_add_user_direct_test.mp4</fileName><relativePath>.maestro/video-downloader/cypress/downloads/001_002_add_user_direct_test.mp4</relativePath></artifact><artifact><displayPath>001_003_login_using_school_link_test.mp4</displayPath><fileName>001_003_login_using_school_link_test.mp4</fileName><relativePath>.maestro/video-downloader/cypress/downloads/001_003_login_using_school_link_test.mp4</relativePath></artifact><artifact><displayPath>002_browse_lessons_test.mp4</displayPath><fileName>002_browse_lessons_test.mp4</fileName><relativePath>.maestro/video-downloader/cypress/downloads/002_browse_lessons_test.mp4</relativePath></artifact><artifact><displayPath>003_admin_user_assigns_assignment_to_a_class_test.mp4</displayPath><fileName>003_admin_user_assigns_assignment_to_a_class_test.mp4</fileName><relativePath>.maestro/video-downloader/cypress/downloads/003_admin_user_assigns_assignment_to_a_class_test.mp4</relativePath></artifact><artifact><displayPath>001_001_invite_using_invite_code_test.png</displayPath><fileName>001_001_invite_using_invite_code_test.png</fileName><relativePath>.maestro/video-downloader/cypress/screenshots/extract-maestro-video-urls.cy.js/001_001_invite_using_invite_code_test.png</relativePath></artifact><artifact><displayPath>001_002_add_user_direct_test.png</displayPath><fileName>001_002_add_user_direct_test.png</fileName><relativePath>.maestro/video-downloader/cypress/screenshots/extract-maestro-video-urls.cy.js/001_002_add_user_direct_test.png</relativePath></artifact><artifact><displayPath>001_003_login_using_school_link_test.png</displayPath><fileName>001_003_login_using_school_link_test.png</fileName><relativePath>.maestro/video-downloader/cypress/screenshots/extract-maestro-video-urls.cy.js/001_003_login_using_school_link_test.png</relativePath></artifact><artifact><displayPath>002_browse_lessons_test.png</displayPath><fileName>002_browse_lessons_test.png</fileName><relativePath>.maestro/video-downloader/cypress/screenshots/extract-maestro-video-urls.cy.js/002_browse_lessons_test.png</relativePath></artifact><artifact><displayPath>003_admin_user_assigns_assignment_to_a_class_test.png</displayPath><fileName>003_admin_user_assigns_assignment_to_a_class_test.png</fileName><relativePath>.maestro/video-downloader/cypress/screenshots/extract-maestro-video-urls.cy.js/003_admin_user_assigns_assignment_to_a_class_test.png</relativePath></artifact><artifact><displayPath>00_Main_Dashboard.png</displayPath><fileName>00_Main_Dashboard.png</fileName><relativePath>.maestro/video-downloader/cypress/screenshots/extract-maestro-video-urls.cy.js/00_Main_Dashboard.png</relativePath></artifact><artifact><displayPath>respect-app-compose-debug.apk</displayPath><fileName>respect-app-compose-debug.apk</fileName><relativePath>respect-app-compose/build/outputs/apk/debug/respect-app-compose-debug.apk</relativePath></artifact><artifact><displayPath>respect-app-compose-release.apk</displayPath><fileName>respect-app-compose-release.apk</fileName><relativePath>respect-app-compose/build/outputs/apk/release/respect-app-compose-release.apk</relativePath></artifact><artifact><displayPath>mapping.txt</displayPath><fileName>mapping.txt</fileName><relativePath>respect-app-compose/build/outputs/mapping/release/mapping.txt</relativePath></artifact><artifact><displayPath>respect-cli.zip</displayPath><fileName>respect-cli.zip</fileName><relativePath>respect-cli/build/distributions/respect-cli.zip</relativePath></artifact><artifact><displayPath>respect-server-1.0.0.zip</displayPath><fileName>respect-server-1.0.0.zip</fileName><relativePath>respect-server/build/distributions/respect-server-1.0.0.zip</relativePath></artifact><artifact><displayPath>respect-server-shadow-1.0.0.zip</displayPath><fileName>respect-server-shadow-1.0.0.zip</fileName><relativePath>respect-server/build/distributions/respect-server-shadow-1.0.0.zip</relativePath></artifact><building>false</building><displayName>#130</displayName><duration>1453784</duration><estimatedDuration>1585190</estimatedDuration><fullDisplayName>RESPECT-end-to-end #130</fullDisplayName><id>130</id><inProgress>false</inProgress><keepLog>false</keepLog><number>130</number><queueId>5400</queueId><result>SUCCESS</result><timestamp>1769015113935</timestamp><url>https://devserver3.ustadmobile.com/jenkins/job/RESPECT-end-to-end/130/</url><builtOn></builtOn><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-lib-shared/src/commonMain/composeResources/values/strings.xml</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/sharedschooldevicelogin/SharedSchoolDeviceLoginSelectClassViewModel.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/settings/SharedDeviceSettingsViewModel.kt</affectedPath><affectedPath>respect-app-compose/src/androidMain/AndroidManifest.xml</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/sharedschooldevicelogin/EnterRollNumberViewModel.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/settings/SettingsScreen.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/shareddevicelogin/ScanQRCodeScreen.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/sharedschooldevicelogin/SharedSchoolDeviceLoginSelectStudentViewModel.kt</affectedPath><affectedPath>gradle/libs.versions.toml</affectedPath><affectedPath>respect-app-compose/src/androidMain/kotlin/world/respect/RespectApp.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/shareddevicelogin/SelectStudentScreen.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/navigation/AppRoutes.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/settings/SettingsViewModel.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/sharedschooldevicelogin/ScanQRCodeViewModel.kt</affectedPath><affectedPath>respect-app-compose/src/androidMain/kotlin/world/respect/AppKoinModule.kt</affectedPath><affectedPath>respect-app-compose/build.gradle.kts</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/shareddevicelogin/SelectClassScreen.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/settings/SharedDeviceSettingsScreen.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/shareddevicelogin/EnterRollNumberScreen.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/app/AppNavHost.kt</affectedPath><commitId>c65221f861f513f8bc13c401052072440dd29ab7</commitId><timestamp>1764912074000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/anugraha</absoluteUrl><fullName>Anugraha</fullName></author><authorEmail>Anugraha@sutara.org</authorEmail><comment>add basic shared device login impl
</comment><date>2025-12-05 10:51:14 +0530</date><id>c65221f861f513f8bc13c401052072440dd29ab7</id><msg>add basic shared device login impl</msg><path><editType>edit</editType><file>gradle/libs.versions.toml</file></path><path><editType>add</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/shareddevicelogin/SelectClassScreen.kt</file></path><path><editType>add</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/sharedschooldevicelogin/SharedSchoolDeviceLoginSelectClassViewModel.kt</file></path><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/settings/SettingsScreen.kt</file></path><path><editType>add</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/shareddevicelogin/EnterRollNumberScreen.kt</file></path><path><editType>edit</editType><file>respect-app-compose/src/androidMain/AndroidManifest.xml</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/composeResources/values/strings.xml</file></path><path><editType>add</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/settings/SharedDeviceSettingsScreen.kt</file></path><path><editType>edit</editType><file>respect-app-compose/build.gradle.kts</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/settings/SettingsViewModel.kt</file></path><path><editType>add</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/sharedschooldevicelogin/EnterRollNumberViewModel.kt</file></path><path><editType>edit</editType><file>respect-app-compose/src/androidMain/kotlin/world/respect/AppKoinModule.kt</file></path><path><editType>add</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/settings/SharedDeviceSettingsViewModel.kt</file></path><path><editType>add</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/shareddevicelogin/SelectStudentScreen.kt</file></path><path><editType>add</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/shareddevicelogin/ScanQRCodeScreen.kt</file></path><path><editType>add</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/sharedschooldevicelogin/ScanQRCodeViewModel.kt</file></path><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/app/AppNavHost.kt</file></path><path><editType>add</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/sharedschooldevicelogin/SharedSchoolDeviceLoginSelectStudentViewModel.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/navigation/AppRoutes.kt</file></path><path><editType>edit</editType><file>respect-app-compose/src/androidMain/kotlin/world/respect/RespectApp.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-lib-shared/src/commonMain/composeResources/values/strings.xml</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/settings/SharedDeviceSettingsViewModel.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/sharedschooldevicelogin/SharedSchoolDeviceLoginSelectClassViewModel.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/sharedschooldevicelogin/SetSharedDeviceEnabledUseCase.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/acknowledgement/AcknowledgementViewModel.kt</affectedPath><affectedPath>respect-app-compose/src/androidMain/AndroidManifest.xml</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/sharedschooldevicelogin/EnterRollNumberViewModel.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/settings/SettingsScreen.kt</affectedPath><affectedPath>gradle/libs.versions.toml</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/shareddevicelogin/SelectStudentScreen.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/navigation/AppRoutes.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/settings/SettingsViewModel.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/components/RespectLazyItems.kt</affectedPath><affectedPath>respect-app-compose/src/androidMain/kotlin/world/respect/AppKoinModule.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/shareddevicelogin/SelectClassScreen.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/settings/SharedDeviceSettingsScreen.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/shareddevicelogin/EnterRollNumberScreen.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/app/AppNavHost.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/sharedschooldevicelogin/GetSharedDeviceEnabledUseCase.kt</affectedPath><commitId>ea0c713fc9b4612e9d579ff5315d6ded353283c9</commitId><timestamp>1765177002000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/anugraha</absoluteUrl><fullName>Anugraha</fullName></author><authorEmail>Anugraha@sutara.org</authorEmail><comment>add basic shared device login impl
</comment><date>2025-12-08 12:26:42 +0530</date><id>ea0c713fc9b4612e9d579ff5315d6ded353283c9</id><msg>add basic shared device login impl</msg><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/shareddevicelogin/EnterRollNumberScreen.kt</file></path><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/components/RespectLazyItems.kt</file></path><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/shareddevicelogin/SelectClassScreen.kt</file></path><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/shareddevicelogin/SelectStudentScreen.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/sharedschooldevicelogin/EnterRollNumberViewModel.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/acknowledgement/AcknowledgementViewModel.kt</file></path><path><editType>edit</editType><file>respect-app-compose/src/androidMain/AndroidManifest.xml</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/composeResources/values/strings.xml</file></path><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/settings/SharedDeviceSettingsScreen.kt</file></path><path><editType>edit</editType><file>respect-app-compose/src/androidMain/kotlin/world/respect/AppKoinModule.kt</file></path><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/app/AppNavHost.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/navigation/AppRoutes.kt</file></path><path><editType>edit</editType><file>gradle/libs.versions.toml</file></path><path><editType>add</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/sharedschooldevicelogin/SetSharedDeviceEnabledUseCase.kt</file></path><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/settings/SettingsScreen.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/settings/SharedDeviceSettingsViewModel.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/sharedschooldevicelogin/SharedSchoolDeviceLoginSelectClassViewModel.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/settings/SettingsViewModel.kt</file></path><path><editType>add</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/sharedschooldevicelogin/GetSharedDeviceEnabledUseCase.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>.maestro/flows/001_002_add_user_direct_test.yaml</affectedPath><commitId>e088b1a99844d11b63b1f1362d1c7582a0dddb4d</commitId><timestamp>1765368972000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/pooja</absoluteUrl><fullName>Pooja Ravi</fullName></author><authorEmail>pooja@ustadmobile.com</authorEmail><comment>added QR badge
</comment><date>2025-12-10 16:16:12 +0400</date><id>e088b1a99844d11b63b1f1362d1c7582a0dddb4d</id><msg>added QR badge</msg><path><editType>edit</editType><file>.maestro/flows/001_002_add_user_direct_test.yaml</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-test-end-to-end/test-description/001_002_add_user_direct_test_description.md</affectedPath><affectedPath>.maestro/flows/001_002_add_user_direct_test.yaml</affectedPath><commitId>d4938cbb89b255c08b627ab3bc8391a4dec2a387</commitId><timestamp>1765455995000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/pooja</absoluteUrl><fullName>Pooja Ravi</fullName></author><authorEmail>pooja@ustadmobile.com</authorEmail><comment>added QR badge test
</comment><date>2025-12-11 16:26:35 +0400</date><id>d4938cbb89b255c08b627ab3bc8391a4dec2a387</id><msg>added QR badge test</msg><path><editType>edit</editType><file>.maestro/flows/001_002_add_user_direct_test.yaml</file></path><path><editType>edit</editType><file>respect-test-end-to-end/test-description/001_002_add_user_direct_test_description.md</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/learningunit/list/LearningUnitListScreen.kt</affectedPath><affectedPath>respect-app-compose/src/androidMain/res/layout/activity_web_view.xml</affectedPath><affectedPath>respect-app-compose/src/androidMain/kotlin/world/respect/AppKoinModule.kt</affectedPath><affectedPath>respect-app-compose/build.gradle.kts</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/apps/detail/AppsDetailScreen.kt</affectedPath><affectedPath>respect-app-compose/src/androidMain/kotlin/world/respect/WebViewActivity.kt</affectedPath><affectedPath>gradle/libs.versions.toml</affectedPath><affectedPath>README.md</affectedPath><commitId>a2789c89fbfca3b760138bae32c3569bef3abea6</commitId><timestamp>1765782818000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/anugraha</absoluteUrl><fullName>Anugraha</fullName></author><authorEmail>Anugraha@sutara.org</authorEmail><comment>Add build environment variable for default app list
Remove non-functional try button
Learning unit screen: remove non-functional sorter
Add progress bar to learning unit viewer.
</comment><date>2025-12-15 12:43:38 +0530</date><id>a2789c89fbfca3b760138bae32c3569bef3abea6</id><msg>Add build environment variable for default app list</msg><path><editType>edit</editType><file>respect-app-compose/src/androidMain/res/layout/activity_web_view.xml</file></path><path><editType>edit</editType><file>README.md</file></path><path><editType>edit</editType><file>gradle/libs.versions.toml</file></path><path><editType>edit</editType><file>respect-app-compose/build.gradle.kts</file></path><path><editType>edit</editType><file>respect-app-compose/src/androidMain/kotlin/world/respect/WebViewActivity.kt</file></path><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/learningunit/list/LearningUnitListScreen.kt</file></path><path><editType>edit</editType><file>respect-app-compose/src/androidMain/kotlin/world/respect/AppKoinModule.kt</file></path><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/apps/detail/AppsDetailScreen.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-app-compose/build.gradle.kts</affectedPath><commitId>31719f9b1309d45b39666e6c6310b6f6433d4184</commitId><timestamp>1765782818000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/anugraha</absoluteUrl><fullName>Anugraha</fullName></author><authorEmail>Anugraha@sutara.org</authorEmail><comment>Bump version for internal testing update.
</comment><date>2025-12-15 12:43:38 +0530</date><id>31719f9b1309d45b39666e6c6310b6f6433d4184</id><msg>Bump version for internal testing update.</msg><path><editType>edit</editType><file>respect-app-compose/build.gradle.kts</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-app-compose/src/androidMain/kotlin/world/respect/AppKoinModule.kt</affectedPath><affectedPath>respect-app-compose/build.gradle.kts</affectedPath><commitId>c158d4b024bf09fa01501715c72e34990c6d2e28</commitId><timestamp>1765782818000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/anugraha</absoluteUrl><fullName>Anugraha</fullName></author><authorEmail>Anugraha@sutara.org</authorEmail><comment>Update db names and pref names to avoid update conflict.
</comment><date>2025-12-15 12:43:38 +0530</date><id>c158d4b024bf09fa01501715c72e34990c6d2e28</id><msg>Update db names and pref names to avoid update conflict.</msg><path><editType>edit</editType><file>respect-app-compose/build.gradle.kts</file></path><path><editType>edit</editType><file>respect-app-compose/src/androidMain/kotlin/world/respect/AppKoinModule.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-app-compose/build.gradle.kts</affectedPath><commitId>dde844bb3148f88461ec1f118d4e83547e648428</commitId><timestamp>1765782818000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/anugraha</absoluteUrl><fullName>Anugraha</fullName></author><authorEmail>Anugraha@sutara.org</authorEmail><comment>Use default app list set by environment variable when provided.
</comment><date>2025-12-15 12:43:38 +0530</date><id>dde844bb3148f88461ec1f118d4e83547e648428</id><msg>Use default app list set by environment variable when provided.</msg><path><editType>edit</editType><file>respect-app-compose/build.gradle.kts</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-app-compose/build.gradle.kts</affectedPath><commitId>e1db52c32ec8bb3603273c78328c8fc3cce8efea</commitId><timestamp>1765782818000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/anugraha</absoluteUrl><fullName>Anugraha</fullName></author><authorEmail>Anugraha@sutara.org</authorEmail><comment>Set versions for public app store.
</comment><date>2025-12-15 12:43:38 +0530</date><id>e1db52c32ec8bb3603273c78328c8fc3cce8efea</id><msg>Set versions for public app store.</msg><path><editType>edit</editType><file>respect-app-compose/build.gradle.kts</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>.maestro/flows/002_browse_lessons_test.yaml</affectedPath><commitId>32a0477b9a132f38b9d0d44c68480a192d8f2033</commitId><timestamp>1765782818000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/anugraha</absoluteUrl><fullName>Anugraha</fullName></author><authorEmail>Anugraha@sutara.org</authorEmail><comment>Remove assertVisible try it button which is often unused (and now will not be shown).
</comment><date>2025-12-15 12:43:38 +0530</date><id>32a0477b9a132f38b9d0d44c68480a192d8f2033</id><msg>Remove assertVisible try it button which is often unused (and now will not be shown).</msg><path><editType>edit</editType><file>.maestro/flows/002_browse_lessons_test.yaml</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-lib-shared/src/jvmMain/kotlin/world/respect/shared/domain/account/invite/RedeemInviteUseCaseDb.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/RespectAccount.kt</affectedPath><affectedPath>respect-lib-shared/src/jvmMain/kotlin/world/respect/shared/domain/account/authwithpassword/GetTokenAndUserProfileWithCredentialDbImpl.kt</affectedPath><affectedPath>respect-credentials/src/commonMain/kotlin/world/respect/credentials/passkey/RespectCredential.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/gettokenanduser/GetTokenAndUserProfileWithCredentialUseCaseClient.kt</affectedPath><commitId>4d3520fc26c23a560bd2b7c6b789a03d89822dc0</commitId><timestamp>1765782818000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/anugraha</absoluteUrl><fullName>Anugraha</fullName></author><authorEmail>Anugraha@sutara.org</authorEmail><comment>Update RespectCredential sealed class to add QR Code Badge credential type.
</comment><date>2025-12-15 12:43:38 +0530</date><id>4d3520fc26c23a560bd2b7c6b789a03d89822dc0</id><msg>Update RespectCredential sealed class to add QR Code Badge credential type.</msg><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/RespectAccount.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/jvmMain/kotlin/world/respect/shared/domain/account/invite/RedeemInviteUseCaseDb.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/gettokenanduser/GetTokenAndUserProfileWithCredentialUseCaseClient.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/jvmMain/kotlin/world/respect/shared/domain/account/authwithpassword/GetTokenAndUserProfileWithCredentialDbImpl.kt</file></path><path><editType>edit</editType><file>respect-credentials/src/commonMain/kotlin/world/respect/credentials/passkey/RespectCredential.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/authenticatepassword/AuthenticateQrBadgeUseCase.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/composeResources/values/strings.xml</affectedPath><affectedPath>respect-server/src/main/kotlin/world/respect/server/ServerKoinModule.kt</affectedPath><affectedPath>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/model/PersonQrCode.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/CreateAccountSetPasswordViewModel.kt</affectedPath><affectedPath>respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/writequeue/DrainRemoteWriteQueueUseCase.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/manageuser/getstarted/GetStartedScreen.kt</affectedPath><affectedPath>respect-lib-shared/src/jvmMain/kotlin/world/respect/shared/domain/account/authwithpassword/GetTokenAndUserProfileWithCredentialDbImpl.kt</affectedPath><affectedPath>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/adapters/PersonQrCodeAdapter.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/manageuser/getstarted/GetStartedViewModel.kt</affectedPath><affectedPath>respect-app-compose/src/androidMain/res/drawable/fingerprint.png</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/images/RespectImage.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/navigation/AppRoutes.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/sharedschooldevicelogin/ScanQRCodeViewModel.kt</affectedPath><affectedPath>respect-app-compose/src/androidMain/kotlin/world/respect/AppKoinModule.kt</affectedPath><affectedPath>respect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/SchoolDataSourceHttp.kt</affectedPath><affectedPath>respect-datalayer-db/schemas/world.respect.datalayer.db.RespectSchoolDatabase/9.json</affectedPath><affectedPath>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/RespectSchoolDatabase.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/settings/SharedDeviceSettingsScreen.kt</affectedPath><affectedPath>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/writequeue/WriteQueueItem.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/manageaccount/ManageAccountViewModel.kt</affectedPath><affectedPath>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/PersonQrBadgeDataSourceExt.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/SetUsernameAndPasswordViewModel.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/app/AppNavHost.kt</affectedPath><affectedPath>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/SchoolDataSource.kt</affectedPath><affectedPath>respect-server/src/main/kotlin/world/respect/server/Application.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/sharedschooldevicelogin/SharedSchoolDeviceLoginSelectClassViewModel.kt</affectedPath><affectedPath>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/PersonQrDataSource.kt</affectedPath><affectedPath>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/PersonQrDataSourceDb.kt</affectedPath><affectedPath>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/daos/PersonQrBadgeEntityDao.kt</affectedPath><affectedPath>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/SchoolDataSourceDb.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/shareddevicelogin/ScanQRCodeScreen.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/person/setusernameandpassword/SetUsernameAndPasswordScreen.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/person/setusernameandpassword/CreateAccountSetPasswordScreen.kt</affectedPath><affectedPath>respect-lib-shared-se/src/commonMain/kotlin/world/respect/sharedse/domain/account/authenticatepassword/AuthenticateQrBadgeUseCaseDbImpl.kt</affectedPath><affectedPath>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/PersonQrCodeDataSourceLocal.kt</affectedPath><affectedPath>respect-datalayer-db/schemas/world.respect.datalayer.db.RespectSchoolDatabase/8.json</affectedPath><affectedPath>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/entities/PersonQrCodeEntity.kt</affectedPath><affectedPath>respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/PersonQrCodeDataSourceRepository.kt</affectedPath><affectedPath>respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/SchoolDataSourceRepository.kt</affectedPath><affectedPath>respect-server/src/main/kotlin/world/respect/server/routes/qrcode/QrCodeRoute.kt</affectedPath><affectedPath>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/SchoolDataSourceLocal.kt</affectedPath><affectedPath>respect-app-compose/src/androidMain/kotlin/world/respect/images/RespectImage.android.kt</affectedPath><affectedPath>respect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/PersonQrDataSourceHttp.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/person/manageaccount/ManageAccountScreen.kt</affectedPath><commitId>028b9f680bac8c4dee6cc32963d82ef1b35d3188</commitId><timestamp>1765782818000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/anugraha</absoluteUrl><fullName>Anugraha</fullName></author><authorEmail>Anugraha@sutara.org</authorEmail><comment>add shared device login impl
</comment><date>2025-12-15 12:43:38 +0530</date><id>028b9f680bac8c4dee6cc32963d82ef1b35d3188</id><msg>add shared device login impl</msg><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/images/RespectImage.kt</file></path><path><editType>add</editType><file>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/adapters/PersonQrCodeAdapter.kt</file></path><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/settings/SharedDeviceSettingsScreen.kt</file></path><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/shareddevicelogin/ScanQRCodeScreen.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/manageuser/getstarted/GetStartedViewModel.kt</file></path><path><editType>add</editType><file>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/PersonQrDataSourceDb.kt</file></path><path><editType>edit</editType><file>respect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/SchoolDataSourceHttp.kt</file></path><path><editType>add</editType><file>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/PersonQrBadgeDataSourceExt.kt</file></path><path><editType>edit</editType><file>respect-server/src/main/kotlin/world/respect/server/Application.kt</file></path><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/person/manageaccount/ManageAccountScreen.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/SetUsernameAndPasswordViewModel.kt</file></path><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/manageuser/getstarted/GetStartedScreen.kt</file></path><path><editType>edit</editType><file>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/SchoolDataSource.kt</file></path><path><editType>edit</editType><file>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/writequeue/WriteQueueItem.kt</file></path><path><editType>edit</editType><file>respect-app-compose/src/androidMain/kotlin/world/respect/AppKoinModule.kt</file></path><path><editType>add</editType><file>respect-datalayer-db/schemas/world.respect.datalayer.db.RespectSchoolDatabase/9.json</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/navigation/AppRoutes.kt</file></path><path><editType>edit</editType><file>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/SchoolDataSourceLocal.kt</file></path><path><editType>add</editType><file>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/daos/PersonQrBadgeEntityDao.kt</file></path><path><editType>edit</editType><file>respect-app-compose/src/androidMain/kotlin/world/respect/images/RespectImage.android.kt</file></path><path><editType>add</editType><file>respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/PersonQrCodeDataSourceRepository.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/sharedschooldevicelogin/ScanQRCodeViewModel.kt</file></path><path><editType>edit</editType><file>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/SchoolDataSourceDb.kt</file></path><path><editType>edit</editType><file>respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/writequeue/DrainRemoteWriteQueueUseCase.kt</file></path><path><editType>add</editType><file>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/PersonQrDataSource.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/manageaccount/ManageAccountViewModel.kt</file></path><path><editType>add</editType><file>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/PersonQrCodeDataSourceLocal.kt</file></path><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/person/setusernameandpassword/SetUsernameAndPasswordScreen.kt</file></path><path><editType>edit</editType><file>respect-server/src/main/kotlin/world/respect/server/ServerKoinModule.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/sharedschooldevicelogin/SharedSchoolDeviceLoginSelectClassViewModel.kt</file></path><path><editType>edit</editType><file>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/RespectSchoolDatabase.kt</file></path><path><editType>add</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/authenticatepassword/AuthenticateQrBadgeUseCase.kt</file></path><path><editType>add</editType><file>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/model/PersonQrCode.kt</file></path><path><editType>add</editType><file>respect-app-compose/src/androidMain/res/drawable/fingerprint.png</file></path><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/app/AppNavHost.kt</file></path><path><editType>edit</editType><file>respect-datalayer-db/schemas/world.respect.datalayer.db.RespectSchoolDatabase/8.json</file></path><path><editType>add</editType><file>respect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/PersonQrDataSourceHttp.kt</file></path><path><editType>edit</editType><file>respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/SchoolDataSourceRepository.kt</file></path><path><editType>add</editType><file>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/entities/PersonQrCodeEntity.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/jvmMain/kotlin/world/respect/shared/domain/account/authwithpassword/GetTokenAndUserProfileWithCredentialDbImpl.kt</file></path><path><editType>add</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/CreateAccountSetPasswordViewModel.kt</file></path><path><editType>add</editType><file>respect-server/src/main/kotlin/world/respect/server/routes/qrcode/QrCodeRoute.kt</file></path><path><editType>add</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/person/setusernameandpassword/CreateAccountSetPasswordScreen.kt</file></path><path><editType>add</editType><file>respect-lib-shared-se/src/commonMain/kotlin/world/respect/sharedse/domain/account/authenticatepassword/AuthenticateQrBadgeUseCaseDbImpl.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/composeResources/values/strings.xml</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/sharedschooldevicelogin/SharedSchoolDeviceLoginSelectClassViewModel.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/settings/SharedDeviceSettingsViewModel.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/acknowledgement/AcknowledgementViewModel.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/sharedschooldevicelogin/EnterRollNumberViewModel.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/settings/SettingsScreen.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/sharedschooldevicelogin/SharedSchoolDeviceLoginSelectStudentViewModel.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/shareddevicelogin/SelectStudentScreen.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/navigation/AppRoutes.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/settings/SettingsViewModel.kt</affectedPath><affectedPath>respect-app-compose/src/androidMain/kotlin/world/respect/AppKoinModule.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/shareddevicelogin/SelectClassScreen.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/settings/SharedDeviceSettingsScreen.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/app/AppNavHost.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/shareddevicelogin/EnterRollNumberScreen.kt</affectedPath><commitId>958231c52c70ca0f09ac855fc71cc828f1f3dd19</commitId><timestamp>1765784945000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/anugraha</absoluteUrl><fullName>Anugraha</fullName></author><authorEmail>Anugraha@sutara.org</authorEmail><comment>remove shared device/settings screen changes from assign badge to a student flow
</comment><date>2025-12-15 13:19:05 +0530</date><id>958231c52c70ca0f09ac855fc71cc828f1f3dd19</id><msg>remove shared device/settings screen changes from assign badge to a student flow</msg><path><editType>edit</editType><file>respect-app-compose/src/androidMain/kotlin/world/respect/AppKoinModule.kt</file></path><path><editType>delete</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/sharedschooldevicelogin/SharedSchoolDeviceLoginSelectClassViewModel.kt</file></path><path><editType>delete</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/settings/SharedDeviceSettingsViewModel.kt</file></path><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/app/AppNavHost.kt</file></path><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/settings/SettingsScreen.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/acknowledgement/AcknowledgementViewModel.kt</file></path><path><editType>delete</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/shareddevicelogin/SelectStudentScreen.kt</file></path><path><editType>delete</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/sharedschooldevicelogin/EnterRollNumberViewModel.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/navigation/AppRoutes.kt</file></path><path><editType>delete</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/shareddevicelogin/EnterRollNumberScreen.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/settings/SettingsViewModel.kt</file></path><path><editType>delete</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/shareddevicelogin/SelectClassScreen.kt</file></path><path><editType>delete</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/settings/SharedDeviceSettingsScreen.kt</file></path><path><editType>delete</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/sharedschooldevicelogin/SharedSchoolDeviceLoginSelectStudentViewModel.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/sharedschooldevicelogin/SetSharedDeviceEnabledUseCase.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/acknowledgement/AcknowledgementViewModel.kt</affectedPath><affectedPath>respect-app-compose/src/androidMain/kotlin/world/respect/RespectApp.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/sharedschooldevicelogin/GetSharedDeviceEnabledUseCase.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/components/RespectLazyItems.kt</affectedPath><affectedPath>respect-app-compose/src/androidMain/kotlin/world/respect/AppKoinModule.kt</affectedPath><commitId>2ef2f3c9d9caaaa71a9d86d100ea73a55af6a61c</commitId><timestamp>1765786488000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/anugraha</absoluteUrl><fullName>Anugraha</fullName></author><authorEmail>Anugraha@sutara.org</authorEmail><comment>remove shared device/settings screen changes from assign badge to a student flow
</comment><date>2025-12-15 13:44:48 +0530</date><id>2ef2f3c9d9caaaa71a9d86d100ea73a55af6a61c</id><msg>remove shared device/settings screen changes from assign badge to a student flow</msg><path><editType>edit</editType><file>respect-app-compose/src/androidMain/kotlin/world/respect/AppKoinModule.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/acknowledgement/AcknowledgementViewModel.kt</file></path><path><editType>edit</editType><file>respect-app-compose/src/androidMain/kotlin/world/respect/RespectApp.kt</file></path><path><editType>delete</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/sharedschooldevicelogin/SetSharedDeviceEnabledUseCase.kt</file></path><path><editType>delete</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/sharedschooldevicelogin/GetSharedDeviceEnabledUseCase.kt</file></path><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/components/RespectLazyItems.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-lib-shared/src/commonMain/composeResources/values/strings.xml</affectedPath><affectedPath>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/model/PersonQrCode.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/CreateAccountSetPasswordViewModel.kt</affectedPath><affectedPath>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/PersonQrDataSource.kt</affectedPath><affectedPath>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/PersonQrDataSourceDb.kt</affectedPath><affectedPath>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/daos/PersonQrBadgeEntityDao.kt</affectedPath><affectedPath>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/adapters/PersonQrCodeAdapter.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/person/setusernameandpassword/SetUsernameAndPasswordScreen.kt</affectedPath><affectedPath>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/PersonQrCodeDataSourceLocal.kt</affectedPath><affectedPath>respect-datalayer-db/schemas/world.respect.datalayer.db.RespectSchoolDatabase/8.json</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/sharedschooldevicelogin/ScanQRCodeViewModel.kt</affectedPath><affectedPath>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/entities/PersonQrCodeEntity.kt</affectedPath><affectedPath>respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/PersonQrCodeDataSourceRepository.kt</affectedPath><affectedPath>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/RespectSchoolDatabase.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/manageaccount/ManageAccountViewModel.kt</affectedPath><affectedPath>respect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/PersonQrDataSourceHttp.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/SetUsernameAndPasswordViewModel.kt</affectedPath><affectedPath>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/PersonQrBadgeDataSourceExt.kt</affectedPath><affectedPath>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/model/PersonBadge.kt</affectedPath><commitId>e5e64097b8d212d870fb079e6031779581bc9494</commitId><timestamp>1765799935000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/anugraha</absoluteUrl><fullName>Anugraha</fullName></author><authorEmail>Anugraha@sutara.org</authorEmail><comment>add refactor
</comment><date>2025-12-15 17:28:55 +0530</date><id>e5e64097b8d212d870fb079e6031779581bc9494</id><msg>add refactor</msg><path><editType>edit</editType><file>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/PersonQrCodeDataSourceLocal.kt</file></path><path><editType>edit</editType><file>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/PersonQrDataSource.kt</file></path><path><editType>delete</editType><file>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/model/PersonQrCode.kt</file></path><path><editType>edit</editType><file>respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/PersonQrCodeDataSourceRepository.kt</file></path><path><editType>edit</editType><file>respect-datalayer-db/schemas/world.respect.datalayer.db.RespectSchoolDatabase/8.json</file></path><path><editType>edit</editType><file>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/entities/PersonQrCodeEntity.kt</file></path><path><editType>add</editType><file>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/model/PersonBadge.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/manageaccount/ManageAccountViewModel.kt</file></path><path><editType>edit</editType><file>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/RespectSchoolDatabase.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/CreateAccountSetPasswordViewModel.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/SetUsernameAndPasswordViewModel.kt</file></path><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/person/setusernameandpassword/SetUsernameAndPasswordScreen.kt</file></path><path><editType>edit</editType><file>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/daos/PersonQrBadgeEntityDao.kt</file></path><path><editType>edit</editType><file>respect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/PersonQrDataSourceHttp.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/sharedschooldevicelogin/ScanQRCodeViewModel.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/composeResources/values/strings.xml</file></path><path><editType>edit</editType><file>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/adapters/PersonQrCodeAdapter.kt</file></path><path><editType>edit</editType><file>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/PersonQrDataSourceDb.kt</file></path><path><editType>edit</editType><file>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/PersonQrBadgeDataSourceExt.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-lib-shared/src/commonMain/composeResources/values/strings.xml</affectedPath><affectedPath>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/PersonQrDataSourceDb.kt</affectedPath><affectedPath>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/daos/PersonQrBadgeEntityDao.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/shareddevicelogin/ScanQRCodeScreen.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/person/setusernameandpassword/SetUsernameAndPasswordScreen.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/navigation/AppRoutes.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/app/AppBar.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/sharedschooldevicelogin/ScanQRCodeViewModel.kt</affectedPath><affectedPath>respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/PersonQrCodeDataSourceRepository.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/manageaccount/ManageAccountViewModel.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/SetUsernameAndPasswordViewModel.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/app/appstate/AppUiState.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/person/manageaccount/ManageAccountScreen.kt</affectedPath><commitId>4c8a97ce2e5ee958258b2bf34ff5cfefaf9c5309</commitId><timestamp>1765883598000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/anugraha</absoluteUrl><fullName>Anugraha</fullName></author><authorEmail>Anugraha@sutara.org</authorEmail><comment>add qr login flow
</comment><date>2025-12-16 16:43:18 +0530</date><id>4c8a97ce2e5ee958258b2bf34ff5cfefaf9c5309</id><msg>add qr login flow</msg><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/app/AppBar.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/composeResources/values/strings.xml</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/navigation/AppRoutes.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/manageaccount/ManageAccountViewModel.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/sharedschooldevicelogin/ScanQRCodeViewModel.kt</file></path><path><editType>edit</editType><file>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/PersonQrDataSourceDb.kt</file></path><path><editType>edit</editType><file>respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/PersonQrCodeDataSourceRepository.kt</file></path><path><editType>edit</editType><file>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/daos/PersonQrBadgeEntityDao.kt</file></path><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/person/manageaccount/ManageAccountScreen.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/SetUsernameAndPasswordViewModel.kt</file></path><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/person/setusernameandpassword/SetUsernameAndPasswordScreen.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/app/appstate/AppUiState.kt</file></path><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/shareddevicelogin/ScanQRCodeScreen.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/shareddevicelogin/ScanQRCodeScreen.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/manageaccount/ManageAccountViewModel.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/SetUsernameAndPasswordViewModel.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/person/setusernameandpassword/SetUsernameAndPasswordScreen.kt</affectedPath><commitId>06177cda745f0ee48093d9a5c9cac22a10eb5ad4</commitId><timestamp>1765950596000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/anugraha</absoluteUrl><fullName>Anugraha</fullName></author><authorEmail>Anugraha@sutara.org</authorEmail><comment>add refactor
</comment><date>2025-12-17 11:19:56 +0530</date><id>06177cda745f0ee48093d9a5c9cac22a10eb5ad4</id><msg>add refactor</msg><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/SetUsernameAndPasswordViewModel.kt</file></path><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/shareddevicelogin/ScanQRCodeScreen.kt</file></path><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/person/setusernameandpassword/SetUsernameAndPasswordScreen.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/manageaccount/ManageAccountViewModel.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/sharedschooldevicelogin/ScanQRCodeViewModel.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/shareddevicelogin/ScanQRCodeScreen.kt</affectedPath><commitId>927249d97cb11757ef2ab8515c702151139f6ddf</commitId><timestamp>1765960375000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/anugraha</absoluteUrl><fullName>Anugraha</fullName></author><authorEmail>Anugraha@sutara.org</authorEmail><comment>add refactor
</comment><date>2025-12-17 14:02:55 +0530</date><id>927249d97cb11757ef2ab8515c702151139f6ddf</id><msg>add refactor</msg><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/shareddevicelogin/ScanQRCodeScreen.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/sharedschooldevicelogin/ScanQRCodeViewModel.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/CreateAccountSetPasswordViewModel.kt</affectedPath><commitId>c6286a14b10de2fdd132e3d3f1db89bf55082703</commitId><timestamp>1765961069000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/anugraha</absoluteUrl><fullName>Anugraha</fullName></author><authorEmail>Anugraha@sutara.org</authorEmail><comment>add refactor
</comment><date>2025-12-17 14:14:29 +0530</date><id>c6286a14b10de2fdd132e3d3f1db89bf55082703</id><msg>add refactor</msg><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/CreateAccountSetPasswordViewModel.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>.maestro/flows/001_002_add_user_direct_test.yaml</affectedPath><commitId>bc3cd41b46b9653bec8ba58daa6486d3af48065f</commitId><timestamp>1765977119000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/pooja</absoluteUrl><fullName>Pooja Ravi</fullName></author><authorEmail>pooja@ustadmobile.com</authorEmail><comment>test added
</comment><date>2025-12-17 17:11:59 +0400</date><id>bc3cd41b46b9653bec8ba58daa6486d3af48065f</id><msg>test added</msg><path><editType>edit</editType><file>.maestro/flows/001_002_add_user_direct_test.yaml</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/shareddevicelogin/ScanQRCodeScreen.kt</affectedPath><commitId>1fcd7d7b84fabaa4f9aaa23be185111091cecdc2</commitId><timestamp>1766032890000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/anugraha</absoluteUrl><fullName>Anugraha</fullName></author><authorEmail>Anugraha@sutara.org</authorEmail><comment>refactor
</comment><date>2025-12-18 10:11:30 +0530</date><id>1fcd7d7b84fabaa4f9aaa23be185111091cecdc2</id><msg>refactor</msg><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/shareddevicelogin/ScanQRCodeScreen.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-lib-shared/src/jvmTest/kotlin/world/respect/shared/domain/account/AuthWithPasswordIntegrationTest.kt</affectedPath><affectedPath>respect-lib-shared/src/jvmTest/kotlin/world/respect/domain/account/invite/RedeemInviteIntegrationTest.kt</affectedPath><commitId>ca337fc7b5a15bc77acf07d22b9a4acad2220ec7</commitId><timestamp>1766037854000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/anugraha</absoluteUrl><fullName>Anugraha</fullName></author><authorEmail>Anugraha@sutara.org</authorEmail><comment>refactor
</comment><date>2025-12-18 11:34:14 +0530</date><id>ca337fc7b5a15bc77acf07d22b9a4acad2220ec7</id><msg>refactor</msg><path><editType>edit</editType><file>respect-lib-shared/src/jvmTest/kotlin/world/respect/shared/domain/account/AuthWithPasswordIntegrationTest.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/jvmTest/kotlin/world/respect/domain/account/invite/RedeemInviteIntegrationTest.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/person/manageaccount/ManageAccountScreen.kt</affectedPath><commitId>43aef2590b7bf09fc5b1a9afadfa75b88ad31ee1</commitId><timestamp>1766038149000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/anugraha</absoluteUrl><fullName>Anugraha</fullName></author><authorEmail>Anugraha@sutara.org</authorEmail><comment>refactor
</comment><date>2025-12-18 11:39:09 +0530</date><id>43aef2590b7bf09fc5b1a9afadfa75b88ad31ee1</id><msg>refactor</msg><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/person/manageaccount/ManageAccountScreen.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-lib-shared/src/commonMain/composeResources/values/strings.xml</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/CreateAccountSetPasswordViewModel.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/manageaccount/ManageAccountViewModel.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/person/manageaccount/ManageAccountScreen.kt</affectedPath><commitId>0f64b6c13a531e14248ae1a72976e55b341ca09d</commitId><timestamp>1766043418000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/anugraha</absoluteUrl><fullName>Anugraha</fullName></author><authorEmail>Anugraha@sutara.org</authorEmail><comment>add test tags
</comment><date>2025-12-18 13:06:58 +0530</date><id>0f64b6c13a531e14248ae1a72976e55b341ca09d</id><msg>add test tags</msg><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/manageaccount/ManageAccountViewModel.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/composeResources/values/strings.xml</file></path><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/person/manageaccount/ManageAccountScreen.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/CreateAccountSetPasswordViewModel.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>.maestro/flows/001_002_add_user_direct_test.yaml</affectedPath><commitId>801fbc412e67e6e913aba7abb3ec52ee3c2da050</commitId><timestamp>1766056842000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/pooja</absoluteUrl><fullName>Pooja Ravi</fullName></author><authorEmail>pooja@ustadmobile.com</authorEmail><comment>test added
</comment><date>2025-12-18 15:20:42 +0400</date><id>801fbc412e67e6e913aba7abb3ec52ee3c2da050</id><msg>test added</msg><path><editType>edit</editType><file>.maestro/flows/001_002_add_user_direct_test.yaml</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>.maestro/flows/001_002_add_user_direct_test.yaml</affectedPath><commitId>5fe4ed0469cee929c4f86592f3cce33831408a1b</commitId><timestamp>1766065558000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/pooja</absoluteUrl><fullName>Pooja Ravi</fullName></author><authorEmail>pooja@ustadmobile.com</authorEmail><comment>updated test
</comment><date>2025-12-18 17:45:58 +0400</date><id>5fe4ed0469cee929c4f86592f3cce33831408a1b</id><msg>updated test</msg><path><editType>edit</editType><file>.maestro/flows/001_002_add_user_direct_test.yaml</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-lib-shared/src/commonMain/composeResources/values/strings.xml</affectedPath><affectedPath>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/PersonQrDataSource.kt</affectedPath><affectedPath>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/PersonQrDataSourceDb.kt</affectedPath><affectedPath>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/daos/PersonQrBadgeEntityDao.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/shareddevicelogin/ScanQRCodeScreen.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/navigation/AppRoutes.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/sharedschooldevicelogin/ScanQRCodeViewModel.kt</affectedPath><affectedPath>respect-app-compose/src/androidMain/kotlin/world/respect/AppKoinModule.kt</affectedPath><affectedPath>respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/PersonQrCodeDataSourceRepository.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/manageaccount/ManageAccountViewModel.kt</affectedPath><affectedPath>respect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/PersonQrDataSourceHttp.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/validateqrbadge/ValidateQrCodeUseCase.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/SetUsernameAndPasswordViewModel.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/person/manageaccount/ManageAccountScreen.kt</affectedPath><commitId>dc9039a15e7e5133d869b29d6decd680f864d290</commitId><timestamp>1766121689000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/anugraha</absoluteUrl><fullName>Anugraha</fullName></author><authorEmail>Anugraha@sutara.org</authorEmail><comment>add validation
</comment><date>2025-12-19 10:51:29 +0530</date><id>dc9039a15e7e5133d869b29d6decd680f864d290</id><msg>add validation</msg><path><editType>edit</editType><file>respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/PersonQrCodeDataSourceRepository.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/composeResources/values/strings.xml</file></path><path><editType>add</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/validateqrbadge/ValidateQrCodeUseCase.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/SetUsernameAndPasswordViewModel.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/manageaccount/ManageAccountViewModel.kt</file></path><path><editType>edit</editType><file>respect-app-compose/src/androidMain/kotlin/world/respect/AppKoinModule.kt</file></path><path><editType>edit</editType><file>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/daos/PersonQrBadgeEntityDao.kt</file></path><path><editType>edit</editType><file>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/PersonQrDataSourceDb.kt</file></path><path><editType>edit</editType><file>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/PersonQrDataSource.kt</file></path><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/shareddevicelogin/ScanQRCodeScreen.kt</file></path><path><editType>edit</editType><file>respect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/PersonQrDataSourceHttp.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/navigation/AppRoutes.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/sharedschooldevicelogin/ScanQRCodeViewModel.kt</file></path><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/person/manageaccount/ManageAccountScreen.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>.maestro/flows/001_002_add_user_direct_test.yaml</affectedPath><commitId>fe768937b2f1a37d63e1c2311b0c5405bec4029b</commitId><timestamp>1766134838000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/pooja</absoluteUrl><fullName>Pooja Ravi</fullName></author><authorEmail>pooja@ustadmobile.com</authorEmail><comment>updated test
</comment><date>2025-12-19 13:00:38 +0400</date><id>fe768937b2f1a37d63e1c2311b0c5405bec4029b</id><msg>updated test</msg><path><editType>edit</editType><file>.maestro/flows/001_002_add_user_direct_test.yaml</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>.maestro/flows/001_002_add_user_direct_test.yaml</affectedPath><commitId>b8e3fa446ecd648b5b733c7cfea5dcad551c8f31</commitId><timestamp>1766136215000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/pooja</absoluteUrl><fullName>Pooja Ravi</fullName></author><authorEmail>pooja@ustadmobile.com</authorEmail><comment>updated test
</comment><date>2025-12-19 13:23:35 +0400</date><id>b8e3fa446ecd648b5b733c7cfea5dcad551c8f31</id><msg>updated test</msg><path><editType>edit</editType><file>.maestro/flows/001_002_add_user_direct_test.yaml</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/sharedschooldevicelogin/ScanQRCodeViewModel.kt</affectedPath><affectedPath>.maestro/flows/001_002_add_user_direct_test.yaml</affectedPath><commitId>e7eacd53a2a7388fbcb6d85d2502049cae6f8e9a</commitId><timestamp>1766152752000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/anugraha</absoluteUrl><fullName>Anugraha</fullName></author><authorEmail>Anugraha@sutara.org</authorEmail><comment>fix test
</comment><date>2025-12-19 19:29:12 +0530</date><id>e7eacd53a2a7388fbcb6d85d2502049cae6f8e9a</id><msg>fix test</msg><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/sharedschooldevicelogin/ScanQRCodeViewModel.kt</file></path><path><editType>edit</editType><file>.maestro/flows/001_002_add_user_direct_test.yaml</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-lib-shared/src/commonMain/composeResources/values/strings.xml</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/SetUsernameAndPasswordViewModel.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/person/manageaccount/ManageAccountScreen.kt</affectedPath><commitId>8c8cb0e0252a8fc97a574ccb99271d58650b5e51</commitId><timestamp>1766462314000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/anugraha</absoluteUrl><fullName>Anugraha</fullName></author><authorEmail>Anugraha@sutara.org</authorEmail><comment>add validation
</comment><date>2025-12-23 09:28:34 +0530</date><id>8c8cb0e0252a8fc97a574ccb99271d58650b5e51</id><msg>add validation</msg><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/person/manageaccount/ManageAccountScreen.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/composeResources/values/strings.xml</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/SetUsernameAndPasswordViewModel.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>.maestro/flows/001_002_add_user_direct_test.yaml</affectedPath><commitId>a5d3f615d74cd3d71356bed9841b5eb7ab9bd091</commitId><timestamp>1766576027000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/pooja</absoluteUrl><fullName>Pooja Ravi</fullName></author><authorEmail>pooja@ustadmobile.com</authorEmail><comment>updated test flow
</comment><date>2025-12-24 15:33:47 +0400</date><id>a5d3f615d74cd3d71356bed9841b5eb7ab9bd091</id><msg>updated test flow</msg><path><editType>edit</editType><file>.maestro/flows/001_002_add_user_direct_test.yaml</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>.maestro/flows/001_002_add_user_direct_test.yaml</affectedPath><commitId>b0696c8d850af3f0f5751183fecfae8caec5f1a9</commitId><timestamp>1766577508000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/pooja</absoluteUrl><fullName>Pooja Ravi</fullName></author><authorEmail>pooja@ustadmobile.com</authorEmail><comment>updated test
</comment><date>2025-12-24 15:58:28 +0400</date><id>b0696c8d850af3f0f5751183fecfae8caec5f1a9</id><msg>updated test</msg><path><editType>edit</editType><file>.maestro/flows/001_002_add_user_direct_test.yaml</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/navigation/AppRoutes.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/CreateAccountSetPasswordViewModel.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/manageaccount/ManageAccountViewModel.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/validateqrbadge/ValidateQrCodeUseCase.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/SetUsernameAndPasswordViewModel.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/sharedschooldevicelogin/ScanQRCodeViewModel.kt</affectedPath><commitId>a69c326e6ffa95d60aa1ceb9712de338142d57bf</commitId><timestamp>1767097156000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/anugraha</absoluteUrl><fullName>Anugraha</fullName></author><authorEmail>Anugraha@sutara.org</authorEmail><comment>update create accound screen
</comment><date>2025-12-30 17:49:16 +0530</date><id>a69c326e6ffa95d60aa1ceb9712de338142d57bf</id><msg>update create accound screen</msg><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/manageaccount/ManageAccountViewModel.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/validateqrbadge/ValidateQrCodeUseCase.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/SetUsernameAndPasswordViewModel.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/sharedschooldevicelogin/ScanQRCodeViewModel.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/navigation/AppRoutes.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/CreateAccountSetPasswordViewModel.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-lib-shared/src/commonMain/composeResources/values/strings.xml</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/util/ext/PersonExt.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/manageaccount/ManageAccountViewModel.kt</affectedPath><affectedPath>.maestro/flows/001_002_add_user_direct_test.yaml</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/SetUsernameAndPasswordViewModel.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/person/setusernameandpassword/SetUsernameAndPasswordScreen.kt</affectedPath><commitId>1c7437aeb7b9e39fbb417811c0456ce259ddbecc</commitId><timestamp>1767114487000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/anugraha</absoluteUrl><fullName>Anugraha</fullName></author><authorEmail>Anugraha@sutara.org</authorEmail><comment>fix test
</comment><date>2025-12-30 22:38:07 +0530</date><id>1c7437aeb7b9e39fbb417811c0456ce259ddbecc</id><msg>fix test</msg><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/SetUsernameAndPasswordViewModel.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/util/ext/PersonExt.kt</file></path><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/person/setusernameandpassword/SetUsernameAndPasswordScreen.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/manageaccount/ManageAccountViewModel.kt</file></path><path><editType>edit</editType><file>.maestro/flows/001_002_add_user_direct_test.yaml</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/composeResources/values/strings.xml</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/SetUsernameAndPasswordViewModel.kt</affectedPath><commitId>6ed681d79f66132537e4de61f288e0ac7165f195</commitId><timestamp>1767115767000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/anugraha</absoluteUrl><fullName>Anugraha</fullName></author><authorEmail>Anugraha@sutara.org</authorEmail><comment>fix test
</comment><date>2025-12-30 22:59:27 +0530</date><id>6ed681d79f66132537e4de61f288e0ac7165f195</id><msg>fix test</msg><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/SetUsernameAndPasswordViewModel.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>.maestro/flows/001_002_add_user_direct_test.yaml</affectedPath><commitId>2521e0f65acb48b2b7e2be3b416a6296bb1bedd8</commitId><timestamp>1767159445000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/anugraha</absoluteUrl><fullName>Anugraha</fullName></author><authorEmail>Anugraha@sutara.org</authorEmail><comment>fix test
</comment><date>2025-12-31 11:07:25 +0530</date><id>2521e0f65acb48b2b7e2be3b416a6296bb1bedd8</id><msg>fix test</msg><path><editType>edit</editType><file>.maestro/flows/001_002_add_user_direct_test.yaml</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/person/setusernameandpassword/SetUsernameAndPasswordScreen.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/shareddevicelogin/ScanQRCodeScreen.kt</affectedPath><commitId>915278ea88ae8a0d867fbc5e0c114ab17ec35fd2</commitId><timestamp>1767160227000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/anugraha</absoluteUrl><fullName>Anugraha</fullName></author><authorEmail>Anugraha@sutara.org</authorEmail><comment>fix test
</comment><date>2025-12-31 11:20:27 +0530</date><id>915278ea88ae8a0d867fbc5e0c114ab17ec35fd2</id><msg>fix test</msg><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/person/setusernameandpassword/SetUsernameAndPasswordScreen.kt</file></path><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/shareddevicelogin/ScanQRCodeScreen.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/shareddevicelogin/ScanQRCodeScreen.kt</affectedPath><commitId>670d57b479c56cfb52fa2c38dcee8cedb808b45f</commitId><timestamp>1767161107000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/anugraha</absoluteUrl><fullName>Anugraha</fullName></author><authorEmail>Anugraha@sutara.org</authorEmail><comment>fix test
</comment><date>2025-12-31 11:35:07 +0530</date><id>670d57b479c56cfb52fa2c38dcee8cedb808b45f</id><msg>fix test</msg><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/shareddevicelogin/ScanQRCodeScreen.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>.maestro/flows/001_002_add_user_direct_test.yaml</affectedPath><commitId>65573370e9537b24bc17e332ab85dab78d978214</commitId><timestamp>1767170003000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/pooja</absoluteUrl><fullName>Pooja Ravi</fullName></author><authorEmail>pooja@ustadmobile.com</authorEmail><comment>updated test flow
</comment><date>2025-12-31 12:33:23 +0400</date><id>65573370e9537b24bc17e332ab85dab78d978214</id><msg>updated test flow</msg><path><editType>edit</editType><file>.maestro/flows/001_002_add_user_direct_test.yaml</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/CreateAccountSetPasswordViewModel.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/shareddevicelogin/ScanQRCodeScreen.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/sharedschooldevicelogin/ScanQRCodeViewModel.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/SetUsernameAndPasswordViewModel.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/person/manageaccount/ManageAccountScreen.kt</affectedPath><commitId>7bc84b4016c26b3475f00c60d496996a24cc1582</commitId><timestamp>1767172523000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/anugraha</absoluteUrl><fullName>Anugraha</fullName></author><authorEmail>Anugraha@sutara.org</authorEmail><comment>fix  popup menu
</comment><date>2025-12-31 14:45:23 +0530</date><id>7bc84b4016c26b3475f00c60d496996a24cc1582</id><msg>fix  popup menu</msg><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/sharedschooldevicelogin/ScanQRCodeViewModel.kt</file></path><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/person/manageaccount/ManageAccountScreen.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/CreateAccountSetPasswordViewModel.kt</file></path><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/shareddevicelogin/ScanQRCodeScreen.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/SetUsernameAndPasswordViewModel.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-server/src/main/kotlin/world/respect/server/routes/qrcode/QrCodeRoute.kt</affectedPath><affectedPath>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/writequeue/WriteQueueItem.kt</affectedPath><affectedPath>respect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/PersonQrDataSourceHttp.kt</affectedPath><affectedPath>respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/writequeue/DrainRemoteWriteQueueUseCase.kt</affectedPath><affectedPath>respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/PersonQrCodeDataSourceRepository.kt</affectedPath><commitId>4432768f4f73f3bd437dbeb7a75ee64c1220cb84</commitId><timestamp>1767174384000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/anugraha</absoluteUrl><fullName>Anugraha</fullName></author><authorEmail>Anugraha@sutara.org</authorEmail><comment>fix revoke qr
</comment><date>2025-12-31 15:16:24 +0530</date><id>4432768f4f73f3bd437dbeb7a75ee64c1220cb84</id><msg>fix revoke qr</msg><path><editType>edit</editType><file>respect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/PersonQrDataSourceHttp.kt</file></path><path><editType>edit</editType><file>respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/PersonQrCodeDataSourceRepository.kt</file></path><path><editType>edit</editType><file>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/writequeue/WriteQueueItem.kt</file></path><path><editType>edit</editType><file>respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/writequeue/DrainRemoteWriteQueueUseCase.kt</file></path><path><editType>edit</editType><file>respect-server/src/main/kotlin/world/respect/server/routes/qrcode/QrCodeRoute.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/navigation/AppRoutes.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/CreateAccountSetPasswordViewModel.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/sharedschooldevicelogin/ScanQRCodeViewModel.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/shareddevicelogin/ScanQRCodeScreen.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/app/AppNavHost.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/SetUsernameAndPasswordViewModel.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/person/manageaccount/ManageAccountScreen.kt</affectedPath><commitId>881292056fd4a1fa40e64208b83ccacf6db7469b</commitId><timestamp>1767181334000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/anugraha</absoluteUrl><fullName>Anugraha</fullName></author><authorEmail>Anugraha@sutara.org</authorEmail><comment>code refactor
</comment><date>2025-12-31 17:12:14 +0530</date><id>881292056fd4a1fa40e64208b83ccacf6db7469b</id><msg>code refactor</msg><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/person/manageaccount/ManageAccountScreen.kt</file></path><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/app/AppNavHost.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/SetUsernameAndPasswordViewModel.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/sharedschooldevicelogin/ScanQRCodeViewModel.kt</file></path><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/shareddevicelogin/ScanQRCodeScreen.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/navigation/AppRoutes.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/CreateAccountSetPasswordViewModel.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>.maestro/flows/subflows/assign_qr_badge_flow.yaml</affectedPath><affectedPath>.maestro/flows/001_002_add_user_direct_test.yaml</affectedPath><commitId>2bc1067f6c9cbcb0a00a46ddfb37dceea8ff48b1</commitId><timestamp>1767187547000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/pooja</absoluteUrl><fullName>Pooja Ravi</fullName></author><authorEmail>pooja@ustadmobile.com</authorEmail><comment>updated test as per comments
</comment><date>2025-12-31 17:25:47 +0400</date><id>2bc1067f6c9cbcb0a00a46ddfb37dceea8ff48b1</id><msg>updated test as per comments</msg><path><editType>add</editType><file>.maestro/flows/subflows/assign_qr_badge_flow.yaml</file></path><path><editType>edit</editType><file>.maestro/flows/001_002_add_user_direct_test.yaml</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>.maestro/flows/subflows/assign_qr_badge_flow.yaml</affectedPath><affectedPath>.maestro/flows/001_002_add_user_direct_test.yaml</affectedPath><commitId>ae9c33681028799ef1e4f0e77896dd9a299cc7ed</commitId><timestamp>1767187838000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/pooja</absoluteUrl><fullName>Pooja Ravi</fullName></author><authorEmail>pooja@ustadmobile.com</authorEmail><comment>updated test as per comments
</comment><date>2025-12-31 17:30:38 +0400</date><id>ae9c33681028799ef1e4f0e77896dd9a299cc7ed</id><msg>updated test as per comments</msg><path><editType>edit</editType><file>.maestro/flows/subflows/assign_qr_badge_flow.yaml</file></path><path><editType>edit</editType><file>.maestro/flows/001_002_add_user_direct_test.yaml</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>.maestro/flows/001_002_add_user_direct_test.yaml</affectedPath><commitId>73de0e585e195e4d8bb9de8cb0a0b1a7a13f702e</commitId><timestamp>1767333315000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/pooja</absoluteUrl><fullName>Pooja Ravi</fullName></author><authorEmail>pooja@ustadmobile.com</authorEmail><comment>updated test- added assignment flow
</comment><date>2026-01-02 09:55:15 +0400</date><id>73de0e585e195e4d8bb9de8cb0a0b1a7a13f702e</id><msg>updated test- added assignment flow</msg><path><editType>edit</editType><file>.maestro/flows/001_002_add_user_direct_test.yaml</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>.maestro/flows/001_002_add_user_direct_test.yaml</affectedPath><commitId>d426a7f2c5c787142555e4fc3c042bf3c07c273b</commitId><timestamp>1767334848000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/pooja</absoluteUrl><fullName>Pooja Ravi</fullName></author><authorEmail>pooja@ustadmobile.com</authorEmail><comment>updated test- added assignment flow
</comment><date>2026-01-02 10:20:48 +0400</date><id>d426a7f2c5c787142555e4fc3c042bf3c07c273b</id><msg>updated test- added assignment flow</msg><path><editType>edit</editType><file>.maestro/flows/001_002_add_user_direct_test.yaml</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/util/ext/AppStateIconExtensions.kt</affectedPath><affectedPath>respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/writequeue/DrainRemoteWriteQueueUseCase.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/manageuser/getstarted/GetStartedScreen.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/app/appstate/AppStateIcon.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/shareddevicelogin/ScanQRCodeScreen.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/person/setusernameandpassword/SetUsernameAndPasswordScreen.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/images/RespectImage.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/composeResources/drawable/fingerprint.png</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/app/appstate/AppActionButton.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/app/AppBar.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/sharedschooldevicelogin/ScanQRCodeViewModel.kt</affectedPath><affectedPath>respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/PersonQrCodeDataSourceRepository.kt</affectedPath><affectedPath>respect-server/src/main/kotlin/world/respect/server/routes/qrcode/QrCodeRoute.kt</affectedPath><affectedPath>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/writequeue/WriteQueueItem.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/manageaccount/ManageAccountViewModel.kt</affectedPath><affectedPath>respect-app-compose/src/androidMain/kotlin/world/respect/images/RespectImage.android.kt</affectedPath><affectedPath>respect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/PersonQrDataSourceHttp.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/util/UrlParser.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/app/appstate/AppUiState.kt</affectedPath><affectedPath>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/model/PersonBadge.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/person/manageaccount/ManageAccountScreen.kt</affectedPath><commitId>bafc6e0046c1ab9aba0a85b70b8252cfe17c61b2</commitId><timestamp>1767595712000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/anugraha</absoluteUrl><fullName>Anugraha</fullName></author><authorEmail>Anugraha@sutara.org</authorEmail><comment>fix comments
</comment><date>2026-01-05 12:18:32 +0530</date><id>bafc6e0046c1ab9aba0a85b70b8252cfe17c61b2</id><msg>fix comments</msg><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/person/manageaccount/ManageAccountScreen.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/manageaccount/ManageAccountViewModel.kt</file></path><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/person/setusernameandpassword/SetUsernameAndPasswordScreen.kt</file></path><path><editType>edit</editType><file>respect-server/src/main/kotlin/world/respect/server/routes/qrcode/QrCodeRoute.kt</file></path><path><editType>edit</editType><file>respect-app-compose/src/androidMain/kotlin/world/respect/images/RespectImage.android.kt</file></path><path><editType>edit</editType><file>respect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/PersonQrDataSourceHttp.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/app/appstate/AppStateIcon.kt</file></path><path><editType>add</editType><file>respect-lib-shared/src/commonMain/composeResources/drawable/fingerprint.png</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/app/appstate/AppActionButton.kt</file></path><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/manageuser/getstarted/GetStartedScreen.kt</file></path><path><editType>edit</editType><file>respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/writequeue/DrainRemoteWriteQueueUseCase.kt</file></path><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/shareddevicelogin/ScanQRCodeScreen.kt</file></path><path><editType>edit</editType><file>respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/PersonQrCodeDataSourceRepository.kt</file></path><path><editType>edit</editType><file>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/writequeue/WriteQueueItem.kt</file></path><path><editType>add</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/util/UrlParser.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/app/appstate/AppUiState.kt</file></path><path><editType>edit</editType><file>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/model/PersonBadge.kt</file></path><path><editType>add</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/util/ext/AppStateIconExtensions.kt</file></path><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/images/RespectImage.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/sharedschooldevicelogin/ScanQRCodeViewModel.kt</file></path><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/app/AppBar.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/SetUsernameAndPasswordViewModel.kt</affectedPath><affectedPath>respect-datalayer-db/schemas/world.respect.datalayer.db.RespectSchoolDatabase/10.json</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/manageaccount/ManageAccountViewModel.kt</affectedPath><commitId>524ea1e54058c099fb28a472a8f1cc99203713ec</commitId><timestamp>1767597629000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/anugraha</absoluteUrl><fullName>Anugraha</fullName></author><authorEmail>Anugraha@sutara.org</authorEmail><comment>fix cconflict
</comment><date>2026-01-05 12:50:29 +0530</date><id>524ea1e54058c099fb28a472a8f1cc99203713ec</id><msg>fix cconflict</msg><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/SetUsernameAndPasswordViewModel.kt</file></path><path><editType>edit</editType><file>respect-datalayer-db/schemas/world.respect.datalayer.db.RespectSchoolDatabase/10.json</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/manageaccount/ManageAccountViewModel.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>.maestro/flows/001_002_add_user_direct_test.yaml</affectedPath><commitId>8b7699c21ad2e470732a33af39e46256c9010702</commitId><timestamp>1767605605000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/pooja</absoluteUrl><fullName>Pooja Ravi</fullName></author><authorEmail>pooja@ustadmobile.com</authorEmail><comment>updated test- added assignment flow
</comment><date>2026-01-05 13:33:25 +0400</date><id>8b7699c21ad2e470732a33af39e46256c9010702</id><msg>updated test- added assignment flow</msg><path><editType>edit</editType><file>.maestro/flows/001_002_add_user_direct_test.yaml</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>.maestro/flows/001_002_add_user_direct_test.yaml</affectedPath><commitId>da71fdb6b3c7b5b69cf9476dbf48e4c6d8e8cea6</commitId><timestamp>1767605615000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/pooja</absoluteUrl><fullName>Pooja Ravi</fullName></author><authorEmail>pooja@ustadmobile.com</authorEmail><comment>updated test- added assignment flow
</comment><date>2026-01-05 13:33:35 +0400</date><id>da71fdb6b3c7b5b69cf9476dbf48e4c6d8e8cea6</id><msg>updated test- added assignment flow</msg><path><editType>edit</editType><file>.maestro/flows/001_002_add_user_direct_test.yaml</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/PersonQrDataSource.kt</affectedPath><affectedPath>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/PersonQrDataSourceDb.kt</affectedPath><affectedPath>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/daos/PersonQrBadgeEntityDao.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/CreateAccountSetUserNameViewModel.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/detail/PersonDetailViewModel.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/shareddevicelogin/ScanQRCodeScreen.kt</affectedPath><affectedPath>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/adapters/PersonQrCodeAdapter.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/person/setusernameandpassword/SetUsernameAndPasswordScreen.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/navigation/AppRoutes.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/sharedschooldevicelogin/ScanQRCodeViewModel.kt</affectedPath><affectedPath>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/entities/PersonQrCodeEntity.kt</affectedPath><affectedPath>respect-app-compose/src/androidMain/kotlin/world/respect/AppKoinModule.kt</affectedPath><affectedPath>respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/PersonQrCodeDataSourceRepository.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/ext/NextAfterScan.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/manageaccount/ManageAccountViewModel.kt</affectedPath><affectedPath>respect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/PersonQrDataSourceHttp.kt</affectedPath><affectedPath>respect-datalayer-db/schemas/world.respect.datalayer.db.RespectSchoolDatabase/10.json</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/SetUsernameAndPasswordViewModel.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/validateqrbadge/ValidateQrCodeUseCase.kt</affectedPath><affectedPath>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/PersonQrBadgeDataSourceExt.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/app/AppNavHost.kt</affectedPath><commitId>4099456112d4f4031b062831015499aad6f19fd4</commitId><timestamp>1767699201000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/anugraha</absoluteUrl><fullName>Anugraha</fullName></author><authorEmail>Anugraha@sutara.org</authorEmail><comment>fix qr code delete function
</comment><date>2026-01-06 17:03:21 +0530</date><id>4099456112d4f4031b062831015499aad6f19fd4</id><msg>fix qr code delete function</msg><path><editType>edit</editType><file>respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/PersonQrCodeDataSourceRepository.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/manageaccount/ManageAccountViewModel.kt</file></path><path><editType>edit</editType><file>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/PersonQrDataSource.kt</file></path><path><editType>add</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/ext/NextAfterScan.kt</file></path><path><editType>edit</editType><file>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/daos/PersonQrBadgeEntityDao.kt</file></path><path><editType>edit</editType><file>respect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/PersonQrDataSourceHttp.kt</file></path><path><editType>add</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/CreateAccountSetUserNameViewModel.kt</file></path><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/person/setusernameandpassword/SetUsernameAndPasswordScreen.kt</file></path><path><editType>edit</editType><file>respect-datalayer-db/schemas/world.respect.datalayer.db.RespectSchoolDatabase/10.json</file></path><path><editType>edit</editType><file>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/entities/PersonQrCodeEntity.kt</file></path><path><editType>delete</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/SetUsernameAndPasswordViewModel.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/validateqrbadge/ValidateQrCodeUseCase.kt</file></path><path><editType>edit</editType><file>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/PersonQrBadgeDataSourceExt.kt</file></path><path><editType>edit</editType><file>respect-app-compose/src/androidMain/kotlin/world/respect/AppKoinModule.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/navigation/AppRoutes.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/sharedschooldevicelogin/ScanQRCodeViewModel.kt</file></path><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/app/AppNavHost.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/detail/PersonDetailViewModel.kt</file></path><path><editType>edit</editType><file>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/adapters/PersonQrCodeAdapter.kt</file></path><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/shareddevicelogin/ScanQRCodeScreen.kt</file></path><path><editType>edit</editType><file>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/PersonQrDataSourceDb.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-server/src/main/kotlin/world/respect/server/routes/qrcode/QrCodeRoute.kt</affectedPath><commitId>e3dcdaef343f0931eb2016fdf55f1365b0748c04</commitId><timestamp>1767760527000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/anugraha</absoluteUrl><fullName>Anugraha</fullName></author><authorEmail>Anugraha@sutara.org</authorEmail><comment>fix build failure
</comment><date>2026-01-07 10:05:27 +0530</date><id>e3dcdaef343f0931eb2016fdf55f1365b0748c04</id><msg>fix build failure</msg><path><editType>edit</editType><file>respect-server/src/main/kotlin/world/respect/server/routes/qrcode/QrCodeRoute.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/ext/NextAfterScan.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/CreateAccountSetUserNameViewModel.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/shareddevicelogin/ScanQRCodeScreen.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/manageaccount/ManageAccountViewModel.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/sharedschooldevicelogin/ScanQRCodeViewModel.kt</affectedPath><commitId>9fdd846dd8c1d7a915e7856ce5083941ffb75fa0</commitId><timestamp>1767765086000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/anugraha</absoluteUrl><fullName>Anugraha</fullName></author><authorEmail>Anugraha@sutara.org</authorEmail><comment>refactor
</comment><date>2026-01-07 11:21:26 +0530</date><id>9fdd846dd8c1d7a915e7856ce5083941ffb75fa0</id><msg>refactor</msg><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/shareddevicelogin/ScanQRCodeScreen.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/manageaccount/ManageAccountViewModel.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/ext/NextAfterScan.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/sharedschooldevicelogin/ScanQRCodeViewModel.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/CreateAccountSetUserNameViewModel.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/shareddevicelogin/ScanQRCodeScreen.kt</affectedPath><commitId>9f0fe133650f50d8cd964d813f69a142a3fd61cc</commitId><timestamp>1768310001000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/mike</absoluteUrl><fullName>Mike Dawson</fullName></author><authorEmail>mike@ustadmobile.com</authorEmail><comment>Remove gap on top of Scan QR code screen that should not have been there.
</comment><date>2026-01-13 17:13:21 +0400</date><id>9f0fe133650f50d8cd964d813f69a142a3fd61cc</id><msg>Remove gap on top of Scan QR code screen that should not have been there.</msg><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/shareddevicelogin/ScanQRCodeScreen.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>.maestro/flows/001_002_add_user_direct_test.yaml</affectedPath><commitId>4ff80d2eb7dd31b51c9cd9bf12737884a56be83e</commitId><timestamp>1768313739000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/pooja</absoluteUrl><fullName>Pooja Ravi</fullName></author><authorEmail>pooja@ustadmobile.com</authorEmail><comment>updated test-resolved merge conflicts
</comment><date>2026-01-13 18:15:39 +0400</date><id>4ff80d2eb7dd31b51c9cd9bf12737884a56be83e</id><msg>updated test-resolved merge conflicts</msg><path><editType>edit</editType><file>.maestro/flows/001_002_add_user_direct_test.yaml</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/app/AppBar.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/sharedschooldevicelogin/ScanQRCodeViewModel.kt</affectedPath><affectedPath>respect-app-compose/src/androidMain/kotlin/world/respect/AppKoinModule.kt</affectedPath><affectedPath>respect-app-compose/build.gradle.kts</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/scanqrcode/ScanQRCodeScreen.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/shareddevicelogin/ScanQRCodeScreen.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/app/AppNavHost.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/scanqrcode/ScanQRCodeViewModel.kt</affectedPath><commitId>092160e5fb042cf2df38f1c989f128c5505e2099</commitId><timestamp>1768316270000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/mike</absoluteUrl><fullName>Mike Dawson</fullName></author><authorEmail>mike@ustadmobile.com</authorEmail><comment>Minor tidyups:

a) Rename QR code screen and viewmodel package to scanqrcode (not shareddevicelogin) because the Scan QR code function will be used for more than just badge login
b) Minor formatting fixes for AppBar (avoid line overrun)
</comment><date>2026-01-13 18:57:50 +0400</date><id>092160e5fb042cf2df38f1c989f128c5505e2099</id><msg>Minor tidyups:</msg><path><editType>delete</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/shareddevicelogin/ScanQRCodeScreen.kt</file></path><path><editType>delete</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/sharedschooldevicelogin/ScanQRCodeViewModel.kt</file></path><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/app/AppBar.kt</file></path><path><editType>edit</editType><file>respect-app-compose/build.gradle.kts</file></path><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/app/AppNavHost.kt</file></path><path><editType>add</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/scanqrcode/ScanQRCodeScreen.kt</file></path><path><editType>add</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/scanqrcode/ScanQRCodeViewModel.kt</file></path><path><editType>edit</editType><file>respect-app-compose/src/androidMain/kotlin/world/respect/AppKoinModule.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/scanqrcode/ScanQRCodeScreen.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/scanqrcode/ScanQRCodeViewModel.kt</affectedPath><commitId>92d7f8189d0243896b73fbd7358647678fee19ce</commitId><timestamp>1768317223000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/mike</absoluteUrl><fullName>Mike Dawson</fullName></author><authorEmail>mike@ustadmobile.com</authorEmail><comment>ScanQRCodeViewModel: should accept account manager as a normal dependency
Remove duplicate error messages from uistate. Should have only one error message.
Remove UiStates isloading - this should use launchWithLoadingIndicator and appstate's loading state (which is connected to the appbar and will automatically show a progress indicator accordingly).
</comment><date>2026-01-13 19:13:43 +0400</date><id>92d7f8189d0243896b73fbd7358647678fee19ce</id><msg>ScanQRCodeViewModel: should accept account manager as a normal dependency</msg><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/scanqrcode/ScanQRCodeViewModel.kt</file></path><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/scanqrcode/ScanQRCodeScreen.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-lib-shared/src/commonMain/composeResources/values/strings.xml</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/validateqrbadge/ValidateQrCodeUseCase.kt</affectedPath><commitId>7c1bbd436075fe605b8e363b9e80b255ad1e2d8f</commitId><timestamp>1768368838000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/anugraha</absoluteUrl><fullName>Anugraha</fullName></author><authorEmail>Anugraha@sutara.org</authorEmail><comment>fix test
</comment><date>2026-01-14 11:03:58 +0530</date><id>7c1bbd436075fe605b8e363b9e80b255ad1e2d8f</id><msg>fix test</msg><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/composeResources/values/strings.xml</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/validateqrbadge/ValidateQrCodeUseCase.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-lib-shared/src/commonMain/composeResources/values/strings.xml</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/scanqrcode/ScanQRCodeScreen.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/validateqrbadge/ValidateQrCodeUseCase.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/scanqrcode/ScanQRCodeViewModel.kt</affectedPath><commitId>9901224b918beca894e77668cd4e7eb703236e35</commitId><timestamp>1768382915000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/anugraha</absoluteUrl><fullName>Anugraha</fullName></author><authorEmail>Anugraha@sutara.org</authorEmail><comment>add invalid qr code ui part
</comment><date>2026-01-14 14:58:35 +0530</date><id>9901224b918beca894e77668cd4e7eb703236e35</id><msg>add invalid qr code ui part</msg><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/scanqrcode/ScanQRCodeViewModel.kt</file></path><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/scanqrcode/ScanQRCodeScreen.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/composeResources/values/strings.xml</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/validateqrbadge/ValidateQrCodeUseCase.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/scanqrcode/ScanQRCodeViewModel.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/manageaccount/ManageAccountViewModel.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/person/manageaccount/ManageAccountScreen.kt</affectedPath><commitId>6715826b1773888a4cd4a22d5fea65cac73ee927</commitId><timestamp>1768384040000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/anugraha</absoluteUrl><fullName>Anugraha</fullName></author><authorEmail>Anugraha@sutara.org</authorEmail><comment>remove qrCodeBadgeError from manageaccountviewmodel
</comment><date>2026-01-14 15:17:20 +0530</date><id>6715826b1773888a4cd4a22d5fea65cac73ee927</id><msg>remove qrCodeBadgeError from manageaccountviewmodel</msg><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/manageaccount/ManageAccountViewModel.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/scanqrcode/ScanQRCodeViewModel.kt</file></path><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/person/manageaccount/ManageAccountScreen.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>.maestro/flows/001_002_add_user_direct_test.yaml</affectedPath><commitId>c9dde0b32fa524fed1012727692aef84380f7ca8</commitId><timestamp>1768392736000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/pooja</absoluteUrl><fullName>Pooja Ravi</fullName></author><authorEmail>pooja@ustadmobile.com</authorEmail><comment>updated test - error
</comment><date>2026-01-14 16:12:16 +0400</date><id>c9dde0b32fa524fed1012727692aef84380f7ca8</id><msg>updated test - error</msg><path><editType>edit</editType><file>.maestro/flows/001_002_add_user_direct_test.yaml</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/scanqrcode/ScanQRCodeScreen.kt</affectedPath><commitId>8ea3a38b49b9ec887cd96c545a182ac905d99a64</commitId><timestamp>1768456145000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/anugraha</absoluteUrl><fullName>Anugraha</fullName></author><authorEmail>Anugraha@sutara.org</authorEmail><comment>fix landscape mode
</comment><date>2026-01-15 11:19:05 +0530</date><id>8ea3a38b49b9ec887cd96c545a182ac905d99a64</id><msg>fix landscape mode</msg><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/scanqrcode/ScanQRCodeScreen.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/scanqrcode/ScanQRCodeViewModel.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/app/appstate/AppActionButton.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/app/AppBar.kt</affectedPath><commitId>6659bccefdd6c8491d9e1779eef88466b26981ea</commitId><timestamp>1768564544000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/mike</absoluteUrl><fullName>Mike Dawson</fullName></author><authorEmail>mike@ustadmobile.com</authorEmail><comment>Change AppActionButton contentDescription to use UiText instead of string.
</comment><date>2026-01-16 15:55:44 +0400</date><id>6659bccefdd6c8491d9e1779eef88466b26981ea</id><msg>Change AppActionButton contentDescription to use UiText instead of string.</msg><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/scanqrcode/ScanQRCodeViewModel.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/app/appstate/AppActionButton.kt</file></path><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/app/AppBar.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/app/AppBar.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/manageaccount/ManageAccountViewModel.kt</affectedPath><commitId>5f533721228a5e8deb87303bde33bd1f39adf00f</commitId><timestamp>1768565527000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/mike</absoluteUrl><fullName>Mike Dawson</fullName></author><authorEmail>mike@ustadmobile.com</authorEmail><comment>Fix ManageAccountViewModel : remove race condition created by calling .launch twice for a single operation.
</comment><date>2026-01-16 16:12:07 +0400</date><id>5f533721228a5e8deb87303bde33bd1f39adf00f</id><msg>Fix ManageAccountViewModel : remove race condition created by calling .launch twice for a single operation.</msg><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/app/AppBar.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/manageaccount/ManageAccountViewModel.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/adapters/PersonQrBadgeAdapter.kt</affectedPath><affectedPath>respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/writequeue/DrainRemoteWriteQueueUseCase.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/CreateAccountSetUserNameViewModel.kt</affectedPath><affectedPath>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/adapters/PersonQrCodeAdapter.kt</affectedPath><affectedPath>respect-credentials/src/commonMain/kotlin/world/respect/credentials/passkey/RespectCredential.kt</affectedPath><affectedPath>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/PersonQrBadgeDataSourceDb.kt</affectedPath><affectedPath>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/RespectSchoolDatabase.kt</affectedPath><affectedPath>respect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/SchoolDataSourceHttp.kt</affectedPath><affectedPath>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/model/PersonQrBadge.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/manageaccount/ManageAccountViewModel.kt</affectedPath><affectedPath>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/PersonQrBadgeDataSourceExt.kt</affectedPath><affectedPath>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/entities/PersonQrBadgeEntity.kt</affectedPath><affectedPath>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/SchoolDataSource.kt</affectedPath><affectedPath>respect-server/src/main/kotlin/world/respect/server/Application.kt</affectedPath><affectedPath>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/PersonQrCodeBadgeDataSourceLocal.kt</affectedPath><affectedPath>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/PersonQrBadgeDataSource.kt</affectedPath><affectedPath>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/PersonQrDataSource.kt</affectedPath><affectedPath>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/PersonQrDataSourceDb.kt</affectedPath><affectedPath>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/daos/PersonQrBadgeEntityDao.kt</affectedPath><affectedPath>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/SchoolDataSourceDb.kt</affectedPath><affectedPath>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/PersonQrCodeDataSourceLocal.kt</affectedPath><affectedPath>respect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/PersonQrBadgeDataSourceHttp.kt</affectedPath><affectedPath>respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/PersonQrCodeBadgeDataSourceRepository.kt</affectedPath><affectedPath>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/entities/PersonQrCodeEntity.kt</affectedPath><affectedPath>respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/PersonQrCodeDataSourceRepository.kt</affectedPath><affectedPath>respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/SchoolDataSourceRepository.kt</affectedPath><affectedPath>respect-server/src/main/kotlin/world/respect/server/routes/qrcode/QrCodeRoute.kt</affectedPath><affectedPath>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/SchoolDataSourceLocal.kt</affectedPath><affectedPath>respect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/PersonQrDataSourceHttp.kt</affectedPath><affectedPath>respect-server/src/main/kotlin/world/respect/server/routes/qrcode/PersonQrBadgeRoute.kt</affectedPath><affectedPath>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/model/PersonBadge.kt</affectedPath><commitId>435971fd8d72873ad2551abbbe65d3de97c5f230</commitId><timestamp>1768568786000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/mike</absoluteUrl><fullName>Mike Dawson</fullName></author><authorEmail>mike@ustadmobile.com</authorEmail><comment>Refactor for consistent naming on PersonQrBadge entity.

Previously some parts were called PersonBadge, some PersonQr. Needs to be consistent.
</comment><date>2026-01-16 17:06:26 +0400</date><id>435971fd8d72873ad2551abbbe65d3de97c5f230</id><msg>Refactor for consistent naming on PersonQrBadge entity.</msg><path><editType>edit</editType><file>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/SchoolDataSourceDb.kt</file></path><path><editType>add</editType><file>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/adapters/PersonQrBadgeAdapter.kt</file></path><path><editType>delete</editType><file>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/PersonQrCodeDataSourceLocal.kt</file></path><path><editType>edit</editType><file>respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/writequeue/DrainRemoteWriteQueueUseCase.kt</file></path><path><editType>edit</editType><file>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/daos/PersonQrBadgeEntityDao.kt</file></path><path><editType>edit</editType><file>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/PersonQrBadgeDataSourceExt.kt</file></path><path><editType>edit</editType><file>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/SchoolDataSource.kt</file></path><path><editType>edit</editType><file>respect-credentials/src/commonMain/kotlin/world/respect/credentials/passkey/RespectCredential.kt</file></path><path><editType>delete</editType><file>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/entities/PersonQrCodeEntity.kt</file></path><path><editType>edit</editType><file>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/RespectSchoolDatabase.kt</file></path><path><editType>add</editType><file>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/entities/PersonQrBadgeEntity.kt</file></path><path><editType>add</editType><file>respect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/PersonQrBadgeDataSourceHttp.kt</file></path><path><editType>delete</editType><file>respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/PersonQrCodeDataSourceRepository.kt</file></path><path><editType>delete</editType><file>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/adapters/PersonQrCodeAdapter.kt</file></path><path><editType>delete</editType><file>respect-server/src/main/kotlin/world/respect/server/routes/qrcode/QrCodeRoute.kt</file></path><path><editType>add</editType><file>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/PersonQrBadgeDataSource.kt</file></path><path><editType>add</editType><file>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/PersonQrBadgeDataSourceDb.kt</file></path><path><editType>delete</editType><file>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/PersonQrDataSource.kt</file></path><path><editType>edit</editType><file>respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/SchoolDataSourceRepository.kt</file></path><path><editType>edit</editType><file>respect-server/src/main/kotlin/world/respect/server/Application.kt</file></path><path><editType>add</editType><file>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/PersonQrCodeBadgeDataSourceLocal.kt</file></path><path><editType>add</editType><file>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/model/PersonQrBadge.kt</file></path><path><editType>edit</editType><file>respect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/SchoolDataSourceHttp.kt</file></path><path><editType>add</editType><file>respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/PersonQrCodeBadgeDataSourceRepository.kt</file></path><path><editType>delete</editType><file>respect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/PersonQrDataSourceHttp.kt</file></path><path><editType>delete</editType><file>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/model/PersonBadge.kt</file></path><path><editType>delete</editType><file>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/PersonQrDataSourceDb.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/CreateAccountSetUserNameViewModel.kt</file></path><path><editType>add</editType><file>respect-server/src/main/kotlin/world/respect/server/routes/qrcode/PersonQrBadgeRoute.kt</file></path><path><editType>edit</editType><file>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/SchoolDataSourceLocal.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/manageaccount/ManageAccountViewModel.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/scanqrcode/ScanQRCodeScreen.kt</affectedPath><affectedPath>gradle/libs.versions.toml</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/scanqrcode/ScanQRCodeViewModel.kt</affectedPath><affectedPath>respect-app-compose/src/androidMain/AndroidManifest.xml</affectedPath><affectedPath>respect-app-compose/build.gradle.kts</affectedPath><commitId>adc7e7c2768e5bfdfa4c32deee8928f2e6f828bd</commitId><timestamp>1768627428000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/anugraha</absoluteUrl><fullName>Anugraha</fullName></author><authorEmail>Anugraha@sutara.org</authorEmail><comment>change qr code library
</comment><date>2026-01-17 10:53:48 +0530</date><id>adc7e7c2768e5bfdfa4c32deee8928f2e6f828bd</id><msg>change qr code library</msg><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/scanqrcode/ScanQRCodeScreen.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/scanqrcode/ScanQRCodeViewModel.kt</file></path><path><editType>edit</editType><file>gradle/libs.versions.toml</file></path><path><editType>edit</editType><file>respect-app-compose/build.gradle.kts</file></path><path><editType>edit</editType><file>respect-app-compose/src/androidMain/AndroidManifest.xml</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/adapters/PersonQrBadgeAdapter.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/composeResources/values/strings.xml</affectedPath><affectedPath>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/PersonQrBadgeDataSource.kt</affectedPath><affectedPath>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/daos/PersonQrBadgeEntityDao.kt</affectedPath><affectedPath>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/SchoolDataSourceDb.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/components/StringBuilderExt.kt</affectedPath><affectedPath>respect-lib-shared-se/src/commonMain/kotlin/world/respect/sharedse/domain/account/authenticatepassword/AuthenticateQrBadgeUseCaseDbImpl.kt</affectedPath><affectedPath>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/PersonQrBadgeDataSourceDb.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/app/AppBar.kt</affectedPath><affectedPath>respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/PersonQrCodeBadgeDataSourceRepository.kt</affectedPath><affectedPath>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/model/PersonQrBadge.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/manageaccount/ManageAccountViewModel.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/app/AppNavHost.kt</affectedPath><affectedPath>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/PersonQrBadgeDataSourceExt.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/util/UrlParser.kt</affectedPath><affectedPath>respect-datalayer-db/schemas/world.respect.datalayer.db.RespectSchoolDatabase/10.json</affectedPath><affectedPath>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/entities/PersonQrBadgeEntity.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/person/manageaccount/ManageAccountScreen.kt</affectedPath><commitId>1ff4f69aa944f87e8ba11f0cff66b2e60d2601cd</commitId><timestamp>1768740026000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/mike</absoluteUrl><fullName>Mike Dawson</fullName></author><authorEmail>mike@ustadmobile.com</authorEmail><comment>Tidyup ManageAccountScreen: if password not set, still use the same ListItem.
Remove includeDeleted from PersonQrBadgeDataSource.GetListParams - this is already available in common
Change PersonQrBadgeEntity Url field to use Url type.
Implement permission enforcement in PersonQrBadgeDataSourceDb
</comment><date>2026-01-18 16:40:26 +0400</date><id>1ff4f69aa944f87e8ba11f0cff66b2e60d2601cd</id><msg>Tidyup ManageAccountScreen: if password not set, still use the same ListItem.</msg><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/app/AppNavHost.kt</file></path><path><editType>edit</editType><file>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/SchoolDataSourceDb.kt</file></path><path><editType>edit</editType><file>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/adapters/PersonQrBadgeAdapter.kt</file></path><path><editType>edit</editType><file>respect-lib-shared-se/src/commonMain/kotlin/world/respect/sharedse/domain/account/authenticatepassword/AuthenticateQrBadgeUseCaseDbImpl.kt</file></path><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/app/AppBar.kt</file></path><path><editType>edit</editType><file>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/model/PersonQrBadge.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/composeResources/values/strings.xml</file></path><path><editType>add</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/components/StringBuilderExt.kt</file></path><path><editType>edit</editType><file>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/PersonQrBadgeDataSourceExt.kt</file></path><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/person/manageaccount/ManageAccountScreen.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/manageaccount/ManageAccountViewModel.kt</file></path><path><editType>edit</editType><file>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/daos/PersonQrBadgeEntityDao.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/util/UrlParser.kt</file></path><path><editType>edit</editType><file>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/PersonQrBadgeDataSourceDb.kt</file></path><path><editType>edit</editType><file>respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/PersonQrCodeBadgeDataSourceRepository.kt</file></path><path><editType>edit</editType><file>respect-datalayer-db/schemas/world.respect.datalayer.db.RespectSchoolDatabase/10.json</file></path><path><editType>edit</editType><file>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/entities/PersonQrBadgeEntity.kt</file></path><path><editType>edit</editType><file>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/PersonQrBadgeDataSource.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-lib-shared/src/commonMain/composeResources/values/strings.xml</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/components/RespectQrBadgeInfoBox.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/CreateAccountSetUserNameViewModel.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/scanqrcode/ScanQRCodeScreen.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/person/setusernameandpassword/SetUsernameAndPasswordScreen.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/scanqrcode/ScanQRCodeViewModel.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/person/manageaccount/ManageAccountScreen.kt</affectedPath><commitId>32a89ebad88b2143a3dd64fbc8209d27de0ee5cc</commitId><timestamp>1768745882000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/mike</absoluteUrl><fullName>Mike Dawson</fullName></author><authorEmail>mike@ustadmobile.com</authorEmail><comment>Further tidyup:
Ensure event functions are named onEventName eg onClickButton
Move Badge Info box into its own function
</comment><date>2026-01-18 18:18:02 +0400</date><id>32a89ebad88b2143a3dd64fbc8209d27de0ee5cc</id><msg>Further tidyup:</msg><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/CreateAccountSetUserNameViewModel.kt</file></path><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/person/setusernameandpassword/SetUsernameAndPasswordScreen.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/composeResources/values/strings.xml</file></path><path><editType>add</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/components/RespectQrBadgeInfoBox.kt</file></path><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/person/manageaccount/ManageAccountScreen.kt</file></path><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/scanqrcode/ScanQRCodeScreen.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/scanqrcode/ScanQRCodeViewModel.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/scanqrcode/ScanQRCodeScreen.kt</affectedPath><affectedPath>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/writequeue/WriteQueueItem.kt</affectedPath><affectedPath>respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/writequeue/DrainRemoteWriteQueueUseCase.kt</affectedPath><affectedPath>respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/PersonQrCodeBadgeDataSourceRepository.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/scanqrcode/ScanQRCodeViewModel.kt</affectedPath><commitId>fa0dc13b9d7b3c51f4da208fcbb59500af1150c5</commitId><timestamp>1768749707000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/mike</absoluteUrl><fullName>Mike Dawson</fullName></author><authorEmail>mike@ustadmobile.com</authorEmail><comment>Tidyup ScanQRCodeViewModel:

a) Remove unnecessary try-catch statements: multiple try catch statements were all the same: if an exception is caught, set uiState error text to .uiTextOrGeneric
b) Remove unnecessary extra launch statements.
</comment><date>2026-01-18 19:21:47 +0400</date><id>fa0dc13b9d7b3c51f4da208fcbb59500af1150c5</id><msg>Tidyup ScanQRCodeViewModel:</msg><path><editType>edit</editType><file>respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/writequeue/DrainRemoteWriteQueueUseCase.kt</file></path><path><editType>edit</editType><file>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/writequeue/WriteQueueItem.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/scanqrcode/ScanQRCodeViewModel.kt</file></path><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/scanqrcode/ScanQRCodeScreen.kt</file></path><path><editType>edit</editType><file>respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/PersonQrCodeBadgeDataSourceRepository.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/app/AppBar.kt</affectedPath><affectedPath>.maestro/flows/001_002_add_user_direct_test.yaml</affectedPath><commitId>9b3e623660d98887adcb09ef0dfbf1bc5647423e</commitId><timestamp>1768801521000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/anugraha</absoluteUrl><fullName>Anugraha</fullName></author><authorEmail>Anugraha@sutara.org</authorEmail><comment>refactor
</comment><date>2026-01-19 11:15:21 +0530</date><id>9b3e623660d98887adcb09ef0dfbf1bc5647423e</id><msg>refactor</msg><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/app/AppBar.kt</file></path><path><editType>edit</editType><file>.maestro/flows/001_002_add_user_direct_test.yaml</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>.maestro/flows/subflows/assign_qr_badge_flow.yaml</affectedPath><affectedPath>.maestro/flows/001_002_add_user_direct_test.yaml</affectedPath><commitId>cc8ef7c83589eabd78ff74253913132347774d74</commitId><timestamp>1768809560000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/pooja</absoluteUrl><fullName>Pooja Ravi</fullName></author><authorEmail>pooja@ustadmobile.com</authorEmail><comment>updated test - More Options
</comment><date>2026-01-19 11:59:20 +0400</date><id>cc8ef7c83589eabd78ff74253913132347774d74</id><msg>updated test - More Options</msg><path><editType>edit</editType><file>.maestro/flows/001_002_add_user_direct_test.yaml</file></path><path><editType>edit</editType><file>.maestro/flows/subflows/assign_qr_badge_flow.yaml</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/PersonQrBadgeDataSource.kt</affectedPath><affectedPath>respect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/PersonQrBadgeDataSourceHttp.kt</affectedPath><affectedPath>respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/PersonQrCodeBadgeDataSourceRepository.kt</affectedPath><affectedPath>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/PersonQrBadgeDataSourceDb.kt</affectedPath><commitId>9217f81d1821ad8c20e94aaa91a66f8ce2debbcb</commitId><timestamp>1768809675000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/mike</absoluteUrl><fullName>Mike Dawson</fullName></author><authorEmail>mike@ustadmobile.com</authorEmail><comment>Remove PersonQrBadge existsByUrl: looking for a badge by URL needs to be done by using the list function.
</comment><date>2026-01-19 12:01:15 +0400</date><id>9217f81d1821ad8c20e94aaa91a66f8ce2debbcb</id><msg>Remove PersonQrBadge existsByUrl: looking for a badge by URL needs to be done by using the list function.</msg><path><editType>edit</editType><file>respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/PersonQrCodeBadgeDataSourceRepository.kt</file></path><path><editType>edit</editType><file>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/PersonQrBadgeDataSourceDb.kt</file></path><path><editType>edit</editType><file>respect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/PersonQrBadgeDataSourceHttp.kt</file></path><path><editType>edit</editType><file>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/PersonQrBadgeDataSource.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/SchoolDataSourceHttp.kt</affectedPath><affectedPath>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/daos/PersonQrBadgeEntityDao.kt</affectedPath><affectedPath>respect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/PersonQrBadgeDataSourceHttp.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/manageaccount/ManageAccountViewModel.kt</affectedPath><affectedPath>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/PersonQrBadgeDataSourceExt.kt</affectedPath><affectedPath>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/entities/PersonQrBadgeEntity.kt</affectedPath><commitId>f3d7f8fc88945ec5e072c433938796cc9e8567d6</commitId><timestamp>1768812372000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/mike</absoluteUrl><fullName>Mike Dawson</fullName></author><authorEmail>mike@ustadmobile.com</authorEmail><comment>Further qr badge datasource tidyup:
1) Remove unnecessary extension function (even though it was following the same pattern we had used for password)
2) Remove unused DAO query function
3) Add index for QR code url
</comment><date>2026-01-19 12:46:12 +0400</date><id>f3d7f8fc88945ec5e072c433938796cc9e8567d6</id><msg>Further qr badge datasource tidyup:</msg><path><editType>edit</editType><file>respect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/PersonQrBadgeDataSourceHttp.kt</file></path><path><editType>edit</editType><file>respect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/SchoolDataSourceHttp.kt</file></path><path><editType>delete</editType><file>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/PersonQrBadgeDataSourceExt.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/manageaccount/ManageAccountViewModel.kt</file></path><path><editType>edit</editType><file>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/daos/PersonQrBadgeEntityDao.kt</file></path><path><editType>edit</editType><file>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/entities/PersonQrBadgeEntity.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/CreateAccountSetUserNameViewModel.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/person/setusernameandpassword/SetUsernameAndPasswordScreen.kt</affectedPath><commitId>f6103410abc1b55e0f2bc36477e51433c12e78a3</commitId><timestamp>1768813679000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/mike</absoluteUrl><fullName>Mike Dawson</fullName></author><authorEmail>mike@ustadmobile.com</authorEmail><comment>Minor tidyup on SetUsernameAndPassword:
1) Remove unused ui state property isQrAlreadyAssigned
2) Rename uistate property: not isStudent, should be showQrBadgeInfoBox
</comment><date>2026-01-19 13:07:59 +0400</date><id>f6103410abc1b55e0f2bc36477e51433c12e78a3</id><msg>Minor tidyup on SetUsernameAndPassword:</msg><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/person/setusernameandpassword/SetUsernameAndPasswordScreen.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/CreateAccountSetUserNameViewModel.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-lib-shared-se/src/commonMain/kotlin/world/respect/sharedse/domain/account/authenticatepassword/AuthenticateQrBadgeUseCaseDbImpl.kt</affectedPath><commitId>5882c8eed7695c5777994d7aa8d86e6b87612c68</commitId><timestamp>1768814421000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/mike</absoluteUrl><fullName>Mike Dawson</fullName></author><authorEmail>mike@ustadmobile.com</authorEmail><comment>AuthenticateQrBadgeUseCaseDbImpl: remove useless if statement that could never be true

qrCodeEntity.pqrQrCodeUrl != credential.qrCodeUrl would never be - it was found by searching the database by Url.
</comment><date>2026-01-19 13:20:21 +0400</date><id>5882c8eed7695c5777994d7aa8d86e6b87612c68</id><msg>AuthenticateQrBadgeUseCaseDbImpl: remove useless if statement that could never be true</msg><path><editType>edit</editType><file>respect-lib-shared-se/src/commonMain/kotlin/world/respect/sharedse/domain/account/authenticatepassword/AuthenticateQrBadgeUseCaseDbImpl.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-lib-shared/src/commonMain/composeResources/values/strings.xml</affectedPath><affectedPath>respect-datalayer-db/schemas/world.respect.datalayer.db.RespectSchoolDatabase/10.json</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/manageaccount/ManageAccountViewModel.kt</affectedPath><commitId>c0dd4e4deb4fde98ff0b521d8ec1778c4286a182</commitId><timestamp>1768815721000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/anugraha</absoluteUrl><fullName>Anugraha</fullName></author><authorEmail>Anugraha@sutara.org</authorEmail><comment>Remove hardcoded english from ui text strings
</comment><date>2026-01-19 15:12:01 +0530</date><id>c0dd4e4deb4fde98ff0b521d8ec1778c4286a182</id><msg>Remove hardcoded english from ui text strings</msg><path><editType>edit</editType><file>respect-datalayer-db/schemas/world.respect.datalayer.db.RespectSchoolDatabase/10.json</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/manageaccount/ManageAccountViewModel.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/composeResources/values/strings.xml</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/CreateAccountSetUserNameViewModel.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/manageaccount/ManageAccountViewModel.kt</affectedPath><commitId>ad35e73e8c202735f82cc0cb64c8e8d106eae99f</commitId><timestamp>1768817989000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/anugraha</absoluteUrl><fullName>Anugraha</fullName></author><authorEmail>Anugraha@sutara.org</authorEmail><comment>add automatic username suggestion
</comment><date>2026-01-19 15:49:49 +0530</date><id>ad35e73e8c202735f82cc0cb64c8e8d106eae99f</id><msg>add automatic username suggestion</msg><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/manageaccount/ManageAccountViewModel.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/CreateAccountSetUserNameViewModel.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/daos/PersonQrBadgeEntityDao.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/manageaccount/ManageAccountViewModel.kt</affectedPath><commitId>5748955401b96196a48a88d986e2b5a24bbdf97a</commitId><timestamp>1768820871000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/anugraha</absoluteUrl><fullName>Anugraha</fullName></author><authorEmail>Anugraha@sutara.org</authorEmail><comment>fix revoke issue
</comment><date>2026-01-19 16:37:51 +0530</date><id>5748955401b96196a48a88d986e2b5a24bbdf97a</id><msg>fix revoke issue</msg><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/manageaccount/ManageAccountViewModel.kt</file></path><path><editType>edit</editType><file>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/daos/PersonQrBadgeEntityDao.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>.maestro/flows/001_002_add_user_direct_test.yaml</affectedPath><commitId>626f643f39ba0cb381fb00f7525a2aea8811a592</commitId><timestamp>1768821408000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/pooja</absoluteUrl><fullName>Pooja Ravi</fullName></author><authorEmail>pooja@ustadmobile.com</authorEmail><comment>updated test - automated username field
</comment><date>2026-01-19 15:16:48 +0400</date><id>626f643f39ba0cb381fb00f7525a2aea8811a592</id><msg>updated test - automated username field</msg><path><editType>edit</editType><file>.maestro/flows/001_002_add_user_direct_test.yaml</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>.maestro/flows/001_002_add_user_direct_test.yaml</affectedPath><commitId>29a192823296d7934f48ebb62acbbc8d30513252</commitId><timestamp>1768821530000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/pooja</absoluteUrl><fullName>Pooja Ravi</fullName></author><authorEmail>pooja@ustadmobile.com</authorEmail><comment>updated test - automated username field
</comment><date>2026-01-19 15:18:50 +0400</date><id>29a192823296d7934f48ebb62acbbc8d30513252</id><msg>updated test - automated username field</msg><path><editType>edit</editType><file>.maestro/flows/001_002_add_user_direct_test.yaml</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-datalayer-repository/README.md</affectedPath><affectedPath>respect-datalayer/README.md</affectedPath><commitId>8db274da685d982c6446ebda0d041793ae05df32</commitId><timestamp>1768825559000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/anugraha</absoluteUrl><fullName>Anugraha</fullName></author><authorEmail>Anugraha@sutara.org</authorEmail><comment>Update datalayer README to add conceptual notes on data deletion.
</comment><date>2026-01-19 17:55:59 +0530</date><id>8db274da685d982c6446ebda0d041793ae05df32</id><msg>Update datalayer README to add conceptual notes on data deletion.</msg><path><editType>edit</editType><file>respect-datalayer/README.md</file></path><path><editType>edit</editType><file>respect-datalayer-repository/README.md</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>.maestro/flows/001_003_login_using_school_link_test.yaml</affectedPath><affectedPath>.maestro/flows/001_002_add_user_direct_test.yaml</affectedPath><affectedPath>.maestro/flows/002_browse_lessons_test.yaml</affectedPath><affectedPath>.maestro/flows/subflows/erase_text.yaml</affectedPath><affectedPath>.maestro/flows/001_001_invite_using_invite_code_test.yaml</affectedPath><commitId>5d2f9461c1b913d096c0e3bf86dc58a96b7b31e4</commitId><timestamp>1768825642000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/anugraha</absoluteUrl><fullName>Anugraha</fullName></author><authorEmail>Anugraha@sutara.org</authorEmail><comment>updated eraseText
</comment><date>2026-01-19 17:57:22 +0530</date><id>5d2f9461c1b913d096c0e3bf86dc58a96b7b31e4</id><msg>updated eraseText</msg><path><editType>edit</editType><file>.maestro/flows/001_002_add_user_direct_test.yaml</file></path><path><editType>edit</editType><file>.maestro/flows/002_browse_lessons_test.yaml</file></path><path><editType>edit</editType><file>.maestro/flows/001_003_login_using_school_link_test.yaml</file></path><path><editType>edit</editType><file>.maestro/flows/001_001_invite_using_invite_code_test.yaml</file></path><path><editType>add</editType><file>.maestro/flows/subflows/erase_text.yaml</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-lib-util/src/commonMain/kotlin/world/respect/libutil/ext/UrlExt.kt</affectedPath><commitId>da316f2f3d5146e9ade72aa0140596e59b219312</commitId><timestamp>1768825653000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/anugraha</absoluteUrl><fullName>Anugraha</fullName></author><authorEmail>Anugraha@sutara.org</authorEmail><comment>Fix UrlExt.schoolUrlOrNull function.
</comment><date>2026-01-19 17:57:33 +0530</date><id>da316f2f3d5146e9ade72aa0140596e59b219312</id><msg>Fix UrlExt.schoolUrlOrNull function.</msg><path><editType>edit</editType><file>respect-lib-util/src/commonMain/kotlin/world/respect/libutil/ext/UrlExt.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/validateqrbadge/ValidateQrCodeUseCase.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/util/UrlParser.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/scanqrcode/ScanQRCodeViewModel.kt</affectedPath><commitId>b672c46c339df2ef1e78bdabaf7f8510414cfe55</commitId><timestamp>1768825653000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/anugraha</absoluteUrl><fullName>Anugraha</fullName></author><authorEmail>Anugraha@sutara.org</authorEmail><comment>remove other custom logic for schoolurl
</comment><date>2026-01-19 17:57:33 +0530</date><id>b672c46c339df2ef1e78bdabaf7f8510414cfe55</id><msg>remove other custom logic for schoolurl</msg><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/validateqrbadge/ValidateQrCodeUseCase.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/scanqrcode/ScanQRCodeViewModel.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/util/UrlParser.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>.maestro/flows/001_002_add_user_direct_test.yaml</affectedPath><commitId>0726c29208a0b19d6e9fc170e00db06b1abe2bc8</commitId><timestamp>1768829659000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/pooja</absoluteUrl><fullName>Pooja Ravi</fullName></author><authorEmail>pooja@ustadmobile.com</authorEmail><comment>updated test - automated username field
</comment><date>2026-01-19 17:34:19 +0400</date><id>0726c29208a0b19d6e9fc170e00db06b1abe2bc8</id><msg>updated test - automated username field</msg><path><editType>edit</editType><file>.maestro/flows/001_002_add_user_direct_test.yaml</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/daos/PersonQrBadgeEntityDao.kt</affectedPath><commitId>12088ad3df17ed4f6d79dd4b986b121350e217ec</commitId><timestamp>1768831977000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/mike</absoluteUrl><fullName>Mike Dawson</fullName></author><authorEmail>mike@ustadmobile.com</authorEmail><comment>Fix PersonQrBadgeEntityDao LIST_SQL query: the WHERE clause was not handling guidNum = 0 correctly.
</comment><date>2026-01-19 18:12:57 +0400</date><id>12088ad3df17ed4f6d79dd4b986b121350e217ec</id><msg>Fix PersonQrBadgeEntityDao LIST_SQL query: the WHERE clause was not handling guidNum = 0 correctly.</msg><path><editType>edit</editType><file>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/daos/PersonQrBadgeEntityDao.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>.maestro/flows/001_002_add_user_direct_test.yaml</affectedPath><commitId>f0a8c73c3497f110b72458e49adb808fb2719365</commitId><timestamp>1768884536000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/anugraha</absoluteUrl><fullName>Anugraha</fullName></author><authorEmail>Anugraha@sutara.org</authorEmail><comment>updated eraseText
</comment><date>2026-01-20 10:18:56 +0530</date><id>f0a8c73c3497f110b72458e49adb808fb2719365</id><msg>updated eraseText</msg><path><editType>edit</editType><file>.maestro/flows/001_002_add_user_direct_test.yaml</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/manageuser/otheroption/OtherOptionsViewModel.kt</affectedPath><affectedPath>respect-server/src/main/kotlin/world/respect/server/domain/school/add/AddSchoolUseCase.kt</affectedPath><affectedPath>respect-lib-util/src/jvmTest/kotlin/world/respect/libutil/ext/UrlResolveTest.kt</affectedPath><affectedPath>respect-lib-util/src/commonMain/kotlin/world/respect/libutil/ext/UrlExt.kt</affectedPath><commitId>6a4dea3826b5bbee639badcad4e04a963e7d62e7</commitId><timestamp>1768884540000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/anugraha</absoluteUrl><fullName>Anugraha</fullName></author><authorEmail>Anugraha@sutara.org</authorEmail><comment>Add normalization for school endpoint URL.
</comment><date>2026-01-20 10:19:00 +0530</date><id>6a4dea3826b5bbee639badcad4e04a963e7d62e7</id><msg>Add normalization for school endpoint URL.</msg><path><editType>edit</editType><file>respect-lib-util/src/commonMain/kotlin/world/respect/libutil/ext/UrlExt.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/manageuser/otheroption/OtherOptionsViewModel.kt</file></path><path><editType>edit</editType><file>respect-lib-util/src/jvmTest/kotlin/world/respect/libutil/ext/UrlResolveTest.kt</file></path><path><editType>edit</editType><file>respect-server/src/main/kotlin/world/respect/server/domain/school/add/AddSchoolUseCase.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-lib-shared/src/commonMain/composeResources/drawable/undraw_qr_code_scan_bewe.xml</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/components/RespectQrBadgeInfoBox.kt</affectedPath><affectedPath>respect-app-compose/src/androidMain/kotlin/world/respect/images/RespectImage.android.kt</affectedPath><affectedPath>respect-app-compose/src/androidMain/res/drawable/fingerprint.png</affectedPath><commitId>f01aea6265748d566589af4ba8c85a1a5324a508</commitId><timestamp>1768887431000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/anugraha</absoluteUrl><fullName>Anugraha</fullName></author><authorEmail>Anugraha@sutara.org</authorEmail><comment>add qr code image
</comment><date>2026-01-20 11:07:11 +0530</date><id>f01aea6265748d566589af4ba8c85a1a5324a508</id><msg>add qr code image</msg><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/components/RespectQrBadgeInfoBox.kt</file></path><path><editType>edit</editType><file>respect-app-compose/src/androidMain/kotlin/world/respect/images/RespectImage.android.kt</file></path><path><editType>add</editType><file>respect-lib-shared/src/commonMain/composeResources/drawable/undraw_qr_code_scan_bewe.xml</file></path><path><editType>delete</editType><file>respect-app-compose/src/androidMain/res/drawable/fingerprint.png</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/images/RespectImage.kt</affectedPath><commitId>6ecaa887d61eceebac5d9362620754a32c3f1570</commitId><timestamp>1768887699000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/anugraha</absoluteUrl><fullName>Anugraha</fullName></author><authorEmail>Anugraha@sutara.org</authorEmail><comment>code refactor
</comment><date>2026-01-20 11:11:39 +0530</date><id>6ecaa887d61eceebac5d9362620754a32c3f1570</id><msg>code refactor</msg><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/images/RespectImage.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>.maestro/flows/001_002_add_user_direct_test.yaml</affectedPath><commitId>b1c48b8af1ec1fcafac7c46674133e230d6bc9b7</commitId><timestamp>1768888353000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/pooja</absoluteUrl><fullName>Pooja Ravi</fullName></author><authorEmail>pooja@ustadmobile.com</authorEmail><comment>updated test - automated username field
</comment><date>2026-01-20 09:52:33 +0400</date><id>b1c48b8af1ec1fcafac7c46674133e230d6bc9b7</id><msg>updated test - automated username field</msg><path><editType>edit</editType><file>.maestro/flows/001_002_add_user_direct_test.yaml</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/CreateAccountSetUserNameViewModel.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/scanqrcode/ScanQRCodeViewModel.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/manageaccount/ManageAccountViewModel.kt</affectedPath><commitId>fcbfb6581579024f495c6b2dff2d9163fa54ed48</commitId><timestamp>1768889640000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/anugraha</absoluteUrl><fullName>Anugraha</fullName></author><authorEmail>Anugraha@sutara.org</authorEmail><comment>code refactor
</comment><date>2026-01-20 11:44:00 +0530</date><id>fcbfb6581579024f495c6b2dff2d9163fa54ed48</id><msg>code refactor</msg><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/scanqrcode/ScanQRCodeViewModel.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/CreateAccountSetUserNameViewModel.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/manageaccount/ManageAccountViewModel.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>.maestro/flows/001_002_add_user_direct_test.yaml</affectedPath><commitId>42623e066a548bc385ecc1822c018857d79a12b7</commitId><timestamp>1768890869000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/pooja</absoluteUrl><fullName>Pooja Ravi</fullName></author><authorEmail>pooja@ustadmobile.com</authorEmail><comment>updated test - automated username flow
</comment><date>2026-01-20 10:34:29 +0400</date><id>42623e066a548bc385ecc1822c018857d79a12b7</id><msg>updated test - automated username flow</msg><path><editType>edit</editType><file>.maestro/flows/001_002_add_user_direct_test.yaml</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/navigation/AppRoutes.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/scanqrcode/ScanQRCodeViewModel.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/manageaccount/ManageAccountViewModel.kt</affectedPath><commitId>fb0aab95d9603de66cf4a109636f01f741484819</commitId><timestamp>1768894131000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/mike</absoluteUrl><fullName>Mike Dawson</fullName></author><authorEmail>mike@ustadmobile.com</authorEmail><comment>Rename ManageAccount route parameters and add property KDocs.
</comment><date>2026-01-20 11:28:51 +0400</date><id>fb0aab95d9603de66cf4a109636f01f741484819</id><msg>Rename ManageAccount route parameters and add property KDocs.</msg><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/navigation/AppRoutes.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/scanqrcode/ScanQRCodeViewModel.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/manageaccount/ManageAccountViewModel.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-app-compose/src/androidMain/kotlin/world/respect/AppKoinModule.kt</affectedPath><commitId>1467d9165cae49927852f92a09af6a29f59ff95e</commitId><timestamp>1768896352000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/anugraha</absoluteUrl><fullName>Anugraha</fullName></author><authorEmail>Anugraha@sutara.org</authorEmail><comment>remove authenticateqrbadgeusecase from client di
</comment><date>2026-01-20 13:35:52 +0530</date><id>1467d9165cae49927852f92a09af6a29f59ff95e</id><msg>remove authenticateqrbadgeusecase from client di</msg><path><editType>edit</editType><file>respect-app-compose/src/androidMain/kotlin/world/respect/AppKoinModule.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/CreateAccountSetUserNameViewModel.kt</affectedPath><commitId>cbc8484d1ceab349b644f1dc57710bcf96599e1e</commitId><timestamp>1768912979000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/mike</absoluteUrl><fullName>Mike Dawson</fullName></author><authorEmail>mike@ustadmobile.com</authorEmail><comment>Update CreateAccountSetUserNameViewModel:

1) Simplify use of suggestedUsername: ensure that the use case is only invoked once. Because it can connect to the server, put the personDataSource collection into collectLatest so it can be cancelled.

2) Use existing validatepasswordusecase.
</comment><date>2026-01-20 16:42:59 +0400</date><id>cbc8484d1ceab349b644f1dc57710bcf96599e1e</id><msg>Update CreateAccountSetUserNameViewModel:</msg><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/CreateAccountSetUserNameViewModel.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/CreateAccountSetPasswordViewModel.kt</affectedPath><commitId>f9a00ae83433feb5c27bd5bf76393ae3f8e9ade1</commitId><timestamp>1768917605000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/anugraha</absoluteUrl><fullName>Anugraha</fullName></author><authorEmail>Anugraha@sutara.org</authorEmail><comment>remove validatepassword fun
</comment><date>2026-01-20 19:30:05 +0530</date><id>f9a00ae83433feb5c27bd5bf76393ae3f8e9ade1</id><msg>remove validatepassword fun</msg><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/CreateAccountSetPasswordViewModel.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>.maestro/flows/001_002_add_user_direct_test.yaml</affectedPath><commitId>66dd3fb9d8cdeb3e0f4800bd4e8087ca612efc69</commitId><timestamp>1768968076000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/pooja</absoluteUrl><fullName>Pooja Ravi</fullName></author><authorEmail>pooja@ustadmobile.com</authorEmail><comment>Updated password error
</comment><date>2026-01-21 08:01:16 +0400</date><id>66dd3fb9d8cdeb3e0f4800bd4e8087ca612efc69</id><msg>Updated password error</msg><path><editType>edit</editType><file>.maestro/flows/001_002_add_user_direct_test.yaml</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>.maestro/flows/001_002_add_user_direct_test.yaml</affectedPath><commitId>53fa07ed6b876b56ec1933e1417b7d43da1ac7c3</commitId><timestamp>1768970015000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/pooja</absoluteUrl><fullName>Pooja Ravi</fullName></author><authorEmail>pooja@ustadmobile.com</authorEmail><comment>Updated password error
</comment><date>2026-01-21 08:33:35 +0400</date><id>53fa07ed6b876b56ec1933e1417b7d43da1ac7c3</id><msg>Updated password error</msg><path><editType>edit</editType><file>.maestro/flows/001_002_add_user_direct_test.yaml</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/CreateAccountSetUserNameViewModel.kt</affectedPath><commitId>af965e4459675fe7edd91536a6c616ebe5dfa7d8</commitId><timestamp>1768971564000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/anugraha</absoluteUrl><fullName>Anugraha</fullName></author><authorEmail>Anugraha@sutara.org</authorEmail><comment>code refactor
</comment><date>2026-01-21 10:29:24 +0530</date><id>af965e4459675fe7edd91536a6c616ebe5dfa7d8</id><msg>code refactor</msg><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/CreateAccountSetUserNameViewModel.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/navigation/AppRoutes.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/manageuser/otheroption/OtherOptionsViewModel.kt</affectedPath><commitId>1e939cfb01b872fb3534901d9747100004a893a5</commitId><timestamp>1768982317000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/mike</absoluteUrl><fullName>Mike Dawson</fullName></author><authorEmail>mike@ustadmobile.com</authorEmail><comment>Fix OtherOptionsViewModel to use normalized endpoint URL string when URL entered manually.
</comment><date>2026-01-21 11:58:37 +0400</date><id>1e939cfb01b872fb3534901d9747100004a893a5</id><msg>Fix OtherOptionsViewModel to use normalized endpoint URL string when URL entered manually.</msg><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/navigation/AppRoutes.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/manageuser/otheroption/OtherOptionsViewModel.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/CreateAccountSetPasswordViewModel.kt</affectedPath><commitId>e9967b71a295c34febcdccf3cce3e559502ab1fd</commitId><timestamp>1768989202000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/anugraha</absoluteUrl><fullName>Anugraha</fullName></author><authorEmail>Anugraha@sutara.org</authorEmail><comment>code refactor
</comment><date>2026-01-21 15:23:22 +0530</date><id>e9967b71a295c34febcdccf3cce3e559502ab1fd</id><msg>code refactor</msg><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/CreateAccountSetPasswordViewModel.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-lib-shared/src/commonMain/composeResources/values/strings.xml</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/clazz/edit/ClazzEditScreen.kt</affectedPath><commitId>da7cc819229bec7b4b34f1e2b2bf80b75362e925</commitId><timestamp>1768990905000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/mike</absoluteUrl><fullName>Mike Dawson</fullName></author><authorEmail>mike@ustadmobile.com</authorEmail><comment>Terminology change: class edit screen to show 'class name', assignment edit screen to show 'assignment name'.
</comment><date>2026-01-21 14:21:45 +0400</date><id>da7cc819229bec7b4b34f1e2b2bf80b75362e925</id><msg>Terminology change: class edit screen to show 'class name', assignment edit screen to show 'assignment name'.</msg><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/composeResources/values/strings.xml</file></path><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/clazz/edit/ClazzEditScreen.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/assignment/edit/AssignmentEditScreen.kt</affectedPath><commitId>b31a3399147b740b729469521d48ad2eff43fa4d</commitId><timestamp>1768991246000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/mike</absoluteUrl><fullName>Mike Dawson</fullName></author><authorEmail>mike@ustadmobile.com</authorEmail><comment>Terminology change: class edit screen to show 'class name', assignment edit screen to show 'assignment name'.
</comment><date>2026-01-21 14:27:26 +0400</date><id>b31a3399147b740b729469521d48ad2eff43fa4d</id><msg>Terminology change: class edit screen to show 'class name', assignment edit screen to show 'assignment name'.</msg><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/assignment/edit/AssignmentEditScreen.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>.maestro/flows/subflows/admin_add_class.yaml</affectedPath><affectedPath>.maestro/flows/subflows/admin_add_app_and_teacher.yaml</affectedPath><affectedPath>.maestro/flows/003_admin_user_assigns_assignment_to_a_class_test.yaml</affectedPath><affectedPath>.maestro/flows/001_001_invite_using_invite_code_test.yaml</affectedPath><commitId>0bde3ec630d282513020dba81483a8600f6051a0</commitId><timestamp>1768991904000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/pooja</absoluteUrl><fullName>Pooja Ravi</fullName></author><authorEmail>pooja@ustadmobile.com</authorEmail><comment>Updated Name* to Class name* /Assignment name*
</comment><date>2026-01-21 14:38:24 +0400</date><id>0bde3ec630d282513020dba81483a8600f6051a0</id><msg>Updated Name* to Class name* /Assignment name*</msg><path><editType>edit</editType><file>.maestro/flows/001_001_invite_using_invite_code_test.yaml</file></path><path><editType>edit</editType><file>.maestro/flows/subflows/admin_add_class.yaml</file></path><path><editType>edit</editType><file>.maestro/flows/subflows/admin_add_app_and_teacher.yaml</file></path><path><editType>edit</editType><file>.maestro/flows/003_admin_user_assigns_assignment_to_a_class_test.yaml</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/RespectViewModel.kt</affectedPath><affectedPath>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/model/PersonQrBadge.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/manageaccount/ManageAccountViewModel.kt</affectedPath><affectedPath>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/entities/PersonQrBadgeEntity.kt</affectedPath><affectedPath>respect-datalayer-db/schemas/world.respect.datalayer.db.RespectSchoolDatabase/10.json</affectedPath><affectedPath>respect-lib-shared-se/src/commonMain/kotlin/world/respect/sharedse/domain/account/authenticatepassword/AuthenticateQrBadgeUseCaseDbImpl.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/scanqrcode/ScanQRCodeViewModel.kt</affectedPath><commitId>2b439a06c73b4593a8e3072f12d785ca79e0261c</commitId><timestamp>1769001379000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/mike</absoluteUrl><fullName>Mike Dawson</fullName></author><authorEmail>mike@ustadmobile.com</authorEmail><comment>Tidyup:
a) Make PersonQrBadge qrUrl nullable: if no QR badge is assigned, we don't want to delete the PersonQrBadge itself. The Url should be set as null.
b) Tidyup ManageAccountViewModel
</comment><date>2026-01-21 17:16:19 +0400</date><id>2b439a06c73b4593a8e3072f12d785ca79e0261c</id><msg>Tidyup:</msg><path><editType>edit</editType><file>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/entities/PersonQrBadgeEntity.kt</file></path><path><editType>edit</editType><file>respect-lib-shared-se/src/commonMain/kotlin/world/respect/sharedse/domain/account/authenticatepassword/AuthenticateQrBadgeUseCaseDbImpl.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/scanqrcode/ScanQRCodeViewModel.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/manageaccount/ManageAccountViewModel.kt</file></path><path><editType>edit</editType><file>respect-datalayer-db/schemas/world.respect.datalayer.db.RespectSchoolDatabase/10.json</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/RespectViewModel.kt</file></path><path><editType>edit</editType><file>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/model/PersonQrBadge.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/scanqrcode/ScanQRCodeViewModel.kt</affectedPath><affectedPath>.maestro/flows/001_002_add_user_direct_test.yaml</affectedPath><commitId>ea6042d39766b0524933983eab99d6344228aa3c</commitId><timestamp>1769013545000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/mike</absoluteUrl><fullName>Mike Dawson</fullName></author><authorEmail>mike@ustadmobile.com</authorEmail><comment>Temporarily disable checking invalid QR code scanned: this check should be in manage account screen.
Fix refactored ScanQRCodeViewModel (incorrectly had ! before sendResultIfExpected)
</comment><date>2026-01-21 20:39:05 +0400</date><id>ea6042d39766b0524933983eab99d6344228aa3c</id><msg>Temporarily disable checking invalid QR code scanned: this check should be in manage account screen.</msg><path><editType>edit</editType><file>.maestro/flows/001_002_add_user_direct_test.yaml</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/scanqrcode/ScanQRCodeViewModel.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/CreateAccountSetUserNameViewModel.kt</affectedPath><commitId>90fd361a3b462e064efacc2f2fbde3ba01b7ddac</commitId><timestamp>1769015037000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/mike</absoluteUrl><fullName>Mike Dawson</fullName></author><authorEmail>mike@ustadmobile.com</authorEmail><comment>Add try/catch to avoid CreateAccountSetUserNameViewModel crashing if offline.
</comment><date>2026-01-21 21:03:57 +0400</date><id>90fd361a3b462e064efacc2f2fbde3ba01b7ddac</id><msg>Add try/catch to avoid CreateAccountSetUserNameViewModel crashing if offline.</msg><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/CreateAccountSetUserNameViewModel.kt</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/mike</absoluteUrl><fullName>Mike Dawson</fullName></culprit><culprit><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/pooja</absoluteUrl><fullName>Pooja Ravi</fullName></culprit><culprit><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/anugraha</absoluteUrl><fullName>Anugraha</fullName></culprit></freeStyleBuild>