gonito/config/models

266 lines
7.1 KiB
Plaintext
Raw Normal View History

2015-08-20 22:33:38 +02:00
User
ident Text
password Text Maybe
UniqueUser ident
2015-09-30 20:15:33 +02:00
name Text Maybe
2016-02-14 08:44:16 +01:00
isAdmin Bool default=False
localId Text Maybe
2016-02-14 08:59:12 +01:00
isAnonymous Bool default=False
2016-05-03 10:21:40 +02:00
avatar ByteString Maybe
2017-02-18 10:26:02 +01:00
verificationKey Text Maybe
keyExpirationDate UTCTime Maybe
2017-09-28 11:29:48 +02:00
triggerToken Text Maybe
altRepoScheme Text Maybe
2015-08-20 22:33:38 +02:00
deriving Typeable
2021-03-03 09:19:34 +01:00
Team
ident Text
avatar ByteString Maybe
UniqueTeam ident
TeamMember
user UserId
team TeamId
isCaptain Bool
TeamLog
stamp UTCTime default=now()
actionType TeamActionType
agens UserId
patiens UserId Maybe
team TeamId Maybe
2021-03-03 09:19:34 +01:00
verificationKey Text Maybe
keyExpirationDate UTCTime Maybe
2015-11-11 22:37:25 +01:00
PublicKey
user UserId
pubkey Text
2015-08-20 22:33:38 +02:00
Email
email Text
user UserId Maybe
verkey Text Maybe
UniqueEmail email
2015-08-29 13:13:16 +02:00
Repo
url Text
branch Text
currentCommit SHA1
owner UserId
ready Bool default=False
stamp UTCTime default=now()
2018-06-05 07:46:42 +02:00
gitAnnexRemote Text Maybe
2015-08-29 13:13:16 +02:00
UniqueUrlBranch url branch
deriving Show
Challenge
publicRepo RepoId
privateRepo RepoId
name Text
UniqueName name
title Text
description Text
stamp UTCTime default=now()
2018-01-18 08:21:06 +01:00
image ByteString Maybe
2018-01-25 16:43:50 +01:00
starred Bool
2019-03-20 16:31:08 +01:00
archived Bool Maybe
version SHA1
2019-12-14 18:21:47 +01:00
sensitive Bool Maybe
2021-03-22 08:19:47 +01:00
-- forces BySubmitter leaderboard style
isCompetition Bool Maybe
2019-08-27 22:36:51 +02:00
-- challenge version
Version
2019-09-24 22:52:25 +02:00
-- introduced later, hence Maybe
-- to be replaced with non-Maybe value later
challenge ChallengeId Maybe
2019-08-27 22:36:51 +02:00
commit SHA1
2019-09-24 22:52:25 +02:00
-- Optional challenge deadline. After the deadline
-- no submission will be accepted, though a new
-- challenge version might be uploaded and then
-- new submissions could be sent. This could be used
-- for organizing a "post-track" after the competition
-- has ended. Note, however, that, when sorting submissions,
-- the ones uploaded under the version with a deadline (i.e. within
-- the main track) will be preferred against the ones
-- uploaded under the version without a deadline (no matter what
-- is the major version).
deadline UTCTime Maybe
2019-08-27 22:36:51 +02:00
major Int
minor Int
patch Int
2019-08-29 08:56:22 +02:00
UniqueVersionByCommit commit
2019-08-27 22:36:51 +02:00
UniqueVersion commit major minor patch
description Text
stamp UTCTime default=now()
2021-09-25 18:37:08 +02:00
phase TagId Maybe
2015-08-29 13:13:16 +02:00
Test
challenge ChallengeId
metric EvaluationScheme
2015-09-28 18:10:59 +02:00
name Text
2015-08-29 13:13:16 +02:00
checksum SHA1
commit SHA1
active Bool default=True
2016-02-17 09:34:34 +01:00
precision Int Maybe
2020-09-05 16:45:09 +02:00
asPercentage Bool Maybe
priority Int Maybe
UniqueChallengeNameMetricChecksum challenge name metric checksum
deriving Show
2015-09-28 23:43:55 +02:00
Submission
repo RepoId
commit SHA1
challenge ChallengeId
description Text
stamp UTCTime default=now()
2015-09-30 20:32:06 +02:00
submitter UserId
2016-02-14 08:59:12 +01:00
isPublic Bool default=False
2018-11-17 09:49:25 +01:00
isHidden Bool default=False
2019-08-27 22:36:51 +02:00
-- challenge version present when the submission was done
version SHA1
2021-03-03 13:15:38 +01:00
team TeamId Maybe
2015-09-28 23:43:55 +02:00
UniqueSubmissionRepoCommitChallenge repo commit challenge
Variant
submission SubmissionId
name Text
UniqueVariantSubmissionName submission name
2018-07-05 22:21:26 +02:00
Parameter
variant VariantId
name Text
value Text
UniqueParameterName variant name
2018-11-12 20:41:46 +01:00
ExternalLink
submission SubmissionId
title Text Maybe
url Text
2018-11-16 12:43:44 +01:00
-- this represents forks, i.e. when a submission for a given challenge
-- was based (in terms of git history) on another submission for the same challenge
-- NOTE: not implemented yet
2016-02-12 23:21:26 +01:00
Fork
source SubmissionId
target SubmissionId
UniqueSourceTarget source target
2018-11-16 12:43:44 +01:00
-- for representing dependencies across challenges;
-- e.g. when a model generated in a submission is used
-- by another submission in another challenge;
-- dependencies are expressed as a relation between
-- commit hashes rather than submissions/repos
-- (can be easily linked to submission via SubmissionCommit link)
Dependency
subRepoCommit SHA1
superRepoCommit SHA1
UniqueSubSuperSubmission subRepoCommit superRepoCommit
2015-09-28 23:43:55 +02:00
Evaluation
test TestId
checksum SHA1
score Double Maybe
2020-01-28 23:14:46 +01:00
errorBound Double Maybe
2015-09-28 23:43:55 +02:00
errorMessage Text Maybe
stamp UTCTime default=now()
2019-12-14 14:10:50 +01:00
-- Should be just SHA1 (without Maybe) - Maybe is just a legacy
version SHA1
UniqueEvaluationTestChecksumVersion test checksum version
deriving Show
2016-05-03 08:46:10 +02:00
Comment
challenge ChallengeId
author UserId
posted UTCTime default=now()
text Textarea
2015-09-28 23:43:55 +02:00
Out
2018-07-05 22:15:21 +02:00
variant VariantId
2015-09-28 23:43:55 +02:00
test TestId
checksum SHA1
2018-07-05 22:15:21 +02:00
UniqueOutVariantTestChecksum variant test checksum
2017-02-19 14:05:56 +01:00
Tag
name Text
description Text Maybe
color Text Maybe
2017-02-19 14:05:56 +01:00
UniqueTagName name
2017-02-25 19:13:55 +01:00
SubmissionTag
submission SubmissionId
tag TagId
accepted Bool Maybe
UniqueSubmissionTag submission tag
-- for machine learning courses
2017-02-26 21:40:38 +01:00
Achievement
name Text
challenge ChallengeId
2017-02-26 22:01:27 +01:00
points Int
2017-02-26 21:40:38 +01:00
description Text Maybe
deadline UTCTime
maxWinners Int Maybe
2017-10-03 07:23:52 +02:00
course CourseId
2017-02-26 21:40:38 +01:00
UniqueAchievementName name
AchievementTag
achievement AchievementId
tag TagId
UniqueAchievementTag achievement tag
2017-03-13 12:00:38 +01:00
WorkingOn
achievement AchievementId
user UserId
2017-03-18 21:33:41 +01:00
finalSubmission SubmissionId Maybe
2017-03-13 12:00:38 +01:00
UniqueWorkingOnAchievementUser achievement user
Course
name Text
code Text
closed Bool
announcementHook Text Maybe
UniqueCourseName name
UniqueCourseCode code
2018-01-02 18:55:35 +01:00
ExtraPoints
points Int
description Text
user UserId
course CourseId
posted UTCTime default=now()
addedBy UserId
2017-10-20 09:49:37 +02:00
Participant
user UserId
course CourseId
UniqueUserCourse user course
2019-06-15 12:21:41 +02:00
Teacher
user UserId
course CourseId
UniqueTeacherCourse user course
CourseChallenge
challenge ChallengeId
course CourseId
UniqueCourseChallenge challenge course
-- for "KPI" dashboard
Indicator
test TestId
filterCondition Text Maybe
targetCondition Text Maybe
Target
indicator IndicatorId
deadline UTCTime
value Double
2019-02-22 09:53:00 +01:00
name Text Maybe
2020-07-09 16:46:11 +02:00
-- for doing manual annotation or human baselines
-- A specific annotation task, related to a specific challenge
AnnotationTask
challenge ChallengeId
added UTCTime default=now()
name Text
UniqueAnnotationTaskName name
-- A possible label that an annotator can use.
-- The labels will be shown as buttons to click for an annotator
AnnotationLabel
annotationTask AnnotationTaskId
-- name to be shown (e.g. as the button label)
name Text
-- value represented by the label (when evaluating the results)
value Text
-- for sorting labels when showing to a user
order Int
UniqueAnnotationLabelName annotationTask name
-- A single item to be annotated.
-- It corresponds to a single line in the in.tsv file. Note that
-- only a subset of lines can be considered here (and covering
-- various test sets)
AnnotationItem
annotationTask AnnotationTaskId
-- the line content (possibly including TABs)
content Text
-- to specify the order in which the items are shown to a user
order Int
-- A decision (annotation) made by a user for a specific item
AnnotationDecision
annotationItem AnnotationItemId
user UserId
-- value selected by the user (cf. value in AnnotationLabel)
value Text
stamp UTCTime default=now()
2015-08-29 13:13:16 +02:00
-- By default this file is used in Model.hs (which is imported by Foundation.hs)