<freeStyleBuild _class='hudson.model.FreeStyleBuild'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.TimerTrigger$TimerTriggerCause'><shortDescription>Started by timer</shortDescription></cause></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesorigindev-playlists-links _class='hudson.plugins.git.util.Build'><buildNumber>123</buildNumber><marked><SHA1>dfe364f81be88d0cfb19e81b22cc6e2a32a83e51</SHA1><branch><SHA1>dfe364f81be88d0cfb19e81b22cc6e2a32a83e51</SHA1><name>refs/remotes/origin/dev-playlists-links</name></branch></marked><revision><SHA1>dfe364f81be88d0cfb19e81b22cc6e2a32a83e51</SHA1><branch><SHA1>dfe364f81be88d0cfb19e81b22cc6e2a32a83e51</SHA1><name>refs/remotes/origin/dev-playlists-links</name></branch></revision></refsremotesorigindev-playlists-links></buildsByBranchName><lastBuiltRevision><SHA1>dfe364f81be88d0cfb19e81b22cc6e2a32a83e51</SHA1><branch><SHA1>dfe364f81be88d0cfb19e81b22cc6e2a32a83e51</SHA1><name>refs/remotes/origin/dev-playlists-links</name></branch></lastBuiltRevision><remoteUrl>https://github.com/UstadMobile/Respect.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><artifact><displayPath>respect-cli-1.0.39.zip</displayPath><fileName>respect-cli-1.0.39.zip</fileName><relativePath>respect-cli/build/distributions/respect-cli-1.0.39.zip</relativePath></artifact><artifact><displayPath>respect-server-1.0.39.zip</displayPath><fileName>respect-server-1.0.39.zip</fileName><relativePath>respect-server/build/distributions/respect-server-1.0.39.zip</relativePath></artifact><building>false</building><displayName>#123</displayName><duration>72517</duration><estimatedDuration>156269</estimatedDuration><fullDisplayName>dev-playlists-links #123</fullDisplayName><id>123</id><inProgress>false</inProgress><keepLog>false</keepLog><number>123</number><queueId>11175</queueId><result>FAILURE</result><timestamp>1786651500445</timestamp><url>https://devserver3.ustadmobile.com/jenkins/job/dev-playlists-links/123/</url><builtOn></builtOn><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-lib-xapi-core/README_ASSIGNMENT_RECIPE.md</affectedPath><affectedPath>respect-lib-xapi-core/README_XAPI_SQL_QUERY.md</affectedPath><commitId>860d3fae1a870012649be7a8bcd250592d8ecf76</commitId><timestamp>1786386075000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/mike</absoluteUrl><fullName>Mike Dawson</fullName></author><authorEmail>mike@ustadmobile.com</authorEmail><comment>Add XAPI SQL Query receipe readme.
</comment><date>2026-08-10 22:21:15 +0400</date><id>860d3fae1a870012649be7a8bcd250592d8ecf76</id><msg>Add XAPI SQL Query receipe readme.</msg><path><editType>edit</editType><file>respect-lib-xapi-core/README_ASSIGNMENT_RECIPE.md</file></path><path><editType>add</editType><file>respect-lib-xapi-core/README_XAPI_SQL_QUERY.md</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/db/migrations/UstadCacheDbMigrations.kt</affectedPath><affectedPath>gradle.properties</affectedPath><commitId>57c6f948b6b15bde197a40a6a1ad78009d30021d</commitId><timestamp>1786532734000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/mike</absoluteUrl><fullName>Mike Dawson</fullName></author><authorEmail>mike@ustadmobile.com</authorEmail><comment>Fix cache db migration (migration referenced old field name).
</comment><date>2026-08-12 15:05:34 +0400</date><id>57c6f948b6b15bde197a40a6a1ad78009d30021d</id><msg>Fix cache db migration (migration referenced old field name).</msg><path><editType>edit</editType><file>gradle.properties</file></path><path><editType>edit</editType><file>respect-lib-cache/src/commonMain/kotlin/com/ustadmobile/libcache/db/migrations/UstadCacheDbMigrations.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>.maestro/flows/002_001_user_add_apps_playlists_and_bookmarks_to_school_test.yaml</affectedPath><commitId>5acf713cef89b616204c6cebc327e45261da58d7</commitId><timestamp>1786610529000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/pooja</absoluteUrl><fullName>Pooja Ravi</fullName></author><authorEmail>pooja@ustadmobile.com</authorEmail><comment>Share flow updated
</comment><date>2026-08-13 12:42:09 +0400</date><id>5acf713cef89b616204c6cebc327e45261da58d7</id><msg>Share flow updated</msg><path><editType>edit</editType><file>.maestro/flows/002_001_user_add_apps_playlists_and_bookmarks_to_school_test.yaml</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/learningunit/list/LearningUnitListScreen.kt</affectedPath><commitId>58b19a1f5548e8d43a8a882763f47abaa76b8f24</commitId><timestamp>1786628834000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/mike</absoluteUrl><fullName>Mike Dawson</fullName></author><authorEmail>mike@ustadmobile.com</authorEmail><comment>Remove unnecessary FeedActionButton that was really just a duplicate of RespectQuickActionButton (went against DRY principle).
</comment><date>2026-08-13 17:47:14 +0400</date><id>58b19a1f5548e8d43a8a882763f47abaa76b8f24</id><msg>Remove unnecessary FeedActionButton that was really just a duplicate of RespectQuickActionButton (went against DRY principle).</msg><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/learningunit/list/LearningUnitListScreen.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/learningunit/detail/LearningUnitDetailViewModel.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/learningunit/list/LearningUnitListScreen.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/playlists/collections/edit/PlaylistEditViewModel.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/playlists/collections/externallink/ExternalLinkEditViewModel.kt</affectedPath><affectedPath>respect-lib-xapi-core/src/commonMain/kotlin/world/respect/lib/xapi/ext/XapiStatementExt.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/RespectViewModel.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/assignment/edit/AssignmentEditViewModel.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/learningunit/list/LearningUnitListViewModel.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/learningunit/list/LearningUnitListHeader.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/opds/getxapiactivityid/GetXapiActivityForPublicationUseCase.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/learningunit/LearningUnitSelection.kt</affectedPath><commitId>4467cb4ff388f1daa46631a38a307a673d375ba1</commitId><timestamp>1786644397000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/mike</absoluteUrl><fullName>Mike Dawson</fullName></author><authorEmail>mike@ustadmobile.com</authorEmail><comment>Tidyup work in progress:

