<?xml version="1.0" encoding="UTF-8"?>
    
    <rss version="2.0"><channel><title>create-manage-assignments Git changes</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/changes</link><description>create-manage-assignments Git changes</description><item><title>#31 Pass assignment activity id through learning unit detail to launch app use case. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/31/changes#detail0</link><guid isPermaLink="false">view/all/job/create-manage-assignments/31/changes#detail0</guid><pubDate>Wed, 20 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/learningunit/detail/LearningUnitDetailViewModel.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/navigation/AppRoutes.kt
</description></item><item><title>#31 Update GetXapiLaunchUrlUseCase to include assignment activity id in the path. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/31/changes#detail1</link><guid isPermaLink="false">view/all/job/create-manage-assignments/31/changes#detail1</guid><pubDate>Wed, 20 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>respect-lib-util/build.gradle.kts
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/xapi/getxapilaunchurl/GetXapiLaunchUrlUseCase.kt
respect-lib-xapi-nanohttpd/src/commonMain/kotlin/world/respect/lib/xapi/nanohttpd/XapiNanoHttpdApp.kt
respect-lib-shared/src/androidMain/kotlin/world/respect/shared/domain/launchapp/LaunchAppUseCaseAndroid.kt
respect-lib-shared/src/androidMain/kotlin/world/respect/shared/domain/xapi/getxapilaunchurl/GetXapiLaunchUrlUseCaseAndroid.kt
respect-lib-util/src/commonMain/kotlin/world/respect/libutil/ext/UrlExt.kt
</description></item><item><title>#31 Implement initial support for statement voiding. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/31/changes#detail2</link><guid isPermaLink="false">view/all/job/create-manage-assignments/31/changes#detail2</guid><pubDate>Wed, 20 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>respect-datalayer-db/src/jvmTest/kotlin/world/respect/datalayer/db/school/xapi/XapiStatementsResourceDbTest.kt
respect-lib-xapi-core/src/commonMain/kotlin/world/respect/lib/xapi/exceptions/XapiForbiddenException.kt
respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/xapi/entities/XapiStatementEntity.kt
respect-lib-xapi-core/src/commonMain/kotlin/world/respect/lib/xapi/exceptions/XapiBadRequestException.kt
respect-datalayer-db/schemas/world.respect.datalayer.db.RespectSchoolDatabase/13.json
respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/xapi/daos/XapiStatementEntityDao.kt
respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/xapi/XapiStatementsResourceDb.kt
respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/xapi/daos/XapiStatementEntityJsonDao.kt
respect-lib-xapi-core/src/commonMain/kotlin/world/respect/lib/xapi/model/XapiVerb.kt
respect-lib-xapi-core/src/commonMain/kotlin/world/respect/lib/xapi/exceptions/XapiException.kt
</description></item><item><title>#31 Implement comments in AssignmentEdit (anugraha)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/31/changes#detail3</link><guid isPermaLink="false">view/all/job/create-manage-assignments/31/changes#detail3</guid><pubDate>Wed, 20 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>respect-lib-shared/src/commonMain/composeResources/values/strings.xml
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/navigation/AppRoutes.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/xapi/XapiAssignmentExt.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/learningunit/detail/LearningUnitDetailViewModel.kt
respect-app-compose/src/commonMain/kotlin/world/respect/app/view/assignment/detail/AssignmentDetailScreen.kt
respect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/xapi/XapiStatementsResourceHttp.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/assignment/list/AssignmentListViewModel.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/assignment/edit/AssignmentEditViewModel.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/assignment/detail/AssignmentDetailViewModel.kt
</description></item><item><title>#31 refactor (anugraha)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/31/changes#detail4</link><guid isPermaLink="false">view/all/job/create-manage-assignments/31/changes#detail4</guid><pubDate>Wed, 20 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/xapi/XapiAssignmentExt.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/assignment/edit/AssignmentEditViewModel.kt
respect-app-compose/src/commonMain/kotlin/world/respect/app/view/assignment/edit/AssignmentEditScreen.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/assignment/detail/AssignmentDetailViewModel.kt
</description></item><item><title>#31 improve list screen (anugraha)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/31/changes#detail5</link><guid isPermaLink="false">view/all/job/create-manage-assignments/31/changes#detail5</guid><pubDate>Wed, 20 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/xapi/XapiStatementsResourceRepository.kt
respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/xapi/daos/XapiStatementEntityDao.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/assignment/list/AssignmentListViewModel.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/xapi/XapiAssignmentMapper.kt
respect-lib-xapi-core/src/commonMain/kotlin/world/respect/lib/xapi/resources/XapiStatementsResource.kt
respect-lib-xapi-core/src/commonMain/kotlin/world/respect/lib/xapi/model/XapiAssignmentConstants.kt
respect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/xapi/XapiStatementsResourceHttp.kt
respect-lib-xapi-core/src/commonMain/kotlin/world/respect/lib/xapi/model/AssignmentSummary.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/assignment/edit/AssignmentEditViewModel.kt
respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/xapi/entities/XapiAssignmentSummaryEntityRow.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/assignment/detail/AssignmentDetailViewModel.kt
respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/xapi/XapiStatementsResourceDb.kt
respect-app-compose/src/commonMain/kotlin/world/respect/app/view/assignment/list/AssignmentListScreen.kt
</description></item><item><title>#31 refactor (anugraha)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/31/changes#detail6</link><guid isPermaLink="false">view/all/job/create-manage-assignments/31/changes#detail6</guid><pubDate>Wed, 20 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/assignment/detail/AssignmentDetailScreen.kt
</description></item><item><title>#31 refactor (anugraha)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/31/changes#detail7</link><guid isPermaLink="false">view/all/job/create-manage-assignments/31/changes#detail7</guid><pubDate>Wed, 20 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/xapi/XapiDummyDataGenerator.kt
respect-app-compose/src/androidMain/kotlin/world/respect/AppKoinModule.kt
</description></item><item><title>#31 refactor (anugraha)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/31/changes#detail8</link><guid isPermaLink="false">view/all/job/create-manage-assignments/31/changes#detail8</guid><pubDate>Wed, 20 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/assignment/edit/AssignmentEditViewModel.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/learningunit/detail/LearningUnitDetailViewModel.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/navigation/AppRoutes.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/assignment/detail/AssignmentDetailViewModel.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/assignment/list/AssignmentListViewModel.kt
</description></item><item><title>#31 refactor (anugraha)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/31/changes#detail9</link><guid isPermaLink="false">view/all/job/create-manage-assignments/31/changes#detail9</guid><pubDate>Wed, 20 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/assignment/list/AssignmentListViewModel.kt
</description></item><item><title>#31 Update Maestro E2E test flows for assignment management and app browsing. (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/31/changes#detail10</link><guid isPermaLink="false">view/all/job/create-manage-assignments/31/changes#detail10</guid><pubDate>Wed, 20 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>.maestro/pending-flows/003_admin_user_assigns_assignment_to_a_class_test.yaml
.maestro/flows/subflows/admin_add_app.yaml
.maestro/flows/002_browse_lessons_test.yaml
.maestro/flows/003_admin_user_assigns_assignment_to_a_class_test.yaml
</description></item><item><title>#31 refactor (anugraha)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/31/changes#detail11</link><guid isPermaLink="false">view/all/job/create-manage-assignments/31/changes#detail11</guid><pubDate>Wed, 20 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/assignment/edit/AssignmentEditViewModel.kt
respect-app-compose/src/commonMain/kotlin/world/respect/app/view/assignment/edit/AssignmentEditScreen.kt
</description></item><item><title>#31 refactor (anugraha)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/31/changes#detail12</link><guid isPermaLink="false">view/all/job/create-manage-assignments/31/changes#detail12</guid><pubDate>Wed, 20 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/assignment/detail/AssignmentDetailScreen.kt
</description></item><item><title>#30 Work in progress adding embedded Nanohttpd based xapi server. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/30/changes#detail0</link><guid isPermaLink="false">view/all/job/create-manage-assignments/30/changes#detail0</guid><pubDate>Tue, 19 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>respect-datalayer-db/src/jvmTest/kotlin/world/respect/datalayer/db/school/xapi/XapiStatementsResourceDbTest.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/inviteperson/InvitePersonViewModel.kt
gradle/libs.versions.toml
respect-app-compose/src/commonMain/kotlin/world/respect/app/view/report/list/ReportTemplateListScreen.kt
respect-lib-xapi-nanohttpd/.gitignore
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/assignment/edit/AssignmentEditViewModel.kt
respect-app-compose/src/commonMain/kotlin/world/respect/app/view/assignment/edit/AssignmentEditScreen.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/invite/ApproveOrDeclineInviteRequestUseCase.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/manageaccount/ManageAccountViewModel.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/manageuser/waitingforapproval/WaitingForApprovalViewModel.kt
respect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/AssignmentDataSourceHttp.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/manageuser/acceptinvite/AcceptInviteViewModel.kt
respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/AssignmentDataSourceRepository.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/apps/list/AppListViewModel.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/report/detail/ReportDetailViewModel.kt
respect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/PersonQrBadgeDataSourceHttp.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/manageuser/otheroptionsignup/OtherOptionsSignupViewModel.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/clazz/detail/ClazzDetailViewModel.kt
respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/ClassDataSourceRepository.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/PersonPasswordDataSourceExt.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/enrollment/edit/EnrollmentEditViewModel.kt
respect-app-compose/src/commonMain/kotlin/world/respect/app/view/report/indicator/edit/IndicatorEditScreen.kt
respect-server/src/main/kotlin/world/respect/server/util/ext/ApplicationCallExt.kt
respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/EnrollmentDataSourceRepository.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/CreateAccountSetPasswordViewModel.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/manageuser/otheroption/OtherOptionsViewModel.kt
respect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/schooldirectory/SchoolDirectoryEntryDataSourceHttp.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/CreateAccountSetUserNameViewModel.kt
respect-datalayer-repository/src/jvmTest/kotlin/world/respect/datalayer/repository/school/PersonRepositoryIntegrationTest.kt
respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/schooldirectory/SchoolDirectoryEntryDataSourceRepository.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/report/indictor/list/IndicatorListViewmodel.kt
respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/PersonPasswordDataSourceRepository.kt
respect-lib-xapi-nanohttpd/src/commonMain/kotlin/world/respect/lib/xapi/nanohttpd/XapiResourceProvider.kt
respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/PersonDataSourceRepository.kt
respect-app-compose/src/commonMain/kotlin/world/respect/app/view/clazz/detail/ClazzDetailScreen.kt
respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/opds/OpdsFeedDataSourceRepository.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/learningunit/detail/LearningUnitDetailViewModel.kt
respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/xapi/XapiStatementsResourceRepository.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/curriculum/mapping/edit/CurriculumMappingEditViewModel.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/report/edit/ReportEditViewModel.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/RespectAccountManager.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/changepassword/ChangePasswordViewModel.kt
respect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/ClassDataSourceHttp.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/ext/DataLoadStateExt.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/RespectViewModel.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/assignment/detail/AssignmentDetailViewModel.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/permissions/CheckSchoolPermissionsUseCase.kt
respect-lib-xapi-nanohttpd/build.gradle.kts
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/clazz/edit/ClazzEditViewModel.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/ext/LocalModelDataSourceExt.kt
respect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/ext/SchoolDirectoryDataSourceExt.kt
respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/opds/OpdsPublicationDataSourceRepository.kt
respect-lib-shared/src/jvmMain/kotlin/world/respect/shared/domain/account/authwithpassword/GetTokenAndUserProfileWithCredentialDbImpl.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/apps/detail/AppsDetailViewModel.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/enrollment/list/EnrollmentListViewModel.kt
respect-app-compose/src/commonMain/kotlin/world/respect/app/view/person/inviteperson/InvitePersonScreen.kt
respect-datalayer-repository/src/jvmTest/kotlin/world/respect/datalayer/repository/opds/OpdsRespectRepositoryIntegrationTest.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/detail/PersonDetailViewModel.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/manageuser/getstarted/GetStartedViewModel.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/apps/launcher/AppLauncherViewModel.kt
respect-lib-xapi-core/src/commonMain/kotlin/world/respect/lib/xapi/model/XapiStatement.kt
respect-server/src/main/kotlin/world/respect/server/domain/school/add/AddSchoolUseCase.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/report/indictor/edit/IndictorEditViewmodel.kt
respect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/SchoolPermissionGrantDataSourceHttp.kt
respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/SchoolPermissionGrantDataSourceRepository.kt
respect-app-compose/src/commonMain/kotlin/world/respect/app/view/apps/list/AppListScreen.kt
respect-app-compose/src/commonMain/kotlin/world/respect/app/view/enrollment/edit/EnrollmentEditScreen.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/manageuser/signup/CreateAccountViewModel.kt
respect-lib-xapi-nanohttpd/src/commonMain/kotlin/world/respect/lib/xapi/nanohttpd/ext/NanoHttpdSessionExt.kt
respect-app-compose/src/commonMain/kotlin/world/respect/app/view/person/passkeyList/PasskeyListScreen.kt
respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/pullsync/RunPullSyncUseCase.kt
respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/PersonPasskeyDataSourceRepository.kt
respect-app-compose/src/commonMain/kotlin/world/respect/app/view/curriculum/mapping/edit/CurriculumMappingEditScreen.kt
respect-lib-shared/src/jvmMain/kotlin/world/respect/shared/domain/account/child/AddChildAccountUseCaseDb.kt
respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/xapi/XapiStatementsResourceDb.kt
respect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/InviteDataSourceHttp.kt
respect-app-compose/src/commonMain/kotlin/world/respect/app/view/clazz/edit/ClazzEditScreen.kt
respect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/EnrollmentDataSourceHttp.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/edit/PersonEditViewModel.kt
respect-lib-dataloadstate/src/commonMain/kotlin/world/respect/lib/dataloadstate/ext/DataLoadStateExt.kt
respect-app-compose/src/commonMain/kotlin/world/respect/app/view/person/manageaccount/ManageAccountScreen.kt
respect-lib-xapi-nanohttpd/src/commonMain/kotlin/world/respect/lib/xapi/nanohttpd/XapiNanoHttpdApp.kt
respect-app-compose/src/commonMain/kotlin/world/respect/app/view/report/list/ReportListScreen.kt
respect-app-compose/src/commonMain/kotlin/world/respect/app/view/assignment/detail/AssignmentDetailScreen.kt
respect-lib-xapi-core/src/commonMain/kotlin/world/respect/lib/xapi/model/XapiStatementResult.kt
respect-app-compose/src/commonMain/kotlin/world/respect/app/view/apps/launcher/AppLauncherScreen.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/list/PersonListViewModel.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/schooldirectory/edit/SchoolDirectoryEditViewModel.kt
respect-datalayer-repository/src/jvmTest/kotlin/world/respect/datalayer/repository/school/PlaylistRepositoryIntegrationTest.kt
respect-app-compose/src/androidMain/kotlin/world/respect/credentials/passkey/CheckPasskeySupportUseCaseAndroidImpl.kt
respect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/opds/OpdsPublicationDataSourceHttp.kt
respect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/PersonDataSourceHttp.kt
respect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/opds/OpdsFeedDataSourceHttp.kt
respect-datalayer-db/src/jvmTest/kotlin/world/respect/datalayer/db/school/TestPersonStorage.kt
respect-datalayer-repository/src/jvmTest/kotlin/world/respect/datalayer/repository/school/xapi/XapiStatementRepositoryIntegrationTest.kt
respect-app-compose/src/commonMain/kotlin/world/respect/app/view/assignment/list/AssignmentListScreen.kt
respect-app-compose/src/commonMain/kotlin/world/respect/app/view/enrollment/list/EnrollmentListScreen.kt
respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/InviteDataSourceRepository.kt
settings.gradle.kts
respect-app-compose/src/commonMain/kotlin/world/respect/app/view/report/indicator/detail/IndicatorDetailScreen.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/manageuser/accountlist/AccountListViewModel.kt
respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/PersonQrCodeBadgeDataSourceRepository.kt
respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/SchoolAppDataSourceRepository.kt
</description></item><item><title>#30 Work in progress: setup learning unit detail viewmodel to get xapi launch url using embedded xapi server. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/30/changes#detail1</link><guid isPermaLink="false">view/all/job/create-manage-assignments/30/changes#detail1</guid><pubDate>Tue, 19 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>respect-lib-xapi-nanohttpd/src/commonMain/kotlin/world/respect/lib/xapi/nanohttpd/XapiNanoHttpdResourceProvider.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/learningunit/detail/LearningUnitDetailViewModel.kt
respect-lib-xapi-nanohttpd/src/commonMain/kotlin/world/respect/lib/xapi/nanohttpd/XapiNanoHttpdApp.kt
respect-lib-shared/src/androidMain/kotlin/world/respect/shared/domain/xapi/getxapilaunchurl/GetXapiLaunchUrlUseCaseAndroid.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/launchapp/LaunchAppUseCase.kt
respect-lib-shared/src/androidMain/kotlin/world/respect/shared/domain/launchapp/LaunchAppUseCaseAndroid.kt
respect-lib-xapi-nanohttpd/src/commonMain/kotlin/world/respect/lib/xapi/nanohttpd/XapiResourceProvider.kt
respect-lib-shared/src/androidMain/kotlin/world/respect/shared/domain/xapi/xapinanohttpd/XapiNanoHttpdResourceProviderAndroid.kt
respect-app-compose/src/androidMain/kotlin/world/respect/AppKoinModule.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/xapi/getxapilaunchurl/GetXapiLaunchUrlUseCase.kt
respect-lib-shared/build.gradle.kts
</description></item><item><title>#30 Work in progress: setup learning unit detail viewmodel to get xapi launch url using embedded xapi server. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/30/changes#detail2</link><guid isPermaLink="false">view/all/job/create-manage-assignments/30/changes#detail2</guid><pubDate>Tue, 19 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>respect-server/src/main/resources/http/respect-ds/case_valid/grade1/lesson001/lesson001.html
respect-server/src/main/resources/http/respect-ds/case_valid/grade1/lesson001/XAPI.js
</description></item><item><title>#30 Refine permission recipe to be folder based : simpler for queries, simpler to run on mobile/SQL, and suitable for folder based backends (e.g. Google Drive, NextCloud, etc). (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/30/changes#detail3</link><guid isPermaLink="false">view/all/job/create-manage-assignments/30/changes#detail3</guid><pubDate>Tue, 19 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>respect-lib-xapi-core/README_PERMISSION_RECIPE.md
</description></item><item><title>#30 Add note on canonical updates to permission recipe. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/30/changes#detail4</link><guid isPermaLink="false">view/all/job/create-manage-assignments/30/changes#detail4</guid><pubDate>Tue, 19 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>respect-lib-xapi-core/README_PERMISSION_RECIPE.md
</description></item><item><title>#30 Merge dev-xapi changes. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/30/changes#detail5</link><guid isPermaLink="false">view/all/job/create-manage-assignments/30/changes#detail5</guid><pubDate>Tue, 19 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/learningunit/detail/LearningUnitDetailViewModel.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/invite/ApproveOrDeclineInviteRequestUseCase.kt
respect-app-compose/src/commonMain/kotlin/world/respect/app/view/clazz/detail/ClazzDetailScreen.kt
</description></item><item><title>#30 Update terms/conditions to use .well-known path on school directory server. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/30/changes#detail6</link><guid isPermaLink="false">view/all/job/create-manage-assignments/30/changes#detail6</guid><pubDate>Tue, 19 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/respect/model/RespectConstants.kt
respect-server/src/main/kotlin/world/respect/server/Application.kt
respect-app-compose/src/commonMain/kotlin/world/respect/app/view/manageuser/termsandcondition/TermsAndConditionScreen.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/manageuser/termsandcondition/TermsAndConditionViewModel.kt
respect-app-compose/build.gradle.kts
</description></item><item><title>#30 Add guideline on AI-generated content submission (noreply)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/30/changes#detail7</link><guid isPermaLink="false">view/all/job/create-manage-assignments/30/changes#detail7</guid><pubDate>Tue, 19 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>CODE_OF_CONDUCT.md
</description></item><item><title>#30 Clarify guidelines on submitting AI-generated content (noreply)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/30/changes#detail8</link><guid isPermaLink="false">view/all/job/create-manage-assignments/30/changes#detail8</guid><pubDate>Tue, 19 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>CODE_OF_CONDUCT.md
</description></item><item><title>#30 Initial xAPI embedded server implementation. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/30/changes#detail9</link><guid isPermaLink="false">view/all/job/create-manage-assignments/30/changes#detail9</guid><pubDate>Tue, 19 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>respect-lib-xapi-nanohttpd/src/commonMain/kotlin/world/respect/lib/xapi/nanohttpd/XapiNanoHttpdApp.kt
respect-lib-shared/src/androidMain/kotlin/world/respect/shared/domain/xapi/getxapilaunchurl/GetXapiLaunchUrlUseCaseAndroid.kt
respect-lib-xapi-core/src/commonMain/kotlin/world/respect/lib/xapi/ext/XapiStatementsResourceExt.kt
respect-lib-shared/src/androidMain/kotlin/world/respect/shared/domain/xapi/xapinanohttpd/XapiNanoHttpdResourceProviderAndroid.kt
respect-lib-xapi-nanohttpd/src/commonMain/kotlin/world/respect/lib/xapi/nanohttpd/ext/NanoHttpdSessionExt.kt
</description></item><item><title>#30 Fix ktor path for xapi statements resource. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/30/changes#detail10</link><guid isPermaLink="false">view/all/job/create-manage-assignments/30/changes#detail10</guid><pubDate>Tue, 19 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>respect-server/src/main/kotlin/world/respect/server/Application.kt
</description></item><item><title>#30 Initial statement maker. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/30/changes#detail11</link><guid isPermaLink="false">view/all/job/create-manage-assignments/30/changes#detail11</guid><pubDate>Tue, 19 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>respect-lib-xapi-nanohttpd/src/commonMain/kotlin/world/respect/lib/xapi/nanohttpd/XapiNanoHttpdApp.kt
respect-server/src/main/resources/http/respect-ds/case_valid/grade1/grade1.json
respect-server/src/main/resources/http/respect-ds/case_valid/grade1/statementmaker/statementmaker.json
respect-server/src/main/resources/http/respect-ds/case_valid/grade1/statementmaker/index.html
respect-lib-xapi-nanohttpd/src/commonMain/kotlin/world/respect/lib/xapi/nanohttpd/ext/NanoHttpdResponseExt.kt
respect-server/src/main/resources/http/respect-ds/case_valid/grade1/lesson001/lesson001.html
respect-server/src/main/resources/http/respect-ds/case_valid/grade1/statementmaker/xapi_module.js
respect-server/src/main/resources/http/respect-ds/case_valid/grade1/lesson001/XAPI.js
</description></item><item><title>#30 Update statement maker to use a statement json from text area and actor from params. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/30/changes#detail12</link><guid isPermaLink="false">view/all/job/create-manage-assignments/30/changes#detail12</guid><pubDate>Tue, 19 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/navigation/AppRoutes.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/learningunit/detail/LearningUnitDetailViewModel.kt
respect-server/src/main/resources/http/respect-ds/case_valid/grade1/lesson001/lesson001.json
respect-lib-xapi-nanohttpd/src/commonMain/kotlin/world/respect/lib/xapi/nanohttpd/XapiNanoHttpdApp.kt
respect-server/src/main/resources/http/respect-ds/case_valid/grade1/grade1.json
respect-lib-shared/src/androidMain/kotlin/world/respect/shared/domain/launchapp/LaunchAppUseCaseAndroid.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/launchapp/LaunchAppUseCase.kt
respect-lib-xapi-core/src/commonMain/kotlin/world/respect/lib/xapi/ext/XapiStatementExt.kt
respect-lib-xapi-core/src/commonMain/kotlin/world/respect/lib/xapi/OpenEelXapiConstants.kt
respect-server/src/main/resources/http/respect-ds/case_valid/grade1/statementmaker/statementmaker.json
respect-server/src/main/resources/http/respect-ds/case_valid/grade1/statementmaker/index.html
</description></item><item><title>#30 Update example app structure and naming. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/30/changes#detail13</link><guid isPermaLink="false">view/all/job/create-manage-assignments/30/changes#detail13</guid><pubDate>Tue, 19 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>respect-server/src/main/resources/http/respect-ds/case_valid/grade1/lesson001/script.js
respect-server/src/main/resources/http/respect-ds/case_valid/grade1/lesson001/lesson001.json
respect-server/src/main/resources/http/respect-ds/case_valid/examples/lesson001/audio.ogg
respect-server/src/main/resources/http/respect-ds/case_valid/appmanifest.json
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/apps/detail/AppsDetailViewModel.kt
respect-server/src/main/resources/http/respect-ds/case_valid/grade1/lesson001/lesson001.html
respect-server/src/main/resources/http/respect-ds/case_valid/grade1/lesson001/video.mp4
respect-server/src/main/resources/http/respect-ds/case_valid/grade1/grade1.json
respect-server/src/main/resources/http/respect-ds/case_valid/grade1/statementmaker/statementmaker.json
respect-server/src/main/resources/http/respect-ds/case_valid/grade1/statementmaker/index.html
respect-server/src/main/resources/http/respect-ds/case_valid/examples/icon.png
respect-server/src/main/resources/http/respect-ds/case_valid/js/xapi_module.js
respect-server/src/main/resources/http/respect-ds/case_valid/js/xapi_statement_maker.js
respect-server/src/main/resources/http/respect-ds/case_valid/grade1/statementmaker/xapi_module.js
respect-server/src/main/resources/http/respect-ds/case_valid/examples/statementmaker/icon.png
respect-server/src/main/resources/http/respect-ds/case_valid/examples/lesson001/lesson001.html
respect-server/src/main/resources/http/respect-ds/case_valid/examples/lesson001/lesson001.json
respect-server/src/main/resources/http/respect-ds/case_valid/examples/statementmaker/index.html
respect-server/src/main/resources/http/respect-ds/case_valid/examples/lesson001/script.js
respect-server/src/main/resources/http/respect-ds/case_valid/grade1/lesson001/cover.png
respect-server/src/main/resources/http/respect-ds/case_valid/icon.png
respect-server/src/main/resources/http/respect-ds/case_valid/examples/statementmaker/statementmaker.json
respect-server/src/main/resources/http/respect-ds/case_valid/index.json
respect-server/src/main/resources/http/respect-ds/case_valid/examples/index.json
respect-server/src/main/resources/http/respect-ds/case_valid/grade1/lesson001/audio.ogg
respect-server/src/main/resources/http/respect-ds/case_valid/examples/lesson001/video.mp4
respect-server/src/main/resources/http/respect-ds/case_valid/examples/lesson001/cover.png
</description></item><item><title>#30 Add jstetris example. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/30/changes#detail14</link><guid isPermaLink="false">view/all/job/create-manage-assignments/30/changes#detail14</guid><pubDate>Tue, 19 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>respect-server/src/main/resources/http/respect-ds/case_valid/examples/jstetris/key-space.gif
respect-server/src/main/resources/http/respect-ds/case_valid/examples/jstetris/key-right.gif
respect-server/src/main/resources/http/respect-ds/case_valid/examples/jstetris/base64.js
respect-server/src/main/resources/http/respect-ds/case_valid/examples/jstetris/TC_tetris.js
respect-server/src/main/resources/http/respect-ds/case_valid/examples/jstetris/TinCanJS/NOTICE
respect-server/src/main/resources/http/respect-ds/case_valid/examples/jstetris/TinCanJS/LICENSE
respect-server/src/main/resources/http/respect-ds/case_valid/examples/jstetris/launch.html
respect-server/src/main/resources/http/respect-ds/case_valid/examples/jstetris/jquery-1.6.4.min.js
respect-server/src/main/resources/http/respect-ds/case_valid/examples/jstetris/2.5.3-crypto-sha1.js
respect-datalayer-repository/log/respect-server.2026-05-04.0.log
respect-server/src/main/resources/http/respect-ds/case_valid/examples/jstetris/key-up.gif
respect-server/src/main/resources/http/respect-ds/case_valid/examples/jstetris/TinCanJS/README.md
respect-server/src/main/resources/http/respect-ds/case_valid/examples/jstetris/tetris.ico
respect-datalayer-repository/log/respect-server.2026-05-12.0.log
respect-server/src/main/resources/http/respect-ds/case_valid/examples/jstetris/icon.png
respect-server/src/main/resources/http/respect-ds/case_valid/examples/jstetris/jstetris.json
respect-server/src/main/resources/http/respect-ds/case_valid/examples/jstetris/key-left.gif
respect-server/src/main/resources/http/respect-ds/case_valid/examples/jstetris/tetris.css
respect-server/src/main/resources/http/respect-ds/case_valid/examples/jstetris/tetris.js
respect-server/src/main/resources/http/respect-ds/case_valid/examples/index.json
respect-server/src/main/resources/http/respect-ds/case_valid/examples/jstetris/key-down.gif
respect-server/src/main/resources/http/respect-ds/case_valid/examples/jstetris/tetris.html
respect-server/src/main/resources/http/respect-ds/case_valid/examples/jstetris/TC_tetris.css
respect-server/src/main/resources/http/respect-ds/case_valid/examples/jstetris/tincan.xml
respect-server/src/main/resources/http/respect-ds/case_valid/examples/jstetris/readme.txt
</description></item><item><title>#30 Update LaunchAppUseCaseAndroid to handle launching native app if app with a verified app link is available. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/30/changes#detail15</link><guid isPermaLink="false">view/all/job/create-manage-assignments/30/changes#detail15</guid><pubDate>Tue, 19 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>respect-server/src/main/resources/http/respect-ds/case_valid/examples/lesson001/lesson001.json
respect-lib-shared/src/androidMain/kotlin/world/respect/shared/domain/launchapp/LaunchAppUseCaseAndroid.kt
respect-app-compose/src/androidMain/AndroidManifest.xml
</description></item><item><title>#30 Work in progress: add header xapi header fields (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/30/changes#detail16</link><guid isPermaLink="false">view/all/job/create-manage-assignments/30/changes#detail16</guid><pubDate>Tue, 19 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/ext/HttpClientExt.kt
respect-lib-xapi-core/src/commonMain/kotlin/world/respect/lib/xapi/ext/XapiStatementExt.kt
respect-server/src/main/resources/http/respect-ds/case_valid/examples/lesson001/lesson001.json
respect-lib-xapi-core/src/commonMain/kotlin/world/respect/lib/xapi/OpenEelXapiConstants.kt
respect-lib-dataloadstate/src/commonMain/kotlin/world/respect/lib/dataloadstate/DataLoadParams.kt
respect-lib-dataloadstate/src/commonMain/kotlin/world/respect/lib/dataloadstate/DataLoadMetaInfo.kt
respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/xapi/XapiStatementsResourceDb.kt
</description></item><item><title>#30 Bump version for xAPI preview (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/30/changes#detail17</link><guid isPermaLink="false">view/all/job/create-manage-assignments/30/changes#detail17</guid><pubDate>Tue, 19 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>respect-app-compose/build.gradle.kts
</description></item><item><title>#30 change assignment detail and edit screens to use XapiStatement instead of Assignment model (anugraha)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/30/changes#detail18</link><guid isPermaLink="false">view/all/job/create-manage-assignments/30/changes#detail18</guid><pubDate>Tue, 19 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/xapi/XapiAssignmentExt.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/xapi/XapiDummyDataGenerator.kt
respect-app-compose/src/commonMain/kotlin/world/respect/app/view/assignment/detail/AssignmentDetailScreen.kt
respect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/xapi/XapiStatementsResourceHttp.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/assignment/edit/AssignmentEditViewModel.kt
respect-app-compose/src/commonMain/kotlin/world/respect/app/view/assignment/edit/AssignmentEditScreen.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/assignment/detail/AssignmentDetailViewModel.kt
</description></item><item><title>#30 Rename and document LaunchRequest properties. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/30/changes#detail19</link><guid isPermaLink="false">view/all/job/create-manage-assignments/30/changes#detail19</guid><pubDate>Tue, 19 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/launchapp/LaunchAppUseCase.kt
</description></item><item><title>#30 resolve conflict (anugraha)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/30/changes#detail20</link><guid isPermaLink="false">view/all/job/create-manage-assignments/30/changes#detail20</guid><pubDate>Tue, 19 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/navigation/AppRoutes.kt
respect-app-compose/src/commonMain/kotlin/world/respect/app/view/assignment/detail/AssignmentDetailScreen.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/assignment/list/AssignmentListViewModel.kt
respect-app-compose/src/androidMain/kotlin/world/respect/AppKoinModule.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/assignment/edit/AssignmentEditViewModel.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/assignment/detail/AssignmentDetailViewModel.kt
respect-app-compose/src/commonMain/kotlin/world/respect/app/view/assignment/edit/AssignmentEditScreen.kt
respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/xapi/XapiStatementsResourceDb.kt
respect-app-compose/src/commonMain/kotlin/world/respect/app/view/assignment/list/AssignmentListScreen.kt
</description></item><item><title>#27 refactor (anugraha)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/27/changes#detail0</link><guid isPermaLink="false">view/all/job/create-manage-assignments/27/changes#detail0</guid><pubDate>Sat, 16 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>respect-lib-shared/src/commonMain/composeResources/values/strings.xml
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/util/AssignmentFilter.kt
respect-app-compose/src/commonMain/kotlin/world/respect/app/view/assignment/detail/AssignmentDetailScreen.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/assignment/list/AssignmentListViewModel.kt
respect-lib-util/src/commonMain/kotlin/world/respect/libutil/util/time/LocalDateExt.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/assignment/edit/AssignmentEditViewModel.kt
respect-app-compose/src/commonMain/kotlin/world/respect/app/view/assignment/edit/AssignmentEditScreen.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/util/AssignmentListScreenFilter.kt
respect-app-compose/src/commonMain/kotlin/world/respect/app/view/assignment/list/AssignmentListScreen.kt
</description></item><item><title>#27 refactor (anugraha)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/27/changes#detail1</link><guid isPermaLink="false">view/all/job/create-manage-assignments/27/changes#detail1</guid><pubDate>Sat, 16 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/assignment/list/AssignmentListViewModel.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/xapi/model/XapiAgent.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/xapi/model/XapiResult.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/xapi/model/XapiContext.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/xapi/XapiAssignmentMapper.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/xapi/model/XapiContextActivities.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/xapi/model/XapiActor.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/xapi/model/XapiObjectType.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/xapi/model/XapiAttachment.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/xapi/model/XapiStatementObject.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/xapi/model/XapiGroup.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/xapi/model/XapiException.kt
respect-lib-xapi-core/src/commonMain/kotlin/world/respect/lib/xapi/model/XapiVerb.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/xapi/model/XapiInteractionTypeEnum.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/xapi/model/XapiStatement.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/xapi/model/XapiVerb.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/xapi/model/XapiAccount.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/assignment/edit/AssignmentEditViewModel.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/xapi/model/XapiState.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/assignment/detail/AssignmentDetailViewModel.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/xapi/model/XapiActivityDefinition.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/xapi/model/XapiStatementRef.kt
</description></item><item><title>#27 refactor (anugraha)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/27/changes#detail2</link><guid isPermaLink="false">view/all/job/create-manage-assignments/27/changes#detail2</guid><pubDate>Sat, 16 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/xapi/ext/JsonObjectExt.kt
</description></item><item><title>#27 refactor (anugraha)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/27/changes#detail3</link><guid isPermaLink="false">view/all/job/create-manage-assignments/27/changes#detail3</guid><pubDate>Sat, 16 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/assignment/detail/AssignmentDetailViewModel.kt
</description></item><item><title>#26 Update Maestro assignment flow. (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/26/changes#detail0</link><guid isPermaLink="false">view/all/job/create-manage-assignments/26/changes#detail0</guid><pubDate>Fri, 15 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>.maestro/pending-flows/003_admin_user_assigns_assignment_to_a_class_test.yaml
.maestro/flows-disabled/003_admin_user_assigns_assignment_to_a_class_test.yaml
</description></item><item><title>#26 refactor (anugraha)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/26/changes#detail1</link><guid isPermaLink="false">view/all/job/create-manage-assignments/26/changes#detail1</guid><pubDate>Fri, 15 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/assignment/detail/AssignmentDetailScreen.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/assignment/detail/AssignmentDetailViewModel.kt
</description></item><item><title>#25 Disable flow 003 until new xAPI based assignment branch is merged. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/25/changes#detail0</link><guid isPermaLink="false">view/all/job/create-manage-assignments/25/changes#detail0</guid><pubDate>Thu, 14 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>.maestro/flows/003_admin_user_assigns_assignment_to_a_class_test.yaml
.maestro/flows-disabled/003_admin_user_assigns_assignment_to_a_class_test.yaml
</description></item><item><title>#25 Check username unique during invitation acceptance process (issue #232). (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/25/changes#detail1</link><guid isPermaLink="false">view/all/job/create-manage-assignments/25/changes#detail1</guid><pubDate>Thu, 14 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>respect-lib-shared/src/commonMain/composeResources/values/strings.xml
respect-server/src/main/kotlin/world/respect/server/Application.kt
respect-server/src/main/kotlin/world/respect/server/ServerKoinModule.kt
respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/daos/PersonEntityDao.kt
respect-server/src/main/kotlin/world/respect/server/account/invite/username/UsernameSuggestionUseCaseServer.kt
respect-server/src/main/kotlin/world/respect/server/account/invite/username/checkusernameunique/CheckUsernameUniqueUseCaseServer.kt
respect-lib-shared/src/jvmMain/kotlin/world/respect/shared/domain/account/invite/RedeemInviteUseCaseDb.kt
respect-app-compose/src/commonMain/kotlin/world/respect/app/view/manageuser/createaccount/CreateAccountScreen.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/manageuser/signup/CreateAccountViewModel.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/username/checkusernameunique/CheckUsernameUniqueUseCase.kt
respect-app-compose/src/androidMain/kotlin/world/respect/AppKoinModule.kt
respect-server/src/main/kotlin/world/respect/server/routes/username/checkusernameunique/CheckUsernameUniqueRoute.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/username/checkusernameunique/CheckUsernameUniqueUseCaseClient.kt
</description></item><item><title>#25 Apply username unique check to when admin sets a username manually. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/25/changes#detail2</link><guid isPermaLink="false">view/all/job/create-manage-assignments/25/changes#detail2</guid><pubDate>Thu, 14 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/CreateAccountSetUserNameViewModel.kt
</description></item><item><title>#25 Correct visibility of floating action button on PersonListViewModel.kt and update to use common GetWritableRolesUseCase (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/25/changes#detail3</link><guid isPermaLink="false">view/all/job/create-manage-assignments/25/changes#detail3</guid><pubDate>Thu, 14 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/list/PersonListViewModel.kt
</description></item><item><title>#25 Show role on PersonListScreen. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/25/changes#detail4</link><guid isPermaLink="false">view/all/job/create-manage-assignments/25/changes#detail4</guid><pubDate>Thu, 14 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/navigation/AppRoutes.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/adapters/PersonAdapters.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/ext/PersonExt.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/model/composites/PersonListDetails.kt
respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/daos/PersonEntityDao.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/clazz/detail/ClazzDetailViewModel.kt
respect-app-compose/src/commonMain/kotlin/world/respect/app/view/person/list/PersonListScreen.kt
respect-app-compose/src/commonMain/kotlin/world/respect/app/view/person/list/PersonListItem.kt
</description></item><item><title>#25 Show error snackbar when no valid link is found. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/25/changes#detail5</link><guid isPermaLink="false">view/all/job/create-manage-assignments/25/changes#detail5</guid><pubDate>Thu, 14 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/learningunit/detail/LearningUnitDetailViewModel.kt
respect-lib-shared/src/commonMain/composeResources/values/strings.xml
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/util/ext/ReadiumLinkExt.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/apps/detail/AppsDetailViewModel.kt
</description></item><item><title>#25 Bump version and change assignment label. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/25/changes#detail6</link><guid isPermaLink="false">view/all/job/create-manage-assignments/25/changes#detail6</guid><pubDate>Thu, 14 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/assignment/edit/AssignmentEditScreen.kt
respect-app-compose/src/commonMain/kotlin/world/respect/app/components/RespectLocalDateTimeField.kt
respect-app-compose/build.gradle.kts
</description></item><item><title>#25 Update Maestro flows for assignment management and class member creation. (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/25/changes#detail7</link><guid isPermaLink="false">view/all/job/create-manage-assignments/25/changes#detail7</guid><pubDate>Thu, 14 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>.maestro/pending-flows/003_admin_user_assigns_assignment_to_a_class_test.yaml
.maestro/flows/subflows/create_account_for_class_member.yaml
.maestro/flows/003_admin_user_assigns_assignment_to_a_class_test.yaml
.maestro/flows/subflows/school_user_login_flow.yaml
</description></item><item><title>#25 remove Assignmententity and related classes (anugraha)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/25/changes#detail8</link><guid isPermaLink="false">view/all/job/create-manage-assignments/25/changes#detail8</guid><pubDate>Thu, 14 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>respect-server/src/main/kotlin/world/respect/server/Application.kt
respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/writequeue/DrainRemoteWriteQueueUseCase.kt
respect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/AssignmentDataSourceHttp.kt
respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/SchoolDataSourceDb.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/AssignmentDataSourceLocal.kt
respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/AssignmentDataSourceRepository.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/AssignmentDataSource.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/model/Assignment.kt
respect-datalayer-db/schemas/world.respect.datalayer.db.RespectSchoolDatabase/13.json
respect-server/src/main/kotlin/world/respect/server/routes/school/respect/AssignmentRoute.kt
respect-app-compose/src/androidMain/kotlin/world/respect/AppKoinModule.kt
respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/SchoolDataSourceRepository.kt
respect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/SchoolDataSourceHttp.kt
respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/daos/AssignmentEntityDao.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/assignment/edit/AssignmentEditViewModel.kt
respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/RespectSchoolDatabase.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/SchoolDataSourceLocal.kt
respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/entities/AssignmentEntity.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/writequeue/WriteQueueItem.kt
respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/adapters/AssignmentAdapter.kt
respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/AssignmentDatasourceDb.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/SchoolDataSource.kt
</description></item><item><title>#25 Move `003_admin_user_assigns_assignment_to_a_class_test.yaml` to `pending-flows` and add an xAPI verification script. (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/25/changes#detail9</link><guid isPermaLink="false">view/all/job/create-manage-assignments/25/changes#detail9</guid><pubDate>Thu, 14 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>.maestro/pending-flows/003_admin_user_assigns_assignment_to_a_class_test.yaml
.maestro/flows/003_admin_user_assigns_assignment_to_a_class_test.yaml
</description></item><item><title>#24 refactor (anugraha)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/24/changes#detail0</link><guid isPermaLink="false">view/all/job/create-manage-assignments/24/changes#detail0</guid><pubDate>Wed, 13 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/xapi/XapiStatementsResourceRepository.kt
respect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/xapi/XapiStatementsResourceHttp.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/assignment/list/AssignmentListViewModel.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/assignment/detail/AssignmentDetailViewModel.kt
respect-lib-xapi-core/src/commonMain/kotlin/world/respect/lib/xapi/resources/XapiStatementsResource.kt
respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/xapi/XapiStatementsResourceDb.kt
respect-app-compose/src/commonMain/kotlin/world/respect/app/view/assignment/list/AssignmentListScreen.kt
</description></item><item><title>#20 Update design guidelines for screen inclusion (noreply)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/20/changes#detail0</link><guid isPermaLink="false">view/all/job/create-manage-assignments/20/changes#detail0</guid><pubDate>Sat, 9 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>DESIGN_GUIDELINES.md
</description></item><item><title>#20 Update README.md (noreply)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/20/changes#detail1</link><guid isPermaLink="false">view/all/job/create-manage-assignments/20/changes#detail1</guid><pubDate>Sat, 9 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>README.md
</description></item><item><title>#20 Initial installatoin instructions for RESPECT server binary installation (noreply)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/20/changes#detail2</link><guid isPermaLink="false">view/all/job/create-manage-assignments/20/changes#detail2</guid><pubDate>Sat, 9 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>INSTALL.md
</description></item><item><title>#20 Add respect-server.service and update INSTALL.md (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/20/changes#detail3</link><guid isPermaLink="false">view/all/job/create-manage-assignments/20/changes#detail3</guid><pubDate>Sat, 9 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>respect-server/src/dist/systemd/respect-server.service
INSTALL.md
</description></item><item><title>#20 Make example IP address consistent on INSTALL.md (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/20/changes#detail4</link><guid isPermaLink="false">view/all/job/create-manage-assignments/20/changes#detail4</guid><pubDate>Sat, 9 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>INSTALL.md
</description></item><item><title>#20 Add query intent filter (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/20/changes#detail5</link><guid isPermaLink="false">view/all/job/create-manage-assignments/20/changes#detail5</guid><pubDate>Sat, 9 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/xapi/daos/XapiStatementEntityDao.kt
respect-app-compose/src/androidMain/AndroidManifest.xml
</description></item><item><title>#20 Add Maestro flow summary documentation for core features. (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/20/changes#detail6</link><guid isPermaLink="false">view/all/job/create-manage-assignments/20/changes#detail6</guid><pubDate>Sat, 9 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>respect-test-end-to-end/README.md
.maestro/flow-summary/001_002_add_user_direct_test.md
respect-test-end-to-end/test-description/001_003_login_using_school_link_test_description.md
respect-test-end-to-end/test-description/002_browse_lessons_test_description.md
.maestro/flow-summary/001_005_add_school_self_registration_test.md
.maestro/flow-summary/002_browse_lessons_test.md
.maestro/README.md
respect-test-end-to-end/test-description/001_001_invite_using_invite_code_test_description.md
.maestro/flow-summary/001_001_invite_users_using_qr_code_or_link_test.md
respect-test-end-to-end/test-description/001_002_add_user_direct_test_description.md
respect-test-end-to-end/test-description/001_005_add_school_self_registration_test_description.md
respect-test-end-to-end/test-description/003_teacher_user_assigns_assignment_to_a_class_test_description.md
.maestro/flow-summary/001_003_login_using_school_link_test.md
respect-test-end-to-end/test-description/006_user_signup_using_passkey_test_description.md
.maestro/flow-summary/003_admin_user_assigns_assignment_to_a_class_test.md
</description></item><item><title>#20 Update `.maestro/README.md` formatting. (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/20/changes#detail7</link><guid isPermaLink="false">view/all/job/create-manage-assignments/20/changes#detail7</guid><pubDate>Sat, 9 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>.maestro/README.md
</description></item><item><title>#20 Refactor Maestro test documentation by consolidating flow summaries. (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/20/changes#detail8</link><guid isPermaLink="false">view/all/job/create-manage-assignments/20/changes#detail8</guid><pubDate>Sat, 9 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>.maestro/README.md
.maestro/flow-summary/001_002_add_user_direct_test.md
.maestro/flow-summary/001_001_invite_users_using_qr_code_or_link_test.md
.maestro/flow-summary/001_003_login_using_school_link_test.md
.maestro/flow-summary/001_005_add_school_self_registration_test.md
.maestro/flow-summary/002_browse_lessons_test.md
.maestro/flow-summary/003_admin_user_assigns_assignment_to_a_class_test.md
</description></item><item><title>#20 Update Maestro README.md to use numbered lists for test flow descriptions. (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/20/changes#detail9</link><guid isPermaLink="false">view/all/job/create-manage-assignments/20/changes#detail9</guid><pubDate>Sat, 9 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>.maestro/README.md
</description></item><item><title>#20 Update Maestro README with detailed steps for user management and school registration test flows. (pooja)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/20/changes#detail10</link><guid isPermaLink="false">view/all/job/create-manage-assignments/20/changes#detail10</guid><pubDate>Sat, 9 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>.maestro/README.md
</description></item><item><title>#20 Change PERSON_ADMIN_WRITE flag to an explicit permission. Using a value that was not represented by a single 2^x value resulted in errors in the permission check queries not working as expected. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/20/changes#detail11</link><guid isPermaLink="false">view/all/job/create-manage-assignments/20/changes#detail11</guid><pubDate>Sat, 9 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/ext/PersonRoleEnumExt.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/domain/GetWritableRolesListUseCaseImpl.kt
respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/daos/PersonEntityDao.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/model/PermissionFlags.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/edit/PersonEditViewModel.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/domain/CheckPersonPermissionUseCase.kt
</description></item><item><title>#20 Fix for issue #231. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/20/changes#detail12</link><guid isPermaLink="false">view/all/job/create-manage-assignments/20/changes#detail12</guid><pubDate>Sat, 9 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/person/list/PersonListScreen.kt
respect-app-compose/src/commonMain/kotlin/world/respect/app/view/clazz/detail/ClazzDetailScreen.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/list/PersonListViewModel.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/clazz/detail/ClazzDetailViewModel.kt
respect-app-compose/src/commonMain/kotlin/world/respect/app/view/clazz/detail/ClassPendingPersonListItem.kt
</description></item><item><title>#20 Fix mistake on xapi statement query: using incorrect verb field (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/20/changes#detail13</link><guid isPermaLink="false">view/all/job/create-manage-assignments/20/changes#detail13</guid><pubDate>Sat, 9 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/xapi/daos/XapiStatementEntityDao.kt
respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/xapi/daos/XapiStatementEntityJsonDao.kt
</description></item><item><title>#20 Fix mistake on xapi resource: wrong parameter for until. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/20/changes#detail14</link><guid isPermaLink="false">view/all/job/create-manage-assignments/20/changes#detail14</guid><pubDate>Sat, 9 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/xapi/XapiStatementsResourceDb.kt
</description></item><item><title>#20 Issue #231 (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/20/changes#detail15</link><guid isPermaLink="false">view/all/job/create-manage-assignments/20/changes#detail15</guid><pubDate>Sat, 9 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/invite/ApproveOrDeclineInviteRequestUseCase.kt
respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/ext/PersonExt.kt
</description></item><item><title>#20 add Assignment xAPI Recipe in edi, list, deatil screen (anugraha)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/20/changes#detail16</link><guid isPermaLink="false">view/all/job/create-manage-assignments/20/changes#detail16</guid><pubDate>Sat, 9 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/assignment/edit/AssignmentEditViewModel.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/assignment/detail/AssignmentDetailViewModel.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/assignment/list/AssignmentListViewModel.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/xapi/model/XapiVerb.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/xapi/XapiAssignmentMapper.kt
respect-app-compose/src/commonMain/kotlin/world/respect/app/view/assignment/list/AssignmentListScreen.kt
</description></item><item><title>#17 update getAssignmentResult on repository (anugraha)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/17/changes#detail0</link><guid isPermaLink="false">view/all/job/create-manage-assignments/17/changes#detail0</guid><pubDate>Wed, 6 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/xapi/XapiStatementsResourceRepository.kt
</description></item><item><title>#17 refactor (anugraha)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/17/changes#detail1</link><guid isPermaLink="false">view/all/job/create-manage-assignments/17/changes#detail1</guid><pubDate>Wed, 6 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/xapi/XapiStatementsResourceRepository.kt
</description></item><item><title>#16 Add work in progress permission recipe. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/16/changes#detail0</link><guid isPermaLink="false">view/all/job/create-manage-assignments/16/changes#detail0</guid><pubDate>Tue, 5 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>respect-lib-xapi-core/README_PERMISSION_RECIPE.md
</description></item><item><title>#16 Work in progress statement resource integration test. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/16/changes#detail1</link><guid isPermaLink="false">view/all/job/create-manage-assignments/16/changes#detail1</guid><pubDate>Tue, 5 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/xapi/XapiStatementsResourceRepository.kt
respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/writequeue/DrainRemoteWriteQueueUseCase.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/xapi/XapiStatementsResourceLocal.kt
respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/SchoolDataSourceRepository.kt
respect-lib-test-resources/src/jvmMain/kotlin/world/respect/lib/test/res/XapiSampleStatements.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/writequeue/WriteQueueItem.kt
respect-datalayer-repository/build.gradle.kts
respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/xapi/XapiStatementsResourceDb.kt
respect-datalayer-repository/src/jvmTest/kotlin/world/respect/datalayer/repository/school/xapi/XapiStatementRepositoryIntegrationTest.kt
</description></item><item><title>#16 Update statement resource test to use flow instead of delay. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/16/changes#detail2</link><guid isPermaLink="false">view/all/job/create-manage-assignments/16/changes#detail2</guid><pubDate>Tue, 5 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>respect-datalayer-repository/src/jvmTest/kotlin/world/respect/datalayer/repository/school/xapi/XapiStatementRepositoryIntegrationTest.kt
respect-lib-xapi-core/src/commonMain/kotlin/world/respect/lib/xapi/resources/XapiStatementsResource.kt
</description></item><item><title>#16 Update Statement resource integration test to include get. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/16/changes#detail3</link><guid isPermaLink="false">view/all/job/create-manage-assignments/16/changes#detail3</guid><pubDate>Tue, 5 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/xapi/composites/XapiTimes.kt
respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/xapi/XapiStatementsResourceDb.kt
respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/xapi/XapiStatementsResourceRepository.kt
respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/xapi/daos/XapiStatementEntityDao.kt
respect-datalayer-repository/src/jvmTest/kotlin/world/respect/datalayer/repository/school/xapi/XapiStatementRepositoryIntegrationTest.kt
</description></item><item><title>#16 Update recipe for class groups. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/16/changes#detail4</link><guid isPermaLink="false">view/all/job/create-manage-assignments/16/changes#detail4</guid><pubDate>Tue, 5 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>respect-lib-xapi-core/src/commonMain/kotlin/world/respect/lib/xapi/resources/XapiResource.kt
respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/SchoolDataSourceRepository.kt
respect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/SchoolDataSourceHttp.kt
respect-lib-xapi-core/src/commonMain/kotlin/world/respect/lib/xapi/resources/XapiAgentsResource.kt
respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/SchoolDataSourceDb.kt
respect-lib-xapi-core/src/commonMain/kotlin/world/respect/lib/xapi/resources/XapiStatementsResource.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/xapi/XapiActorDataSourceLocal.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/SchoolDataSourceLocal.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/xapi/XapiActorDataSource.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/SchoolDataSource.kt
respect-lib-xapi-core/README_CLASSGROUPS_RECIPE.md
</description></item><item><title>#16 Update XapiActorDataSourceDb to fix compilation issue. Create new independent dataloadstate module. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/16/changes#detail5</link><guid isPermaLink="false">view/all/job/create-manage-assignments/16/changes#detail5</guid><pubDate>Tue, 5 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>respect-datalayer/build.gradle.kts
respect-lib-dataloadstate/.gitignore
respect-lib-dataloadstate/build.gradle.kts
respect-lib-xapi-core/build.gradle.kts
respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/xapi/XapiActorDataSourceDb.kt
settings.gradle.kts
</description></item><item><title>#16 Update XapiActorDataSourceDb to fix compilation issue. Create new independent dataloadstate module. (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/16/changes#detail6</link><guid isPermaLink="false">view/all/job/create-manage-assignments/16/changes#detail6</guid><pubDate>Tue, 5 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/opds/OpdsFeedDataSource.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/apps/enterlink/EnterLinkViewModel.kt
respect-datalayer-db/src/jvmTest/kotlin/world/respect/datalayer/db/school/xapi/XapiStatementsResourceDbTest.kt
respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/writequeue/DrainRemoteWriteQueueUseCase.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/manageuser/login/LoginViewModel.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/opds/ext/OpdsFeedExt.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/SchoolConfigSettingDataSource.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/inviteperson/InvitePersonViewModel.kt
respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/PersonQrBadgeDataSourceDb.kt
respect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/SchoolAppDataSourceHttp.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/shared/params/GetListCommonParams.kt
respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/opds/adapters/OpdsFeedAdapter.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/networkvalidation/ExtendedDataSourceValidationHelper.kt
respect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/xapi/XapiStatementsResourceHttp.kt
respect-server/src/main/kotlin/world/respect/server/routes/school/respect/AssignmentRoute.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/assignment/edit/AssignmentEditViewModel.kt
respect-app-compose/src/commonMain/kotlin/world/respect/app/view/assignment/edit/AssignmentEditScreen.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/invite/ApproveOrDeclineInviteRequestUseCase.kt
respect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/PersonPasskeyDataSourceHttp.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/manageaccount/ManageAccountViewModel.kt
respect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/ext/ParametersBuilderExt.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/PersonQrBadgeDataSource.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/shared/paging/CacheableHttpPagingSource.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/manageuser/waitingforapproval/WaitingForApprovalViewModel.kt
respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/opds/adapters/OpdsPublicationEntityAdapter.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/SchoolPermissionGrantDataSource.kt
respect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/AssignmentDataSourceHttp.kt
respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/AssignmentDataSourceRepository.kt
respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/opds/OpdsPublicationDataSourceDb.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/AssignmentDataSource.kt
respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/SchoolPermissionGrantDataSourceDb.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/apps/list/AppListViewModel.kt
respect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/PersonQrBadgeDataSourceHttp.kt
respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/InviteDataSourceDb.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/opds/OpdsPublicationDataSource.kt
respect-server/src/main/kotlin/world/respect/server/routes/RespectSchoolDirectoryRoute.kt
respect-lib-dataloadstate/src/commonMain/kotlin/world/respect/lib/dataloadstate/DataLayerHeaders.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/clazz/detail/ClazzDetailViewModel.kt
respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/ClassDataSourceRepository.kt
respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/PersonDataSourceDb.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/report/list/ReportListViewModel.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/PersonPasswordDataSourceExt.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/enrollment/edit/EnrollmentEditViewModel.kt
respect-lib-dataloadstate/src/commonMain/kotlin/world/respect/lib/dataloadstate/DataLoadMetaInfo.kt
respect-server/src/main/kotlin/world/respect/server/routes/qrcode/PersonQrBadgeRoute.kt
respect-server/src/main/kotlin/world/respect/server/util/ext/ApplicationCallExt.kt
respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/EnrollmentDataSourceRepository.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/CreateAccountSetPasswordViewModel.kt
respect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/schooldirectory/SchoolDirectoryEntryDataSourceHttp.kt
respect-server/src/main/kotlin/world/respect/server/routes/school/xapi/XapiStatementsResourceRoute.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/passkeylist/PasskeyListViewModel.kt
respect-app-compose/src/commonMain/kotlin/world/respect/app/view/apps/detail/AppsDetailScreen.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/setusernameandpassword/CreateAccountSetUserNameViewModel.kt
respect-lib-dataloadstate/src/commonMain/kotlin/world/respect/lib/dataloadstate/DataLoadParams.kt
respect-lib-xapi-core/src/commonMain/kotlin/world/respect/lib/xapi/resources/XapiStatementsResource.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/ext/HttpHeadersExt.kt
respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/xapi/XapiActorDataSourceDb.kt
respect-datalayer-repository/src/jvmTest/kotlin/world/respect/datalayer/repository/school/PersonRepositoryIntegrationTest.kt
respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/schooldirectory/SchoolDirectoryEntryDataSourceRepository.kt
respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/PersonPasswordDataSourceRepository.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/PersonPasskeyDataSource.kt
respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/PersonDataSourceRepository.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/DataLayerParams.kt
respect-server/src/main/kotlin/world/respect/server/routes/school/respect/SchoolAppRoute.kt
respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/opds/OpdsFeedDataSourceRepository.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/learningunit/detail/LearningUnitDetailViewModel.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/clazz/list/ClazzListViewModel.kt
respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/xapi/XapiStatementsResourceRepository.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/DataLoadMetaInfo.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/DataLoadParams.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/curriculum/mapping/edit/CurriculumMappingEditViewModel.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/report/list/ReportTemplateListViewModel.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/account/RespectAccountManager.kt
respect-lib-dataloadstate/src/commonMain/kotlin/world/respect/lib/dataloadstate/DataLayerParams.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/ext/HttpClientExt.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/changepassword/ChangePasswordViewModel.kt
respect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/ClassDataSourceHttp.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/ext/DataLoadStateExt.kt
respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/schooldirectory/SchoolDirectoryEntryDataSourceDb.kt
respect-server/src/main/kotlin/world/respect/server/routes/school/respect/PlaylistRoute.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/RespectViewModel.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/EnrollmentDataSource.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/assignment/detail/AssignmentDetailViewModel.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/DataLayerHeaders.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/permissions/CheckSchoolPermissionsUseCase.kt
respect-server/src/main/kotlin/world/respect/server/util/ext/ParametersExt.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/clazz/edit/ClazzEditViewModel.kt
respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/opds/OpdsPublicationDataSourceRepository.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/ext/LocalModelDataSourceExt.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/apps/detail/AppsDetailViewModel.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/enrollment/list/EnrollmentListViewModel.kt
respect-datalayer-repository/src/jvmTest/kotlin/world/respect/datalayer/repository/opds/OpdsRespectRepositoryIntegrationTest.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/detail/PersonDetailViewModel.kt
respect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/PersonPasswordDataSourceHttp.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/manageuser/getstarted/GetStartedViewModel.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/apps/launcher/AppLauncherViewModel.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/IndicatorDataSource.kt
respect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/shared/paging/OffsetLimitHttpPagingSource.kt
respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/PersonPasskeyDataSourceDb.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/PersonPasswordDataSource.kt
respect-server/src/main/kotlin/world/respect/server/routes/school/respect/PersonRoute.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/InviteDataSource.kt
respect-lib-dataloadstate/build.gradle.kts
respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/AssignmentDatasourceDb.kt
respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/ClassDatasourceDb.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/report/indictor/edit/IndictorEditViewmodel.kt
respect-lib-dataloadstate/src/commonMain/kotlin/world/respect/lib/dataloadstate/DataLoadState.kt
respect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/SchoolPermissionGrantDataSourceHttp.kt
respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/networkvalidation/ExtendedDataSourceValidationHelperImpl.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/DataLoadState.kt
respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/SchoolPermissionGrantDataSourceRepository.kt
respect-server/src/main/kotlin/world/respect/server/routes/school/respect/ClassRoute.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/xapi/XapiActivityDataSource.kt
respect-server/src/main/kotlin/world/respect/server/routes/school/respect/EnrollmentRoute.kt
respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/pullsync/RunPullSyncUseCase.kt
respect-app-compose/src/commonMain/kotlin/world/respect/app/view/curriculum/mapping/edit/CurriculumMappingEditScreen.kt
respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/PersonPasskeyDataSourceRepository.kt
respect-lib-shared/src/jvmMain/kotlin/world/respect/shared/domain/account/child/AddChildAccountUseCaseDb.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/DummySchoolConfigSettingsDataSource.kt
respect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/InviteDataSourceHttp.kt
respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/xapi/XapiStatementsResourceDb.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/learningunit/list/LearningUnitListViewModel.kt
respect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/EnrollmentDataSourceHttp.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/edit/PersonEditViewModel.kt
respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/IndicatorDataSourceDb.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/ClassDataSource.kt
respect-app-compose/src/commonMain/kotlin/world/respect/app/view/assignment/detail/AssignmentDetailScreen.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/assignment/list/AssignmentListViewModel.kt
respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/ReportDataSourceRepository.kt
respect-app-compose/src/commonMain/kotlin/world/respect/app/view/apps/launcher/AppLauncherScreen.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/person/list/PersonListViewModel.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/schooldirectory/edit/SchoolDirectoryEditViewModel.kt
respect-datalayer-repository/src/jvmTest/kotlin/world/respect/datalayer/repository/school/PlaylistRepositoryIntegrationTest.kt
respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/xapi/XapiActivityDataSourceDb.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/PersonDataSource.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/ReportDataSource.kt
respect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/opds/OpdsPublicationDataSourceHttp.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/report/indictor/detail/IndicatorDetailViewModel.kt
respect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/opds/OpdsFeedDataSourceHttp.kt
respect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/PersonDataSourceHttp.kt
respect-datalayer-db/src/jvmTest/kotlin/world/respect/datalayer/db/school/TestPersonStorage.kt
respect-datalayer-repository/src/jvmTest/kotlin/world/respect/datalayer/repository/school/xapi/XapiStatementRepositoryIntegrationTest.kt
respect-server/src/main/kotlin/world/respect/server/routes/school/respect/SchoolPermissionGrantRoute.kt
respect-app-compose/src/commonMain/kotlin/world/respect/app/view/assignment/list/AssignmentListScreen.kt
respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/InviteDataSourceRepository.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/opds/OpdsPublicationDataSourceLocal.kt
respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/EnrollmentDataSourceDb.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/SchoolAppDataSource.kt
respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/PersonPasswordDataSourceDb.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/opds/OpdsFeedDataSourceLocal.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/manageuser/accountlist/AccountListViewModel.kt
respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/PersonQrCodeBadgeDataSourceRepository.kt
respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/opds/OpdsFeedDataSourceDb.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/respect/RespectUserDataSource.kt
respect-server/src/main/kotlin/world/respect/server/routes/school/respect/InviteRoute.kt
respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/schooldirectory/SchoolDirectoryEntryDataSource.kt
respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/SchoolAppDataSourceDb.kt
respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/SchoolAppDataSourceRepository.kt
respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/ReportDataSourceDb.kt
</description></item><item><title>#16 Remove obsolete GetStatementsRequest (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/16/changes#detail7</link><guid isPermaLink="false">view/all/job/create-manage-assignments/16/changes#detail7</guid><pubDate>Tue, 5 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>respect-lib-xapi-core/src/commonMain/kotlin/world/respect/lib/xapi/resources/XapiStatementsResource.kt
</description></item><item><title>#16 Add support for flow based return on XapiStatementResource (mike)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/16/changes#detail8</link><guid isPermaLink="false">view/all/job/create-manage-assignments/16/changes#detail8</guid><pubDate>Tue, 5 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>respect-lib-xapi-core/src/commonMain/kotlin/world/respect/lib/xapi/resources/XapiStatementsResource.kt
respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/xapi/XapiStatementsResourceRepository.kt
respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/xapi/XapiStatementsResourceDb.kt
respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/xapi/daos/XapiStatementEntityDao.kt
respect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/xapi/XapiStatementsResourceHttp.kt
respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/xapi/daos/XapiStatementEntityJsonDao.kt
</description></item><item><title>#16 resolve conflict (anugraha)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/16/changes#detail9</link><guid isPermaLink="false">view/all/job/create-manage-assignments/16/changes#detail9</guid><pubDate>Tue, 5 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>respect-datalayer-repository/src/commonMain/kotlin/world/respect/datalayer/repository/school/xapi/XapiStatementsResourceRepository.kt
respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/xapi/XapiStatementsResourceDb.kt
respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/xapi/daos/XapiStatementEntityDao.kt
respect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/xapi/XapiStatementsResourceHttp.kt
respect-app-compose/src/commonMain/kotlin/world/respect/app/view/assignment/list/AssignmentListScreen.kt
</description></item><item><title>#12 refactor (anugraha)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/12/changes#detail0</link><guid isPermaLink="false">view/all/job/create-manage-assignments/12/changes#detail0</guid><pubDate>Fri, 1 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>respect-datalayer-http/src/commonMain/kotlin/world/respect/datalayer/http/school/xapi/XapiStatementsResourceHttp.kt
respect-app-compose/src/commonMain/kotlin/world/respect/app/view/assignment/detail/AssignmentDetailScreen.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/assignment/list/AssignmentListViewModel.kt
respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/xapi/daos/XapiStatementEntityDao.kt
respect-lib-xapi-core/src/commonMain/kotlin/world/respect/lib/xapi/resources/XapiStatementsResource.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/assignment/detail/AssignmentDetailViewModel.kt
respect-datalayer-db/src/commonMain/kotlin/world/respect/datalayer/db/school/xapi/XapiStatementsResourceDb.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/util/AssignmentStatusFilter.kt
</description></item><item><title>#12 refactor (anugraha)</title><link>https://devserver3.ustadmobile.com/jenkins/view/all/job/create-manage-assignments/12/changes#detail1</link><guid isPermaLink="false">view/all/job/create-manage-assignments/12/changes#detail1</guid><pubDate>Fri, 1 May 2026 02:36:00 +0400</pubDate><author>no-reply@ustadmobile.com</author><description>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/xapi/XapiDummyDataGenerator.kt
respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/assignment/detail/AssignmentDetailViewModel.kt
respect-app-compose/src/androidMain/kotlin/world/respect/AppKoinModule.kt
</description></item></channel></rss>