Comet Sprint 32 / Daylight Sprint 4 Review (March 27–April 16, 2024)

Comet Sprint 32 / Daylight Sprint 4

What was the goal of Comet Sprint 32 / Daylight Sprint 4?

Comet: The primary deliverable for this workcycle was to facilitate bulk export functionality in order to begin refining round-tripping procedures.

Daylight: To demo a broad infrastructure for building small micro frontends for discovery purposes and gluing them together over the search index (no styling work at this time).

What is the milestone that this sprint is supporting?

  • Comet: Batch roundtripping
  • Daylight: Delivering a package demo to show that Daylight exists

Accomplishments of Comet Sprint 32 / Daylight Sprint 4:


  • We fixed the “No method error” bug on re-import. This was the main thing keeping us from being able to demo roundtrip import/export.
  • We had a discussion about the “Publish” feature set for both Collections and Objects. We did some scoping outside this discussion for how Object publish/unpublish should really be working. As a result, we did some UI work to make publishing and unpublishing to frontends work and make more sense.
  • We wrapped up some work on the representative images for Collections.
  • We did some minor cleanup on things like the “Featured” Objects badge, which was derived mainly from upstream Hyrax behavior that is targeted at self-deposit type repositories rather than something more like Comet.
  • We also fixed a rather significant bug on deletions. Specifically, on how objects that have FileSets or other Object member components get deleted. The behavior that we’ve implemented is that if someone deletes an Object, any of its FileSets or component Objects get deleted as long as they are not also members independently of other Objects or Collections.
  • We fixed a bug around the embargo date time validation.
  • The edit/replace a file is now working.

The work completed includes a package demo for the Daylight work that does not include styling. However, it shows that Daylight exists and is built from three independent components:

  • There is a header that deploys on its own
  • There are a number of Objects loaded into the UI
  • There is a search box which is also independently deployed

GitLab link: