sentinel-legacy issueshttps://git.lumc.nl/sasc/sentinel-legacy/-/issues2018-11-23T02:30:30+01:00https://git.lumc.nl/sasc/sentinel-legacy/-/issues/11Implement proper logging server-side2018-11-23T02:30:30+01:00bowImplement proper logging server-sidebowbowhttps://git.lumc.nl/sasc/sentinel-legacy/-/issues/12Implement aggregation operations2018-11-23T02:30:30+01:00bowImplement aggregation operationsIdeally, Sentinel should also be able to handle data aggregations (not only queries). Something like `GET /stats/alignments/gentrap/aggregates?op=max,mean,median` which would return the max, mean, and median of all gentrap alignment stat...Ideally, Sentinel should also be able to handle data aggregations (not only queries). Something like `GET /stats/alignments/gentrap/aggregates?op=max,mean,median` which would return the max, mean, and median of all gentrap alignment statistics.Version 0.1.0bowbowhttps://git.lumc.nl/sasc/sentinel-legacy/-/issues/13Make sample and library names visible to run owner2018-11-23T02:30:30+01:00bowMake sample and library names visible to run ownerFrom a discussion with @p.j.van_t_hof , to make it nicer to inspect a user's own uploaded run.From a discussion with @p.j.van_t_hof , to make it nicer to inspect a user's own uploaded run.Version 0.1.0bowbowhttps://git.lumc.nl/sasc/sentinel-legacy/-/issues/14Add integration tests2018-11-23T02:30:30+01:00bowAdd integration testsThis is to keep track of the current test additions. Before v0.1.0 release, we'd like to have the following tests first:
#### GET /stats/sequences/gentrap (for each gentrap summary examples)
- [x] default arguments
- [x] wrong lib...This is to keep track of the current test additions. Before v0.1.0 release, we'd like to have the following tests first:
#### GET /stats/sequences/gentrap (for each gentrap summary examples)
- [x] default arguments
- [x] wrong libtype
- [x] wrong seqqcphase
- [x] nondefault libtype
- [x] nondefault seqqcphase
- [x] custom runIds
- [x] custom refIds
- [x] custom annotIds
- [x] invalid runId
- [x] invalid refId
- [x] invalid annotIds
#### GET /stats/alignments/gentrap (for each gentrap summary examples)
- [x] default arguments
- [x] wrong libtype
- [x] wrong accumulation level
- [x] nondefault libtype
- [x] nondefault accumulation level
- [x] custom runIds
- [x] custom refIds
- [x] custom annotIds
- [x] invalid runId
- [x] invalid refId
- [x] invalid annotIds
#### GET /stats/runs
- [x] default arguments
#### GET /annotations
- [x] default arguments
#### GET /annotations/:annotId
- [x] default arguments
- [x] nonexistent ID
#### GET /references
- [x] default arguments
#### GET /references/:refId
- [x] default arguments
- [x] nonexistent ID
#### GET /users/:userId
- [x] default arguments
- [x] unauthenticated user
- [x] unverified user
- [x] unauthorized user
#### PATCH /users/:userId
- [ ] ~~changing user ID~~ not blocking for this release, so postponed indefinitely
- [ ] ~~changing user API key~~ not blocking for this release (also not the correct HTTP endpoint), postponed indefinitely
- [x] changing password
- [x] malformed patch
- [x] empty patch
- [x] unauthenticated user
- [x] unverified user
- [x] unauthorized user
Version 0.1.0bowbowhttps://git.lumc.nl/sasc/sentinel-legacy/-/issues/15Add support for the Shiva pipeline2018-11-23T02:30:30+01:00bowAdd support for the Shiva pipelinebowbowhttps://git.lumc.nl/sasc/sentinel-legacy/-/issues/16Better modularize pipeline support2018-11-23T02:30:30+01:00bowBetter modularize pipeline supportRight now, to extend sentinel with new pipeline, one has to fork the entire codebase and implement his/her own modifications. Ideally, there is a core package (which is always required for all installations) and additional packages defin...Right now, to extend sentinel with new pipeline, one has to fork the entire codebase and implement his/her own modifications. Ideally, there is a core package (which is always required for all installations) and additional packages defining only the pipeline support.https://git.lumc.nl/sasc/sentinel-legacy/-/issues/17Update Gentrap summary to be in-sync with upcoming Biopet release2018-05-14T03:02:00+02:00bowUpdate Gentrap summary to be in-sync with upcoming Biopet releaseTo change list:
- [ ] reference section
- [ ] sequencing statistics section
- [ ] pipeline name
- [ ] run name
- [ ] existing metrics from PicardTo change list:
- [ ] reference section
- [ ] sequencing statistics section
- [ ] pipeline name
- [ ] run name
- [ ] existing metrics from PicardVersion 0.1.0bowbowhttps://git.lumc.nl/sasc/sentinel-legacy/-/issues/18Package the swagger-ui interface with Sentinel2018-05-14T03:02:00+02:00bowPackage the swagger-ui interface with SentinelSince the swagger-ui interface are all static files, they can be packaged together with sentinel and served at some default URL.Since the swagger-ui interface are all static files, they can be packaged together with sentinel and served at some default URL.Version 0.1.0bowbowhttps://git.lumc.nl/sasc/sentinel-legacy/-/issues/19Implement tags for runs2018-05-14T03:02:00+02:00bowImplement tags for runsThe use case is to filter runs based on these tag values (and consequently for filtering the stats as well). This also means that a PATCH endpoint for /runs need to be created so the tags can be modified after a run is uploaded.The use case is to filter runs based on these tag values (and consequently for filtering the stats as well). This also means that a PATCH endpoint for /runs need to be created so the tags can be modified after a run is uploaded.bowbowhttps://git.lumc.nl/sasc/sentinel-legacy/-/issues/20Implement aggregation for array items2018-05-14T03:02:00+02:00bowImplement aggregation for array itemsSomething for aggregating (for example) this:
```
num_by_quals: [235, 135, 1241, 51]`
```
into this:
```
num_by_quals: [
{count: ..., max: ..., min: ..., mean: ..., median: ..., stdev: ...},
{count: ..., max: ..., min: ...Something for aggregating (for example) this:
```
num_by_quals: [235, 135, 1241, 51]`
```
into this:
```
num_by_quals: [
{count: ..., max: ..., min: ..., mean: ..., median: ..., stdev: ...},
{count: ..., max: ..., min: ..., mean: ..., median: ..., stdev: ...},
{count: ..., max: ..., min: ..., mean: ..., median: ..., stdev: ...},
{count: ..., max: ..., min: ..., mean: ..., median: ..., stdev: ...},
]
```bowbowhttps://git.lumc.nl/sasc/sentinel-legacy/-/issues/22Fix lazy val serialization on case classes2018-05-14T03:02:00+02:00bowFix lazy val serialization on case classesApparently there is a bug in Json4s which prevents case classes from serializing their lazy vals into JSON (https://github.com/json4s/json4s/pull/215). This has been fixed in their 3.3 branch (we are on 3.2.11 at the time of this writing...Apparently there is a bug in Json4s which prevents case classes from serializing their lazy vals into JSON (https://github.com/json4s/json4s/pull/215). This has been fixed in their 3.3 branch (we are on 3.2.11 at the time of this writing) and also has been merged into Scalatra's 2.4.x branch. However, both packages have not been officially released yet and attempts to use the RC versions have not worked so far, mainly due to Scalatra's Swagger serialization module being incompatible with Json4s's.
The bug is not breaking, since all the lazy vals in our case classes can be computed from existing values. However, it would still be nicer if the client already gets this value precomputed.
So for now, we wait until we can upgrade to Scalatra 2.4 when it has been released and then later add tests to make sure the lazy vals are emitted in the JSON payloads.bowbowhttps://git.lumc.nl/sasc/sentinel-legacy/-/issues/23Split core functionalities and LUMC-specific code into different packages2018-05-14T03:02:00+02:00bowSplit core functionalities and LUMC-specific code into different packagesTo make Sentinel more extensible, we should clearly separate the packages which are of general usage and packages specific to LUMC.
Something like this would be preferrable:
* Core
- Adapters
- Processors
- Internal data m...To make Sentinel more extensible, we should clearly separate the packages which are of general usage and packages specific to LUMC.
Something like this would be preferrable:
* Core
- Adapters
- Processors
- Internal data models
* LUMC
- All LUMC pipeline-related code
- Current HTTP endpointsbowbowhttps://git.lumc.nl/sasc/sentinel-legacy/-/issues/24Query for all runs from a certain user2018-05-14T03:02:00+02:00Wai Yi LeungQuery for all runs from a certain userIs it possible to query on a user(name) only and return the:
runId - pipeline - date
For this user(name)?Is it possible to query on a user(name) only and return the:
runId - pipeline - date
For this user(name)?https://git.lumc.nl/sasc/sentinel-legacy/-/issues/25Limit functionalities for API user when user is using a certain API2018-05-14T03:02:00+02:00Wai Yi LeungLimit functionalities for API user when user is using a certain APIf.e.g. the DELETE command.
Or send an e-mail to the data owner to confirm removal of a certain run.f.e.g. the DELETE command.
Or send an e-mail to the data owner to confirm removal of a certain run.https://git.lumc.nl/sasc/sentinel-legacy/-/issues/27Gentrap alignment metrics model does not take into account non-FR pair orient...2018-05-14T03:02:00+02:00bowGentrap alignment metrics model does not take into account non-FR pair orientationThe current case class model for `GentrapAlignmentStats` assumes alignment files only have one type of orientation. This is false, since there are multiple possible orientations. Picard, for example, is aware of this (they denote `FR`, `...The current case class model for `GentrapAlignmentStats` assumes alignment files only have one type of orientation. This is false, since there are multiple possible orientations. Picard, for example, is aware of this (they denote `FR`, `RF`, and `TANDEM` orientations). Ideally, we also reflect this in our model.bowbowhttps://git.lumc.nl/sasc/sentinel-legacy/-/issues/29Update to Scalatra 2.42018-05-14T03:02:00+02:00bowUpdate to Scalatra 2.4Scalatra has recently been updated to 2.4, which also updates some of our test dependencies. We should move from 2.3 to 2.4 as well soon.Scalatra has recently been updated to 2.4, which also updates some of our test dependencies. We should move from 2.3 to 2.4 as well soon.bowbowhttps://git.lumc.nl/sasc/sentinel-legacy/-/issues/30Add read length statistics for Gentrap2018-05-14T03:02:00+02:00bowAdd read length statistics for Gentrapbowbowhttps://git.lumc.nl/sasc/sentinel-legacy/-/issues/31medianvCvcoverage should be explained2018-05-14T03:02:00+02:00Sander van der ZeeuwmedianvCvcoverage should be explainedTo the list of explained fields i would like to have medianCvCoverage to be explained. To the list of explained fields i would like to have medianCvCoverage to be explained. https://git.lumc.nl/sasc/sentinel-legacy/-/issues/32Add URL parameter to specify maximum number returned items for stats endpoints2018-05-14T03:02:00+02:00bowAdd URL parameter to specify maximum number returned items for stats endpointsbowbowhttps://git.lumc.nl/sasc/sentinel-legacy/-/issues/33Automatic end point definitions for easy access in SPIN2018-05-14T03:02:00+02:00Sander van der ZeeuwAutomatic end point definitions for easy access in SPINIt would be nice to have an endpoint which automatically updates the explanations of specific endpoint definitions. Preferably in markdown format for easy implementation in SPIN docs. (json is also fine but needs some extra manipulating ...It would be nice to have an endpoint which automatically updates the explanations of specific endpoint definitions. Preferably in markdown format for easy implementation in SPIN docs. (json is also fine but needs some extra manipulating for proper output in SPIN.bowbow