Refactor LearningUnitSelection to allow for multi selection.
Avoid crash on assigning long lists.
Handle getting xapi activity info for selecting learning units.
</comment><date>2026-08-13 19:06:37 +0100</date><id>4467cb4ff388f1daa46631a38a307a673d375ba1</id><msg>Tidyup work in progress:</msg><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/learningunit/detail/LearningUnitDetailViewModel.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/domain/opds/getxapiactivityid/GetXapiActivityForPublicationUseCase.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/playlists/collections/edit/PlaylistEditViewModel.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/playlists/collections/externallink/ExternalLinkEditViewModel.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/learningunit/LearningUnitSelection.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/RespectViewModel.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/learningunit/list/LearningUnitListViewModel.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/assignment/edit/AssignmentEditViewModel.kt</file></path><path><editType>edit</editType><file>respect-lib-xapi-core/src/commonMain/kotlin/world/respect/lib/xapi/ext/XapiStatementExt.kt</file></path><path><editType>add</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/learningunit/list/LearningUnitListHeader.kt</file></path><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/learningunit/list/LearningUnitListScreen.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-server/src/main/kotlin/world/respect/server/domain/school/demoapp/MakeDemoAppGradeCollectionsUseCase.kt</affectedPath><affectedPath>respect-server/src/main/kotlin/world/respect/server/domain/school/demoapp/MakeDemoAppCollectionUseCase.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/util/ext/ReadiumLinkExt.kt</affectedPath><affectedPath>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/opds/ext/OpdsPublicationExt.kt</affectedPath><affectedPath>respect-lib-opds-model/src/commonMain/kotlin/world/respect/lib/opds/model/ext/ReadiumLinkExt.kt</affectedPath><affectedPath>respect-lib-opds-model/src/commonMain/kotlin/world/respect/lib/opds/model/ext/OpdsFeedExt.kt</affectedPath><affectedPath>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/opds/ext/ReadiumLinkExt.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/learningunit/list/LearningUnitListHeader.kt</affectedPath><commitId>b3b5ff1a73b252975705b52dd37ee53240c3af71</commitId><timestamp>1786647137000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/mike</absoluteUrl><fullName>Mike Dawson</fullName></author><authorEmail>mike@ustadmobile.com</authorEmail><comment>More tidy up of learning unit list : fix selection if icons, and fix display of header icon and description.
</comment><date>2026-08-13 19:52:17 +0100</date><id>b3b5ff1a73b252975705b52dd37ee53240c3af71</id><msg>More tidy up of learning unit list : fix selection if icons, and fix display of header icon and description.</msg><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/util/ext/ReadiumLinkExt.kt</file></path><path><editType>edit</editType><file>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/opds/ext/OpdsPublicationExt.kt</file></path><path><editType>add</editType><file>respect-lib-opds-model/src/commonMain/kotlin/world/respect/lib/opds/model/ext/ReadiumLinkExt.kt</file></path><path><editType>edit</editType><file>respect-server/src/main/kotlin/world/respect/server/domain/school/demoapp/MakeDemoAppGradeCollectionsUseCase.kt</file></path><path><editType>add</editType><file>respect-lib-opds-model/src/commonMain/kotlin/world/respect/lib/opds/model/ext/OpdsFeedExt.kt</file></path><path><editType>edit</editType><file>respect-datalayer/src/commonMain/kotlin/world/respect/datalayer/school/opds/ext/ReadiumLinkExt.kt</file></path><path><editType>edit</editType><file>respect-server/src/main/kotlin/world/respect/server/domain/school/demoapp/MakeDemoAppCollectionUseCase.kt</file></path><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/learningunit/list/LearningUnitListHeader.kt</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>respect-server/src/main/kotlin/world/respect/server/domain/school/demoapp/MakeDemoAppGradeCollectionsUseCase.kt</affectedPath><affectedPath>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/learningunit/list/LearningUnitListViewModel.kt</affectedPath><affectedPath>respect-lib-opds-model/src/commonMain/kotlin/world/respect/lib/opds/model/ext/OpdsFeedExt.kt</affectedPath><affectedPath>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/learningunit/list/LearningUnitListHeader.kt</affectedPath><commitId>dfe364f81be88d0cfb19e81b22cc6e2a32a83e51</commitId><timestamp>1786648104000</timestamp><author><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/mike</absoluteUrl><fullName>Mike Dawson</fullName></author><authorEmail>mike@ustadmobile.com</authorEmail><comment>Hide assign button when there are no assignable publications. Padding fixes.
</comment><date>2026-08-13 20:08:24 +0100</date><id>dfe364f81be88d0cfb19e81b22cc6e2a32a83e51</id><msg>Hide assign button when there are no assignable publications. Padding fixes.</msg><path><editType>edit</editType><file>respect-lib-opds-model/src/commonMain/kotlin/world/respect/lib/opds/model/ext/OpdsFeedExt.kt</file></path><path><editType>edit</editType><file>respect-app-compose/src/commonMain/kotlin/world/respect/app/view/learningunit/list/LearningUnitListHeader.kt</file></path><path><editType>edit</editType><file>respect-lib-shared/src/commonMain/kotlin/world/respect/shared/viewmodel/learningunit/list/LearningUnitListViewModel.kt</file></path><path><editType>edit</editType><file>respect-server/src/main/kotlin/world/respect/server/domain/school/demoapp/MakeDemoAppGradeCollectionsUseCase.kt</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/pooja</absoluteUrl><fullName>Pooja Ravi</fullName></culprit><culprit><absoluteUrl>https://devserver3.ustadmobile.com/jenkins/user/mike</absoluteUrl><fullName>Mike Dawson</fullName></culprit></freeStyleBuild>